@charset "UTF-8";*{box-sizing:border-box;margin:0;padding:0}body{background-color:#111827;color:#f9fafb;font-family:Inter,sans-serif;line-height:1.6}#root{min-height:100vh}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1f2937}::-webkit-scrollbar-thumb{background:#4b5563;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#6b7280}.text-primary{color:#1f2937}.text-secondary{color:#4b5563}.text-accent{color:#10b981}.text-light{color:#f9fafb}.bg-primary{background-color:#1f2937}.bg-secondary{background-color:#4b5563}.bg-accent{background-color:#10b981}.bg-dark{background-color:#111827}*{transition:all .2s ease-in-out}button:focus,input:focus,select:focus{outline:2px solid #10b981;outline-offset:2px}.unified-login-container{align-items:center;background:#111827;display:flex;justify-content:center;min-height:100vh;padding:20px}.unified-login-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:20px;box-shadow:0 25px 50px -12px #00000080;max-width:450px;padding:40px;width:100%}.unified-login-header{margin-bottom:30px;text-align:center}.logo{gap:15px;justify-content:center;margin-bottom:20px}.logo-icon{font-size:2.5rem}.logo h1{color:#f9fafb;font-size:1.8rem;font-weight:700;margin:0}.unified-login-header p{color:#9ca3af;font-size:.95rem}.unified-login-form{display:flex;flex-direction:column;gap:20px}.input-group{align-items:center;display:flex;position:relative}.input-icon{color:#6b7280;left:15px;position:absolute;z-index:1}.input-group input{background:#111827cc;border:1px solid #4b55634d;border-radius:12px;color:#f9fafb;font-size:1rem;padding:15px 15px 15px 50px;transition:all .3s ease;width:100%}.input-group input::placeholder{color:#6b7280}.input-group input:focus{background:#111827e6;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.password-toggle{background:none;border:none;border-radius:5px;color:#6b7280;cursor:pointer;padding:5px;position:absolute;right:15px;transition:color .3s ease}.password-toggle:hover{color:#9ca3af}.unified-login-button{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:10px;padding:15px;transition:all .3s ease}.unified-login-button:hover:not(:disabled){box-shadow:0 10px 25px #10b9814d;transform:translateY(-2px)}.unified-login-button:disabled{cursor:not-allowed;opacity:.7}.unified-login-footer{margin-top:30px;text-align:center}.demo-credentials{background:#11182780;border:1px solid #4b55634d;border-radius:10px;color:#9ca3af;font-size:.85rem;line-height:1.6;padding:20px}.demo-credentials h4{color:#10b981;font-size:1rem;font-weight:600;margin:0 0 15px}.credentials-section{display:flex;flex-direction:column;gap:15px}.credential-group{background:#1118274d;border:1px solid #4b556333;border-radius:8px;padding:12px}.credential-group strong{color:#10b981;font-size:.9rem}@media (max-width:480px){.unified-login-card{padding:30px 20px}.logo h1{font-size:1.5rem}.logo-icon{font-size:2rem}.credentials-section{gap:10px}.credential-group{padding:10px}}.dashboard-home{background:#111827;display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.stats-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;gap:20px;padding:25px}.stat-card:hover{box-shadow:0 20px 40px #0000004d;transform:translateY(-5px)}.stat-icon.users{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.stat-icon.clock{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.trending{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.calendar{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-content h3{font-size:2rem;font-weight:700;margin:0 0 5px}.stat-content p{color:#9ca3af;font-size:.9rem;margin:0 0 10px}.stat-change{align-items:center;border-radius:6px;display:flex;font-size:.8rem;font-weight:500;gap:5px;padding:4px 8px}.stat-change.positive{background:#10b9811a;color:#10b981}.stat-change.negative{background:#ef44441a;color:#ef4444}.charts-section{display:flex;flex-direction:column;gap:30px}.chart-card.full-width{grid-column:1/-1}.recent-activity{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:25px}.recent-activity h3{color:#f9fafb;font-size:1.2rem;font-weight:600;margin:0 0 20px}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{background:#11182780;border:1px solid #4b556333;border-radius:12px;gap:15px;padding:15px}.activity-icon,.activity-item{align-items:center;display:flex}.activity-icon{background:#10b98133;border-radius:10px;color:#10b981;height:40px;justify-content:center;width:40px}.activity-content p{color:#f9fafb;font-size:.9rem;margin:0 0 5px}.activity-time{color:#6b7280;font-size:.8rem}.loading-container{gap:20px;height:400px}.loading-spinner{height:50px;width:50px}.loading-container p{color:#9ca3af;font-size:1.1rem}@media (max-width:768px){.chart-row,.stats-grid{grid-template-columns:1fr}.chart-container{height:250px}.page-header h2,.stat-content h3{font-size:1.5rem}}.time-tracking{background:#111827;display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.quick-actions{margin-bottom:30px}.action-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:25px}.action-card h3{color:#f9fafb;font-size:1.3rem;font-weight:600;margin:0 0 20px}.action-form{display:flex;flex-direction:column;gap:20px}.form-group input::placeholder{color:#6b7280}.action-buttons{display:flex;flex-wrap:wrap;gap:15px}.btn-checkin,.btn-checkout{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.btn-checkin{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-checkin:hover{box-shadow:0 10px 25px #10b9814d;transform:translateY(-2px)}.btn-checkout{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.btn-checkout:hover{box-shadow:0 10px 25px #f59e0b4d;transform:translateY(-2px)}.attendance-section h3{color:#f9fafb;font-size:1.3rem;font-weight:600;margin-bottom:20px}.attendance-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.no-records{align-items:center;background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;color:#9ca3af;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;padding:60px 20px;text-align:center}.no-records svg{margin-bottom:15px;opacity:.5}.attendance-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:20px;transition:all .3s ease}.attendance-card:hover{border-color:#10b981;transform:translateY(-2px)}.attendance-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.btn-cancel,.btn-edit,.btn-save{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .3s ease;width:36px}.edit-actions{display:flex;gap:8px}.edit-form{display:flex;flex-direction:column;gap:15px}.edit-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.edit-group{display:flex;flex-direction:column;gap:5px}.edit-group label{color:#9ca3af;font-size:.8rem;font-weight:500}.edit-group input{background:#111827cc;border:1px solid #4b55634d;border-radius:8px;color:#f9fafb;font-size:.9rem;padding:8px 12px}.edit-group input:focus{border-color:#10b981;box-shadow:0 0 0 2px #10b9811a}.attendance-details{gap:15px}.attendance-details,.time-info{display:flex;flex-direction:column}.time-info{gap:8px}.time-item{border-bottom:1px solid #4b556333;justify-content:space-between;padding:8px 0}.time-item:last-child{border-bottom:none}.time-item .label{color:#9ca3af;font-size:.9rem;font-weight:500}.time-item .time{color:#f9fafb;font-size:.9rem;font-weight:600}.notes{background:#11182780;border:1px solid #4b556333;border-radius:8px;display:flex;gap:8px;padding:10px}.notes .label{color:#9ca3af;font-size:.85rem;font-weight:500}.notes span:last-child{color:#f9fafb;font-size:.85rem}.manual-override{align-items:center;background:#f59e0b1a;border-radius:6px;color:#f59e0b;display:inline-flex;font-size:.75rem;font-weight:500;gap:5px;padding:4px 8px;width:-webkit-fit-content;width:fit-content}.time-entries-container{display:flex;flex-direction:column;gap:15px;margin-bottom:15px}.time-entry{background:#11182780;border:1px solid #4b556333;border-radius:10px;padding:12px;transition:all .3s ease}.time-entry:hover{background:#111827b3;border-color:#10b9814d}.entry-number{border-bottom:1px solid #4b556333;color:#10b981;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:8px;padding-bottom:6px;text-transform:uppercase}.total-hours{align-items:center;background:#10b9811a;border:1px solid #10b98133;border-radius:10px;display:flex;justify-content:space-between;margin-top:10px;padding:12px}.total-hours .label{color:#10b981;font-size:.95rem;font-weight:600}.total-hours .time{color:#10b981;font-size:1.1rem;font-weight:700}@media (max-width:768px){.form-row{grid-template-columns:1fr}.action-buttons{flex-direction:column}.attendance-grid,.edit-row{grid-template-columns:1fr}.page-header h2{font-size:1.5rem}}.employee-management{margin:0 auto;max-width:1400px;padding:1rem}.page-header h1{font-size:2rem;font-weight:600}.add-employee-btn{align-items:center;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border:none;border-radius:12px;box-shadow:0 4px 15px #6366f14d;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.add-employee-btn:hover{box-shadow:0 6px 20px #6366f166;transform:translateY(-2px)}.employees-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.employee-card{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,0 0 0 1px #ffffff0d;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s ease}.employee-card:hover{border-color:var(--accent-color);box-shadow:0 20px 25px -5px #0003,0 10px 10px -5px #0000001a,0 0 0 1px #ffffff1a}.employee-card:before{background:linear-gradient(90deg,var(--primary-color),var(--accent-color));content:"";height:4px;left:0;position:absolute;right:0;top:0}.employee-card:hover{border-color:var(--primary-color);box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.employee-header{align-items:flex-start;justify-content:space-between}.employee-avatar{font-size:1.5rem;height:60px;text-shadow:0 2px 4px #0000004d;width:60px}.employee-actions{display:flex;gap:.5rem}.action-btn{color:var(--text-secondary);transition:all .2s ease}.edit-btn{background:var(--success-bg);color:var(--success-color)}.edit-btn:hover{background:var(--success-color);color:#fff}.delete-btn{background:var(--danger-bg);color:var(--danger-color)}.delete-btn:hover{background:var(--danger-color);color:#fff}.employee-info{flex-direction:column}.employee-name{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.employee-details{display:flex;flex-direction:column;gap:.75rem}.leave-balance{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:1rem;padding:1rem}.leave-item{align-items:center;display:flex;flex-direction:column;gap:.25rem}.leave-label{color:var(--text-secondary);font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.leave-count{color:var(--text-primary);font-size:1rem;font-weight:600}.modal-overlay{background:#000c}.modal-content{background:var(--card-bg);border:1px solid var(--border-color);box-shadow:0 20px 60px #0000004d;width:100%}.modal-header h2{color:var(--text-primary)}.close-btn{color:var(--text-secondary);transition:all .2s ease}.close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.employee-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{grid-gap:1rem;gap:1rem;grid-template-columns:1fr 1fr}.form-group input,.form-group label{color:var(--text-primary)}.form-group input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;font-size:.9rem;padding:.75rem;transition:all .2s ease}.form-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a;outline:none}.form-group input::placeholder{color:var(--text-tertiary)}.cancel-btn{background:#0000;border:1px solid var(--border-color);color:var(--text-secondary);transition:all .2s ease}.cancel-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.submit-btn{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));font-weight:500;transition:all .2s ease}.submit-btn:hover{box-shadow:0 4px 15px #6366f14d}@media (max-width:768px){.employee-management{padding:1rem}.page-header{align-items:stretch;flex-direction:column;gap:1rem}.add-employee-btn{justify-content:center}.employees-grid,.form-row{grid-template-columns:1fr}.leave-balance{flex-direction:column;gap:.5rem}.modal-content{margin:1rem;padding:1.5rem}}@media (max-width:480px){.employee-card{padding:1rem}.employee-header{align-items:center;flex-direction:column;gap:1rem}.employee-actions{align-self:flex-end}}.employee-id{background:#6366f11a;border:1px solid #6366f133;border-radius:6px;color:var(--text-secondary);font-size:.8rem;font-weight:500;padding:.25rem .5rem}.form-group input:disabled{background-color:#4b55631a;color:var(--text-secondary);cursor:not-allowed;opacity:.7}.form-group input:disabled::placeholder{color:var(--text-secondary);opacity:.5}.form-group select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:.75rem;transition:all .2s ease}.form-group select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a;outline:none}.form-group select option{background:var(--bg-primary);color:var(--text-primary);padding:.5rem}.reporter-info{background:#6366f11a;border:1px solid #6366f133;border-radius:6px}.dotted-line-info,.reporter-info{color:var(--text-secondary);font-size:.8rem;padding:.25rem .5rem}.dotted-line-info{background:#10b9811a;border:1px solid #10b98133;border-radius:6px}.leave-wfh-management{background:#111827;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.page-header{align-items:center;border-bottom:1px solid #4b55634d;display:flex;justify-content:space-between;margin-bottom:3rem;padding-bottom:1.5rem}.page-header h1{color:#f9fafb;margin:0}.summary-icon{border-radius:12px;padding:1rem}.summary-icon.casual{background:#10b98133;color:#10b981}.summary-icon.sick{background:#ef444433;color:#ef4444}.summary-icon.wfh{background:#3b82f633;color:#3b82f6}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.employee-leave-stats{background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b55634d;border-radius:16px;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;padding:2rem;transition:all .3s ease}.employee-leave-stats:hover{box-shadow:0 8px 25px #0006;transform:translateY(-2px)}.employee-header{align-items:center;border-bottom:1px solid #4b55634d;display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem}.employee-avatar{background:#10b981;font-weight:600}.employee-info h4{font-size:1.2rem}.designation{color:#9ca3af;font-size:.9rem;font-weight:500}.leave-balance-details{display:flex;flex-direction:column;gap:1rem}.leave-balance-item{align-items:center;background:#4b556333;border:1px solid #4b55634d;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.leave-type{font-size:.9rem}.leave-type.casual{color:#10b981}.leave-type.sick{color:#ef4444}.leave-counts{align-items:center;display:flex;font-weight:600;gap:.25rem}.leave-counts .used{color:#10b981}.leave-counts .separator{color:#6b7280}.leave-counts .total{color:#f9fafb}.remaining{color:#9ca3af;font-size:.8rem;font-weight:500}.section-header{align-items:center;border-bottom:1px solid #4b55634d;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.section-header h2{color:#f9fafb;font-size:1.5rem;font-weight:600;margin:0}.count-badge{background:#10b98133;border:1px solid #10b981;border-radius:20px;color:#10b981;font-size:.9rem;padding:.5rem 1rem}.items-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.item-card{background:#4b556333;border:1px solid #4b55634d}.item-card:hover{box-shadow:0 8px 25px #0000004d;transform:translateY(-2px)}.item-header{align-items:center}.employee-info h4{margin:0 0 .25rem}.leave-type{color:#10b981}.leave-type,.wfh-label{font-weight:600;letter-spacing:.5px;text-transform:uppercase}.wfh-label{color:#3b82f6;font-size:.8rem}.item-actions{display:flex;gap:.5rem}.action-btn{border-radius:6px;color:#fff;height:32px;width:32px}.edit-btn{background:#3b82f6}.edit-btn:hover{background:#2563eb;transform:scale(1.1)}.delete-btn{background:#ef4444}.delete-btn:hover{background:#dc2626;transform:scale(1.1)}.item-details{gap:.75rem;margin-bottom:1rem}.detail-row{align-items:center;color:#d1d5db;display:flex;font-size:.9rem;gap:.75rem}.detail-row svg{color:#9ca3af;height:16px;width:16px}.status-section{display:flex;justify-content:flex-end}.status-badge{font-size:.8rem;font-weight:600;padding:.5rem 1rem}.status-badge.success{background:#10b9811a;border:1px solid #10b981;color:#10b981}.status-badge.warning{background:#f59e0b1a;border:1px solid #f59e0b;color:#f59e0b}.status-badge.danger{background:#ef44441a;border:1px solid #ef4444;color:#ef4444}.empty-state svg{margin-bottom:1rem;opacity:.7}.empty-state p{color:#d1d5db;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.empty-state span{color:#9ca3af;font-size:.9rem}.modal-overlay{padding:1rem}.modal-content{box-shadow:0 20px 60px #00000080;max-height:90vh;overflow-y:auto;position:relative}.modal-header{border-bottom:1px solid #4b55634d;padding:2rem 2rem 1rem}.close-btn{align-items:center;border-radius:50%;display:flex;font-size:1.8rem;height:40px;justify-content:center;width:40px}.close-btn:hover{transform:rotate(90deg)}.request-form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.95rem;font-weight:600;margin-bottom:.75rem}.form-group input,.form-group select,.form-group textarea{background:#1f2937cc;border:2px solid #4b55634d;font-size:1rem;padding:1rem;width:100%}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group textarea{min-height:120px}.form-actions{border-top:1px solid #4b55634d;margin-top:2rem;padding-top:1.5rem}.cancel-btn{border:2px solid #4b55634d;border-radius:8px;color:#d1d5db;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.cancel-btn:hover{transform:translateY(-1px)}.submit-btn{border:none;border-radius:8px;box-shadow:0 4px 6px -1px #10b9814d;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.submit-btn:hover{box-shadow:0 8px 15px #10b98166}.loading-spinner{color:#9ca3af;font-size:1.2rem;font-weight:500;padding:4rem 2rem;text-align:center}@media (max-width:1200px){.management-grid{gap:2rem;grid-template-columns:1fr}}@media (max-width:768px){.leave-wfh-management{padding:1rem}.page-header{align-items:flex-start;flex-direction:column;gap:1rem}.page-header h1{font-size:2rem}.header-actions{justify-content:space-between;width:100%}.stats-grid,.summary-stats{gap:1.5rem;grid-template-columns:1fr}.modal-content{margin:1rem;width:95%}.form-actions{flex-direction:column}}@media (max-width:480px){.employee-leave-stats,.management-section,.summary-card{padding:1.5rem}.employee-header{gap:1rem}.employee-header,.leave-balance-item{flex-direction:column;text-align:center}.leave-balance-item{gap:.5rem}.modal-header,.request-form{padding:1.5rem}}.report-upload{background:#111827;display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.file-upload-ui{border:2px dashed #4b55634d}.file-info{color:#6b7280;font-size:.8rem}.upload-button{align-self:flex-start}.upload-button:hover:not(:disabled){box-shadow:0 10px 25px #10b9814d}.upload-button:disabled{opacity:.7}.report-info h4{margin:0 0 5px}.date{color:#6b7280;font-size:.8rem}.btn-cancel,.btn-delete,.btn-download,.btn-edit,.btn-save{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .3s ease;width:36px}.btn-edit{background:#4b556333;color:#9ca3af}.btn-edit:hover{background:#4b55634d;color:#f9fafb}.btn-cancel{background:#ef444433;color:#ef4444}.btn-cancel:hover{background:#ef44444d}.btn-download{background:#3b82f633;color:#3b82f6}.btn-download:hover{background:#3b82f64d}.btn-delete:hover{color:#fee2e2}.edit-summary{display:flex;flex-direction:column;gap:10px}.edit-summary label,.edit-summary textarea{font-size:.9rem}.edit-summary textarea:focus{box-shadow:0 0 0 2px #10b9811a}.report-meta{border-top:1px solid #4b556333}.file-info,.source-info,.upload-date{align-items:center;color:#6b7280;display:flex;font-size:.8rem;gap:5px}.source-info{background:#10b9811a;border-radius:4px;color:#10b981;font-weight:500;padding:2px 8px}@media (max-width:768px){.form-row,.reports-grid{grid-template-columns:1fr}.report-meta{align-items:flex-start;flex-direction:column;gap:10px}.page-header h2{font-size:1.5rem}}.monthly-performance{background:#111827;display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.period-selector{margin-bottom:30px}.selector-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:25px}.selector-card h3{color:#f9fafb;font-size:1.3rem;font-weight:600;margin:0 0 20px}.selector-form{display:flex;flex-direction:column;gap:20px}.performance-overview{margin-bottom:30px}.overview-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.overview-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;display:flex;gap:20px;padding:25px;transition:all .3s ease}.overview-card:hover{border-color:#10b981;box-shadow:0 20px 40px #0000004d;transform:translateY(-2px)}.overview-icon{align-items:center;border-radius:16px;color:#fff;display:flex;font-size:1.5rem;height:60px;justify-content:center;width:60px}.overview-icon:has(svg[data-lucide=FileText]){background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.overview-icon:has(svg[data-lucide=User]){background:linear-gradient(135deg,#10b981,#059669)}.overview-icon:has(svg[data-lucide=TrendingUp]){background:linear-gradient(135deg,#f59e0b,#d97706)}.overview-icon:has(svg[data-lucide=Calendar]){background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.overview-content h3{color:#f9fafb;font-size:2rem;font-weight:700;margin:0 0 5px}.overview-content p{color:#9ca3af;font-size:.9rem;margin:0}.charts-section{margin-bottom:30px}.chart-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.chart-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:25px}.chart-card h3{color:#f9fafb;font-size:1.2rem;font-weight:600;margin:0 0 20px}.chart-container{height:300px;position:relative}.reports-section h3{font-size:1.3rem}.reports-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.no-reports{align-items:center;background:#1f2937f2;display:flex;flex-direction:column;justify-content:center}.no-reports p{color:#f9fafb;font-size:1.1rem}.no-reports span{font-size:.9rem;opacity:.7}.report-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.report-card:hover{transform:translateY(-2px)}.report-header{margin-bottom:20px}.employee-info{gap:12px}.employee-avatar{background:#10b98133;border-radius:10px;color:#10b981}.employee-info h4{color:#f9fafb;font-size:1.1rem;font-weight:600;margin:0 0 5px}.report-count{color:#6b7280;font-size:.8rem}.performance-indicator{align-items:center;color:#10b981;display:flex;font-size:.9rem;font-weight:500;gap:8px}.report-content{display:flex;flex-direction:column;gap:15px}.work-summary h5{margin:0 0 10px}.work-summary p{background:#11182780;border:1px solid #4b556333;border-radius:8px;font-size:.9rem;line-height:1.6;padding:15px}.report-stats{display:flex;flex-direction:column;gap:8px}.stat-item{align-items:center;border-bottom:1px solid #4b556333;display:flex;justify-content:space-between;padding:8px 0}.stat-item:last-child{border-bottom:none}.stat-item .label{color:#9ca3af;font-size:.9rem;font-weight:500}.stat-item .value{color:#f9fafb;font-size:.9rem;font-weight:600}@media (max-width:768px){.chart-row,.form-row,.overview-grid,.reports-grid{grid-template-columns:1fr}.overview-content h3,.page-header h2{font-size:1.5rem}}.pdf-export{background:#111827;display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.export-config{margin-bottom:30px}.config-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:25px}.config-card h3{color:#f9fafb;font-size:1.3rem;font-weight:600;margin:0 0 20px}.config-form{display:flex;flex-direction:column;gap:20px}.form-group select{background:#111827cc;border:1px solid #4b55634d;border-radius:10px;color:#f9fafb;font-size:.95rem;padding:12px 15px;transition:all .3s ease}.form-group select:focus{background:#111827e6;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.report-preview{background:#11182780;border:1px solid #4b556333;border-radius:12px;padding:20px}.report-preview h4{color:#f9fafb;font-size:1.1rem;font-weight:600;margin:0 0 15px}.preview-content{display:flex;flex-direction:column;gap:12px}.preview-item{align-items:center;color:#d1d5db;display:flex;font-size:.9rem;gap:12px}.preview-item svg{color:#10b981;height:16px;width:16px}.generate-button{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:15px 30px;transition:all .3s ease}.generate-button:hover:not(:disabled){box-shadow:0 10px 25px #10b9814d;transform:translateY(-2px)}.generate-button:disabled{cursor:not-allowed;opacity:.7}.generate-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.export-history h3{color:#f9fafb;font-size:1.3rem;font-weight:600;margin-bottom:20px}.history-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.no-exports{align-items:center;background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;color:#9ca3af;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;padding:60px 20px;text-align:center}.no-exports svg{margin-bottom:15px;opacity:.5}.no-exports p{color:#f9fafb;font-size:1.1rem;margin-bottom:8px}.no-exports span{font-size:.9rem;opacity:.7}.calculate-salary-btn{align-items:center;background:linear-gradient(135deg,var(--accent-color),var(--accent-dark));border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .3s ease;width:100%}.calculate-salary-btn:hover:not(:disabled){box-shadow:0 4px 15px #ec48994d;transform:translateY(-1px)}.calculate-salary-btn:disabled{cursor:not-allowed;opacity:.6}.salary-results{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin:1.5rem 0;padding:1.5rem}.salary-results h4{align-items:center;color:var(--text-primary);display:flex;font-size:1.1rem;gap:.5rem;margin:0 0 1rem}.salary-results h4:before{content:"💰";font-size:1.2rem}.salary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.salary-item{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;padding:.75rem}.salary-item .label{color:var(--text-secondary);font-size:.85rem;font-weight:500}.salary-item .value{color:var(--text-primary);font-size:.9rem;font-weight:600}.salary-item .value.highlight{color:var(--success-color);font-size:1rem}.export-actions{margin-top:2rem}.export-actions,.generate-btn{display:flex;justify-content:center}.generate-btn{align-items:center;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border:none;border-radius:12px;box-shadow:0 4px 15px #6366f14d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;gap:.75rem;min-width:200px;padding:1rem 2rem;transition:all .3s ease}.generate-btn:hover:not(:disabled){box-shadow:0 6px 20px #6366f166;transform:translateY(-2px)}.generate-btn:disabled{cursor:not-allowed;opacity:.7}.spinner{border:2px solid #ffffff4d;border-top-color:#fff}.export-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .3s ease}.export-card:hover{border-color:var(--primary-color);box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.export-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.export-info{gap:1rem}.export-icon,.export-info{align-items:center;display:flex}.export-icon{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:10px;color:#fff;height:40px;justify-content:center;width:40px}.export-info h4{color:var(--text-primary);font-size:1.1rem;margin:0 0 .25rem}.generated-at{color:var(--text-secondary);font-size:.85rem}.export-status{align-items:center;display:flex}.status-badge{border-radius:20px;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.status-badge.completed{background:var(--success-bg);color:var(--success-color)}.status-badge.pending{background:var(--warning-bg);color:var(--warning-color)}.status-badge.failed{background:var(--danger-bg);color:var(--danger-color)}.export-content{align-items:center;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding-top:1rem}.file-info{display:flex;flex-direction:column;gap:.25rem}.file-name{color:var(--text-primary);font-size:.9rem;font-weight:500}.file-size{color:var(--text-tertiary);font-size:.8rem}.btn-download{align-items:center;background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.btn-download:hover{background:var(--primary-dark);transform:translateY(-1px)}.export-features h3{color:#f9fafb;font-size:1.3rem;font-weight:600;margin-bottom:20px}.features-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.feature-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:25px;text-align:center;transition:all .3s ease}.feature-card:hover{border-color:#10b981;transform:translateY(-5px)}.feature-icon{align-items:center;background:#10b98133;border-radius:16px;color:#10b981;display:flex;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.feature-card h4{color:#f9fafb;font-size:1.1rem;font-weight:600;margin:0 0 15px}.feature-card p{color:#9ca3af;font-size:.9rem;line-height:1.6;margin:0}@media (max-width:768px){.features-grid,.form-row,.history-grid{grid-template-columns:1fr}.export-content{align-items:flex-start;gap:15px}.page-header h2{font-size:1.5rem}.salary-grid{grid-template-columns:1fr}.export-header{align-items:flex-start;flex-direction:column;gap:1rem}.export-content{align-items:stretch;flex-direction:column;gap:1rem}.btn-download{justify-content:center}}.dashboard{background:#111827;min-height:100vh;width:100%}.dashboard-content,.dashboard-content>*{height:100%;width:100%}.dashboard-container{background:#111827;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.dashboard-header{color:#f9fafb;margin-bottom:3rem;text-align:center}.dashboard-header h1{color:#f9fafb;font-size:3rem;font-weight:700;margin-bottom:.5rem}.dashboard-header p{color:#9ca3af;font-size:1.2rem;font-weight:400}.check-in-out-section{margin-bottom:3rem}.check-in-out-card{background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b55634d;border-radius:16px;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;overflow:hidden;padding:2.5rem;position:relative;text-align:center}.check-in-out-card:before{background:linear-gradient(90deg,#10b981,#059669);content:"";height:4px;left:0;position:absolute;right:0;top:0}.check-in-out-card h3{color:#f9fafb;font-size:1.8rem;font-weight:600;margin-bottom:2rem}.time-display{display:flex;gap:3rem;justify-content:space-around;margin-bottom:2.5rem}.time-item{align-items:center;background:#4b556333;border:1px solid #4b55634d;border-radius:12px;color:#d1d5db;display:flex;font-size:1.3rem;gap:1rem;padding:1rem 1.5rem;transition:transform .3s ease}.time-item:hover{box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.time-item svg{background:#10b98133;border-radius:8px;color:#10b981;padding:.5rem}.check-in-out-buttons{display:flex;gap:1.5rem;justify-content:center}.check-in-button,.check-out-button{align-items:center;border:none;border-radius:12px;box-shadow:0 4px 6px -1px #0003;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:.75rem;padding:1rem 2rem;transition:all .3s ease}.check-in-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.check-in-button:hover{box-shadow:0 8px 15px #10b98166;transform:translateY(-2px)}.check-out-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.check-out-button:hover{box-shadow:0 8px 15px #3b82f666;transform:translateY(-2px)}.attendance-complete{align-items:center;background:#10b9811a;border:1px solid #10b981;border-radius:12px;color:#10b981;display:flex;font-weight:600;gap:.75rem;padding:1rem 2rem}.stats-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem}.stat-card{align-items:center;background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b55634d;border-radius:16px;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;display:flex;gap:1.5rem;padding:2rem;transition:all .3s ease}.stat-card:hover{border-color:#10b981;box-shadow:0 8px 25px #0006;transform:translateY(-2px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:16px;color:#fff;display:flex;font-size:1.5rem;height:60px;justify-content:center;width:60px}.stat-content h3{font-size:1.1rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stat-content h3,.stat-value{color:#f9fafb;margin:0 0 .5rem}.stat-value{font-size:1.8rem;font-weight:700}.stat-description{color:#9ca3af;font-size:.9rem;margin:0}.calendar-section{margin-bottom:3rem}.calendar-card{background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b55634d;border-radius:16px;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;overflow:hidden;padding:2rem;position:relative}.calendar-card:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8);content:"";height:4px;left:0;position:absolute;right:0;top:0}.calendar-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:2rem}.calendar-title-section{display:flex;flex:1 1;flex-direction:column;gap:1rem;min-width:0}.calendar-navigation{align-items:center;background:#4b55631a;border:1px solid #4b556333;border-radius:12px;display:flex;flex-wrap:wrap;gap:1rem;min-width:0;padding:1rem}.nav-button{align-items:center;background:#4b556333;border:1px solid #4b55634d;border-radius:8px;color:#9ca3af;cursor:pointer;display:flex;height:40px;justify-content:center;min-width:40px;padding:.5rem;transition:all .3s ease}.nav-button:hover{background:#4b55634d;color:#f9fafb;transform:translateY(-1px)}.current-month-year{align-items:center;display:flex;flex:1 1;gap:1rem;justify-content:center;min-width:0}.month-year-text{color:#f9fafb;font-size:1.1rem;font-weight:600;text-align:center;white-space:nowrap}.today-button{background:#10b98133;border:1px solid #10b9814d;border-radius:6px;color:#10b981;cursor:pointer;font-size:.8rem;font-weight:500;padding:.4rem .8rem;transition:all .3s ease;white-space:nowrap}.today-button:hover{background:#10b9814d;color:#059669;transform:translateY(-1px)}.calendar-header h3{color:#f9fafb;font-size:1.5rem;font-weight:600;margin:0}.calendar-legend{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.legend-item{align-items:center;color:#9ca3af;display:flex;font-size:.9rem;gap:.5rem;white-space:nowrap}.legend-color{border-radius:4px;flex-shrink:0;height:16px;width:16px}.legend-color.today{background:#10b981;box-shadow:0 2px 4px #10b9814d}.legend-color.leave{background:#ef4444}.legend-color.wfh{background:#3b82f6}.calendar-grid{display:flex;flex-direction:column;gap:1rem;overflow-x:auto}.calendar-weekdays{color:#9ca3af;font-size:.9rem;font-weight:600;text-align:center}.calendar-days,.calendar-weekdays{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(7,1fr);min-width:280px}.calendar-day{align-items:center;aspect-ratio:1;border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;justify-content:center;min-height:40px;min-width:40px;transition:all .3s ease}.calendar-day:hover{background:#4b556333}.calendar-day.empty{background:#0000;border:none;cursor:default}.calendar-day.empty:hover{background:#0000;transform:none}.calendar-day.other-month{color:#6b7280}.calendar-day.today{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981;box-shadow:0 4px 12px #10b98166;color:#fff;font-weight:700;position:relative;transform:scale(1.05);z-index:2}.calendar-day.today:hover{background:#10b98180;transform:scale(1.08)}.today-indicator{background:#10b981;border:2px solid #fff;border-radius:50%;box-shadow:0 0 4px #10b98199;height:8px;position:absolute;right:-2px;top:-2px;width:8px}.calendar-day.leave{background:#ef444433;border-color:#ef4444;color:#ef4444}.calendar-day.leave.today{background:#ef444499;border-color:#ef4444;box-shadow:0 2px 8px #ef444466;color:#fff;font-weight:700;transform:scale(1.05)}.calendar-day.wfh{background:#3b82f633;border-color:#3b82f6;color:#3b82f6}.calendar-day.wfh.today{background:#3b82f699;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f666;color:#fff;font-weight:700;transform:scale(1.05)}.calendar-day-content{align-items:center;display:flex;flex-direction:column;gap:2px;height:100%;justify-content:center;width:100%}.day-number{font-size:.9rem;font-weight:500}.day-type{background:#fff3;border-radius:3px;font-size:.7rem;font-weight:700;min-width:12px;padding:1px 3px;text-align:center}.calendar-day.leave .day-type{background:#ef44444d;color:#ef4444}.calendar-day.wfh .day-type{background:#3b82f64d;color:#3b82f6}.calendar-day.today .day-type{background:#ffffff4d;color:#fff}@keyframes todayPulse{0%{box-shadow:0 2px 8px #10b9814d;transform:scale(1.05)}50%{box-shadow:0 4px 16px #10b98199;transform:scale(1.15)}to{box-shadow:0 2px 8px #10b9814d;transform:scale(1.05)}}.calendar-day.today{animation:todayPulse 2s ease-in-out}.loading{font-size:1.1rem;height:200px}@media (max-width:1024px){.dashboard-container{padding:.75rem}.calendar-card{padding:1.5rem}.calendar-header{gap:1rem}.calendar-navigation{padding:.75rem}}@media (max-width:768px){.dashboard-header h1{font-size:2rem}.dashboard-header p{font-size:1rem}.check-in-out-card{padding:1.5rem}.time-display{flex-direction:column;gap:1rem}.stats-grid{gap:1rem;grid-template-columns:repeat(2,1fr)}.calendar-card{padding:1rem}.calendar-header{align-items:stretch;flex-direction:column;gap:1rem}.calendar-title-section{text-align:center}.calendar-title-section h3{font-size:1.4rem}.calendar-navigation{align-items:center;gap:.5rem;justify-content:space-between;padding:.75rem;width:100%}.current-month-year{flex:1 1;justify-content:center;min-width:auto}.month-year-text{font-size:1rem}.today-button{font-size:.75rem;padding:.3rem .6rem}.calendar-legend{gap:.75rem}.calendar-day,.calendar-weekdays,.legend-item{font-size:.8rem}.calendar-day{min-height:35px;min-width:35px}}@media (max-width:640px){.stats-grid{grid-template-columns:1fr}.calendar-navigation{align-items:center;flex-direction:row;gap:.5rem;justify-content:space-between;padding:.75rem}.current-month-year{flex:1 1;justify-content:center;order:0}.nav-button{flex-shrink:0;height:40px;min-width:40px;padding:.5rem}.month-year-text{font-size:1rem}.today-button{font-size:.8rem;padding:.4rem .8rem}.calendar-days,.calendar-weekdays{gap:.25rem}.calendar-day{font-size:.75rem;min-height:30px;min-width:30px}.day-number{font-size:.8rem}.day-type{font-size:.6rem}}@media (max-width:480px){.dashboard-container{padding:.5rem}.dashboard-header h1{font-size:1.5rem}.dashboard-header p{font-size:.9rem}.check-in-out-card{padding:1rem}.check-in-out-card h3{font-size:1.4rem}.time-item{font-size:1rem;padding:.75rem 1rem}.calendar-card{padding:.75rem}.calendar-title-section h3{font-size:1.2rem}.calendar-navigation{gap:.25rem;padding:.75rem}.nav-button{height:35px;min-width:35px;padding:.4rem}.month-year-text{font-size:.9rem}.today-button{font-size:.7rem;padding:.3rem .6rem}.calendar-legend{gap:.5rem}.legend-item{font-size:.7rem}.legend-color{height:12px;width:12px}.calendar-weekdays{font-size:.7rem;gap:.2rem}.calendar-days{gap:.2rem}.calendar-day{min-height:25px;min-width:25px}.calendar-day,.day-number{font-size:.7rem}.day-type{font-size:.5rem;padding:0 2px}}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__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-popper[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{margin-left:-4px;position:absolute;width:0}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:after,.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before,.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:after,.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before{border:8px solid #0000;box-sizing:initial;content:"";height:0;left:-8px;position:absolute;width:1px;z-index:-1}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before,.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before{border-bottom-color:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{margin-top:-8px;top:0}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:after,.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before{border-bottom-color:#f0f0f0;border-top:none}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:after{top:0}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before{border-bottom-color:#aeaeae;top:-1px}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{bottom:0;margin-bottom:-8px}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:after,.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before{border-bottom:none;border-top-color:#fff}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:after{bottom:0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before{border-top-color:#aeaeae;bottom:-1px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;position:relative}.react-datepicker--time-only .react-datepicker__triangle{left:35px}.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__triangle{left:50px;position:absolute}.react-datepicker-popper{z-index:1}.react-datepicker-popper[data-placement^=bottom]{padding-top:10px}.react-datepicker-popper[data-placement=bottom-end] .react-datepicker__triangle,.react-datepicker-popper[data-placement=top-end] .react-datepicker__triangle{left:auto;right:50px}.react-datepicker-popper[data-placement^=top]{padding-bottom:10px}.react-datepicker-popper[data-placement^=right]{padding-left:8px}.react-datepicker-popper[data-placement^=right] .react-datepicker__triangle{left:auto;right:42px}.react-datepicker-popper[data-placement^=left]{padding-right:8px}.react-datepicker-popper[data-placement^=left] .react-datepicker__triangle{left:42px;right:auto}.react-datepicker__header{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.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__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.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{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.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{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.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;margin:2px;width:4rem}.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;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.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{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:initial;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.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{background-color:#f0f0f0;cursor:pointer}.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{background-color:initial;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.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,.react-datepicker__week-number--keyboard-selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__week-number--keyboard-selected{background-color:#2a87d0;border-radius:.3rem;color:#fff}.react-datepicker__week-number--keyboard-selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:hover,.react-datepicker__month-text:hover,.react-datepicker__quarter-text:hover,.react-datepicker__year-text:hover{background-color:#f0f0f0;border-radius:.3rem}.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{background-color:#3dcc4a;border-radius:.3rem;color:#fff}.react-datepicker__day--highlighted:hover,.react-datepicker__month-text--highlighted:hover,.react-datepicker__quarter-text--highlighted:hover,.react-datepicker__year-text--highlighted: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{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .holiday-overlay,.react-datepicker__month-text--holidays .holiday-overlay,.react-datepicker__quarter-text--holidays .holiday-overlay,.react-datepicker__year-text--holidays .holiday-overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__day--holidays:hover,.react-datepicker__month-text--holidays:hover,.react-datepicker__quarter-text--holidays:hover,.react-datepicker__year-text--holidays:hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .holiday-overlay,.react-datepicker__month-text--holidays:hover .holiday-overlay,.react-datepicker__quarter-text--holidays:hover .holiday-overlay,.react-datepicker__year-text--holidays:hover .holiday-overlay{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:hover,.react-datepicker__day--in-selecting-range:hover,.react-datepicker__day--selected:hover,.react-datepicker__month-text--in-range:hover,.react-datepicker__month-text--in-selecting-range:hover,.react-datepicker__month-text--selected:hover,.react-datepicker__quarter-text--in-range:hover,.react-datepicker__quarter-text--in-selecting-range:hover,.react-datepicker__quarter-text--selected:hover,.react-datepicker__year-text--in-range:hover,.react-datepicker__year-text--in-selecting-range:hover,.react-datepicker__year-text--selected: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{background-color:#bad9f1;border-radius:.3rem;color:#000}.react-datepicker__day--keyboard-selected:hover,.react-datepicker__month-text--keyboard-selected:hover,.react-datepicker__quarter-text--keyboard-selected:hover,.react-datepicker__year-text--keyboard-selected:hover{background-color:#1d5d90}.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__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__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__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__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__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__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__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{color:#ccc;cursor:default}.react-datepicker__day--disabled:hover,.react-datepicker__month-text--disabled:hover,.react-datepicker__quarter-text--disabled:hover,.react-datepicker__year-text--disabled:hover{background-color:initial}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:initial;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-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-year-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__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:initial;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:"×";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;-webkit-clip-path:circle(0);clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}.mode-selector{display:flex;gap:.5rem;margin-bottom:1rem}.mode-btn{background:#0000;border:2px solid #374151;border-radius:6px;color:#9ca3af;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.mode-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.mode-btn:hover:not(.active){border-color:#6b7280;color:#d1d5db}.calendar-container{background:#1f2937;border:1px solid #374151;border-radius:12px;padding:1rem}.selected-dates-info{background:#111827;border:1px solid #374151;border-radius:8px;margin-top:1rem;padding:1rem}.selected-dates-info h4{color:#f9fafb;font-size:1rem;font-weight:600;margin:0 0 .75rem}.selected-dates-list{display:flex;flex-wrap:wrap;gap:.5rem}.date-chip{background:#3b82f6;border-radius:6px;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.375rem .75rem}.date-chip,.remove-date{align-items:center;color:#fff}.remove-date{background:none;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.2rem;height:20px;justify-content:center;line-height:1;margin-left:.25rem;padding:0;transition:background-color .2s ease;width:20px}.remove-date:hover{background:#fff3}.react-datepicker{background:#1f2937!important;border:1px solid #374151!important;border-radius:8px!important;font-family:inherit!important}.react-datepicker__header{background:#111827!important;border-bottom:1px solid #374151!important;border-radius:8px 8px 0 0!important}.react-datepicker__current-month,.react-datepicker__day-name{color:#f9fafb!important}.react-datepicker__day{color:#d1d5db!important}.react-datepicker__day:hover{background:#374151!important;color:#f9fafb!important}.react-datepicker__day--selected{background:#3b82f6!important;color:#fff!important}.react-datepicker__day--highlighted{background:#10b981!important;color:#fff!important}.react-datepicker__day--disabled{color:#6b7280!important}.react-datepicker__navigation{background:none!important;border:none!important}.react-datepicker__navigation-icon:before{border-color:#9ca3af!important}.react-datepicker__navigation:hover .react-datepicker__navigation-icon:before{border-color:#f9fafb!important}.leave-wfh-container{background:#111827;margin:0 auto;max-width:1400px;min-height:100vh;padding:1rem}.leave-wfh-header{align-items:center;border-bottom:1px solid #4b55634d;display:flex;gap:50px;justify-content:space-between;margin-bottom:3rem;padding-bottom:1.5rem}.leave-wfh-header h1{color:#f9fafb;font-size:2.5rem;font-weight:700;margin:0}.header-actions{display:flex;gap:1rem}.add-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 4px 6px -1px #0003;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;padding:.75rem 1.5rem;transition:all .3s ease}.leave-btn{background:#10b981;color:#fff}.leave-btn:hover{background:#059669;box-shadow:0 8px 15px #10b98166;transform:translateY(-2px)}.wfh-btn{background:#3b82f6;color:#fff}.wfh-btn:hover{background:#2563eb;box-shadow:0 8px 15px #3b82f666;transform:translateY(-2px)}.leave-stats-overview{margin-bottom:3rem}.leave-stats-overview h2{color:#f9fafb;font-size:2rem;font-weight:600;margin-bottom:2rem}.summary-stats{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem}.summary-card{align-items:center;background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b55634d;border-radius:16px;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;display:flex;gap:1.5rem;padding:2rem;transition:all .3s ease}.summary-card:hover{border-color:#10b981;box-shadow:0 8px 25px #0006;transform:translateY(-2px)}.summary-icon{align-items:center;border-radius:16px;color:#fff;display:flex;font-size:1.5rem;height:60px;justify-content:center;width:60px}.summary-icon.leave{background:linear-gradient(135deg,#10b981,#059669)}.summary-icon.wfh{background:linear-gradient(135deg,#3b82f6,#2563eb)}.summary-icon.pending{background:linear-gradient(135deg,#f59e0b,#d97706)}.summary-content h3{color:#9ca3af;font-size:1.1rem;font-weight:500;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.summary-numbers{align-items:center;color:#f9fafb;display:flex;font-size:1.8rem;font-weight:700;gap:.5rem;margin-bottom:.5rem}.summary-numbers .used{color:#10b981}.summary-numbers .separator{color:#6b7280}.summary-numbers .total{color:#f9fafb}.summary-numbers .status{color:#10b981;font-size:.9rem;letter-spacing:.5px;text-transform:uppercase}.summary-content p{color:#9ca3af;font-size:.9rem;margin:0}.management-grid{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin-bottom:3rem}.management-section{background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b55634d;border-radius:16px;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;padding:2rem}.management-section h3{align-items:center;color:#f9fafb;display:flex;font-size:1.5rem;font-weight:600;gap:.75rem;margin-bottom:2rem}.management-section h3 svg{color:#10b981}.items-grid{display:flex;flex-direction:column;gap:1rem}.item-card{background:#111827cc;border:1px solid #4b556333;border-radius:12px;padding:1.5rem;transition:all .3s ease}.item-card:hover{border-color:#10b981;transform:translateY(-1px)}.item-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.item-info h4{color:#f9fafb;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.item-info p{color:#9ca3af;font-size:.9rem;margin:0}.item-status{border-radius:20px;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.item-status.pending{background:#f59e0b1a;color:#f59e0b}.item-status.approved{background:#10b9811a;color:#10b981}.item-status.rejected{background:#ef44441a;color:#ef4444}.item-details{display:flex;flex-direction:column;gap:.5rem}.detail-item{color:#d1d5db;gap:.5rem}.detail-item svg{color:#10b981;height:16px;width:16px}.approval-type{background:#10b9811a;border:1px solid #10b98133;border-radius:6px;color:#10b981;font-size:.8rem;font-weight:500;padding:.25rem .5rem}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b55634d;border-radius:16px;box-shadow:0 20px 40px #00000080;max-width:500px;padding:2rem;width:90%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.modal-header h2{color:#f9fafb;font-size:1.5rem;font-weight:600;margin:0}.close-btn{background:none;border:none;border-radius:8px;color:#9ca3af;cursor:pointer;font-size:1.5rem;padding:.5rem;transition:all .3s ease}.close-btn:hover{background:#4b556333;color:#f9fafb}.request-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{gap:.5rem}.form-group input,.form-group select,.form-group textarea{background:#111827cc;border:1px solid #4b55634d;border-radius:8px;color:#f9fafb;font-size:.95rem;padding:.75rem 1rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#111827e6;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#6b7280}.form-group textarea{min-height:100px;resize:vertical}.form-group .date-range-info{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:6px;color:#93c5fd;font-size:.85rem;margin-top:.5rem;padding:.75rem}.form-group .date-range-info .highlight{color:#60a5fa;font-weight:600}.form-group input[type=date]{transition:all .3s ease}.form-group input[type=date]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group label{align-items:center;display:flex;gap:.5rem}.form-group label .optional-badge{background:#4b55634d;border-radius:4px;color:#9ca3af;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.cancel-btn,.submit-btn{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.cancel-btn{background:#4b556333;color:#9ca3af}.cancel-btn:hover{background:#4b55634d;color:#f9fafb}.submit-btn{background:#10b981;color:#fff}.submit-btn:hover{background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.loading{align-items:center;color:#9ca3af;display:flex;gap:.5rem;justify-content:center}.spinner{animation:spin 1s linear infinite;border:2px solid #4b55634d;border-radius:50%;border-top-color:#10b981;height:16px;width:16px}.empty-state{color:#9ca3af;padding:3rem 2rem;text-align:center}.empty-state svg{height:64px;margin:0 auto 1rem;opacity:.5;width:64px}.empty-state h3{color:#f9fafb;font-size:1.25rem;margin-bottom:.5rem}.empty-state p{font-size:.95rem;margin:0}@media (max-width:1024px){.management-grid{gap:2rem;grid-template-columns:1fr}.summary-stats{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width:768px){.leave-wfh-container{padding:1rem}.leave-wfh-header{align-items:flex-start;flex-direction:column;gap:1rem}.leave-wfh-header h1{font-size:2rem}.header-actions{justify-content:center;width:100%}.summary-stats{grid-template-columns:1fr}.summary-card{padding:1.5rem}.summary-content h3{font-size:2rem}.modal-content{padding:1.5rem;width:95%}.form-actions{flex-direction:column}.form-actions button{width:100%}}@media (max-width:480px){.leave-wfh-header h1{font-size:1.75rem}.summary-card{flex-direction:column;text-align:center}.item-header{align-items:flex-start;flex-direction:column;gap:1rem}}.user-report-upload{background:#111827;display:flex;flex-direction:column;gap:30px;margin:0;max-width:100%;min-height:100vh;padding:1rem}.page-header{flex-direction:column;margin-bottom:20px}.page-header h2{font-size:2rem;margin-bottom:10px}.upload-section{margin-bottom:30px}.upload-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:25px}.upload-card h3{color:#f9fafb;font-size:1.3rem;font-weight:600;margin:0 0 20px}.upload-type-selector{background:#11182780;border:1px solid #4b55634d;border-radius:12px;display:flex;gap:15px;margin-bottom:25px;padding:8px}.type-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:8px;color:#9ca3af;cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .3s ease}.type-btn:hover{background:#4b556333;color:#d1d5db}.type-btn.active{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981;box-shadow:0 4px 12px #10b9814d;color:#fff}.upload-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#f9fafb;font-size:.9rem;font-weight:500}.form-group input,.form-group select{background:#111827cc;border:1px solid #4b55634d;border-radius:10px;color:#f9fafb;font-size:.95rem;padding:12px 15px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{background:#111827e6;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.task-textarea{background:#111827cc;border:1px solid #4b55634d;border-radius:10px;color:#f9fafb;font-family:inherit;font-size:.95rem;padding:15px;resize:vertical;transition:all .3s ease}.task-textarea:focus{background:#111827e6;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.task-textarea::placeholder{color:#6b7280}.task-info{color:#9ca3af;font-size:.85rem;margin-top:5px}.file-upload{cursor:pointer;position:relative}.file-input{cursor:pointer;height:100%;opacity:0;position:absolute;width:100%}.file-upload-ui{align-items:center;background:#111827cc;border:2px dashed #4b556380;border-radius:10px;color:#9ca3af;display:flex;gap:12px;padding:15px;transition:all .3s ease}.file-upload-ui:hover{background:#111827e6;border-color:#10b981;color:#d1d5db}.file-upload-ui svg{color:#10b981}.file-info{color:#9ca3af;font-size:.85rem;margin-top:5px}.upload-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;box-shadow:0 4px 12px #10b9814d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:15px 30px;transition:all .3s ease}.upload-button:hover:not(:disabled){box-shadow:0 8px 20px #10b98166;transform:translateY(-2px)}.upload-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.upload-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.reports-section{margin-top:30px}.reports-section h3{color:#f9fafb;font-size:1.5rem;font-weight:600;margin-bottom:20px}.reports-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.no-reports{background:#1f293780;border:1px solid #4b55634d;border-radius:16px;color:#9ca3af;grid-column:1/-1;padding:60px 20px;text-align:center}.no-reports svg{margin-bottom:15px;opacity:.5}.no-reports p{color:#d1d5db;font-size:1.2rem;font-weight:600;margin-bottom:8px}.no-reports span{font-size:.95rem}.report-card{background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:20px;transition:all .3s ease}.report-card:hover{border-color:#10b981;box-shadow:0 8px 25px #0000004d}.report-header{justify-content:space-between;margin-bottom:15px}.report-header,.report-info{align-items:center;display:flex}.report-info{gap:12px}.employee-avatar{background:linear-gradient(135deg,#10b981,#059669);height:40px;width:40px}.report-info h4{color:#f9fafb;font-size:1.1rem;font-weight:600;margin:0}.report-info .date{color:#9ca3af;font-size:.9rem}.report-actions{display:flex;gap:8px}.report-actions button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .3s ease;width:32px}.btn-edit{background:#3b82f633;color:#3b82f6}.btn-edit:hover{background:#3b82f64d}.btn-save{background:#10b98133;color:#10b981}.btn-save:hover{background:#10b9814d}.btn-cancel{background:#9ca3af33;color:#9ca3af}.btn-cancel:hover{background:#9ca3af4d}.btn-download{background:#f59e0b33;color:#f59e0b}.btn-download:hover{background:#f59e0b4d}.btn-delete{background:#ef444433;color:#ef4444}.btn-delete:hover{background:#ef44444d}.report-content{margin-top:15px}.work-summary{word-wrap:break-word;max-width:100%;overflow:hidden;overflow-wrap:break-word;word-break:break-word}.work-summary h5{color:#f9fafb;font-size:1rem;font-weight:600;margin:0 0 8px}.work-summary p{word-wrap:break-word;color:#d1d5db;font-size:.95rem;line-height:1.5;margin:0;max-width:100%;overflow-wrap:break-word;white-space:pre-wrap;word-break:break-word}.report-meta{align-items:center;border-top:1px solid #4b55634d;display:flex;justify-content:space-between;margin-top:15px;padding-top:15px}.file-info,.upload-date{align-items:center;color:#9ca3af;display:flex;font-size:.85rem;gap:6px}.edit-summary{margin-top:15px}.edit-summary label{color:#f9fafb;display:block;font-weight:500;margin-bottom:8px}.edit-summary textarea{background:#111827cc;border:1px solid #4b55634d;border-radius:8px;color:#f9fafb;font-family:inherit;font-size:.95rem;padding:12px;resize:vertical;width:100%}.edit-summary textarea:focus{border-color:#10b981;outline:none}.loading-container{color:#9ca3af;height:200px}.loading-spinner{border:3px solid #4b55634d;margin-bottom:15px}@media (max-width:768px){.upload-type-selector{flex-direction:column}.reports-grid{grid-template-columns:1fr}.report-header{align-items:flex-start;flex-direction:column;gap:10px}.report-actions{align-self:flex-end}.report-meta{align-items:flex-start;flex-direction:column;gap:8px}}.profile-page{margin:0 auto;max-width:800px;min-height:calc(100vh - 100px);padding:2rem}.page-header h2{color:#f9fafb;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.page-header p{color:#9ca3af}.profile-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:16px;padding:3rem 2rem;text-align:center}.profile-avatar{align-items:center;background:#10b98133;border:4px solid #10b9814d;border-radius:50%;color:#10b981;display:flex;height:120px;justify-content:center;margin:0 auto 2rem;width:120px}.profile-info{display:flex;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:500px}.info-item{align-items:center;background:#4b55631a;border:1px solid #4b556333;border-radius:12px;display:flex;gap:1rem;padding:1.5rem;transition:all .3s ease}.info-item:hover{background:#4b556333;border-color:#10b9814d;transform:translateY(-2px)}.info-icon{align-items:center;background:#10b98133;border:1px solid #10b9814d;border-radius:12px;color:#10b981;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.info-content{flex:1 1;text-align:left}.info-content label{color:#9ca3af;display:block;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.info-content span{color:#f9fafb;font-size:1.25rem;font-weight:500;line-height:1.4}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #4b55634d;border-radius:50%;border-top-color:#10b981;height:40px;margin-bottom:1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.profile-page{padding:1rem}.page-header h2{font-size:2rem}.profile-container{padding:2rem 1rem}.profile-avatar{height:100px;width:100px}.info-item{padding:1rem}.info-content span{font-size:1.1rem}}@media (max-width:480px){.page-header h2{font-size:1.75rem}.info-item{flex-direction:column}.info-content,.info-item{text-align:center}.info-icon{align-self:center}}.hierarchy-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:20px;margin-top:2rem;overflow:hidden;position:relative}.hierarchy-section:before{animation:shimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#10b981,#059669,#10b981);background-size:200% 100%;content:"";height:3px;left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%,to{background-position:200% 0}50%{background-position:-200% 0}}.hierarchy-header{align-items:center;background:linear-gradient(135deg,#4b55631a,#10b9810d);cursor:pointer;display:flex;justify-content:space-between;overflow:hidden;padding:1.5rem 2rem;position:relative;transition:all .3s ease}.hierarchy-header:before{background:linear-gradient(90deg,#0000,#10b9811a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.hierarchy-header:hover:before{left:100%}.hierarchy-header:hover{background:linear-gradient(135deg,#10b9811a,#4b55631a);transform:translateY(-1px)}.hierarchy-header h3{color:#f9fafb;font-size:1.2rem;font-weight:700;letter-spacing:1px;margin:0;position:relative;text-transform:uppercase;z-index:1}.hierarchy-content{background:radial-gradient(circle at top,#4b55630d 0,#0000 70%);padding:2rem}.loading-hierarchy{align-items:center;color:#9ca3af;padding:2rem}.hierarchy-tree,.loading-hierarchy{display:flex;flex-direction:column;gap:1.5rem}.hierarchy-tree{position:relative}.hierarchy-tree:before{background:linear-gradient(180deg,#0000 0,#10b9814d 20%,#10b9814d 80%,#0000);bottom:0;content:"";left:50%;position:absolute;top:0;transform:translateX(-50%);width:2px;z-index:0}.hierarchy-level{flex-direction:column;z-index:1}.hierarchy-level,.hierarchy-person{align-items:center;display:flex;position:relative}.hierarchy-person{background:linear-gradient(135deg,#4b55631a,#4b55630d);border:2px solid #4b556333;border-radius:16px;box-shadow:0 4px 20px #0000001a;gap:1.5rem;min-width:350px;overflow:hidden;padding:1.5rem;transition:all .4s cubic-bezier(.4,0,.2,1)}.hierarchy-person:before{background:linear-gradient(90deg,#0000,#10b9811a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.hierarchy-person:hover:before{left:100%}.hierarchy-person:hover{background:linear-gradient(135deg,#4b556333,#10b9811a);border-color:#10b98166;box-shadow:0 8px 30px #10b98133;transform:translateY(-4px) scale(1.02)}.person-avatar{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;box-shadow:0 4px 15px #10b9814d;color:#fff;display:flex;font-size:1.2rem;font-weight:700;height:50px;justify-content:center;position:relative;transition:all .3s ease;width:50px}.person-avatar:before{background:linear-gradient(135deg,#10b981,#059669,#10b981);border-radius:50%;bottom:-2px;content:"";left:-2px;opacity:0;position:absolute;right:-2px;top:-2px;transition:opacity .3s ease;z-index:-1}.hierarchy-person:hover .person-avatar:before{opacity:1}.hierarchy-person:hover .person-avatar{box-shadow:0 6px 20px #10b98166;transform:scale(1.1)}.person-info{flex:1 1;position:relative}.person-name{color:#f9fafb;font-size:1.1rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 1px 2px #0000004d}.person-details{color:#9ca3af;display:flex;flex-wrap:wrap;font-size:.85rem;gap:1rem}.person-id{background:linear-gradient(135deg,#10b98126,#10b9810d);border:1px solid #10b9814d;border-radius:8px;font-weight:600;overflow:hidden;padding:.4rem .8rem;position:relative}.dotted-line-person .person-id{background:linear-gradient(135deg,#10b98133,#10b9811a)!important;border:1px solid #10b98166!important;color:#10b981!important}.dotted-line-person .person-designation{background:#10b9811a!important;border:1px solid #10b9814d!important;color:#10b981!important}.person-id:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.person-id:hover:before{left:100%}.person-designation{background:#4b55631a;border:1px solid #4b556333;border-radius:8px;font-style:italic;padding:.4rem .8rem}.hierarchy-connector{background:linear-gradient(180deg,#10b98199,#10b9814d,#10b98199);border-radius:2px;height:30px;margin:1rem 0;overflow:hidden;position:relative;width:3px}.hierarchy-connector:before{animation:flow 2s ease-in-out infinite;background:linear-gradient(180deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:0;position:absolute;right:0;top:0}@keyframes flow{0%,to{transform:translateY(-100%)}50%{transform:translateY(100%)}}.no-hierarchy{background:radial-gradient(circle,#4b55630d 0,#0000 70%);border:2px dashed #4b556333;border-radius:12px;color:#9ca3af;padding:3rem 2rem;text-align:center}.no-hierarchy p{font-size:1.1rem;font-style:italic;margin:0}.level-0{opacity:1;transform:scale(1)}.level-0 .hierarchy-person{border-color:#10b98166;box-shadow:0 6px 25px #10b98126}.level-1{opacity:.95;transform:scale(.98)}.level-1 .hierarchy-person{border-color:#10b9814d}.level-2{opacity:.9;transform:scale(.96)}.level-2 .hierarchy-person{border-color:#10b98133}.level-3{opacity:.85;transform:scale(.94)}.level-3 .hierarchy-person{border-color:#10b9811a}.level-4{opacity:.8;transform:scale(.92)}.level-4 .hierarchy-person{border-color:#4b556333}.hierarchy-container{display:flex;flex-direction:column;gap:2rem}.hierarchy-section-inner{background:#4b55630d;border:1px solid #4b55631a;border-radius:12px;overflow:hidden;padding:1.5rem;position:relative}.hierarchy-section-inner:has(.dotted-line-tree){background:linear-gradient(135deg,#10b98108,#4b55630d);border:1px solid #10b98133;box-shadow:0 4px 20px #10b9810d}.hierarchy-section-inner:has(.dotted-line-tree):before{background:linear-gradient(90deg,#0000,#10b98166,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}.hierarchy-title{color:#f9fafb;font-size:1.1rem;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;text-align:center;text-transform:uppercase}.hierarchy-section-inner:has(.dotted-line-tree) .hierarchy-title{color:#10b981;position:relative;text-shadow:0 0 10px #10b9814d}.hierarchy-section-inner:has(.dotted-line-tree) .hierarchy-title:after{background:linear-gradient(90deg,#0000,#10b981,#0000);bottom:-5px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.dotted-line-tree{position:relative}.dotted-line-tree:before{background:repeating-linear-gradient(180deg,#10b98199 0,#10b98199 8px,#0000 0,#0000 16px);bottom:0;content:"";left:50%;position:absolute;top:0;transform:translateX(-50%);width:3px;z-index:0}.dotted-line-person{background:linear-gradient(135deg,#10b98114,#4b556314)!important;border:2px dashed #10b98180!important;box-shadow:0 4px 20px #10b9811a!important}.dotted-line-person:hover{background:linear-gradient(135deg,#10b98126,#4b556326)!important;border-color:#10b981cc!important;box-shadow:0 8px 30px #10b98133!important;transform:translateY(-4px) scale(1.02)!important}.dotted-line-avatar{background:linear-gradient(135deg,#10b981,#059669)!important;border:2px dashed #fff6!important;box-shadow:0 4px 15px #10b98166!important}.dotted-line-person:hover .dotted-line-avatar{box-shadow:0 6px 20px #10b98199!important;transform:scale(1.1)!important}.dotted-line-connector{background:repeating-linear-gradient(180deg,#10b98199 0,#10b98199 6px,#0000 0,#0000 12px)!important;border-radius:2px!important;height:30px!important;margin:1rem 0!important;overflow:hidden!important;position:relative!important;width:3px!important}.dotted-line-connector:before{animation:flow 2s ease-in-out infinite;background:linear-gradient(180deg,#0000,#fff3,#0000);content:"";height:100%;left:0;position:absolute;right:0;top:0}@media (max-width:768px){.hierarchy-person{min-width:280px;padding:1rem}.person-avatar{font-size:1rem;height:40px;width:40px}.person-name{font-size:1rem}.person-details{flex-direction:column;gap:.5rem}.hierarchy-container{gap:1.5rem}.hierarchy-section-inner{padding:1rem}}.request-approvals{margin:0 auto;max-width:1400px;padding:2rem}.page-header{margin-bottom:2rem;text-align:center}.page-header h1{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.page-header p{color:var(--text-secondary);font-size:1.1rem;margin:0}.tabs-container{margin-bottom:2rem}.tabs{border-bottom:2px solid var(--border-color);gap:1rem;justify-content:center;padding-bottom:1rem}.tab,.tabs{display:flex}.tab{align-items:center;background:#0000;border:none;border-radius:12px;color:var(--text-secondary);cursor:pointer;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;position:relative;transition:all .3s ease}.tab:hover{background:#4b55631a;color:var(--text-primary)}.tab.active{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));box-shadow:0 4px 15px #6366f14d;color:#fff}.count-badge{background:#fff3;border-radius:12px;color:inherit;font-size:.8rem;font-weight:600;min-width:20px;padding:.25rem .5rem;text-align:center}.requests-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:2rem}.requests-section h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.no-requests{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.no-requests svg{margin-bottom:1rem;opacity:.5}.no-requests p{font-size:1.1rem;margin:0}.requests-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.request-card{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:16px;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s ease}.request-card:hover{border-color:var(--primary-color);box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.request-card:before{background:linear-gradient(90deg,var(--primary-color),var(--accent-color));content:"";height:4px;left:0;position:absolute;right:0;top:0}.request-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.employee-info{align-items:center;display:flex;gap:1rem}.employee-avatar{align-items:center;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));border-radius:50%;box-shadow:0 4px 15px #6366f14d;color:#fff;display:flex;font-size:1.2rem;font-weight:700;height:50px;justify-content:center;width:50px}.employee-details h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.employee-details p{color:var(--text-secondary);font-size:.9rem;margin:0}.request-status{align-items:center;display:flex;font-size:.9rem;font-weight:500;gap:.5rem}.status-icon.pending{color:var(--warning-color)}.status-icon.approved{color:var(--success-color)}.status-icon.rejected{color:var(--danger-color)}.request-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.detail-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;gap:.75rem}.detail-item svg{color:var(--primary-color);flex-shrink:0}.leave-type{background:#6366f11a;border-radius:6px;color:var(--primary-color);font-size:.8rem;font-weight:500;padding:.25rem .5rem}.reason{background:#4b55631a;border-left:3px solid var(--primary-color);border-radius:8px;font-style:italic;padding:.5rem .75rem}.request-actions{display:flex;gap:1rem}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .3s ease}.approve-btn{background:linear-gradient(135deg,var(--success-color),#059669);box-shadow:0 4px 15px #10b9814d;color:#fff}.approve-btn:hover{box-shadow:0 6px 20px #10b98166;transform:translateY(-2px)}.reject-btn{background:linear-gradient(135deg,var(--danger-color),#dc2626);box-shadow:0 4px 15px #ef44444d;color:#fff}.reject-btn:hover{box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.loading-spinner{align-items:center;color:var(--text-secondary);display:flex;font-size:1.1rem;height:200px;justify-content:center}@media (max-width:768px){.request-approvals{padding:1rem}.page-header h1{font-size:2rem}.tabs{flex-direction:column;gap:.5rem}.tab{justify-content:center}.requests-grid{grid-template-columns:1fr}.request-header{align-items:flex-start;gap:1rem}.request-actions,.request-header{flex-direction:column}.action-btn{width:100%}}@media (max-width:480px){.employee-info{align-items:flex-start;flex-direction:column;gap:.5rem}.employee-avatar{font-size:1rem;height:40px;width:40px}.request-card{padding:1rem}}.sidebar{background:linear-gradient(180deg,#1f2937,#111827);border-right:1px solid #4b55634d;display:flex;flex-direction:column;height:100vh;position:fixed;transition:transform .3s ease;width:280px;z-index:1000}.sidebar-header{border-bottom:1px solid #4b55634d;padding:30px 20px}.logo{align-items:center;display:flex;gap:12px}.logo-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;background-clip:text;font-size:2rem}.logo h2{color:#f9fafb;font-size:1.5rem;font-weight:700;margin:0}.sidebar-nav{flex:1 1;overflow-y:auto;padding:20px 0}.nav-item{align-items:center;border-left:3px solid #0000;color:#9ca3af;display:flex;gap:15px;padding:15px 20px;text-decoration:none;transition:all .3s ease}.nav-item:hover{background:#10b9811a}.nav-item.active,.nav-item:hover{border-left-color:#10b981;color:#10b981}.nav-item.active{background:#10b98126}.nav-item.active .nav-icon,.nav-item:hover .nav-icon{background:#10b98133}.nav-content{display:flex;flex-direction:column;gap:2px}.nav-label{font-size:.95rem;font-weight:600}.nav-description{font-size:.75rem;opacity:.7}.nav-icon{background:#4b556333;border-radius:10px;height:40px;position:relative;transition:all .3s ease;width:40px}.nav-icon,.notification-badge{align-items:center;display:flex;justify-content:center}.notification-badge{animation:pulse 2s infinite;background:linear-gradient(135deg,#ef4444,#dc2626);border:2px solid #1f2937;border-radius:50%;box-shadow:0 2px 4px #0000004d;font-weight:700;height:18px}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.sidebar-footer{border-top:1px solid #4b55634d;padding:20px}.version-info{align-items:center;color:#6b7280;display:flex;flex-direction:column;font-size:.75rem;gap:5px;text-align:center}.mobile-menu-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937e6;border:1px solid #4b55634d;border-radius:10px;color:#f9fafb;cursor:pointer;display:none;left:20px;padding:10px;position:fixed;top:20px;z-index:1001}.mobile-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:768px){.mobile-menu-button{display:block}.sidebar{box-shadow:0 0 20px #0000004d;transform:translateX(-100%)}.sidebar.mobile-open{transform:translateX(0)}.mobile-overlay{display:block}.main-content{margin-left:0}}@media (min-width:769px){.main-content{margin-left:280px}}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border-bottom:1px solid #4b55634d;max-height:80px;padding:20px 30px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header,.header-content{align-items:center;display:flex}.header-content{justify-content:space-between;margin:0 auto;max-width:1400px;width:100%}.header-left .page-title{color:#f9fafb;font-size:1.5rem;font-weight:600;margin:0}.header-logo{height:150px;max-height:130px;object-fit:contain;width:auto}.header-right{align-items:center;display:flex;gap:20px}.notification-btn{background:#4b556333;border:1px solid #4b55634d;border-radius:10px;color:#9ca3af;cursor:pointer;padding:10px;position:relative;transition:all .3s ease}.notification-btn:hover{background:#4b55634d;color:#f9fafb}.user-menu{position:relative}.user-btn{align-items:center;background:#4b556333;border:1px solid #4b55634d;border-radius:10px;color:#f9fafb;cursor:pointer;display:flex;gap:10px;padding:10px 15px;transition:all .3s ease}.user-btn:hover{background:#4b55634d;border-color:#10b981}.user-avatar{align-items:center;background:#10b98133;border-radius:8px;color:#10b981;display:flex;height:32px;justify-content:center;width:32px}.user-name{font-size:.9rem;font-weight:500}.user-dropdown{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:12px;box-shadow:0 25px 50px -12px #00000080;margin-top:10px;min-width:200px;padding:15px;position:absolute;right:0;top:100%;z-index:1000}.user-info{gap:12px;padding:10px 0}.user-full-name{color:#f9fafb;font-size:.9rem;font-weight:600}.user-role{color:#9ca3af;font-size:.8rem}.dropdown-divider{background:#4b55634d;height:1px;margin:10px 0}.dropdown-item{align-items:center;background:none;border:none;border-radius:8px;color:#9ca3af;cursor:pointer;display:flex;font-size:.9rem;gap:10px;padding:10px;transition:all .3s ease;width:100%}.dropdown-item:hover{background:#4b556333;color:#f9fafb}.dropdown-item.logout{color:#ef4444}.dropdown-item.logout:hover{background:#ef44441a;color:#fca5a5}.notification-container{position:relative}.notification-button{background:#4b556333;border:1px solid #4b55634d;border-radius:10px;color:#9ca3af;cursor:pointer;padding:10px;position:relative;transition:all .3s ease}.notification-button:hover{background:#4b55634d;color:#f9fafb}.notification-badge{background:#ef4444;border-radius:10px;color:#fff;font-size:.7rem;font-weight:600;min-width:18px;padding:2px 6px;position:absolute;right:-5px;text-align:center;top:-5px}.notification-dropdown{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:12px;box-shadow:0 25px 50px -12px #00000080;margin-top:10px;max-height:400px;max-width:400px;min-width:350px;overflow-y:auto;padding:0;position:absolute;right:0;top:100%;z-index:1000}.notification-header{align-items:center;border-bottom:1px solid #4b55634d;display:flex;justify-content:space-between;padding:15px}.notification-header h3{color:#f9fafb;font-size:1rem;font-weight:600;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;transition:background-color .2s;width:24px}.close-button:hover{background:#4b55634d;color:#f9fafb}.notification-list{max-height:300px;overflow-y:auto}.notification-item{border-bottom:1px solid #4b556333;cursor:pointer;padding:15px;transition:background-color .2s}.notification-item:hover{background:#4b55631a}.notification-item.unread{background:#3b82f61a;border-left:3px solid #3b82f6}.notification-content{display:flex;flex-direction:column;gap:.5rem}.notification-title{align-items:center;display:flex;font-size:.9rem;font-weight:500;gap:.5rem}.status-icon{flex-shrink:0}.status-icon.approved{color:#10b981}.status-icon.rejected{color:#ef4444}.notification-message{color:#9ca3af;font-size:.85rem;line-height:1.4;margin:0}.notification-time{color:#6b7280;font-size:.75rem}.no-notifications{color:#9ca3af;padding:2rem;text-align:center}.no-notifications p{font-size:.9rem;margin:0}.notification-actions{display:flex;gap:.5rem;margin-top:.5rem}.approve-btn,.reject-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem;transition:all .2s}.approve-btn{background:#10b9811a;border:1px solid #10b9814d;color:#10b981}.approve-btn:hover{background:#10b98133;color:#059669}.reject-btn{background:#ef44441a;border:1px solid #ef44444d;color:#ef4444}.reject-btn:hover{background:#ef444433;color:#dc2626}.user-menu{gap:1rem}.user-info,.user-menu{align-items:center;display:flex}.user-info{background:none;border:none;border-radius:8px;color:#f9fafb;cursor:pointer;font-size:.9rem;gap:.5rem;padding:8px 12px;transition:all .3s ease}.user-info:hover{background:#4b556333;color:#10b981}.logout-button{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:8px 12px;transition:all .3s ease}.logout-button:hover{background:#ef444433;color:#fee2e2}.mobile-menu-btn{background:#4b556333;border:1px solid #4b55634d;border-radius:10px;color:#9ca3af;cursor:pointer;display:none;padding:10px;transition:all .3s ease}.mobile-menu-btn:hover{background:#4b55634d;color:#f9fafb}.mobile-menu-dropdown{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f2937f2;border:1px solid #4b55634d;border-radius:12px;box-shadow:0 25px 50px -12px #00000080;display:none;min-width:250px;padding:15px;position:fixed;right:15px;top:80px;z-index:1000}.mobile-menu-dropdown.show{display:block}.mobile-menu-item{align-items:center;border-radius:8px;color:#f9fafb;cursor:pointer;display:flex;gap:12px;margin-bottom:8px;padding:12px;transition:all .3s ease}.mobile-menu-item:hover{background:#4b556333}.mobile-menu-item:last-child{margin-bottom:0}.mobile-menu-item.notification{position:relative}.mobile-menu-item.notification .notification-badge{background:#ef4444;border-radius:10px;color:#fff;font-size:.7rem;font-weight:600;min-width:18px;padding:2px 6px;position:absolute;right:8px;text-align:center;top:8px}.mobile-menu-item.logout{border-top:1px solid #4b55634d;color:#ef4444;margin-top:8px;padding-top:16px}.mobile-menu-item.logout:hover{background:#ef44441a;color:#fca5a5}@media (max-width:1024px){.header{padding:15px 20px}.header-content{gap:15px}.header-logo{max-height:100px}.notification-dropdown{max-width:380px;min-width:320px}}@media (max-width:768px){.header{min-height:70px;padding:12px 15px}.header-content{justify-content:space-between}.header-left{display:flex;flex:1 1;justify-content:center}.header-logo{max-height:100px}.header-right{display:none}.mobile-menu-btn{align-items:center;display:flex;justify-content:center}.mobile-menu-dropdown{left:10px;min-width:auto;right:10px;top:70px;width:calc(100vw - 20px)}}@media (max-width:480px){.header{min-height:60px;padding:10px 12px}.header-logo{margin-left:50px;max-height:80px}.mobile-menu-btn{padding:8px}.mobile-menu-dropdown{left:8px;right:8px;top:60px;width:calc(100vw - 16px)}.mobile-menu-item{font-size:.9rem;padding:10px}}.app{display:flex;min-height:100vh}.main-content{background-color:#111827;display:flex;flex:1 1;flex-direction:column}@media (max-width:768px){.app{flex-direction:column}.main-content{margin-left:0}}
/*# sourceMappingURL=main.518e6376.css.map*/