@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{font-family:Poppins,sans-serif}.login-container{align-items:center;background-color:#f0f2f5;display:flex;height:100vh;justify-content:center;overflow:hidden;position:relative;width:100vw}.login-container:before{background:linear-gradient(135deg,#e0f2f7,#d1e7f0);content:"";height:100%;left:0;opacity:.7;position:absolute;top:0;width:100%;z-index:0}.login-navbar{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fffffff2;border-bottom:1px solid #00000014;box-shadow:0 2px 10px #0000000d;display:flex;justify-content:space-between;left:0;padding:15px 30px;position:fixed;top:0;width:100%;z-index:10}.company-logo{height:auto;object-fit:contain;width:180px}.theme-toggle{gap:10px;position:relative}.theme-toggle-switch{background-color:#e5e7eb;border:2px solid #d1d5db;border-radius:25px;height:30px;transition:background-color .15s ease;width:60px}.theme-toggle-switch.dark{background-color:#374151;border-color:#4b5563}.theme-toggle-slider{box-shadow:0 2px 4px #0000001a;height:22px;left:2px;top:2px;transition:transform .15s ease,background-color .15s ease;width:22px}.theme-toggle-switch.dark .theme-toggle-slider{background-color:#1f2937;transform:translateX(30px)}.theme-icon{height:14px;transition:opacity .15s ease;width:14px}.sun-icon{color:#f59e0b}.moon-icon{color:#60a5fa}.theme-label{color:#374151;font-size:.9rem;font-weight:500;transition:color .15s ease}.logout-button{border:none;border-radius:25px;box-shadow:0 4px 8px #0000001a;cursor:pointer;font-size:15px;padding:10px 18px;transition:background .3s ease,transform .2s ease}.logout-button:active{transform:translateY(0)}.login-box{animation:fadeInScale .6s ease-out forwards;background-color:#fff;border:1px solid #f0f0f0;border-radius:15px;box-shadow:0 15px 40px #0000001f;margin:auto;max-width:450px;padding:3rem;position:relative;text-align:center;width:100%;z-index:1}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.login-title{color:#2c3e50;font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin-bottom:2rem}.input-group{margin-bottom:1.5rem;text-align:left}.login-label{color:#4a4a4a;display:block;font-size:1.05rem;font-weight:500;margin-bottom:8px}.login-input{background-color:#fdfdfd;border:1px solid #dcdcdc;border-radius:10px;color:#333;font-size:1rem;outline:none;padding:1.1rem;transition:border-color .3s ease,box-shadow .3s ease;width:calc(100% - 22px)}.login-input::placeholder{color:#a0a0a0}.login-input:focus{background-color:#fff;border-color:#4338ca;box-shadow:0 0 0 3px #4338ca2e}.login-input.error{border-color:#dc2626;box-shadow:0 0 0 2px #dc26262e}.login-button{background-color:#088ddd!important;border:none!important;border-radius:10px;box-shadow:0 5px 15px #0000001a;color:#fff!important;cursor:pointer;font-size:2.5rem;font-weight:800;margin-top:1.8rem;padding:1.2rem;transition:background-color .3s ease,transform .2s ease,box-shadow .3s ease;width:100%}.login-button:hover{background-color:#0673b8;box-shadow:0 8px 20px #00000026;transform:translateY(-2px)}.login-button:active{background-color:#055a93;box-shadow:0 3px 10px #00000014;transform:translateY(0)}.login-content{flex:1 1;min-height:80vh;padding:6rem 4rem 2rem;position:relative;z-index:1}.login-content,.login-main{align-items:center;display:flex;gap:4rem;justify-content:center}.login-main{max-width:1000px;width:100%}.login-page-logo{display:block;flex-shrink:0;height:auto;object-fit:contain;width:500px}.login-footer{background-color:initial;border-radius:0;bottom:0;box-shadow:none;color:#1e3a8a;font-size:13px;font-weight:400;max-width:400px;padding:0;position:fixed;right:16px;text-align:right;width:auto;z-index:1000}[data-theme=dark] .login-container{background-color:#111827}[data-theme=dark] .login-container:before{background:linear-gradient(135deg,#1f2937,#111827);opacity:.8}[data-theme=dark] .login-navbar{background:#111827f2;border-bottom-color:#ffffff1a}[data-theme=dark] .theme-label{color:#d1d5db}[data-theme=dark] .login-box{background-color:#1f2937;border-color:#374151;box-shadow:0 15px 40px #0000004d}[data-theme=dark] .login-title{color:#f9fafb}[data-theme=dark] .login-label{color:#d1d5db}[data-theme=dark] .login-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .login-input::placeholder{color:#9ca3af}[data-theme=dark] .login-input:focus{background-color:#4b5563;border-color:#6366f1;box-shadow:0 0 0 3px #6366f133}[data-theme=dark] .login-button{background-color:#088ddd}[data-theme=dark] .login-button:hover{background-color:#0673b8}[data-theme=dark] .login-button:active{background-color:#055a93}.login-box,.login-button,.login-container,.login-input,.login-label,.login-navbar,.login-title,.theme-label,body{transition:background-color .15s ease,color .15s ease,border-color .15s ease}@media (max-width:768px){.login-container{padding:15px}.login-content{gap:2rem;padding:6rem 2rem 2rem}.login-main{flex-direction:column;gap:2rem}.login-page-logo{width:280px}.login-box{margin:auto;max-width:95%;padding:2rem;width:95%}.login-title{font-size:2rem;margin-bottom:1.2rem}.company-logo{width:140px}.login-navbar{padding:10px 20px}.login-footer{bottom:6px;font-size:11px;right:12px}}@media (max-width:480px){.login-content{gap:1.5rem;padding:6rem 1rem 2rem}.login-main{gap:1.5rem}.login-page-logo{width:220px}.login-box{margin:.5rem auto;max-width:95%;padding:1.5rem;width:95%}.login-title{font-size:1.8rem}.login-label{font-size:.95rem}.login-button,.login-input{font-size:1rem;padding:.9rem}.company-logo{width:120px}.login-navbar{padding:8px 15px}.login-footer{bottom:4px;font-size:10px;right:8px}}@media (max-width:320px){.login-page-logo{width:180px}.login-box{margin:.25rem auto;max-width:95%;padding:1.2rem;width:95%}.login-title{font-size:1.6rem;margin-bottom:1rem}.company-logo{width:100px}.login-button,.login-input{font-size:.95rem;padding:.8rem}.login-label{font-size:.9rem}.login-footer{bottom:2px;font-size:9px;right:4px}}.attendance-summary{font-weight:500;margin-top:1rem;text-align:center}.team-members-list{margin-top:1rem;max-height:200px;overflow-y:auto}.team-member-item{align-items:center;border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);display:flex;justify-content:space-between;padding:8px 0}.team-member-item:last-child{border-bottom:none}.member-info{display:flex;flex-direction:column}.member-name{color:#0f172a;color:var(--c-text-1);font-size:14px;font-weight:500}.member-role{color:#475569;color:var(--c-text-2);font-size:12px}.member-status{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.team-status-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1rem}.team-status-summary .stat-card{flex:1 1;min-width:0}.team-section{margin-bottom:1.5rem}.team-section h4{color:#0f172a;color:var(--c-text-1);font-weight:600;margin-bottom:1rem}.team-members-list{display:flex;flex-direction:column;gap:.75rem}.working-hours-list{margin-top:1rem}.working-hours-item{align-items:center;border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);display:flex;font-size:14px;justify-content:space-between;padding:6px 0}.working-hours-item:last-child{border-bottom:none}.member-times{color:#475569;color:var(--c-text-2);font-size:12px}.department-list,.team-performance-list{margin-top:1rem}.department-item,.team-performance-item{align-items:center;border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);display:flex;justify-content:space-between;padding:8px 0}.department-item:last-child,.team-performance-item:last-child{border-bottom:none}.dept-name,.team-name{color:#0f172a;color:var(--c-text-1);font-size:14px;font-weight:500}.dept-stats,.team-stats{background-color:#4338ca1a;border-radius:4px;color:#475569;color:var(--c-text-2);font-size:12px;padding:2px 6px}.recent-activity{margin-top:1rem}.activity-item{border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);display:flex;flex-direction:column;padding:8px 0}.activity-item:last-child{border-bottom:none}.activity-employee{color:#0f172a;color:var(--c-text-1);font-size:14px;font-weight:500}.activity-details{color:#475569;color:var(--c-text-2);font-size:12px;margin-top:2px}.card-footer{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:1rem;padding-top:1rem}.card-btn{border-radius:6px;font-size:14px;font-weight:500;min-width:100px;padding:8px 16px;transition:all .2s ease}.btn-primary{background-color:#4338ca;background-color:var(--c-primary)}.btn-primary:hover:not(:disabled){background-color:#3730a3;transform:translateY(-1px)}.btn-secondary{background-color:#475569;background-color:var(--c-text-2)}.btn-secondary:hover:not(:disabled){background-color:#334155;transform:translateY(-1px)}.card-btn:disabled{opacity:.6;transform:none}.card-body h4{border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);color:#0f172a;color:var(--c-text-1);font-size:14px;font-weight:600;margin:1rem 0 .5rem;padding-bottom:.5rem}.card-body p{color:#475569;color:var(--c-text-2);font-style:italic;margin:1rem 0;text-align:center}@media (min-width:1200px){.stats-grid{gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (max-width:768px){.team-status-summary{flex-direction:column;gap:.5rem}.card-footer{align-items:stretch;flex-direction:column}.card-btn{min-width:auto;width:100%}.department-item,.team-member-item,.team-performance-item{align-items:flex-start;flex-direction:column;gap:4px}.member-info{width:100%}}.activity-item:hover,.department-item:hover,.team-member-item:hover,.team-performance-item:hover{background-color:#4338ca0d;border-radius:4px;margin:0 -8px;padding-left:8px;padding-right:8px}.stat-card-value.success{color:#16a34a;color:var(--c-success)}.stat-card-value.warning{color:#f97316;color:var(--c-warning)}.stat-card-value.danger{color:#dc2626;color:var(--c-danger)}:root{--font-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--c-bg:#f1f5f9;--c-surface:#ffffffb3;--c-text-1:#0f172a;--c-text-2:#475569;--c-primary:#4338ca;--c-success:#16a34a;--c-info:#17a2b8;--c-warning:#f97316;--c-danger:#dc2626;--c-border:#0000001a;--shadow-lg:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--radius:1rem}body{background-color:#f1f5f9;background-color:var(--c-bg);color:#0f172a;color:var(--c-text-1);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-primary);line-height:1.5}.main-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#ffffffb3;background-color:var(--c-surface);border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);padding:1rem 2rem;z-index:10}.logo-container img{height:40px}.header-actions{gap:1rem}.header-btn{background-color:#4338ca;background-color:var(--c-primary);border:none;border-radius:.5rem;color:#fff;display:flex;gap:.5rem;padding:.6rem 1.2rem}.header-btn:hover{box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.header-btn.logout{background-color:#dc2626;background-color:var(--c-danger)}.header-btn.team{background-color:#f97316;background-color:var(--c-warning)}.header-btn.reports{background-color:#6b21a8}.dashboard-content{margin:0 auto;max-width:1500px;padding:2rem}.profile-header{align-items:center;background-color:#05948f;border-radius:1rem;border-radius:var(--radius);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;box-shadow:var(--shadow-lg);color:#fff;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem;padding:2rem}.profile-header-left{align-items:center;display:flex;flex:1 1;gap:1.5rem}.profile-header-right{align-items:flex-end;display:flex;flex:1 1;flex-direction:column;gap:0}.status-section{align-items:flex-end;display:flex;flex-direction:column;gap:.75rem;width:100%}.status-label{color:#fff;font-size:1rem;font-weight:600;margin:0}.status-toggles-container{background-color:#fff;box-shadow:0 2px 8px #0000001a;flex-wrap:wrap;gap:.75rem;padding:.75rem}.status-toggle,.status-toggles-container{align-items:center;border-radius:.5rem;display:flex}.status-toggle{background-color:#f3f4f6;border:2px solid #0000;cursor:pointer;gap:.5rem;justify-content:center;min-height:40px;opacity:.65;padding:.625rem 1rem;transition:all .2s ease}.status-toggle.pending{opacity:.45;pointer-events:none}.status-toggle:focus-visible{outline:3px solid #6366f159;outline-offset:2px}.status-toggle:hover:not(:disabled){background-color:#e5e7eb;opacity:.85}.status-toggle.active{background:linear-gradient(135deg,#dc2626,#991b1b);border-color:#dc2626;border-width:2px;box-shadow:0 4px 12px #dc26264d;opacity:1}.status-toggle:disabled{cursor:not-allowed}.status-icon{display:block;filter:brightness(0) invert(0);height:32px;object-fit:contain;width:32px}.status-toggle.active .status-icon{filter:brightness(0) invert(1)}.status-label-text{color:#4b5563;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.status-toggle.active .status-label-text{color:#fff}.status-toggle.active .status-duration{color:#fecaca}.status-content{align-items:flex-start;display:flex;flex-direction:column;gap:.1rem}.status-text{color:#4b5563}.status-duration,.status-text{font-size:.875rem;font-weight:500;white-space:nowrap}.status-duration{color:#6b7280}.dropdown-separator{background-color:#d1d5db;display:inline-block;height:18px;margin:0 .4rem;width:1px}.dropdown-arrow{color:#6b7280;flex-shrink:0;font-size:.625rem}.status-toggle-dropdown{position:relative}.status-dropdown-menu{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 4px 12px #00000026;display:none;min-width:130px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);z-index:1000}.status-dropdown-menu.active{display:block}.status-dropdown-menu div{color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:.625rem 1rem;transition:background-color .2s ease;white-space:nowrap}.status-dropdown-menu div:hover{background-color:#f3f4f6}.status-dropdown-menu div:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.status-dropdown-menu div:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.profile-avatar{align-items:center;background-color:#ffffff1a;border-radius:50%;display:flex;flex-shrink:0;font-size:2.25rem;font-weight:700;height:72px;justify-content:center;width:72px}.profile-info h2{font-size:2rem;margin:0}.profile-info p{font-size:1rem;margin:.25rem 0 0;opacity:.8}.current-status-line{color:#ffffffe6;font-size:.95rem;font-weight:500;margin-top:.35rem}.current-status-value{font-weight:700}.stats-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.stats-grid>.content-card{border-radius:1rem;border-radius:var(--radius);justify-content:stretch;margin:0;min-height:340px;transition:box-shadow .2s}.content-card,.stats-grid>.content-card{background:#ffffffb3;background:var(--c-surface);border:1px solid #0000001a;border:1px solid var(--c-border);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.content-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:1rem;border-radius:var(--radius);margin-bottom:1.5rem;min-height:300px;overflow:hidden}.content-card h3{border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);font-size:1.125rem;font-weight:600;margin:0;padding:1.25rem}.card-body{display:flex;flex-direction:column;flex-grow:1;gap:1.5rem;justify-content:center;padding:1.5rem}.card-footer{grid-gap:1rem;background:#00000005;border-top:1px solid #0000001a;border-top:1px solid var(--c-border);display:grid;gap:1rem;grid-template-columns:1fr 1fr;padding:1.25rem}.card-btn{border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;padding:.75rem;transition:opacity .2s}.card-btn:disabled{background-color:#94a3b8;cursor:not-allowed}.card-btn.btn-success{background-color:#16a34a;background-color:var(--c-success)}.card-btn.btn-warning{background-color:#f97316;background-color:var(--c-warning)}.card-btn.btn-csv{background-color:#4338ca;background-color:var(--c-primary)}.card-btn:not(:disabled):hover{opacity:.85}.timer-display{font-size:3.5rem;font-weight:700;margin:0;text-align:center}.timer-status{color:#475569;color:var(--c-text-2);margin:0;text-align:center}.stat-card{background:#f1f5f9;background:var(--c-bg);border-left:4px solid var(--card-color);border-radius:.5rem;gap:1rem;padding:1rem}.stat-card,.stat-card-icon{align-items:center;display:flex}.stat-card-icon{background-color:var(--card-color);border-radius:50%;color:#fff;flex-shrink:0;height:48px;justify-content:center;width:48px}.stat-card-title{color:#475569;color:var(--c-text-2);font-size:.9rem;margin:0}.stat-card-value{font-size:1.75rem;font-weight:600;margin:0}.chart-container{min-height:280px;padding:0}@media (max-width:768px){.dashboard-content{padding-bottom:1rem;padding-left:1rem;padding-right:1rem;padding-top:76px!important}.main-header{padding:1rem}.profile-header{flex-direction:column;text-align:center}.profile-info h2{font-size:1.5rem}.stats-grid{gap:1rem;grid-template-columns:1fr}}[data-theme=dark]{--c-bg:#111827;--c-surface:#1f2937cc;--c-text-1:#f9fafb;--c-text-2:#d1d5db;--c-primary:#6366f1;--c-success:#10b981;--c-info:#06b6d4;--c-warning:#f59e0b;--c-danger:#ef4444;--c-border:#ffffff1a}[data-theme=dark] body{background-color:#f1f5f9;background-color:var(--c-bg);color:#0f172a;color:var(--c-text-1)}[data-theme=dark] .checkin-container{background-color:#111827}[data-theme=dark] .checkin-navbar{background-color:#111827f2;border-bottom-color:#ffffff1a}[data-theme=dark] .stat-card{background-color:#1f2937;border-color:#374151;color:#f9fafb}[data-theme=dark] .stat-card-title{color:#d1d5db}[data-theme=dark] .stat-card-value{color:#f9fafb}[data-theme=dark] .attendance-card,[data-theme=dark] .chart-card,[data-theme=dark] .checkin-card{background-color:#1f2937;border-color:#374151;box-shadow:0 10px 25px -5px #0000004d}[data-theme=dark] .timer-display{background-color:#374151;color:#f9fafb}[data-theme=dark] .checkin-button,[data-theme=dark] .checkout-button{background-color:#6366f1}[data-theme=dark] .checkin-button:hover,[data-theme=dark] .checkout-button:hover{background-color:#5b21b6}[data-theme=dark] .employee-info-card{background-color:#1f2937;border-color:#374151}[data-theme=dark] .team-badge{background-color:#374151;color:#d1d5db}[data-theme=dark] .manager-section{background-color:#1f2937;border-color:#374151}[data-theme=dark] .download-button{background-color:#6366f1}[data-theme=dark] .download-button:hover{background-color:#5b21b6}[data-theme=dark] .status-toggles-container{background-color:#1f2937;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .status-toggle{background-color:#374151;border-color:#0000}[data-theme=dark] .status-toggle:hover{background-color:#4b5563}[data-theme=dark] .status-toggle.active{background-color:#374151;border-color:#dc2626}[data-theme=dark] .status-label-text{color:#d1d5db}[data-theme=dark] .status-toggle.active .status-label-text{color:#f9fafb}[data-theme=dark] .status-text{color:#d1d5db}[data-theme=dark] .dropdown-arrow,[data-theme=dark] .status-duration{color:#9ca3af}[data-theme=dark] .status-dropdown-menu{background-color:#1f2937;border:1px solid #374151}[data-theme=dark] .status-dropdown-menu div{color:#f9fafb}[data-theme=dark] .status-dropdown-menu div:hover{background-color:#374151}[data-theme=dark] .activity-name,[data-theme=dark] .activity-total-header,[data-theme=dark] .total-time{color:#f9fafb}[data-theme=dark] .activity-duration{color:#d1d5db}.leave-info-alert .alert{align-items:flex-start;border:1px solid #0000;border-radius:.5rem;display:flex;margin-bottom:1rem;padding:1rem}.leave-info-alert .alert-icon{flex-shrink:0;margin-right:.75rem}.leave-info-alert .alert-icon svg{height:1.25rem;width:1.25rem}.leave-info-alert .alert-title{font-weight:600;margin-bottom:.25rem}.leave-info-alert .alert-description{font-size:.9rem;line-height:1.4}.leave-info-alert .alert-warning{background-color:#fffbeb;border-color:#fde68a;color:#92400e}.leave-info-alert .alert-info{background-color:#eff6ff;border-color:#93c5fd;color:#1e40af}.leave-info-alert .alert-success{background-color:#f0fdf4;border-color:#86efac;color:#15803d}.activity-card-header{align-items:center;border-bottom:1px solid #0000001a;border-bottom:1px solid var(--c-border);display:flex;justify-content:space-between;margin:0;padding:1.25rem}.activity-card-header h3{border-bottom:none;font-size:1.125rem;font-weight:600;margin:0;padding:0}.activity-total-inline{align-items:center;color:#0f172a;color:var(--c-text-1);display:flex;font-size:1rem;font-weight:500;gap:.5rem}.clock-icon{font-size:1rem}.total-time{color:#0f172a;color:var(--c-text-1)}.activity-list{display:flex;flex-direction:column;gap:.75rem;margin:0;padding:0;width:100%}.activity-list .activity-item{border-bottom:1px solid #e5e7eb;padding:.35rem 0 .65rem}.activity-list .activity-item:last-child{border-bottom:none}.activity-row{gap:1rem;justify-content:space-between}.activity-left,.activity-row{align-items:center;display:flex}.activity-left{gap:.75rem}.activity-icon-circle{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;height:36px;justify-content:center;width:36px}.activity-icon-circle img{height:22px;width:22px}.activity-name{color:#0f172a;color:var(--c-text-1);font-weight:600}.activity-duration-text{color:#475569;color:var(--c-text-2);font-weight:600;min-width:72px;text-align:right}.activity-item.active .activity-icon-circle{background:#6366f126}.activity-item.active .activity-name{color:#4338ca;color:var(--c-primary)}.activity-progress{background-color:#edf2f7;border-radius:999px;height:6px;margin-top:.5rem;overflow:hidden;width:100%}.activity-progress-bar{background:linear-gradient(90deg,#4338ca,#6366f1);background:linear-gradient(90deg,var(--c-primary) 0,#6366f1 100%);border-radius:inherit;height:100%;transition:width .3s ease}@media (max-width:768px){.profile-header{align-items:flex-start;flex-direction:column}.profile-header-left{width:100%}.profile-header-right{align-items:flex-start;width:100%}.status-toggles{justify-content:flex-start;width:100%}}.theme-toggle-switch.light{border:2px solid #b0b6be!important}:root{--shadow-color:#0d6efd4d;--shadow-success:#1987544d;--shadow-danger:#dc35454d;--shadow-dark:#0003;--hover-color:#f8f9fa;--btn-default:#e0f2ff;--btn-default-hover:#bfdbfe;--btn-default-text:#1e3a8a;--btn-default-border:#93c5fd;--btn-excel:#16a34a;--btn-excel-hover:#15803d;--btn-pdf:#dc2626;--btn-pdf-hover:#b91c1c;--btn-logout:#dc3545;--btn-logout-hover:#c82333;--btn-active:#1e40af;--btn-active-hover:#1e3a8a;--input-bg:#fff;--input-border:#ced4da;--input-focus:#007bff;--card-bg:#fff;--card-border:#e9ecef;--container-bg:#f8f9fa}[data-theme=dark]{--bg-primary:#2c2c2c;--bg-secondary:#3a3a3a;--bg-tertiary:#1a1a1a;--text-secondary:#e0e0e0;--text-muted:#b0b0b0;--border-color:#555;--border-hover:#777;--shadow-color:#0d6efd66;--shadow-success:#19875466;--shadow-danger:#dc354566;--shadow-dark:#00000080;--hover-color:#404040;--btn-default:#374151;--btn-default-hover:#4b5563;--btn-default-text:#e0f2ff;--btn-default-border:#6b7280;--btn-excel:#22c55e;--btn-excel-hover:#16a34a;--btn-pdf:#ef4444;--btn-pdf-hover:#dc2626;--btn-logout:#ef4444;--btn-logout-hover:#dc2626;--btn-active:#3b82f6;--btn-active-hover:#2563eb;--status-present:#20c997;--status-absent:#fd5e53;--status-checked-in:#fd7e14;--status-pending:#ffc107;--status-approved:#20c997;--status-rejected:#fd5e53;--table-header-bg:#3a3a3a;--table-row-hover:#404040;--table-border:#555;--input-bg:#2c2c2c;--input-border:#555;--input-focus:#0d6efd;--card-bg:#2c2c2c;--card-border:#555;--container-bg:#3a3a3a}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease!important}iframe,img,svg,video{transition:none!important}body{padding:0}*,:after,:before{box-sizing:border-box}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f8f9fa;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#e9ecef;background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ced4da;background:var(--border-hover)}:focus{outline:2px solid #007bff;outline:2px solid var(--btn-primary);outline-offset:2px}::selection{background-color:#007bff;background-color:var(--btn-primary);color:#fff}::-moz-selection{background-color:#007bff;background-color:var(--btn-primary);color:#fff}@media print{*{background:#fff!important;box-shadow:none!important;color:#000!important}.navbar-buttons,.refresh-button,.theme-toggle{display:none!important}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){:root{--border-color:#000;--text-primary:#000;--bg-primary:#fff}[data-theme=dark]{--border-color:#fff;--text-primary:#fff;--bg-primary:#000}}.hide-mobile{display:table-cell}@media (max-width:767px){.hide-mobile{display:none!important}}.show-mobile{display:none}@media (max-width:767px){.show-mobile{display:table-cell!important}}.loading{animation:pulse 2s infinite}.interactive-hover{transition:all .3s ease}.interactive-hover:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--shadow-medium);transform:translateY(-2px)}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in{animation:slideInUp .5s ease-out}.btn-loading{color:#0000!important;position:relative}.btn-loading:after{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:initial;content:"";height:16px;left:50%;margin:-8px 0 0 -8px;position:absolute;top:50%;width:16px}.theme-toggle{align-items:center;display:flex;justify-content:center}.theme-toggle-switch{border-radius:13px;box-shadow:inset 0 1px 3px #0000001f;cursor:pointer;height:26px;position:relative;transition:background-color .25s ease;width:52px}.theme-toggle-switch,.theme-toggle-switch.light{background-color:#e8eaed}.theme-toggle-switch.dark{background-color:#2d3139}.theme-toggle-slider{align-items:center;background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;display:flex;height:20px;justify-content:center;left:3px;position:absolute;top:50%;transform:translateY(-50%);transition:transform .25s ease;width:20px}.theme-toggle-switch.dark .theme-toggle-slider{background-color:#fff;transform:translateX(26px) translateY(-50%)}.theme-toggle-emoji{font-size:13px;line-height:1;pointer-events:none}.theme-toggle-switch:hover{opacity:.9}.back-button,.logout-button,.nav-button,.shifts-button,.users-button{border:1px solid #0000;border-radius:6px;cursor:pointer;font-weight:600;margin:0 8px;padding:8px 14px;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.main-header{background-color:#fff;background-color:var(--bg-primary);box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow-light);box-sizing:border-box;left:0;overflow-x:hidden;padding:10px 16px;position:-webkit-sticky;position:sticky;right:0;top:0;width:100%;z-index:1000}.logo-container img{height:42px}.header-actions{-webkit-overflow-scrolling:touch;flex:1 1;gap:10px;justify-content:flex-end;max-width:100%}.header-actions::-webkit-scrollbar{height:6px}.header-actions::-webkit-scrollbar-thumb{background:#e9ecef;background:var(--border-color);border-radius:4px}.fom-nav .header-actions{gap:6px}.fom-nav .header-btn{border-radius:6px!important;font-size:12px!important}.fom-nav .header-btn,.fom-nav .header-btn.logout{padding:6px 10px!important}.fom-nav .logo-container img{height:34px}@media (max-width:1024px){.main-header{padding:8px 12px}.logo-container img{height:36px}}@media (max-width:768px){.main-header{flex-wrap:wrap;row-gap:8px}.logo-container{align-items:center;display:flex;flex-basis:100%;justify-content:space-between}.header-actions{flex-basis:100%;gap:8px;justify-content:flex-start}.header-btn{font-size:13px!important;padding:6px 10px!important}}.nav-button{background-color:#f3f4f6;color:#111827}.nav-button:hover{background-color:#e5e7eb}.back-button{background-color:#3b82f6}.back-button:hover{background-color:#2563eb}.shifts-button,.users-button{background-color:#10b981;color:#fff}.shifts-button:hover,.users-button:hover{background-color:#059669}body:not([data-theme=dark]) .navbar .nav-button,body:not([data-theme=dark]) .reports-navbar .nav-button{background-color:#e0f2ff;border-color:#93c5fd;color:#1e3a8a}body:not([data-theme=dark]) .navbar .nav-button:hover,body:not([data-theme=dark]) .reports-navbar .nav-button:hover{background-color:#bfdbfe}[data-theme=dark] .back-button,[data-theme=dark] .logout-button,[data-theme=dark] .nav-button,[data-theme=dark] .shifts-button,[data-theme=dark] .users-button{border-color:#4b5563}[data-theme=dark] .nav-button{background-color:#374151;color:#f9fafb}[data-theme=dark] .nav-button:hover{background-color:#4b5563}[data-theme=dark] .back-button{background-color:#2563eb;color:#fff}[data-theme=dark] .back-button:hover{background-color:#1e40af}[data-theme=dark] .logout-button{background-color:#dc2626;color:#fff}[data-theme=dark] .logout-button:hover{background-color:#991b1b}[data-theme=dark] .shifts-button,[data-theme=dark] .users-button{background-color:#059669;color:#fff}[data-theme=dark] .shifts-button:hover,[data-theme=dark] .users-button:hover{background-color:#047857}.theme-toggle-small .theme-toggle-switch{height:24px;width:45px}.theme-toggle-small .theme-toggle-slider{height:18px;left:2px;top:2px;width:18px}.theme-toggle-small.dark .theme-toggle-slider{transform:translateX(21px)}.theme-toggle-small .theme-icon{height:10px;width:10px}.theme-toggle-small .theme-label{font-size:.8rem}.theme-toggle-large .theme-toggle-switch{height:38px;width:75px}.theme-toggle-large .theme-toggle-slider{height:30px;left:3px;top:3px;width:30px}.theme-toggle-large.dark .theme-toggle-slider{transform:translateX(37px)}.theme-toggle-large .theme-icon{height:18px;width:18px}.theme-toggle-large .theme-label{font-size:1.1rem}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.theme-transition *{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease!important}.theme-toggle.loading{opacity:.6;pointer-events:none}.theme-toggle.loading .theme-toggle-switch{animation:loading-shimmer 2s infinite;background:linear-gradient(90deg,#f8f9fa 25%,#e9ecef 50%,#f8f9fa 75%);background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--border-color) 50%,var(--bg-secondary) 75%);background-size:200% 100%}@keyframes loading-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.theme-toggle-switch{background:none;border:none;margin:0;outline:none;padding:0}.theme-toggle-switch:focus{outline:2px solid #007bff;outline:2px solid var(--btn-primary);outline-offset:2px}.theme-toggle-switch:hover:not(:disabled){transform:scale(1.05)}.theme-toggle-switch:active:not(:disabled){transform:scale(.95)}.theme-icon{transition:all .3s cubic-bezier(.4,0,.2,1)}.sun-icon{opacity:1;transform:rotate(0deg)}.moon-icon{opacity:0;position:absolute;transform:rotate(-30deg)}.theme-toggle-switch.dark .sun-icon{opacity:0;transform:rotate(30deg)}.theme-toggle-switch.dark .moon-icon{opacity:1;transform:rotate(0deg)}.back-button,.btn:not(.btn-logout):not(.btn-export),.cancel-button,.card-btn,.checkin-btn,.checkout-btn,.enter-attendance-btn,.filter-controls button:not([class*=export]),.header-btn:not(.logout),.manage-team-button,.month-nav-btn,.nav-button,.refresh-btn,.report-button,.shifts-button,.users-button,button:not(.logout-button):not(.export-button):not(.theme-toggle-switch){align-items:center;background-color:#e0f2ff;background-color:var(--btn-default);border:1px solid #93c5fd;border:1px solid var(--btn-default-border);border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#1e3a8a;color:var(--btn-default-text);cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;justify-content:center;padding:8px 16px;text-decoration:none;transition:all .3s ease}.back-button:hover,.btn:not(.btn-logout):not(.btn-export):hover,.cancel-button:hover,.card-btn:hover,.checkin-btn:hover,.checkout-btn:hover,.enter-attendance-btn:hover,.filter-controls button:not([class*=export]):hover,.header-btn:not(.logout):hover,.manage-team-button:hover,.month-nav-btn:hover,.nav-button:hover,.refresh-btn:hover,.report-button:hover,.shifts-button:hover,.users-button:hover,button:not(.logout-button):not(.export-button):not(.theme-toggle-switch):hover{background-color:#bfdbfe;background-color:var(--btn-default-hover);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.header-btn.active,.nav-button.active,button.active{background-color:#1e40af;background-color:var(--btn-active);border-color:#1e40af;border-color:var(--btn-active);color:#fff}.header-btn.active:hover,.nav-button.active:hover,button.active:hover{background-color:#1e3a8a;background-color:var(--btn-active-hover)}.btn-logout,.header-btn.logout,.logout-button{align-items:center;background-color:#dc3545;background-color:var(--btn-logout);border:1px solid #dc3545;border:1px solid var(--btn-logout);border-radius:6px;box-shadow:0 2px 4px #dc35454d;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;justify-content:center;padding:8px 16px;text-decoration:none;transition:all .3s ease}.btn-logout:hover,.header-btn.logout:hover,.logout-button:hover{background-color:#c82333;background-color:var(--btn-logout-hover);box-shadow:0 4px 8px #dc354566;transform:translateY(-1px)}.btn-export,.export-button,.filter-controls button[class*=export],button[onclick*=Excel],button[onclick*=PDF],button[onclick*=export]{align-items:center;border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;justify-content:center;padding:8px 16px;text-decoration:none;transition:all .3s ease}.export-excel,.filter-controls button:nth-of-type(4),button[onclick*=Excel]{background-color:#16a34a;background-color:var(--btn-excel);color:#fff}.export-excel:hover,.filter-controls button:nth-of-type(4):hover,button[onclick*=Excel]:hover{background-color:#15803d;background-color:var(--btn-excel-hover);box-shadow:0 4px 8px #16a34a4d;transform:translateY(-1px)}.export-pdf,.filter-controls button:nth-of-type(5),button[onclick*=PDF]{background-color:#dc2626;background-color:var(--btn-pdf);color:#fff}.export-pdf:hover,.filter-controls button:nth-of-type(5):hover,button[onclick*=PDF]:hover{background-color:#b91c1c;background-color:var(--btn-pdf-hover);box-shadow:0 4px 8px #dc26264d;transform:translateY(-1px)}.btn:disabled,button:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.btn:focus-visible,button:focus-visible{outline:2px solid #007bff;outline:2px solid var(--btn-primary);outline-offset:2px}.btn-sm,button.small{font-size:12px;padding:6px 12px}.btn-lg,button.large{font-size:16px;padding:12px 24px}.btn-group{display:flex;gap:8px}.btn-group button{margin:0}@media (max-width:768px){.btn,button{font-size:13px;padding:10px 14px}.btn-sm,button.small{font-size:11px;padding:8px 10px}}.date-navigation-buttons button,.delete-button,.enter-attendance-btn,.location-buttons button,.manage-team-button,.modal-close-button,.month-nav-btn,.refresh-btn,.report-button{align-items:center!important;background-color:#e0f2ff!important;background-color:var(--btn-default)!important;border:1px solid #93c5fd!important;border:1px solid var(--btn-default-border)!important;border-radius:6px!important;box-shadow:0 2px 4px #0000001a!important;color:#1e3a8a!important;color:var(--btn-default-text)!important;cursor:pointer!important;display:inline-flex!important;font-size:14px!important;font-weight:500!important;justify-content:center!important;padding:8px 16px!important;text-decoration:none!important;transition:all .3s ease!important}.date-navigation-buttons button:hover,.delete-button:hover,.enter-attendance-btn:hover,.location-buttons button:hover,.manage-team-button:hover,.modal-close-button:hover,.month-nav-btn:hover,.refresh-btn:hover,.report-button:hover{background-color:#bfdbfe!important;background-color:var(--btn-default-hover)!important;box-shadow:0 4px 8px #00000026!important;transform:translateY(-1px)!important}.header-btn.logout,.logout-button,button[onclick*=Logout],button[onclick*=logout]{background-color:#dc3545!important;background-color:var(--btn-logout)!important;border:1px solid #dc3545!important;border:1px solid var(--btn-logout)!important;color:#fff!important}.header-btn.logout:hover,.logout-button:hover,button[onclick*=Logout]:hover,button[onclick*=logout]:hover{background-color:#c82333!important;background-color:var(--btn-logout-hover)!important;box-shadow:0 4px 8px #dc354566!important}.header-btn.active,.nav-button.active,button.active{background-color:#1e40af!important;background-color:var(--btn-active)!important;border-color:#1e40af!important;border-color:var(--btn-active)!important;color:#fff!important}.export-excel,button[onclick*=Excel],button[onclick*=exportToExcel]{background-color:#16a34a!important;background-color:var(--btn-excel)!important;border:none!important;color:#fff!important}.export-pdf,button[onclick*=PDF],button[onclick*=exportToPDF]{background-color:#dc2626!important;background-color:var(--btn-pdf)!important;border:none!important;color:#fff!important}@media (min-width:769px){.hamburger-button,.mobile-header,.navbar-right,.sidebar-backdrop,.sidebar-container{display:none!important}}@media (max-width:768px){body,html{margin:0!important;max-width:100vw!important;overflow-x:hidden!important;padding:0!important;width:100%!important}.header-actions{display:none!important}.main-header.mobile-header{align-items:center;background-color:var(--bg-primary);box-shadow:0 2px 8px var(--shadow-md);display:flex;height:60px;justify-content:space-between;left:0;margin:0;max-width:100vw;overflow:hidden;padding:0 16px;position:fixed;right:0;top:0;width:100%;z-index:2000}.mobile-header .logo-container{align-items:center;display:flex;flex:0 0 50%;flex-shrink:0;justify-content:flex-start;max-width:50%;overflow:hidden}.mobile-header .logo-container img{display:block;height:40px;max-width:100%;object-fit:contain;width:auto}.navbar-right{align-items:center;display:flex;flex:0 0 50%;flex-shrink:0;gap:12px;justify-content:flex-end;max-width:50%}.mobile-header .navbar-right .theme-toggle,.mobile-header .navbar-right .theme-toggle-switch{flex-shrink:0;margin:0}.hamburger-button{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;height:44px;justify-content:center;transition:background-color .2s ease;width:44px}.hamburger-button:active{background-color:var(--bg-secondary);transform:scale(.95)}.sidebar-container{background-color:var(--bg-primary);bottom:0;box-shadow:2px 0 12px var(--shadow-lg);display:flex;flex-direction:column;left:0;margin:0;max-width:280px;overflow-x:hidden;overflow-y:auto;padding:0;position:fixed;top:60px;transform:translateX(-100%);transition:transform .3s ease-in-out;width:280px;z-index:1999}.sidebar-container.open{transform:translateX(0)}.sidebar-nav{flex:1 1;max-width:100%;overflow-x:hidden;overflow-y:auto;padding:8px 0;width:100%}.sidebar-item{-webkit-tap-highlight-color:transparent;align-items:center;border-radius:8px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px;margin:4px 12px;max-width:calc(100% - 24px);min-height:48px;padding:14px 20px;transition:all .2s ease;width:calc(100% - 24px)}.sidebar-item:active{background-color:var(--bg-secondary);transform:scale(.98)}.sidebar-item.active{background-color:#007bff26;color:#007bff;font-weight:600}.sidebar-item.logout-item{color:#dc3545}.sidebar-item.logout-item:active{background-color:#dc35451a}.sidebar-icon{flex-shrink:0;height:24px;width:24px}.sidebar-footer{border-top:1px solid var(--border-color);padding:16px 0}.sidebar-backdrop{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:#00000080;bottom:0;left:0;margin:0;max-width:100vw;opacity:0;padding:0;pointer-events:none;position:fixed;right:0;top:60px;transition:opacity .3s ease;width:100%;z-index:1998}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}*{-webkit-tap-highlight-color:transparent}.hamburger-button,.sidebar-item,button{min-height:44px;min-width:44px}.sidebar-container{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.sidebar-item,button{touch-action:manipulation}.sidebar-item:hover{background-color:initial}.allowances-block{margin:0}.allowances-block-header{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px;justify-content:space-between;margin:4px 12px;max-width:calc(100% - 24px);min-height:48px;padding:14px 20px;transition:all .2s ease;width:calc(100% - 24px)}.allowances-block-header:active{background-color:var(--bg-secondary);transform:scale(.98)}.allowances-block-header.active{background-color:#007bff26;color:#007bff;font-weight:600}.allowances-block-title{align-items:center;display:flex;flex:1 1;gap:12px}.allowances-collapse-toggle{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;color:inherit;cursor:pointer;display:inline-flex;flex-shrink:0;height:24px;justify-content:center;margin:0;padding:0;width:24px}.allowances-block-body{margin:0;padding:0 0 0 20px;position:relative}.allowances-block-body:before{background-color:#007bff33;bottom:0;content:"";left:32px;position:absolute;top:0;width:2px}[data-theme=dark] .allowances-block-body:before{background-color:#3b82f64d}.allowances-item{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px;margin:4px 12px;max-width:calc(100% - 24px);min-height:48px;padding:14px 20px 14px 44px;text-align:left;transition:all .2s ease;width:calc(100% - 24px)}.allowances-item:active{background-color:var(--bg-secondary);transform:scale(.98)}.allowances-item.active{background-color:#007bff26;color:#007bff;font-weight:600}.allowances-section{margin:0}.allowances-section-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px;justify-content:space-between;margin:4px 12px;max-width:calc(100% - 24px);min-height:48px;padding:14px 20px 14px 44px;text-align:left;transition:all .2s ease;width:calc(100% - 24px)}.allowances-section-btn:active{background-color:var(--bg-secondary);transform:scale(.98)}.allowances-section-btn.active,.allowances-section-btn.expanded{background-color:#007bff26;color:#007bff;font-weight:600}.allowances-section-label{align-items:center;display:flex;flex:1 1;gap:12px}.allowances-section-arrow,.allowances-section-icon{flex-shrink:0;height:24px;width:24px}.allowances-section-arrow{transition:transform .3s ease}.allowances-section-arrow.rotated{transform:rotate(180deg)}.allowances-sublist{max-height:0;overflow:hidden;transition:max-height .3s cubic-bezier(.4,0,.2,1)}.allowances-sublist.open{max-height:800px}.allowances-subitem{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:12px;margin:4px 12px;max-width:calc(100% - 24px);min-height:48px;padding:14px 20px 14px 68px;text-align:left;transition:all .2s ease;width:calc(100% - 24px)}.allowances-subitem:active{background-color:var(--bg-secondary);transform:scale(.98)}.allowances-subitem.active{background-color:#007bff26;color:#007bff;font-weight:600}[data-theme=dark] .allowances-block-header{color:#fff}[data-theme=dark] .allowances-block-header.active{background-color:#3b82f64d;color:#60a5fa}[data-theme=dark] .allowances-item{color:#fff}[data-theme=dark] .allowances-item.active{background-color:#3b82f64d;color:#60a5fa}[data-theme=dark] .allowances-section-btn{color:#fff}[data-theme=dark] .allowances-section-btn.active,[data-theme=dark] .allowances-section-btn.expanded{background-color:#3b82f64d;color:#60a5fa}[data-theme=dark] .allowances-subitem{color:#fff}[data-theme=dark] .allowances-subitem.active{background-color:#3b82f64d;color:#60a5fa}body.sidebar-open{height:100%;overflow:hidden!important;position:fixed;width:100%}*{box-sizing:border-box}.sidebar-container,.sidebar-footer,.sidebar-nav{overflow-x:hidden!important}}@media (max-width:480px){.sidebar-container{width:260px}.logo-container img{height:36px}.allowances-block-header,.allowances-item,.allowances-section-btn,.allowances-subitem,.sidebar-item{font-size:15px;padding:12px 16px}.allowances-subitem{padding-left:48px}}[data-theme=dark] .sidebar-header{background:linear-gradient(135deg,#1e3a8a,#1e40af)}[data-theme=dark] .user-avatar{background-color:#ffffff1a;color:#fff}[data-theme=dark] .sidebar-item{color:#fff!important}[data-theme=dark] .sidebar-item.active{background-color:#3b82f64d;color:#60a5fa!important}[data-theme=dark] .sidebar-item.logout-item{color:#f87171!important}.activity-btn.active[data-activity=College_Session]{background:linear-gradient(135deg,#00bcd4,#009688)}.activity-tracker-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.activity-tracker-container h3{color:var(--text-primary);font-size:1.2rem;margin-bottom:20px;margin-top:0;text-align:center}.activity-buttons{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.activity-btn{align-items:center;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:8px;padding:12px 8px;transition:all .2s ease-in-out}.activity-btn:hover:not(:disabled){border-color:var(--c-primary);box-shadow:0 4px 12px #0000001a;transform:translateY(-3px)}.activity-btn:disabled{cursor:not-allowed;opacity:.6}.activity-icon{font-size:1.5rem}.timer{color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:.8rem;font-weight:700;margin-top:4px}.activity-btn.active{animation:pulse 1.5s infinite;border-color:#0000;box-shadow:0 6px 15px #0003;color:#fff;transform:translateY(-2px)}.activity-btn.active .timer{color:#fff}.activity-btn.active[data-activity=Work]{background:linear-gradient(135deg,#28a745,#20c997)}.activity-btn.active[data-activity=Break]{background:linear-gradient(135deg,#ffc107,#ff9800)}.activity-btn.active[data-activity=Lunch]{background:linear-gradient(135deg,#ff5722,#e91e63)}.activity-btn.active[data-activity=Travel]{background:linear-gradient(135deg,#2196f3,#3f51b5)}.activity-btn.active[data-activity=Remote_Work]{background:linear-gradient(135deg,#9c27b0,#673ab7)}.duration-selector{align-items:center;background:var(--bg-tertiary);border-radius:8px;display:flex;gap:12px;justify-content:center;margin-top:20px;padding:12px}.duration-selector label{color:var(--text-secondary);font-weight:600}.duration-selector select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);padding:6px 10px}.remaining-time{color:var(--c-warning);font-family:Courier New,Courier,monospace;font-weight:600}@media (max-width:640px){.activity-buttons{grid-template-columns:1fr 1fr}.duration-selector{flex-direction:column}}.notification-card-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:600px;max-width:500px;overflow:hidden;transition:box-shadow .3s ease;width:100%}.notification-card-container:hover{box-shadow:0 4px 16px #00000026}.notification-card-header{align-items:center;background:linear-gradient(135deg,#fff,#fff);border-bottom:1px solid #e5e7eb;color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.notification-card-title{align-items:center;color:#060606;display:flex;gap:8px}.notification-card-title h3{color:#000;font-size:18px;font-weight:600;margin:0}.notification-badge{background:#ef4444;border-radius:9999px;color:#000;font-size:12px;font-weight:600;line-height:1.5;min-width:20px;padding:2px 8px;text-align:center}.notification-card-actions{align-items:center;display:flex;gap:8px}.clear-all-btn,.view-history-btn{background:#fff3;border:1px solid #3b82f64d;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:background .2s ease,border-color .2s ease,transform .2s ease}.clear-all-btn:hover,.view-history-btn:hover{background:#3b82f61a;border-color:#3b82f680;transform:translateY(-1px)}.clear-all-btn{animation:slideInFromRight .3s ease}.notification-filters{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;padding:12px 20px}.filter-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:background .2s ease,border-color .2s ease,color .2s ease}.filter-btn:hover{background:#f3f4f6;border-color:#9ca3af}.filter-btn.active{background:#1e40af;border-color:#0000;color:#fff}.filter-btn.sound-toggle{background:#0000;border:none;font-size:16px;margin-left:auto;padding:6px 10px}.filter-btn.sound-toggle:hover{background:#e5e7eb}.notification-list{flex:1 1;overflow-y:auto;padding:16px 8px;scrollbar-color:#a4d9ff #f1f1f1}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.notification-list::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:#5568d3}.notification-group{margin-bottom:24px}.notification-group-header{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:12px;padding-left:4px;text-transform:uppercase}.notification-item{align-items:flex-start;animation:slideInFromTop .3s ease;background-color:initial;border:1px solid;border-radius:4px;margin-bottom:16px;margin-left:12px;margin-right:12px;text-align:left;transition:background-color .2s}.notification-item:hover{background-color:#00000005}.notification-item.severity-success{border-color:#2e7d32}.notification-item.severity-success .notification-icon{color:#2e7d32}.notification-item.severity-info{border-color:#0288d1}.notification-item.severity-info .notification-icon{color:#0288d1}.notification-item.severity-warning{border-color:#ed6c02}.notification-item.severity-warning .notification-icon{color:#ed6c02}.notification-item.severity-error{border-color:#d32f2f}.notification-item.severity-error .notification-icon{color:#d32f2f}.notification-icon{align-items:center;display:flex;justify-content:center;margin-right:12px;padding-top:2px}.notification-icon svg{fill:currentColor;height:22px;width:22px}.notification-title{color:#1e1e1e;font-weight:500;line-height:1.5;margin-bottom:2px}.notification-message{color:#666;margin:0}.notification-time{display:block;margin-top:4px}.notification-loading{align-items:center;display:flex;flex-direction:column;gap:16px;height:300px;justify-content:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f4f6;height:40px;width:40px}.notification-loading p{color:#6b7280;font-size:14px;margin:0}.notification-empty{align-items:center;display:flex;flex-direction:column;gap:12px;height:300px;justify-content:center}.empty-icon{opacity:.3}.notification-empty p{color:#9ca3af;font-size:14px;margin:0}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}[data-theme=dark] .notification-card-container{background:#1f2937;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .notification-card-header{border-bottom-color:#060606}[data-theme=dark] .notification-filters{background:#111827;border-bottom-color:#374151}[data-theme=dark] .notification-list{scrollbar-color:#4b5563 #1f2937}[data-theme=dark] .filter-btn{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .filter-btn:hover{background:#4b5563;border-color:#6b7280}[data-theme=dark] .filter-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}[data-theme=dark] .notification-item{border-color:#ffffff3b}[data-theme=dark] .notification-item:hover{background-color:#ffffff0d}[data-theme=dark] .notification-title{color:#e0e0e0}[data-theme=dark] .notification-message{color:#b0b0b0}[data-theme=dark] .notification-item.severity-success{border-color:#66bb6a}[data-theme=dark] .notification-item.severity-success .notification-icon{color:#66bb6a}[data-theme=dark] .notification-item.severity-info{border-color:#29b6f6}[data-theme=dark] .notification-item.severity-info .notification-icon{color:#29b6f6}[data-theme=dark] .notification-item.severity-warning{border-color:#ffa726}[data-theme=dark] .notification-item.severity-warning .notification-icon{color:#ffa726}[data-theme=dark] .notification-item.severity-error{border-color:#f44336}[data-theme=dark] .notification-item.severity-error .notification-icon{color:#f44336}@media (max-width:768px){.notification-card-container{border-radius:0;height:auto;max-width:100%;min-height:400px}.notification-card-header{padding:12px 16px}.notification-card-title h3{font-size:16px}.notification-filters{flex-wrap:nowrap;overflow-x:auto;padding:8px 16px}.notification-list{max-height:400px;padding:8px 16px}.notification-item{padding:10px}.clear-all-btn{display:none}}@media (max-width:480px){.notification-card-actions{flex-direction:column;gap:4px}.view-history-btn{font-size:12px;padding:4px 8px}.notification-title{font-size:13px}.notification-message{font-size:12px}}.monthly-summary-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px}.monthly-summary-card>h3{color:#111827;color:var(--gray-900,#111827);font-size:18px;font-weight:600;margin:0 0 16px}.ms-chart-wrap{align-items:center;display:flex;height:220px;justify-content:center;margin-bottom:8px;position:relative}.ms-center{left:50%;pointer-events:none;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.ms-center-value{color:#111827;color:var(--gray-900,#111827);font-size:28px;font-weight:700;line-height:1.1}.ms-center-label,.ms-legend{color:#6b7280;color:var(--gray-600,#6b7280);font-size:12px}.ms-legend{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:12px}.ms-legend .dot{border-radius:50%;display:inline-block;height:10px;margin-right:6px;width:10px}.dot-present{background:#10b981}.dot-absent{background:#ef4444}.dot-leave{background:#f59e0b}.ms-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.ms-stat{border:1px solid #0000000a;border-radius:8px;box-shadow:0 1px 2px #0000000a;gap:12px;padding:12px}.ms-icon,.ms-stat{align-items:center;display:flex}.ms-icon{background:#ffffffb3;border-radius:50%;font-size:18px;height:40px;justify-content:center;width:40px}.ms-meta .ms-label{font-size:12px}.ms-meta .ms-value{font-size:20px;font-weight:700}.ms-onleave,.ms-working{background:#fef3c7;border-left:4px solid #f59e0b}.ms-present{background:#d1fae5;border-left:4px solid #10b981}.ms-absent{background:#fee2e2;border-left:4px solid #ef4444}.team-card{background:#fff;background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:600px;max-height:600px;min-height:600px;padding:20px;transition:all .3s ease}.team-card__header{align-items:center;border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.team-card__header-left{align-items:center;display:flex;gap:12px}.team-card__header-left h3{font-size:18px;margin:0}.team-card__count,.team-card__header-left h3{color:#111827;color:var(--text-primary,#111827);font-weight:600}.team-card__count{align-items:center;background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6);border-radius:14px;display:inline-flex;font-size:14px;height:28px;justify-content:center;min-width:28px;padding:0 8px}.status-indicator,.team-card__header-right{align-items:center;display:flex}.status-indicator{border-radius:16px;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.status-indicator--online{background:#00ad481a;color:#00ad48}.status-indicator--away{background:#f973161a;color:#f97316}.status-dot{animation:pulse 2s infinite;background:currentColor;border-radius:50%;display:inline-block;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-weight:600}.team-card__list{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow:hidden}.team-card__list--scrollable{overflow-y:auto;padding-right:8px}.team-card__list--scrollable::-webkit-scrollbar{width:6px}.team-card__list--scrollable::-webkit-scrollbar-track{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6);border-radius:3px}.team-card__list--scrollable::-webkit-scrollbar-thumb{background:#cbd5e1;background:var(--border-color,#cbd5e1);border-radius:3px}.team-card__list--scrollable::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--text-tertiary,#94a3b8)}.team-card__empty{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;padding:40px 20px;text-align:center}.team-card__item{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;display:flex;justify-content:space-between;padding:12px 14px;transition:all .2s ease}.team-card__item:hover{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6);border-color:#cbd5e1;border-color:var(--border-hover,#cbd5e1);transform:translateX(4px)}.team-card__user-info{align-items:center;display:flex;flex:1 1;gap:12px;min-width:0}.user-avatar{flex-shrink:0;height:44px;position:relative;width:44px}.user-avatar__initial{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:18px;font-weight:600;height:100%;justify-content:center;width:100%}.user-avatar__status{border:2px solid #fff;border:2px solid var(--bg-primary,#fff);border-radius:50%;bottom:0;height:12px;position:absolute;right:0;width:12px}.user-avatar__status--online{background:#00ad48}.user-avatar__status--away{background:#f97316}.user-avatar__status--offline{background:#6b7280}.team-card__text-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.team-card__user-name{color:#111827;color:var(--text-primary,#111827);font-size:14px;font-weight:600}.team-card__user-email,.team-card__user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-card__user-email{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px}.activity-icon{border-radius:50%;flex-shrink:0;height:12px;transition:transform .2s ease;width:12px}.team-card__item:hover .activity-icon{transform:scale(1.2)}.activity-icon--green{background:#00ad48;box-shadow:0 0 8px #00ad4866}.activity-icon--orange{background:#f97316;box-shadow:0 0 8px #f9731666}.activity-icon--yellow{background:#ffef5e;box-shadow:0 0 8px #ffef5e66}[data-theme=dark] .team-card{background:#1a1f2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .team-card__header{border-bottom-color:#2d3548}[data-theme=dark] .team-card__header-left h3{color:#fff}[data-theme=dark] .team-card__count{background:#141824;color:#fff}[data-theme=dark] .team-card__item{background:#141824;border-color:#2d3548}[data-theme=dark] .team-card__item:hover{background:#1a1f2e;border-color:#3d4658}[data-theme=dark] .team-card__user-name{color:#fff}[data-theme=dark] .team-card__empty,[data-theme=dark] .team-card__user-email{color:#94a3b8}[data-theme=dark] .user-avatar__status{border-color:#1a1f2e}[data-theme=dark] .team-card__list--scrollable::-webkit-scrollbar-track{background:#141824}[data-theme=dark] .team-card__list--scrollable::-webkit-scrollbar-thumb{background:#2d3548}[data-theme=dark] .team-card__list--scrollable::-webkit-scrollbar-thumb:hover{background:#3d4658}:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#f0f2f5;--text-primary:#333;--text-secondary:#666;--text-muted:#999;--border-color:#e9ecef;--border-hover:#ced4da;--shadow-light:#0000001a;--shadow-medium:#00000026;--shadow-heavy:#00000040;--btn-primary:#007bff;--btn-primary-hover:#0056b3;--btn-success:#28a745;--btn-success-hover:#1e7e34;--btn-danger:#dc3545;--btn-danger-hover:#c82333;--btn-warning:#ffc107;--btn-warning-hover:#e0a800;--btn-secondary:#6c757d;--btn-secondary-hover:#545b62;--status-present:#28a745;--status-absent:#dc3545;--status-checked-in:#ffc107;--status-pending:#fd7e14;--status-approved:#20c997;--status-rejected:#dc3545;--table-header-bg:#f8f9fa;--table-row-hover:#f5f5f5;--table-border:#dee2e6;--navbar-bg:#343a40;--navbar-text:#fff;--navbar-hover:#495057}[data-theme=dark]{--bg-primary:#1a1a1a;--bg-secondary:#2d2d2d;--bg-tertiary:#121212;--text-primary:#fff;--text-secondary:#ccc;--text-muted:#888;--border-color:#404040;--border-hover:#555;--shadow-light:#ffffff1a;--shadow-medium:#ffffff26;--shadow-heavy:#ffffff40;--btn-primary:#0d6efd;--btn-primary-hover:#0b5ed7;--btn-success:#198754;--btn-success-hover:#157347;--btn-danger:#dc3545;--btn-danger-hover:#bb2d3b;--btn-warning:#fd7e14;--btn-warning-hover:#e25b39;--btn-secondary:#6c757d;--btn-secondary-hover:#5c636a;--table-header-bg:#2d2d2d;--table-row-hover:#333;--table-border:#404040;--navbar-bg:#212529;--navbar-text:#fff;--navbar-hover:#343a40}*{box-sizing:border-box}body{background-color:var(--bg-tertiary);transition:background-color .3s ease,color .3s ease}.sort-controls-admin{align-items:center;background-color:#f8f9fa;background-color:var(--bg-secondary);border:1px solid #e9ecef;border:1px solid var(--border-color);border-radius:8px;display:flex;gap:15px;margin-bottom:20px;padding:15px;transition:all .3s ease}.sort-controls-admin label{color:#333;color:var(--text-primary);font-size:14px;font-weight:600;white-space:nowrap}.sort-select{background-color:var(--bg-primary);border:1px solid #e9ecef;color:#333;min-width:120px;transition:all .15s ease}.sort-select:focus{border-color:var(--btn-primary);box-shadow:0 0 0 2px #0d6efd40}.sort-select:hover{border-color:#ced4da;border-color:var(--border-hover)}.sort-order-btn{background-color:var(--btn-primary)}.sort-order-btn:hover{background-color:var(--btn-primary-hover)}@media (max-width:768px){.attendance-report-section{padding-top:76px!important}.sort-controls-admin{align-items:stretch;flex-direction:column;gap:10px;padding:12px}.sort-controls-admin>div{align-items:center;display:flex;gap:10px}.sort-select{flex:1 1;min-width:auto}}.admin-container{background-color:#f0f2f5;background-color:var(--bg-tertiary);color:#333;color:var(--text-primary);display:flex;flex-direction:column;min-height:100vh;padding:0;transition:all .3s ease}.navbar{background-color:#343a40;background-color:var(--navbar-bg);box-shadow:0 2px 8px #00000026;box-shadow:0 2px 8px var(--shadow-medium);padding:12px 20px;transition:all .3s ease}.navbar-logo{align-items:center;display:flex;gap:10px}.navbar-logo img{height:40px;transition:transform .3s ease}.navbar-logo img:hover{transform:scale(1.05)}.navbar-buttons{align-items:center;flex-wrap:wrap;gap:8px}.logout-button,.refresh-button,.reports-button,.shifts-button,.teams-button,.userlist-button{align-items:center;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:5px;letter-spacing:.5px;padding:10px 16px;text-transform:uppercase;transition:all .3s ease;white-space:nowrap}.shifts-button{background-color:#28a745;background-color:var(--btn-success)}.shifts-button:hover{background-color:#1e7e34;background-color:var(--btn-success-hover);box-shadow:0 4px 8px #28a7454d}.userlist-button{background-color:#007bff;background-color:var(--btn-primary)}.userlist-button:hover{background-color:#0056b3;background-color:var(--btn-primary-hover);box-shadow:0 4px 8px #0d6efd4d;transform:translateY(-2px)}.reports-button{background-color:#ffc107;background-color:var(--btn-warning);color:#000}.reports-button:hover{background-color:#e0a800;background-color:var(--btn-warning-hover);box-shadow:0 4px 8px #ffc1074d;transform:translateY(-2px)}.teams-button{background-color:#6c757d;background-color:var(--btn-secondary)}.teams-button:hover{background-color:#545b62;background-color:var(--btn-secondary-hover);box-shadow:0 4px 8px #6c757d4d}.logout-button{background-color:var(--btn-danger)}.logout-button:hover{background-color:var(--btn-danger-hover);box-shadow:0 4px 8px #dc35454d}.refresh-button{background-color:#28a745;background-color:var(--btn-success);padding:8px 12px}.refresh-button:hover{background-color:#1e7e34;background-color:var(--btn-success-hover)}@media (max-width:1200px){.navbar-buttons{gap:6px}.logout-button,.reports-button,.shifts-button,.teams-button,.userlist-button{font-size:13px;padding:8px 12px}}@media (max-width:992px){.navbar{padding:10px 15px}.navbar-buttons{gap:4px}.logout-button,.reports-button,.shifts-button,.teams-button,.userlist-button{font-size:12px;letter-spacing:.3px;padding:8px 10px}}@media (max-width:768px){.navbar{flex-direction:column;gap:10px;padding:10px;position:relative}.navbar-buttons{flex-wrap:wrap;gap:8px;justify-content:center;width:100%}.logout-button,.reports-button,.shifts-button,.teams-button,.userlist-button{flex:1 1;font-size:13px;justify-content:center;min-width:120px;padding:10px 8px}}@media (max-width:480px){.navbar-buttons{flex-direction:column;width:100%}.logout-button,.reports-button,.shifts-button,.teams-button,.userlist-button{margin-bottom:5px;min-width:auto;width:100%}}.teams-button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;letter-spacing:.5px;padding:10px 18px;text-transform:uppercase;transition:all .15s ease}.teams-button:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.refresh-button{align-items:center;background:#007bff;border:none;border-radius:6px;box-shadow:0 2px 4px #007bff33;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .15s ease}.refresh-button:hover{background:#0056b3;box-shadow:0 4px 8px #007bff4d;transform:translateY(-1px)}.refresh-button:active{box-shadow:0 2px 4px #007bff33;transform:translateY(0)}.refresh-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}@media (max-width:767px) and (orientation:landscape){.attendance-report-section{margin-top:80px}.dashboard-metrics{grid-template-columns:repeat(2,1fr)}}.admin-navbar{align-items:center;background-color:#f0f0f0;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;left:0;padding:10px 20px;position:fixed;right:0;top:0;width:100%;z-index:1000}.admin-navbar-logo img{background-color:#fff;height:40px;width:auto}.admin-navbar-buttons{display:flex;gap:10px}.admin-navbar-buttons button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .3s ease}.admin-navbar-buttons .logout-button{background-color:#dc3545;color:#fff}.admin-navbar-buttons .logout-button:hover{background-color:#c82333}.admin-navbar-buttons .nav-button{background-color:#007bff;color:#fff}.admin-navbar-buttons .nav-button:hover{background-color:#0056b3}.admin-sidebar{background-color:#f0f0f0;height:100vh;left:0;margin-top:0;padding:20px;position:fixed;width:250px;z-index:999}.admin-sidebar ul{list-style:none;padding:0}.admin-sidebar li{margin-bottom:10px}.admin-sidebar button{background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:15px;margin-bottom:1px;margin-top:15px;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.admin-sidebar button:hover{background-color:#0056b3}.user-container{font-family:Arial,sans-serif;margin:0;padding:0 0 20px}.user-navbar{align-items:center;background-color:#fff;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;left:0;padding:10px 20px;position:fixed;right:0;top:0;width:100%;z-index:1000}.company-logo{width:150px}.nav-buttons{gap:10px}.user-navbar .logout-button,.user-navbar .reports-button,.user-navbar .shifts-button,.user-navbar .userlist-button{border:none;border-radius:5px;cursor:pointer;font-size:16px;padding:8px 12px}.user-navbar .reports-button,.user-navbar .shifts-button,.user-navbar .userlist-button{background-color:#007bff;color:#fff}.user-navbar .reports-button:hover,.user-navbar .shifts-button:hover,.user-navbar .userlist-button:hover{background-color:#6a00d6}.user-navbar .logout-button{background-color:#dc3545;color:#fff}.user-form-box{background-color:#f9f9f9;border-radius:8px;box-shadow:0 0 10px #0000001a;margin:0 auto;max-width:600px;padding:20px}.user-title{font-size:24px}.input-group,.user-title{margin-bottom:20px}.input-label{font-weight:700;margin-bottom:8px}.input-field,.select-field{border:1px solid #ccc;border-radius:5px;padding:10px}.submit-button{background-color:#5ce65c;border:none;border-radius:5px;cursor:pointer;font-size:16px;margin-top:20px;padding:12px;width:100%}.text-red-500{color:red}.text-green-500{color:green}[data-theme=dark] .sort-controls-admin{background-color:#1f2937;border-color:#374151}[data-theme=dark] .sort-controls-admin label{color:#d1d5db}[data-theme=dark] .sort-select{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .sort-select:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f140}[data-theme=dark] .sort-order-btn{background-color:#6366f1}[data-theme=dark] .sort-order-btn:hover{background-color:#5b21b6}[data-theme=dark] .admin-container{background-color:#111827}[data-theme=dark] .admin-navbar{background-color:#111827f2;border-bottom-color:#ffffff1a}[data-theme=dark] .admin-content{background-color:#1f2937}[data-theme=dark] .admin-card,[data-theme=dark] .employee-card,[data-theme=dark] .report-card{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .admin-table,[data-theme=dark] .report-table{background-color:#1f2937;border:1px solid #374151;color:#f9fafb}[data-theme=dark] .admin-table th,[data-theme=dark] .report-table th,[data-theme=dark] .report-table thead tr th{background-color:#374151;border-color:#4b5563;border-bottom:2px solid #4b5563;border-right:1px solid #4b5563;color:#e5e7eb}[data-theme=dark] .admin-table th:hover,[data-theme=dark] .report-table th:hover,[data-theme=dark] .report-table thead tr th:hover{background-color:#4b5563}[data-theme=dark] .admin-table td,[data-theme=dark] .report-table td,[data-theme=dark] .report-table-cell{background-color:#1f2937;border-color:#4b5563;border-bottom:1px solid #4b5563;border-right:1px solid #4b5563;color:#f9fafb}[data-theme=dark] .admin-table tr:nth-child(2n),[data-theme=dark] .report-table tbody tr:nth-of-type(2n){background-color:#2d3748}[data-theme=dark] .admin-table tr:hover,[data-theme=dark] .report-table tbody tr:hover{background-color:#4a5568}[data-theme=dark] .report-table tbody tr:nth-of-type(2n) td{background-color:#2d3748}[data-theme=dark] .report-table tbody tr:hover td{background-color:#4a5568}[data-theme=dark] .admin-button,[data-theme=dark] .btn-primary{background-color:#6366f1;border-color:#6366f1}[data-theme=dark] .admin-button:hover,[data-theme=dark] .btn-primary:hover{background-color:#5b21b6}[data-theme=dark] .admin-input,[data-theme=dark] .form-control{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .admin-input:focus,[data-theme=dark] .form-control:focus{background-color:#4b5563;border-color:#6366f1;box-shadow:0 0 0 2px #6366f140}[data-theme=dark] .status-working{background-color:#065f46;color:#d1fae5}[data-theme=dark] .status-absent{background-color:#7f1d1d;color:#fecaca}[data-theme=dark] .status-completed{background-color:#1e3a8a;color:#dbeafe}.header-center{flex:1 1;justify-content:center}.header-center,.main-header{align-items:center;display:flex}.main-header{justify-content:space-between}.attendance-report-section{background-color:var(--bg-primary);box-shadow:0 4px 16px #0000001a;box-shadow:0 4px 16px var(--shadow-light);margin:80px 20px 20px;padding:20px;transition:all .3s ease}.dashboard-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:24px}.dashboard-header h2{color:#333;color:var(--text-primary);font-size:28px;font-weight:600;margin:0;text-shadow:0 1px 2px #0000001a;text-shadow:0 1px 2px var(--shadow-light)}.dashboard-metrics{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.metric-card{border:2px solid #0000;border-radius:12px;cursor:pointer;overflow:hidden;padding:20px;position:relative;text-align:center;transition:all .3s ease}.metric-card:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.metric-card:hover:before{left:100%}.metric-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.metric-card-active{border-color:#007bff;border-color:var(--btn-primary);box-shadow:0 4px 20px #0d6efd4d}.metric-card h3{color:#fff;font-size:32px;font-weight:700;margin:0 0 10px;text-shadow:0 2px 4px #0000004d}.metric-card p{color:#fff;font-size:16px;font-weight:600;letter-spacing:1px;margin:0;text-shadow:0 1px 2px #0000004d;text-transform:uppercase}.search-filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.search-container{flex:1 1;min-width:250px;position:relative}.search-input{background-color:#fff;background-color:var(--bg-primary);border:2px solid #e9ecef;border:2px solid var(--border-color);border-radius:8px;color:#333;color:var(--text-primary);font-size:16px;padding:12px 16px 12px 45px;transition:all .3s ease;width:100%}.search-input:focus{border-color:#007bff;border-color:var(--btn-primary);box-shadow:0 0 0 3px #0d6efd1a}.search-icon{color:#999;color:var(--text-muted);font-size:18px;left:15px;position:absolute;top:50%;transform:translateY(-50%)}.attendance-table-container{border-radius:12px;box-shadow:0 4px 16px #0000001a;box-shadow:0 4px 16px var(--shadow-light);margin-bottom:20px;overflow-x:auto}.attendance-table,.attendance-table-container{background-color:#fff;background-color:var(--bg-primary)}.attendance-table{border-collapse:collapse;color:#333;color:var(--text-primary);font-size:14px;width:100%}.attendance-table td,.attendance-table th{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--table-border);padding:12px 16px;text-align:left;transition:all .3s ease}.attendance-table th{background-color:#f8f9fa;background-color:var(--table-header-bg);color:#333;color:var(--text-primary);font-size:13px;font-weight:600;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:10}.attendance-table tbody tr{transition:all .3s ease}.attendance-table tbody tr:hover{background-color:#f5f5f5;background-color:var(--table-row-hover);box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow-light);transform:scale(1.01)}.status-present{color:#28a745;color:var(--status-present);font-weight:700}.status-absent{color:#dc3545;color:var(--status-absent);font-weight:700}.status-checked-in{color:#ffc107;color:var(--status-checked-in);font-weight:700}.approval-info{display:flex;flex-direction:column;font-size:12px;gap:4px}.approval-info .approver-name{color:#007bff;color:var(--btn-primary);font-weight:600}.approval-info .approval-time{color:#999;color:var(--text-muted);font-style:italic}.approval-info .approval-role{color:#28a745;color:var(--btn-success);font-size:11px;font-weight:500;text-transform:uppercase}.team-info{color:#6c757d;color:var(--btn-secondary)}.manager-info{color:#ffc107;color:var(--btn-warning);font-weight:500}.loading{align-items:center;color:#666;display:flex;font-size:18px;height:60vh;justify-content:center}@media (max-width:1440px) and (min-width:1200px){.attendance-report-section{margin:80px 15px 15px;padding:18px}.dashboard-header h2{font-size:26px}.attendance-table td,.attendance-table th{font-size:13px;padding:10px 12px}.metric-card{padding:18px}.metric-card h3{font-size:28px}}@media (max-width:1199px) and (min-width:768px){.attendance-report-section{margin:100px 10px 10px;padding:15px}.dashboard-header{align-items:stretch;flex-direction:column;text-align:center}.dashboard-metrics{gap:15px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.search-filter-section{align-items:stretch;flex-direction:column}.search-container{min-width:auto}.attendance-table{font-size:13px}.attendance-table td,.attendance-table th{padding:8px 10px}}@media (max-width:767px){.attendance-report-section{margin:120px 5px 5px;padding:12px}.dashboard-header h2{font-size:22px;text-align:center}.dashboard-metrics{gap:12px;grid-template-columns:1fr}.metric-card{padding:15px}.metric-card h3{font-size:24px}.metric-card p{font-size:14px}.search-input{font-size:16px;padding:10px 12px 10px 40px}.attendance-table-container{border-radius:8px}.attendance-table{font-size:12px}.attendance-table td,.attendance-table th{padding:6px 8px}.attendance-table th{font-size:11px}.attendance-table .hide-mobile{display:none}.approval-info{font-size:10px}}@media (max-width:479px){.attendance-report-section{margin:140px 3px 3px;padding:8px}.dashboard-header h2{font-size:20px}.metric-card{padding:12px}.metric-card h3{font-size:20px}.metric-card p{font-size:12px}.attendance-table{font-size:11px}.attendance-table td,.attendance-table th{padding:4px 6px}.search-input{padding:8px 10px 8px 35px}.search-icon{font-size:16px;left:10px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.attendance-table{font-size:14px}.attendance-table td,.attendance-table th{padding:12px 16px}}@media (max-width:767px) and (orientation:landscape){.attendance-report-section{margin-top:0}.dashboard-metrics{grid-template-columns:repeat(2,1fr)}}.manager-cell,.team-cell{word-wrap:break-word;line-height:1.3;max-width:150px;min-width:120px;vertical-align:top;white-space:normal;word-break:break-word}.manager-item,.team-item{background-color:#0d6efd1a;border-left:3px solid var(--btn-primary);border-radius:4px;color:var(--text-primary);display:block;font-size:12px;margin-bottom:4px;padding:2px 6px}.manager-item:last-child,.team-item:last-child{margin-bottom:0}.manager-item{background-color:#28a7451a;border-left-color:var(--btn-success)}@media (max-width:1440px) and (min-width:1200px){.manager-cell,.team-cell{font-size:13px;max-width:130px;min-width:100px}.manager-item,.team-item{font-size:11px;margin-bottom:3px;padding:1px 4px}.attendance-table td,.attendance-table th{padding:10px 12px}}@media (max-width:1366px) and (min-width:1200px){.manager-cell,.team-cell{max-width:120px;min-width:90px}}[data-theme=dark] .manager-item,[data-theme=dark] .team-item{background-color:#0d6efd33;color:#212529!important}[data-theme=dark] .manager-item{background-color:#28a74533}body{color:#333}.user-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;margin-top:0;min-height:100vh;padding-left:20px;padding-right:20px;padding-top:0;width:100%}.navbar,.user-navbar{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#fff;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;left:0;padding:10px 30px;position:fixed;right:0;top:0;width:100%;z-index:1000}.company-logo{height:45px}.nav-buttons,.navbar-buttons{display:flex;gap:12px}.navbar,.user-navbar{align-items:center;display:flex;justify-content:space-between}.back-button,.change-password-button,.delete-button,.edit-button,.logout-button,.reports-button,.shifts-button,.submit-button,.userlist-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;justify-content:center;letter-spacing:.5px;padding:12px 22px;text-transform:uppercase;transition:all .15s ease;white-space:nowrap}.back-button,.change-password-button,.edit-button,.reports-button,.shifts-button,.userlist-button{background-color:#007bff;color:#fff}.back-button:hover,.change-password-button:hover,.edit-button:hover,.reports-button:hover,.shifts-button:hover,.userlist-button:hover{background-color:#6a00d6;box-shadow:0 4px 10px #007bff40;transform:translateY(-2px)}.delete-button,.logout-button{background-color:#dc3545;color:#fff}.delete-button:hover,.logout-button:hover{background-color:#c82333;box-shadow:0 4px 10px #dc354540;transform:translateY(-2px)}.submit-button{background-color:#28a745;color:#fff;font-size:17px;font-weight:700;padding:14px}.submit-button:hover:not(:disabled){background-color:#218838;box-shadow:0 6px 12px #28a7454d;transform:translateY(-2px)}.submit-button:disabled{background-color:#ccc;box-shadow:none;color:#666;cursor:not-allowed;transform:none}.loading{color:#555;font-size:1.2em;margin-top:50px;width:100%}.attendance-report-section{background-color:#fff;border-radius:12px;box-shadow:0 6px 12px #00000014;box-sizing:border-box;margin:0 auto;max-width:1600px;padding:25px;width:100%}.attendance-report-section h1{color:#333;font-size:2.2em;font-weight:700;letter-spacing:-.5px;margin-bottom:30px;margin-top:0;text-align:center}.report-container{-webkit-overflow-scrolling:touch;overflow-x:auto;overflow-y:visible;padding-bottom:10px;position:relative}.report-table{border-collapse:initial;border-spacing:0;font-size:.95em}.report-table thead tr th{background-color:#007bff;border-bottom:2px solid #0056b3;color:#fff;font-weight:600;padding:15px;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap;z-index:1}.report-table thead tr th:first-child{border-top-left-radius:8px}.report-table thead tr th:last-child{border-top-right-radius:8px}.report-table tbody tr{background-color:#fefefe;border-bottom:1px solid #eee;position:relative;transition:background-color .2s ease}.report-table tbody tr:last-child{border-bottom:none}.report-table tbody tr:nth-of-type(2n){background-color:#f9f9f9}.report-table tbody tr:hover{background-color:#f0f8ff}.report-table tbody tr.editing-row{background-color:#fff8e1;position:relative;z-index:5}.report-table td{color:#555;max-width:200px;overflow:visible;padding:12px 15px;position:relative;text-align:left;vertical-align:middle}.report-table td:nth-child(5){overflow:visible}.report-table td:first-child{min-width:40px;width:4%}.report-table td:nth-child(2){min-width:120px;width:18%}.report-table td:nth-child(3){min-width:150px;width:22%}.report-table td:nth-child(4){min-width:100px;width:14%}.report-table td:nth-child(5){min-width:120px;width:16%}.report-table td:nth-child(6){min-width:80px;width:10%}.report-table td:nth-child(7),.report-table td:nth-child(8){min-width:60px;width:8%}.report-table td:nth-child(9){min-width:100px;width:10%}.report-table td input[type=email],.report-table td input[type=text],.report-table td select{border:1px solid #dcdcdc;border-radius:6px;box-sizing:border-box;font-size:.9em;padding:8px;white-space:normal;width:calc(100% - 10px)}.report-table td input:focus,.report-table td select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff33;outline:none}.report-table td .change-password-button,.report-table td .delete-button,.report-table td .edit-button{border-radius:6px;font-size:13px;margin:2px;padding:8px 12px;white-space:nowrap}.user-form-box{background-color:#fff;border-radius:12px;box-shadow:0 8px 20px #0000001a;box-sizing:border-box;margin:40px auto;max-width:550px;padding:40px;width:90%}.user-title{color:#333;font-size:2.2em;font-weight:700;letter-spacing:-.5px;margin-bottom:35px;text-align:center}.input-group{margin-bottom:25px}.input-label{color:#555;display:block;font-size:.95em;font-weight:600;margin-bottom:10px}.input-field,.select-field{background-color:#f8f8f8;border:1px solid #dcdcdc;border-radius:8px;box-sizing:border-box;font-size:16px;padding:14px 15px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.input-field:focus,.select-field:focus{border-color:#007bff;box-shadow:0 0 0 4px #007bff26;outline:none}.teams-select{background-color:#fff;border:2px solid #dcdcdc;border-radius:8px;font-size:14px;min-height:120px;padding:10px}.teams-select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff26}.teams-select option{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;margin:2px 0;padding:8px 12px}.teams-select option:checked{background-color:#007bff;color:#fff;font-weight:600}.teams-select option:hover{background-color:#e9ecef}.custom-dropdown{position:relative;width:100%;z-index:10}.dropdown-header{align-items:center;background-color:#f8f8f8;border:2px solid #dcdcdc;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;font-size:16px;justify-content:space-between;min-height:50px;padding:12px 15px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.dropdown-header:hover{border-color:#007bff}.dropdown-header.table-dropdown{border:1px solid #dcdcdc;font-size:13px;min-height:35px;padding:8px 12px}.dropdown-arrow{color:#666;font-size:12px;transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.dropdown-content{border:2px solid #dcdcdc;border-radius:0 0 8px 8px;border-top:none;box-shadow:0 4px 6px #0000001a;max-height:200px;z-index:1000}.dropdown-content,.dropdown-content.table-dropdown-content{background-color:#fff;left:0;overflow-y:auto;position:absolute;right:0;top:100%}.dropdown-content.table-dropdown-content{border:1px solid #dcdcdc;border-radius:0 0 6px 6px;box-shadow:0 4px 8px #00000026;font-size:13px;max-height:150px;z-index:1001}.checkbox-option{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;padding:10px 15px;transition:background-color .2s ease}.checkbox-option:hover{background-color:#f8f9fa}.checkbox-option:last-child{border-bottom:none}.checkbox-option input[type=checkbox]{accent-color:#007bff;margin-right:10px;transform:scale(1.1)}.checkbox-text{color:#333;flex:1 1;font-size:14px}.table-dropdown-content .checkbox-option{padding:8px 12px}.table-dropdown-content .checkbox-text{font-size:12px}.selected-teams-display{flex:1 1;text-align:left}.teams-preview{color:#333;font-size:12px;font-weight:500}.placeholder-text{color:#999;font-size:12px;font-style:italic}.dropdown-header-info{background-color:#f8f9fa;border-bottom:1px solid #ddd;color:#666;font-size:11px;padding:8px 12px;text-align:center}.selected-teams-summary{background-color:#f0f8ff;border-top:1px solid #ddd;color:#555;font-size:11px;max-height:60px;overflow-y:auto;padding:8px 12px}.report-table .custom-dropdown{position:relative;z-index:10}.report-table .dropdown-content{left:0;max-width:300px;min-width:200px;position:absolute;right:0;top:100%;width:-webkit-max-content;width:max-content;z-index:1002}.help-text{color:#6c757d;display:block;font-size:12px;font-style:italic;margin-top:8px}.password-error{color:#dc3545;font-size:14px;font-weight:500;margin-top:5px}.sort-controls{color:#495057;font-size:14px;font-weight:600;gap:15px}.sort-select{border:1px solid #ced4da;color:#495057}.sort-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.sort-order-btn{background-color:#007bff}.sort-order-btn:hover{background-color:#0056b3;box-shadow:0 2px 4px #007bff40}.password-requirements{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-top:10px;padding:12px}.password-requirements small{color:#6c757d;display:block;font-weight:600;margin-bottom:8px}.password-requirements ul{list-style:none;margin:0;padding:0}.password-requirements li{align-items:center;display:flex;font-size:13px;padding:3px 0}.password-requirements li:before{border-radius:50%;content:"";flex-shrink:0;height:12px;margin-right:8px;width:12px}.password-requirements li.valid:before{background-color:#28a745;content:"✓"}.password-requirements li.invalid:before,.password-requirements li.valid:before{align-items:center;color:#fff;display:flex;font-size:10px;font-weight:700;justify-content:center}.password-requirements li.invalid:before{background-color:#dc3545;content:"✗"}.password-requirements li.valid{color:#28a745;font-weight:500}.password-requirements li.invalid{color:#dc3545}.teams-display{word-wrap:break-word;line-height:1.4;max-width:150px;white-space:normal}.report-table td:nth-child(5){overflow:visible!important;position:relative;z-index:1}.teams-select-edit{background-color:#fff;border:1px solid #dcdcdc;border-radius:6px;font-size:13px;min-height:80px;padding:8px}.teams-select-edit:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff33}.teams-select-edit option{background-color:#f8f9fa;padding:6px 10px}.teams-select-edit option:checked{background-color:#007bff;color:#fff}.select-field{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333%22%20d%3D%22M287%2C197.3L159.2%2C69.5c-3.6-3.6-8-5.4-12.4-5.4s-8.8%2C1.8-12.4%2C5.4L5.4%2C197.3c-7.2%2C7.2-7.2%2C18.8%2C0%2C26c7.2%2C7.2%2C18.8%2C7.2%2C26%2C0L146.8%2C103.5c3.6-3.6%2C8-5.4%2C12.4-5.4s8.8%2C1.8%2C12.4%2C5.4l115.4%2C115.4c7.2%2C7.2%2C18.8%2C7.2%2C26%2C0C294.2%2C216.1%2C294.2%2C204.5%2C287%2C197.3z%22%2F%3E%3C%2Fsvg%3E");background-position:right 15px center;background-repeat:no-repeat;background-size:12px;padding-right:35px}.checkbox-container{align-items:center;color:#555;cursor:pointer;display:flex;font-size:.95em;gap:10px;margin-bottom:25px}.checkbox-container input[type=checkbox]{accent-color:#007bff;cursor:pointer;transform:scale(1.1)}.text-center{font-size:1.05em;font-weight:500;margin-bottom:20px}.text-red-500{color:#dc3545}.text-green-500{color:#28a745}@media (max-width:1440px){.attendance-report-section{max-width:95%}}@media (max-width:1200px){.navbar,.user-navbar{padding:10px 20px}.nav-buttons,.navbar-buttons{gap:10px}.back-button,.change-password-button,.delete-button,.edit-button,.logout-button,.reports-button,.shifts-button,.userlist-button{font-size:14px;padding:10px 18px}.attendance-report-section{max-width:98%;padding:20px}.report-table{min-width:900px}.report-table tbody tr td,.report-table thead tr th{padding:10px 12px}.report-table td input[type=email],.report-table td input[type=text],.report-table td select{padding:6px}}@media (max-width:768px){.user-container{padding-left:15px;padding-right:15px;padding-top:76px!important}.navbar,.user-navbar{align-items:flex-start;flex-direction:column;gap:10px;padding:10px 15px}.company-logo{height:40px}.nav-buttons,.navbar-buttons{flex-wrap:wrap;gap:8px;justify-content:center;width:100%}.back-button,.logout-button,.reports-button,.shifts-button,.userlist-button{flex:1 1 auto;font-size:14px;min-width:120px;padding:10px 15px}.attendance-report-section{margin-left:0;margin-right:0;padding:15px}.attendance-report-section h1{font-size:1.8em}.report-table{min-width:700px}.report-table tbody tr td,.report-table thead tr th{font-size:.85em;padding:8px 10px}.report-table td{max-width:none;white-space:normal;word-break:break-word}.report-table td input[type=email],.report-table td input[type=text],.report-table td select{width:100%}.report-table td .change-password-button,.report-table td .delete-button,.report-table td .edit-button{display:block;font-size:12px;margin:0 1px 5px;padding:6px 8px;width:auto}.report-table td:last-child button{margin-bottom:0}.user-form-box{margin:30px auto;padding:30px 20px;width:95%}.user-title{font-size:1.8em;margin-bottom:25px}.input-field,.select-field{font-size:15px;padding:12px 15px}.submit-button{font-size:16px;padding:12px}}@media (max-width:480px){.user-container{padding-left:10px;padding-right:10px}.nav-buttons,.navbar-buttons{flex-direction:column;gap:8px}.back-button,.logout-button,.reports-button,.shifts-button,.userlist-button{max-width:none;width:100%}.attendance-report-section{padding:10px}.attendance-report-section h1{font-size:1.5em;margin-bottom:20px}.report-table{min-width:550px}.report-table tbody tr td,.report-table thead tr th{font-size:.8em;padding:6px 8px}.user-form-box{padding:20px 15px}.user-title{font-size:1.6em}.input-field,.select-field{font-size:14px;padding:10px 12px}.checkbox-container{font-size:.9em}.submit-button{font-size:15px;padding:10px}}.modal-overlay{height:100vh;width:100vw;z-index:2000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 2px 16px #0003;max-width:90vw;min-width:320px;padding:2rem 2.5rem;text-align:center}.modal-actions{gap:1rem;justify-content:center;margin-top:1.5rem}.modal-button{border:none;border-radius:4px;cursor:pointer;font-weight:600;padding:.5rem 1.2rem}.modal-button.confirm{background:#007bff;color:#fff}.modal-button.cancel{background:#ccc;color:#333}[data-theme=dark] .users-container{background-color:#111827}[data-theme=dark] .users-navbar{background-color:#111827f2;border-bottom:1px solid #ffffff1a}[data-theme=dark] .users-content{background-color:#1f2937}[data-theme=dark] .user-card,[data-theme=dark] .user-form-card{background-color:#1f2937;border-color:#374151;box-shadow:0 4px 20px #0000004d}[data-theme=dark] .report-table,[data-theme=dark] .user-table{background-color:#1f2937;border:1px solid #374151;color:#f9fafb}[data-theme=dark] .report-table th,[data-theme=dark] .report-table thead tr th,[data-theme=dark] .user-table th{background-color:#374151;border:solid #4b5563;border-width:1px 1px 2px;color:#e5e7eb}[data-theme=dark] .report-table th:hover,[data-theme=dark] .report-table thead tr th:hover,[data-theme=dark] .user-table th:hover{background-color:#4b5563}[data-theme=dark] .report-table td,[data-theme=dark] .user-table td{background-color:#1f2937;border:1px solid #4b5563;color:#f9fafb}[data-theme=dark] .report-table tbody tr:nth-of-type(2n),[data-theme=dark] .report-table tbody tr:nth-of-type(2n) td,[data-theme=dark] .user-table tr:nth-child(2n),[data-theme=dark] .user-table tr:nth-child(2n) td{background-color:#2d3748}[data-theme=dark] .report-table tbody tr:hover,[data-theme=dark] .report-table tbody tr:hover td,[data-theme=dark] .user-table tr:hover,[data-theme=dark] .user-table tr:hover td{background-color:#4a5568}[data-theme=dark] .report-table tbody tr.editing-row{background-color:#374151;border:2px solid #6366f1}[data-theme=dark] .report-table tbody tr.editing-row td{background-color:#374151}[data-theme=dark] .btn-primary,[data-theme=dark] .user-button{background-color:#6366f1;border-color:#6366f1}[data-theme=dark] .btn-primary:hover,[data-theme=dark] .user-button:hover{background-color:#5b21b6}[data-theme=dark] .form-control,[data-theme=dark] .user-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .form-control:focus,[data-theme=dark] .user-input:focus{background-color:#4b5563;border-color:#6366f1;box-shadow:0 0 0 2px #6366f140}[data-theme=dark] .form-label,[data-theme=dark] .user-label{color:#d1d5db}[data-theme=dark] .user-status-active{background-color:#065f46;color:#d1fae5}[data-theme=dark] .user-status-inactive{background-color:#7f1d1d;color:#fecaca}[data-theme=dark] .edit-button,[data-theme=dark] .save-button{background-color:#6366f1;border-color:#6366f1}[data-theme=dark] .edit-button:hover,[data-theme=dark] .save-button:hover{background-color:#5b21b6}[data-theme=dark] .delete-button{background-color:#ef4444;border-color:#ef4444}[data-theme=dark] .delete-button:hover{background-color:#dc2626}[data-theme=dark] .cancel-button{background-color:#6b7280;border-color:#6b7280}[data-theme=dark] .cancel-button:hover{background-color:#4b5563}.reports-main-content{margin:120px auto 0}.report-table td[data-label=Location]{min-width:250px}.status-badge[class*=status-approved-leave]{background-color:#eff6ff;color:#1d4ed8}@media (max-width:768px){.reports-container{padding-top:76px!important}.reports-navbar{flex-direction:column;gap:1rem;padding:1rem}.reports-main-content{max-width:100%;padding:1rem}.report-box,.team-info-card{padding:1.5rem}.report-title{font-size:1.5rem}.table-controls{align-items:stretch;flex-direction:column}.search-input{min-width:0}.report-table{font-size:.8rem}.report-table td,.report-table th{padding:.5rem}}.attendance-content.sunday{background-color:#f3f4f6;border-color:#9ca3af;color:#374151;font-size:.85rem!important;font-weight:700}[data-theme=dark] .chart-card,[data-theme=dark] .filter-card,[data-theme=dark] .report-box,[data-theme=dark] .report-card{background-color:#fff!important;border:2px solid #495057!important;box-shadow:0 6px 20px #0000004d;color:#212529!important}[data-theme=dark] .reports-main-content{background-color:#fff!important}[data-theme=dark] .report-header{background-color:#fff!important;border:2px solid #495057;color:#212529!important}[data-theme=dark] .report-title{color:#212529!important}[data-theme=dark] .report-table{color:#212529!important}[data-theme=dark] .report-table,[data-theme=dark] .report-table-container{background-color:#fff!important;border:2px solid #495057}[data-theme=dark] .report-table th{background-color:#f8f9fa!important;border-bottom:2px solid #495057;border-right:1px solid #495057;color:#212529!important}[data-theme=dark] .report-table th:hover{background-color:#e9ecef!important}[data-theme=dark] .report-table td{background-color:#fff!important;border-bottom:1px solid #495057;border-right:1px solid #495057;color:#212529!important}[data-theme=dark] .report-table tbody tr:nth-child(2n),[data-theme=dark] .report-table tbody tr:nth-child(2n) td{background-color:#f8f9fa!important}[data-theme=dark] .report-table tbody tr:hover,[data-theme=dark] .report-table tbody tr:hover td{background-color:#e9ecef!important}[data-theme=dark] .filter-section{background-color:#fff!important;border:2px solid #495057;border-radius:.75rem;padding:1.5rem}[data-theme=dark] .table-controls{background-color:#f8f9fa!important;border:2px solid #495057;color:#212529!important}[data-theme=dark] .filter-input,[data-theme=dark] .search-input,[data-theme=dark] .sort-select{background-color:#fff!important;border:1px solid #ced4da!important;color:#212529!important}[data-theme=dark] .filter-input:focus,[data-theme=dark] .search-input:focus,[data-theme=dark] .sort-select:focus{border-color:#16a34a!important;box-shadow:0 0 0 3px #16a34a40!important}[data-theme=dark] .filter-group label,[data-theme=dark] .sort-controls label{color:#495057!important}[data-theme=dark] .action-button{background-color:#fff!important;border:1px solid #ced4da!important;color:#212529!important}[data-theme=dark] .action-button:hover{background-color:#e9ecef!important;border-color:#adb5bd!important}[data-theme=dark] .action-button.excel-button{border-color:#1d6f42!important;color:#1d6f42!important}[data-theme=dark] .action-button.excel-button:hover{background-color:#1d6f42!important;color:#fff!important}[data-theme=dark] .action-button.pdf-button{border-color:#b91c1c!important;color:#b91c1c!important}[data-theme=dark] .action-button.pdf-button:hover{background-color:#b91c1c!important;color:#fff!important}[data-theme=dark] .sort-order-btn{background-color:#16a34a!important;color:#fff!important}[data-theme=dark] .sort-order-btn:hover{background-color:#15803d!important}[data-theme=dark] .status-badge{border:1px solid #0000001a}[data-theme=dark] .status-badge.status-present{background-color:#dcfce7!important;color:#166534!important}[data-theme=dark] .status-badge.status-on-leave{background-color:#fee2e2!important;color:#991b1b!important}[data-theme=dark] .status-badge[class*=status-approved-leave]{background-color:#eff6ff!important;color:#1d4ed8!important}[data-theme=dark] .status-badge.status-absent{background-color:#fee2e2!important;color:#991b1b!important}[data-theme=dark] .status-badge.status-half-day{background-color:#fef3c7!important;color:#92400e!important}[data-theme=dark] .status-badge.status-not-checked-in{background-color:#e5e7eb!important;color:#4b5563!important}[data-theme=dark] .matrix-table .employee-name-cell{background-color:#fff!important;border-right:2px solid #495057;color:#212529!important}[data-theme=dark] .matrix-table .day-column{background-color:#dbeafe!important;border:1px solid #3b82f6!important;color:#1e40af!important}[data-theme=dark] .matrix-table .attendance-cell{background-color:#fff!important;border:1px solid #dee2e6!important}[data-theme=dark] ::-webkit-scrollbar{height:10px;width:10px}[data-theme=dark] ::-webkit-scrollbar-track{background:#f1f1f1}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#888;border-radius:5px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#555}body{background-color:#f8f9fa;color:#343a40;line-height:1.6}.company-logo{filter:brightness(1.2);height:50px}.button-section button,.navbar-buttons button{border:none;border-radius:8px;box-shadow:0 2px 5px #0000001a;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:12px 25px;text-transform:uppercase;transition:all .15s ease}.button-section button,.report-button{background-color:#28a745}.button-section button:hover:not(:disabled),.report-button:hover{background-color:#218838;box-shadow:0 4px 10px #28a74540;transform:translateY(-2px)}.logout-button{background-color:#dc3545}.logout-button:hover{background-color:#c82333;box-shadow:0 4px 10px #dc354540}.button-section button:disabled,.navbar-buttons button:disabled{background-color:#ccc;box-shadow:none;color:#666;cursor:not-allowed;transform:none}.attendance-container{align-items:center;background-color:#fff;border-radius:15px;box-shadow:0 10px 30px #0000001a;box-sizing:border-box;display:flex;flex-direction:column;gap:30px;margin:80px auto 40px;max-width:1300px;padding:40px;width:100%}.attendance-title{color:#0d2d4f;font-size:2.2em;font-weight:700;margin-bottom:10px;text-align:center}.month-navigation{gap:20px;margin-bottom:25px}.month-nav-btn,.month-navigation{align-items:center;display:flex;justify-content:center}.month-nav-btn{background-color:#007bff;border:none;border-radius:50%;box-shadow:0 2px 5px #007bff33;color:#fff;cursor:pointer;font-size:1.2em;height:40px;transition:background-color .3s ease,transform .2s ease;width:40px}.month-nav-btn:hover{background-color:#0056b3;transform:scale(1.05)}.month-title{color:#343a40;font-size:1.8em;font-weight:600;margin:0;text-transform:capitalize}.legend{-webkit-overflow-scrolling:touch;background-color:#f0f8ff;border-radius:8px;box-shadow:inset 0 1px 3px #00000014;display:flex;flex-wrap:nowrap;gap:12px;justify-content:center;margin-bottom:20px;margin-left:auto;margin-right:auto;max-width:95%;overflow-x:auto;padding:10px 20px}.legend div{align-items:center;color:#555;display:flex;flex-shrink:0;font-size:.85em;font-weight:500;white-space:nowrap}.legend-item{border:1px solid #0000001a;border-radius:3px;flex-shrink:0;height:16px;margin-right:6px;width:16px}.legend-item.present{background-color:green}.legend-item.absent{background-color:red}.legend-item.short-shift{background-color:orange}.legend-item.no-logout{background-color:#555}.legend-item.no-data{background-color:#999}.legend-item.on-leave{background-color:#ffc107}.legend-item.leave{background-color:#6f42c1}.legend-item.half-day{background:linear-gradient(90deg,#f97316,#f97316 50%,#10b981 0,#10b981)}.attendance-calendar-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(7,1fr);width:100%}.calendar-day-header{background-color:#e9ecef;border-radius:5px;color:#495057;font-size:.9em;font-weight:700;letter-spacing:.5px;padding:10px 0;text-align:center;text-transform:uppercase}.attendance-calendar-tile{align-items:center;background-color:#fdfdfd;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 4px #0000000d;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-start;min-height:120px;overflow:hidden;padding:12px;position:relative;transition:all .25s ease}.attendance-calendar-tile:hover{border-color:#b3d9ff;box-shadow:0 4px 12px #0000001a;transform:translateY(-3px)}.attendance-calendar-tile.expanded{border-color:#007bff;box-shadow:0 6px 16px #00000026;min-height:200px;z-index:10}.attendance-calendar-tile.empty-tile{align-items:center;background-color:#f4f4f4;border:1px dashed #ddd;box-shadow:none;color:#aaa;cursor:default;display:flex;font-size:.8em;justify-content:center;min-height:120px}.attendance-calendar-tile.empty-tile:hover{border-color:#ddd;box-shadow:none;transform:none}.attendance-day-label{color:#007bff;font-size:1.5em;font-weight:700;margin-bottom:8px;text-align:center;width:100%}.attendance-status-bar{background-color:#595959;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden;width:80%}.attendance-status-fill{border-radius:4px;height:100%;transition:width .3s ease-out}.attendance-calendar-tile.present .attendance-status-fill{background-color:green}.attendance-calendar-tile.absent .attendance-status-fill{background-color:red}.attendance-calendar-tile.short-shift .attendance-status-fill{background-color:orange}.attendance-calendar-tile.no-logout .attendance-status-fill{background-color:#555}.attendance-calendar-tile.no-data .attendance-status-fill,.attendance-calendar-tile.unknown .attendance-status-fill{background-color:#999}.attendance-calendar-tile.on-leave .attendance-status-fill{background-color:#ffc107}.attendance-calendar-tile.leave .attendance-status-fill{background-color:#6f42c1}.attendance-status-label{color:#495057;font-size:.9em;font-weight:600;margin-bottom:5px;text-transform:capitalize}.attendance-extra-info{border-top:1px dashed #e9ecef;color:#6c757d;font-size:.85em;line-height:1.5;margin-top:10px;max-height:0;opacity:0;overflow:hidden;padding-top:10px;text-align:left;transition:opacity .3s ease-out,max-height .4s ease-out;width:90%}.attendance-calendar-tile.expanded .attendance-extra-info{max-height:150px;opacity:1}.attendance-extra-info strong{color:#343a40}.attendance-extra-info ul{list-style:none;margin-top:5px;padding-left:0}.attendance-extra-info li{margin-bottom:3px}.error-message-container,.loading-message-container{align-items:center;display:flex;justify-content:center;margin-top:100px;min-height:calc(100vh - 100px)}.error-message,.loading-message{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #00000014;color:#6c757d;font-size:1.5em;padding:30px;text-align:center}.error-message{color:#dc3545}@media (max-width:768px){.attendance-container{margin-top:80px;padding:20px}.attendance-title{font-size:1.8em}.month-navigation{gap:15px}.month-title{font-size:1.5em}.legend{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:8px;justify-content:flex-start;max-width:100%;overflow-x:auto;padding:8px 12px}.legend div{font-size:.75em}.legend-item{height:14px;margin-right:4px;width:14px}.attendance-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.attendance-calendar-grid{gap:4px;grid-template-columns:repeat(7,1fr);min-width:100%;overflow:visible;width:-webkit-max-content;width:max-content}.attendance-calendar-tile{font-size:.75em;min-height:80px;min-width:45px;padding:4px}.calendar-day-header{font-size:.7em;padding:6px 2px}.attendance-day-label{font-size:1.2em}.attendance-status-bar{width:90%}.attendance-extra-info{font-size:.8em}.attendance-calendar-tile.expanded{min-height:180px}.navbar{align-items:flex-start;flex-direction:column;gap:10px;padding:10px 15px}.company-logo{height:40px}.navbar-buttons{flex-wrap:wrap;gap:10px;justify-content:center;width:100%}.navbar-buttons button{flex:1 1 auto;min-width:120px}}@media (max-width:480px){.attendance-container{padding:15px}.attendance-title{font-size:1.5em}.month-title{font-size:1.2em}.attendance-calendar-grid{gap:3px;grid-template-columns:repeat(7,1fr);min-width:100%;overflow:visible;width:-webkit-max-content;width:max-content}.attendance-calendar-tile{font-size:.7em;min-height:70px;min-width:40px;padding:3px}.calendar-day-header{font-size:.65em;padding:5px 1px;white-space:nowrap}.attendance-day-label{font-size:1em}.attendance-status-label{font-size:.8em}.attendance-extra-info{font-size:.75em}}.upcoming-tile{background-color:#f3f3f3;cursor:default;opacity:.7}.upcoming-tile .attendance-status-label{color:#888;font-style:italic}[data-theme=dark] body{color:#fff!important}[data-theme=dark] .navbar{background-color:#111827f2;border-bottom:1px solid #ffffff1a}[data-theme=dark] .attendance-container{background-color:#111827;color:#fff!important}[data-theme=dark] .attendance-content{background-color:#1f2937}[data-theme=dark] .attendance-card,[data-theme=dark] .filter-card,[data-theme=dark] .summary-card{background-color:#1f2937;border-color:#374151;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .attendance-title,[data-theme=dark] .legend div,[data-theme=dark] .month-title{color:#fff!important}[data-theme=dark] .calendar-day-header{background-color:#374151;color:#fff!important}[data-theme=dark] .attendance-day-label,[data-theme=dark] .attendance-status-label{color:#fff!important}[data-theme=dark] .attendance-calendar-tile{background-color:#1f2937;border-color:#374151;color:#fff!important}[data-theme=dark] .attendance-calendar-tile:hover{border-color:#6366f1}[data-theme=dark] .attendance-extra-info,[data-theme=dark] .attendance-extra-info strong{color:#fff!important}[data-theme=dark] .upcoming-tile{background-color:#2d3748;opacity:.7}[data-theme=dark] .upcoming-tile .attendance-status-label{color:#fff!important;font-style:italic}[data-theme=dark] .error-message,[data-theme=dark] .loading-message{background-color:#1f2937;color:#fff!important}[data-theme=dark] .error-message{color:#ef4444!important}[data-theme=dark] .attendance-table{background-color:#1f2937;border:1px solid #374151;color:#f9fafb}[data-theme=dark] .attendance-table th{background-color:#374151;border:solid #4b5563;border-width:1px 1px 2px;color:#e5e7eb}[data-theme=dark] .attendance-table th:hover{background-color:#4b5563}[data-theme=dark] .attendance-table td{background-color:#1f2937;border:1px solid #4b5563;color:#f9fafb}[data-theme=dark] .attendance-table tr:nth-child(2n),[data-theme=dark] .attendance-table tr:nth-child(2n) td{background-color:#2d3748}[data-theme=dark] .attendance-table tr:hover,[data-theme=dark] .attendance-table tr:hover td{background-color:#4a5568}[data-theme=dark] .attendance-button,[data-theme=dark] .btn-primary{background-color:#6366f1;border-color:#6366f1}[data-theme=dark] .attendance-button:hover,[data-theme=dark] .btn-primary:hover{background-color:#5b21b6}[data-theme=dark] .btn-secondary{background-color:#4b5563;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .btn-secondary:hover{background-color:#6b7280}[data-theme=dark] .btn-success{background-color:#10b981;border-color:#10b981}[data-theme=dark] .btn-success:hover{background-color:#059669}[data-theme=dark] .btn-danger{background-color:#ef4444;border-color:#ef4444}[data-theme=dark] .btn-danger:hover{background-color:#dc2626}[data-theme=dark] .attendance-input,[data-theme=dark] .form-control{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .attendance-input:focus,[data-theme=dark] .form-control:focus{background-color:#4b5563;border-color:#6366f1;box-shadow:0 0 0 2px #6366f140}[data-theme=dark] .attendance-header{color:#fff!important}[data-theme=dark] .attendance-summary{background-color:#374151}[data-theme=dark] .attendance-summary,[data-theme=dark] .filter-section{border-color:#4b5563;color:#fff!important}[data-theme=dark] .attendance-calendar-tile *{color:#fff!important}[data-theme=dark] .attendance-calendar-tile.empty-tile{background-color:#2d3748;color:#6b7280!important}[data-theme=dark] .month-nav-btn{background-color:#6366f1;color:#fff!important}[data-theme=dark] .month-nav-btn:hover{background-color:#5b21b6}[data-theme=dark] .legend{background-color:#1f2937;border:1px solid #374151}[data-theme=dark] .attendance-table tr td,[data-theme=dark] .attendance-table tr th{color:#fff!important}[data-theme=dark] .pagination{background-color:#1f2937}[data-theme=dark] .pagination button{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .pagination button:hover{background-color:#4b5563}[data-theme=dark] .pagination button.active{background-color:#6366f1;border-color:#6366f1}.attendance-status-bar.half-day-split{border-radius:5px;display:flex;overflow:hidden}.half-day-leave-fill{background:linear-gradient(135deg,#f97316,#ea580c);border-right:2px solid #fff;border-right:2px solid var(--bg-primary,#fff)}.half-day-work-fill{background:linear-gradient(135deg,#10b981,#059669)}.half-day-status{align-items:center;display:flex;font-size:11px;font-weight:600;gap:4px}.half-day-icon{font-size:14px}.half-day-details{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:12px}.half-day-section{background:#fff;background:var(--bg-primary,#fff);border-left:3px solid #007bff;border-left:3px solid var(--primary-color,#007bff);border-radius:6px;padding:10px}.leave-section{border-left-color:#f97316}.attendance-section{border-left-color:#10b981}.section-header{color:#343a40;color:var(--text-primary,#343a40);font-size:14px;gap:8px;margin-bottom:10px}.section-icon{font-size:18px}.detail-row{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);padding:6px 0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:12px;font-weight:600}.detail-row .value{color:#343a40;color:var(--text-primary,#343a40);font-size:13px;text-align:right}.reason-text{word-wrap:break-word;max-width:200px}.details-divider{background:#e0e0e0;background:var(--border-color,#e0e0e0);height:1px;margin:8px 0}.status-indicator{border:none;justify-content:center;margin-top:8px}.status-badge{font-size:12px}.half-day-completed{background:linear-gradient(135deg,#10b981,#059669);color:#fff}[data-theme=dark] .half-day-details{background:#1f2937}[data-theme=dark] .half-day-section{background:#111827}[data-theme=dark] .section-header{color:#f9fafb}[data-theme=dark] .detail-row{border-bottom-color:#374151}[data-theme=dark] .detail-row .label{color:#9ca3af}[data-theme=dark] .detail-row .value{color:#f9fafb}[data-theme=dark] .details-divider{background:#374151}[data-theme=dark] .half-day-leave-fill{border-right-color:#111827}@media (max-width:768px){.attendance-container{padding-top:76px!important}.half-day-details{font-size:12px}.half-day-section{padding:8px}.detail-row{align-items:flex-start;flex-direction:column;gap:4px}.detail-row .value{text-align:left}.reason-text{max-width:100%}.section-header{font-size:12px}.section-icon{font-size:16px}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f2f5;font-family:Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.location-container{background-color:#f0f2f5;min-height:100vh;width:100%}.checkin-btn,.checkout-btn,.date-navigation-buttons button{border:none;border-radius:8px;box-shadow:0 2px 5px #0000001a;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:12px 25px;text-transform:uppercase;transition:all .3s ease}.checkin-btn,.checkout-btn{background-color:#28a745}.checkin-btn:hover,.checkout-btn:hover{background-color:#218838;box-shadow:0 4px 10px #28a74540;transform:translateY(-2px)}.checkin-btn:disabled,.checkout-btn:disabled,.date-navigation-buttons button:disabled{background-color:#ccc;box-shadow:none;color:#666;cursor:not-allowed;transform:none}.location-content-wrapper{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;margin:0 auto;max-width:1200px;padding:90px 20px 30px;width:100%}.team-info-card{background-color:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 4px 12px #00000014;box-sizing:border-box;margin-bottom:25px;max-width:900px;padding:20px 30px;width:100%}.team-info-card .team-name{color:#333;font-size:1.5em;font-weight:600;margin-bottom:8px}.team-info-card .manager-name{color:#fff;font-size:1em}.team-info-card .manager-name strong{color:#fff}.combined-controls{align-items:flex-start;display:flex;flex-wrap:wrap;gap:25px;justify-content:center;margin-bottom:30px;max-width:900px;width:100%}.team-selector{align-items:stretch;background-color:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 6px 12px #00000014;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;max-width:340px;min-width:250px;padding:25px 30px}.team-selector label{color:#555;font-size:1.05em;font-weight:500;margin-bottom:12px}.team-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333%22%20d%3D%22M287%2C197.3L159.2%2C69.5c-3.6-3.6-8-5.4-12.4-5.4s-8.8%2C1.8-12.4%2C5.4L5.4%2C197.3c-7.2%2C7.2-7.2%2C18.8%2C0%2C26c7.2%2C7.2%2C18.8%2C7.2%2C26%2C0L146.8%2C103.5c3.6-3.6%2C8-5.4%2C12.4-5.4s8.8%2C1.8%2C12.4%2C5.4l115.4%2C115.4c7.2%2C7.2%2C18.8%2C7.2%2C26%2C0C294.2%2C216.1%2C294.2%2C204.5%2C287%2C197.3z%22%2F%3E%3C%2Fsvg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px;border:1px solid #dcdcdc;border-radius:8px;box-sizing:border-box;color:#333;cursor:pointer;font-size:16px;padding:12px 15px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.team-select option{background-color:#fff!important;color:#333!important;padding:8px 15px}.team-select option:checked,.team-select option:hover{background-color:#e6f7ff!important;color:#007bff!important}.team-select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff33;outline:none}.employee-selector-box{background-color:#fcfcfc;border:1px solid #eee;border-radius:12px;box-shadow:0 6px 12px #00000014;box-sizing:border-box;display:flex;flex:2 1;flex-direction:column;gap:20px;max-width:500px;min-width:300px;padding:25px 30px}.employee-selector-box label{color:#555;display:block;font-size:1.1em;font-weight:500;margin-bottom:5px}.employee-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333%22%20d%3D%22M287%2C197.3L159.2%2C69.5c-3.6-3.6-8-5.4-12.4-5.4s-8.8%2C1.8-12.4%2C5.4L5.4%2C197.3c-7.2%2C7.2-7.2%2C18.8%2C0%2C26c7.2%2C7.2%2C18.8%2C7.2%2C26%2C0L146.8%2C103.5c3.6-3.6%2C8-5.4%2C12.4-5.4s8.8%2C1.8%2C12.4%2C5.4l115.4%2C115.4c7.2%2C7.2%2C18.8%2C7.2%2C26%2C0C294.2%2C216.1%2C294.2%2C204.5%2C287%2C197.3z%22%2F%3E%3C%2Fsvg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px;border:1px solid #dcdcdc;border-radius:8px;box-sizing:border-box;color:#333;cursor:pointer;font-size:16px;padding:12px 15px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.employee-select option{background-color:#fff!important;color:#333!important;padding:8px 15px}.employee-select option:checked,.employee-select option:hover{background-color:#e6f7ff!important;color:#007bff!important}.employee-select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff33;outline:none}.location-buttons{display:flex;gap:12px;width:100%}.location-buttons button{flex:1 1}.date-selector{align-items:center;background-color:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 6px 12px #00000014;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;max-width:380px;min-width:280px;padding:25px 30px}.date-selector label{color:#555;font-size:1.1em;font-weight:500;margin-bottom:15px}.date-selector input[type=date]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#f8f8f8;border:1px solid #dcdcdc;border-radius:8px;box-sizing:border-box;color:#444;font-size:16px;padding:12px 15px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.date-selector input[type=date]:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff33;outline:none}.date-navigation-buttons{display:flex;gap:15px;justify-content:center;margin-top:20px;width:100%}.date-navigation-buttons button{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;max-width:150px;padding:10px 15px;transition:background-color .3s ease,transform .2s ease,box-shadow .2s ease}.date-navigation-buttons button:hover{background-color:#0056b3;box-shadow:0 4px 8px #007bff33;transform:translateY(-2px)}.selected-employee-details{background-color:#e9f5ff;border:1px solid #cce0ff;border-radius:8px;box-shadow:0 4px 8px #007bff1a;color:#333;font-size:.95em;line-height:1.6;margin-bottom:25px;max-width:700px;padding:15px 20px;width:100%}.selected-employee-details strong{color:#0056b3}#map{border:1px solid #ccc;border-radius:12px;box-shadow:0 6px 12px #0000001a;height:550px;max-width:2000px;overflow:hidden;width:100%}@media (max-width:768px){.location-content-wrapper{padding-top:80px}.team-info-card{padding:15px 20px}.team-info-card .team-name{font-size:1.2em}.combined-controls{flex-direction:column;gap:20px;max-width:450px}.team-selector{max-width:none;width:100%}.date-selector,.employee-selector-box{flex:none;max-width:none;width:100%}.location-buttons{flex-direction:column}}@media (max-width:600px){.checkin-btn,.checkout-btn{font-size:13px;padding:8px 10px}.location-content-wrapper{padding-left:15px;padding-right:15px;padding-top:70px}.date-selector,.employee-selector-box{padding:20px}.date-navigation-buttons{flex-direction:column;gap:10px}.date-navigation-buttons button{max-width:none}.location-buttons{flex-direction:column;width:100%}.location-buttons button{width:100%}#map{border-radius:8px;height:400px;width:200px}}[data-theme=dark] .location-container{background-color:#111827}[data-theme=dark] .team-info-card{background-color:#1f2937;border-color:#374151;box-shadow:0 4px 20px #0000004d}[data-theme=dark] .team-info-card .team-name{color:#f9fafb}[data-theme=dark] .team-info-card .manager-name{color:#d1d5db}[data-theme=dark] .location-navbar{background-color:#111827f2;border-bottom:1px solid #ffffff1a}[data-theme=dark] .location-content{background-color:#1f2937}[data-theme=dark] .location-card,[data-theme=dark] .map-card{background-color:#1f2937;border-color:#374151;box-shadow:0 4px 20px #0000004d}[data-theme=dark] .location-info{background-color:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .location-table{background-color:#1f2937;color:#f9fafb}[data-theme=dark] .location-table th{background-color:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .location-table td{border-color:#4b5563;color:#f9fafb}[data-theme=dark] .location-table tr:nth-child(2n){background-color:#2d3748}[data-theme=dark] .location-table tr:hover{background-color:#4a5568}[data-theme=dark] .btn-primary,[data-theme=dark] .location-button{background-color:#6366f1;border-color:#6366f1}[data-theme=dark] .btn-primary:hover,[data-theme=dark] .location-button:hover{background-color:#5b21b6}[data-theme=dark] .form-control,[data-theme=dark] .location-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .form-control:focus,[data-theme=dark] .location-input:focus{background-color:#4b5563;border-color:#6366f1;box-shadow:0 0 0 2px #6366f140}[data-theme=dark] .form-label,[data-theme=dark] .location-label{color:#d1d5db}.main-header{padding:10px 20px}.logo-container img{height:45px;width:auto}.header-actions{align-items:center;display:flex;gap:12px;min-width:0;overflow-x:auto}.header-btn{align-items:center;background-color:#e0f2ff;border:1px solid #93c5fd;border-radius:8px;color:#1e3a8a;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;justify-content:center;letter-spacing:.5px;padding:12px 22px;text-transform:uppercase;transition:all .15s ease;white-space:nowrap}.header-btn.active{background-color:#1e40af;border-color:#1e3a8a;color:#fff}.header-btn.logout{background-color:#dc3545;border:1px solid #c82333;color:#fff}.header-btn.logout:hover{background-color:#c82333}.teams-container{margin-top:0}.navbar{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000001a;padding:10px 30px}.navbar-logo img{height:45px}.navbar-buttons{gap:12px}.navbar-btn{align-items:center;background-color:#e0f2ff;border:1px solid #93c5fd;border-radius:8px;color:#1e3a8a;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;justify-content:center;letter-spacing:.5px;padding:12px 22px;text-transform:uppercase;transition:all .15s ease;white-space:nowrap}.navbar-btn.active{background-color:#1e40af;border-color:#1e3a8a;color:#fff}.navbar-btn.logout{background-color:#dc3545;border:1px solid #c82333;color:#fff}.navbar-btn.logout:hover{background-color:#c82333}.teams-content{margin-top:0}:root{--primary-color:#16a34a;--primary-hover:#15803d;--secondary-color:#ef4444;--secondary-hover:#dc2626;--background-color:#f8fafc;--card-background:#fff;--text-primary:#1f2937;--text-secondary:#6b7280;--border-color:#e5e7eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--font-family:"Inter",sans-serif}.teams-content{margin-top:200px}body{background-color:#f8fafc;background-color:var(--background-color);color:#1f2937;color:var(--text-primary);font-family:Inter,sans-serif;font-family:var(--font-family);margin:0}.reports-container{display:flex;flex-direction:column;min-height:100vh;width:100%}.reports-navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.company-logo{height:40px;width:auto}.nav-buttons{display:flex;gap:.75rem}.nav-button{border:none;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.back-button{background-color:#16a34a;background-color:var(--primary-color);color:#fff}.back-button:hover{background-color:#15803d;background-color:var(--primary-hover);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.logout-button{background-color:#ef4444;background-color:var(--secondary-color);color:#fff}.logout-button:hover{background-color:#dc2626;background-color:var(--secondary-hover);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.reports-main-content{box-sizing:border-box;margin:0 auto;max-width:1800px;padding:2rem;width:100%}.team-info-card{background:linear-gradient(135deg,#05948f,#05948f);border-radius:1rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;box-shadow:var(--shadow-lg);color:#fff;margin-bottom:2rem;padding:2rem}.team-name{font-size:2rem;font-weight:700;margin-bottom:.5rem}.manager-name{font-size:1.125rem;opacity:.9}.info-error,.info-loading{font-size:1.25rem;font-weight:500}.info-error{color:#fecaca}.report-box{background:#fff;background:var(--card-background);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-md);padding:2rem}.report-title{color:#1f2937;color:var(--text-primary);font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;text-align:left}.filter-section{grid-gap:1.5rem;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;padding-bottom:1.5rem}.filter-group{display:flex;flex-direction:column}.filter-group label{color:#6b7280;color:var(--text-secondary);font-size:.875rem;font-weight:500;margin-bottom:.5rem}.filter-input{background-color:#f8fafc;background-color:var(--background-color);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:.5rem;font-size:.9rem;padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.filter-input:focus{border-color:#16a34a;border-color:var(--primary-color);box-shadow:0 0 0 3px #16a34a1a;outline:none}.table-controls{background-color:#f8fafc;border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:.75rem;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.sort-controls,.table-controls{align-items:center;display:flex}.sort-controls{background-color:#fff;border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:8px;gap:12px;padding:.5rem}.sort-controls label{font-weight:600;white-space:nowrap}.sort-controls label,.sort-select{color:#1f2937;color:var(--text-primary);font-size:14px}.sort-select{background-color:#fff;border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;min-width:160px;padding:8px 12px;transition:border-color .3s ease}.sort-select:focus{border-color:#16a34a;border-color:var(--primary-color);box-shadow:0 0 0 2px #16a34a1a;outline:none}.sort-order-btn{align-items:center;background-color:#16a34a;background-color:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:5px;padding:8px 16px;transition:all .15s ease;white-space:nowrap}.sort-order-btn:hover{background-color:#15803d;background-color:var(--primary-hover);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.search-input{border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:.5rem;font-size:.9rem;min-width:300px;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.search-input:focus{border-color:#16a34a;border-color:var(--primary-color);box-shadow:0 0 0 3px #16a34a1a;outline:none}.download-buttons-group{display:flex;flex-wrap:wrap;gap:.75rem}.action-button{background-color:#fff;background-color:var(--card-background);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:.5rem;color:#1f2937;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:600;padding:.6rem 1.2rem;transition:all .2s ease}.action-button:hover{border-color:#16a34a;border-color:var(--primary-color);color:#16a34a;color:var(--primary-color);transform:translateY(-1px)}.action-button.excel-button{border-color:#1d6f42;color:#1d6f42}.action-button.excel-button:hover{background-color:#1d6f42;color:#fff}.action-button.pdf-button{border-color:#b91c1c;color:#b91c1c}.action-button.pdf-button:hover{background-color:#b91c1c;color:#fff}.action-button:disabled{cursor:not-allowed;opacity:.5}.column-selection-checklist{background-color:#f9fafb;border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:.75rem;margin-bottom:2rem;padding:1.5rem}.column-selection-title{font-size:1.125rem;font-weight:600;margin:0 0 1rem}.column-checkboxes{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.9rem;gap:.75rem}.checkbox-label input[type=checkbox]{accent-color:#16a34a;accent-color:var(--primary-color);cursor:pointer;height:1.25em;width:1.25em}.report-table-container{max-width:100%;overflow-x:auto;width:100%}.report-table{border-collapse:collapse;font-size:.875rem;min-width:1200px;text-align:left;width:100%}.report-table th{background-color:#f9fafb;border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--border-color);color:#6b7280;color:var(--text-secondary);cursor:pointer;font-weight:600;padding:.75rem 1rem;transition:background-color .2s;-webkit-user-select:none;user-select:none;white-space:nowrap}.report-table th:hover{background-color:#f3f4f6}.report-table td{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);color:#1f2937;color:var(--text-primary);overflow:hidden;padding:.75rem 1rem;text-overflow:ellipsis;white-space:nowrap}.report-table td[data-label="Employee Name"]{max-width:80px;overflow-wrap:anywhere;white-space:normal;word-break:break-word}.report-table td[data-label=Email]{max-width:280px;overflow-wrap:anywhere;white-space:normal;word-break:break-word}.report-table td[data-label="Employee ID"],.report-table td[data-label="Is Leave"],.report-table td[data-label="Work Duration"],.report-table td[data-label=Location],.report-table td[data-label=Status]{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-table tbody tr:hover{background-color:#f3f4f6}.report-table td[data-label=Location]{word-wrap:break-word;max-width:360px;min-width:220px;overflow-wrap:anywhere;white-space:normal}.status-badge{border-radius:999px;font-size:.8rem;font-weight:500;padding:.25rem .6rem;text-transform:capitalize}.status-badge.status-present{background-color:#dcfce7;color:#166534}.status-badge.status-absent,.status-badge.status-on-leave{background-color:#fee2e2;color:#991b1b}.status-badge.status-half-day{background-color:#fef3c7;color:#92400e}.status-badge.status-not-checked-in{background-color:#e5e7eb;color:#4b5563}.error-message,.loading-indicator{border:2px dashed #e5e7eb;border:2px dashed var(--border-color);border-radius:.75rem;color:#6b7280;color:var(--text-secondary);font-size:1.125rem;font-weight:500;margin-top:1rem;padding:4rem 1rem;text-align:center}.error-message{background-color:#fef2f2;border-color:#fecaca;color:#ef4444;color:var(--secondary-color)}.team-reports-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.location-reports-button{background:#17a2b8;border:none;border-radius:8px;box-shadow:0 2px 8px #17a2b826;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:background .2s,transform .2s}.location-reports-button:hover{background:#138496;transform:translateY(-2px)}.reports-navbar{justify-content:space-between}.navbar-center,.reports-navbar{align-items:center;display:flex}.navbar-center{flex:1 1;justify-content:center}@media (max-width:768px){.teams-container{padding-top:76px!important}.reports-navbar{flex-direction:column;gap:1rem;padding:1rem}.reports-main-content{max-width:100%;padding:1rem}.report-box,.team-info-card{padding:1.5rem}.report-title{font-size:1.5rem}.table-controls{align-items:stretch;flex-direction:column}.search-input{min-width:0}.report-table{font-size:.8rem}.report-table td,.report-table th{padding:.5rem}}.matrix-table{min-width:100%;table-layout:auto;width:100%}.matrix-table .employee-name-cell{background-color:#f8fafc;border-right:2px solid #e5e7eb;border-right:2px solid var(--border-color);color:#1f2937;color:var(--text-primary);font-weight:600;left:0;max-width:450px;min-width:300px;overflow:hidden;padding:.75rem 1rem;position:-webkit-sticky;position:sticky;text-align:left;text-overflow:ellipsis;white-space:nowrap;z-index:2}.matrix-table .day-column{background-color:#dbeafe;border:1px solid #3b82f6;color:#1e40af;font-size:.8rem;font-weight:600;padding:.5rem .25rem;text-align:center;width:90px}.matrix-table .attendance-cell{border:1px solid #e5e7eb;padding:.25rem;position:relative;text-align:center;vertical-align:top;width:90px}.attendance-content{align-items:center;border:1px solid #0000;border-radius:4px;display:flex;flex-direction:column;font-size:1rem;font-weight:700;gap:1px;justify-content:center;line-height:1.2;min-height:45px}.attendance-content.present{background-color:#f0fdf4;border-color:#10b981;color:#059669}.attendance-content.absent{background-color:#fef2f2;border-color:#ef4444;color:#dc2626}.attendance-content.leave{background-color:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.attendance-content.short{background-color:#fffbeb;border-color:#f59e0b;color:#d97706}@media (max-width:1200px){.matrix-table .day-column{background-color:#dbeafe;border:1px solid #3b82f6;color:#1e40af;font-size:.7rem;width:70px}.matrix-table .attendance-cell{width:70px}.attendance-content{font-size:.9rem;min-height:40px}}@media (max-width:768px){.matrix-table .employee-name-cell{max-width:250px;min-width:200px}.matrix-table .day-column{background-color:#dbeafe;border:1px solid #3b82f6;color:#1e40af;font-size:.65rem;padding:.25rem .1rem;width:60px}.matrix-table .attendance-cell{padding:.1rem;width:60px}.attendance-content{font-size:.8rem;min-height:35px}}[data-theme=dark] body{color:#f9fafb}[data-theme=dark] .reports-container,[data-theme=dark] body{background-color:#111827}[data-theme=dark] .reports-navbar{background-color:#111827f2;border-bottom:1px solid #ffffff1a}[data-theme=dark] .reports-content{background-color:#1f2937}[data-theme=dark] .chart-card,[data-theme=dark] .filter-card,[data-theme=dark] .report-box,[data-theme=dark] .report-card{background-color:#1f2937;border-color:#374151;box-shadow:0 4px 20px #0000004d}[data-theme=dark] .report-header{background-color:#374151;color:#f9fafb}[data-theme=dark] .report-table{background-color:#1f2937;border:1px solid #374151;color:#f9fafb}[data-theme=dark] .report-table th{background-color:#374151;border-bottom:2px solid #4b5563;border-right:1px solid #4b5563;color:#e5e7eb}[data-theme=dark] .report-table th:hover{background-color:#4b5563}[data-theme=dark] .report-table td{background-color:#1f2937;border:1px solid #4b5563;color:#f9fafb}[data-theme=dark] .report-table tbody tr:nth-child(2n){background-color:#2d3748}[data-theme=dark] .report-table tbody tr:hover{background-color:#4a5568}[data-theme=dark] .report-table-container{background-color:#1f2937;border:1px solid #374151;border-radius:8px}[data-theme=dark] .matrix-table{background-color:#1f2937;border:1px solid #374151}[data-theme=dark] .matrix-table th{background-color:#374151;border:1px solid #4b5563;color:#e5e7eb}[data-theme=dark] .matrix-table td{background-color:#1f2937;border:1px solid #4b5563;color:#f9fafb}[data-theme=dark] .matrix-table .employee-name-cell{background-color:#374151;color:#f9fafb;font-weight:600}[data-theme=dark] .matrix-table .attendance-cell{background-color:#1f2937}[data-theme=dark] .matrix-table .day-column{background-color:#374151;color:#e5e7eb}[data-theme=dark] .status-badge.status-present{background-color:#065f46;color:#d1fae5}[data-theme=dark] .status-badge.status-absent{background-color:#7f1d1d;color:#fecaca}[data-theme=dark] .status-badge.status-working{background-color:#065f46;color:#d1fae5}[data-theme=dark] .status-badge.status-completed{background-color:#1e3a8a;color:#dbeafe}[data-theme=dark] .btn-primary,[data-theme=dark] .report-button{background-color:#6366f1;border-color:#6366f1}[data-theme=dark] .btn-primary:hover,[data-theme=dark] .report-button:hover{background-color:#5b21b6}[data-theme=dark] .filter-input,[data-theme=dark] .form-control,[data-theme=dark] .report-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .filter-input:focus,[data-theme=dark] .form-control:focus,[data-theme=dark] .report-input:focus{background-color:#4b5563;border-color:#6366f1;box-shadow:0 0 0 2px #6366f140}[data-theme=dark] .form-label,[data-theme=dark] .report-label{color:#d1d5db}[data-theme=dark] .chart-container{background-color:#1f2937}[data-theme=dark] .report-summary{background-color:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .filter-section{background-color:#374151;border:1px solid #4b5563}.react-calendar{background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em;max-width:100%;width:350px}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{margin:.5em;width:50%}.react-calendar,.react-calendar *,.react-calendar :after,.react-calendar :before{box-sizing:border-box}.react-calendar button{border:0;margin:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{background:none;min-width:44px}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:focus,.react-calendar__navigation button:enabled:hover{background-color:#e6e6e6}.react-calendar__month-view__weekdays{font:inherit;font-size:.75em;font-weight:700;text-align:center;text-transform:uppercase}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{align-items:center;display:flex;font:inherit;font-size:.75em;font-weight:700;justify-content:center}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__century-view__decades__decade--neighboringCentury,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__month-view__days__day--neighboringMonth{color:#757575}.react-calendar__century-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__year-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{background:none;font:inherit;font-size:.833em;max-width:100%;padding:10px 6.6667px;text-align:center}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__century-view__decades__decade--neighboringCentury:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__month-view__days__day--neighboringMonth:disabled{color:#cdcdcd}.react-calendar__tile:enabled:focus,.react-calendar__tile:enabled:hover{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:focus,.react-calendar__tile--now:enabled:hover{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:focus,.react-calendar__tile--hasActive:enabled:hover{background:#a9d4ff}.react-calendar__tile--active{background:#006edc}.react-calendar__tile--active:enabled:focus,.react-calendar__tile--active:enabled:hover{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.selected-green{background:#4caf50!important;border-radius:50%!important;color:#fff!important}.fom-leave-container{background:#f8f9fa;background:var(--bg-tertiary,#f8f9fa);border-radius:12px;box-shadow:0 4px 16px #00000012;color:#222;color:var(--text-primary,#222);margin:0 auto;max-width:1200px;min-height:100vh;padding:24px}.fom-leave-calendar{box-shadow:0 2px 12px #00000014;margin:32px auto 16px;max-width:400px;padding:24px 16px 16px}.react-calendar{background:#0000;border:none;font-family:inherit}.react-calendar__tile{border-radius:8px;font-size:16px;padding:8px 0;transition:background .2s,color .2s}.react-calendar__tile--active{background:#007bff;color:#fff}.react-calendar__tile.leave-day{background:#ffecb3!important;color:#b8860b!important;font-weight:700}.react-calendar__tile:enabled:hover{background:#e3f2fd;color:#007bff}.edit-actions{align-items:center;display:flex;gap:12px;margin-top:12px}.fom-leave-btn.cancel{background:#eee;border:1px solid #bbb;color:#333}.delete-btn,.edit-btn{background:#f5f5f5;border:none;border-radius:6px;color:#333;cursor:pointer;font-size:14px;margin-left:8px;padding:4px 12px;transition:background .2s}.edit-btn:hover{background:#e3f2fd;color:#007bff}.delete-btn{background:#ffeaea;color:#c00}.delete-btn:hover{background:#ffcdd2;color:#900}.navbar{align-items:center;background-color:#fff;box-shadow:0 4px 12px #00000026;box-sizing:border-box;display:flex;justify-content:space-between;left:0;padding:15px 40px;position:fixed;right:0;top:0;width:100%;z-index:1000}.navbar-logo img{filter:brightness(1.2);height:50px;width:auto}.navbar-buttons{display:flex;gap:15px}.shifts-button{background-color:#007bff;border:none;border-radius:8px;box-shadow:0 2px 5px #0000001a;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:12px 25px;text-transform:uppercase;transition:all .3s ease}.shifts-button:hover{background-color:#0056b3;box-shadow:0 4px 10px #007bff40;transform:translateY(-2px)}.shifts-button:disabled{background-color:#ccc;box-shadow:none;color:#666;cursor:not-allowed;transform:none}.leave-day{background:#2196f3!important;border-radius:50%;color:#fff!important}.fom-leave-calendar{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:18px;margin-top:12px;padding:18px}.fom-leave-btn{background:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:16px;padding:10px 24px;transition:background .2s}.fom-leave-btn:disabled{background:#b0bec5;cursor:not-allowed}.fom-leave-list{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000008;margin-top:16px;padding:12px 18px}.fom-leave-list ul{margin:0;padding-left:20px}.fom-leave-list li{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;color:#1769aa;font-size:15px;margin-bottom:12px;padding:12px}.leave-day-item{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.leave-date-info{flex:1 1;min-width:200px}.leave-date{color:#2c3e50;font-weight:600}.leave-description{color:#7f8c8d;font-style:italic}.leave-created{color:#95a5a6;font-size:12px}.leave-actions{display:flex;flex-shrink:0;gap:8px}.leave-input-section{margin-top:16px}.description-input{margin-bottom:12px}.description-input label{color:#2c3e50;display:block;font-weight:600;margin-bottom:6px}.description-field{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px;transition:border-color .2s;width:100%}.description-field:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}@media (max-width:768px){.fom-leave-container{padding:8px;padding-top:76px!important}.fom-leave-header{font-size:20px;padding:12px}.fom-leave-calendar{padding:8px}.fom-leave-list{padding:8px 10px}}.leave-application-container,.leave-approval-container{background-color:var(--bg-tertiary);color:var(--text-primary);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px;transition:all .3s ease}.approval-header,.leave-header{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);margin-bottom:30px;padding:20px}.approval-header h1,.leave-header h1{color:var(--text-primary);font-size:28px;font-weight:600;margin-bottom:10px;text-shadow:0 1px 2px var(--shadow-light)}.approval-header p{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:10px}.tab-navigation{gap:15px;justify-content:center;margin-top:20px}.export-table{background-color:var(--bg-primary);border-collapse:collapse;border-radius:8px;box-shadow:0 4px 16px var(--shadow-light);margin:20px 0;overflow:hidden;width:100%}[data-theme=dark] .leave-application-container,[data-theme=dark] .leave-approval-container{background-color:#0b0f1a!important;color:#fff!important}[data-theme=dark] .approval-header,[data-theme=dark] .leave-form-card,[data-theme=dark] .leave-header,[data-theme=dark] .leave-history-card,[data-theme=dark] .request-item{background-color:#111827!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .tab-btn{background:#0000!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .tab-btn.active,[data-theme=dark] .tab-btn:hover{background:#1f2937!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .comments-section textarea,[data-theme=dark] .form-control,[data-theme=dark] input[type=date],[data-theme=dark] input[type=time]{background-color:#0f172a!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .comments-section textarea::placeholder,[data-theme=dark] .form-control::placeholder{color:#ffffffb3!important}[data-theme=dark] .approval-header h1,[data-theme=dark] .form-group label,[data-theme=dark] .leave-header h1,[data-theme=dark] .leave-history-card h2{color:#fff!important}[data-theme=dark] .advanced-filters,[data-theme=dark] .balance-item,[data-theme=dark] .calculated-days,[data-theme=dark] .export-section,[data-theme=dark] .export-table,[data-theme=dark] .info-item,[data-theme=dark] .leave-balance-card,[data-theme=dark] .leave-validation,[data-theme=dark] .radio-option,[data-theme=dark] .request-item{background-color:#0f172a!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .radio-option:has(input[type=radio]:checked),[data-theme=dark] .radio-option:hover{background-color:#1f2937!important;border-color:#fff!important}[data-theme=dark] .leave-application-container .info-text,[data-theme=dark] .leave-application-container .validation-error,[data-theme=dark] .leave-application-container .validation-info,[data-theme=dark] .leave-application-container h1,[data-theme=dark] .leave-application-container h2,[data-theme=dark] .leave-application-container h3,[data-theme=dark] .leave-application-container h4,[data-theme=dark] .leave-application-container label,[data-theme=dark] .leave-application-container p,[data-theme=dark] .leave-application-container span,[data-theme=dark] .leave-application-container strong,[data-theme=dark] .leave-approval-container h1,[data-theme=dark] .leave-approval-container h2,[data-theme=dark] .leave-approval-container h3,[data-theme=dark] .leave-approval-container h4,[data-theme=dark] .leave-approval-container label,[data-theme=dark] .leave-approval-container p,[data-theme=dark] .leave-approval-container span,[data-theme=dark] .leave-approval-container strong{color:#fff!important}[data-theme=dark] .duration-badge,[data-theme=dark] .info-badge,[data-theme=dark] .leave-application-container a,[data-theme=dark] .leave-application-container table,[data-theme=dark] .leave-application-container td,[data-theme=dark] .leave-application-container th,[data-theme=dark] .leave-approval-container a,[data-theme=dark] .leave-approval-container table,[data-theme=dark] .leave-approval-container td,[data-theme=dark] .leave-approval-container th,[data-theme=dark] .time-badge{border-color:#fff!important;color:#fff!important}[data-theme=dark] .btn-approve,[data-theme=dark] .btn-cancel,[data-theme=dark] .btn-primary,[data-theme=dark] .btn-reject,[data-theme=dark] .btn-secondary{border:1px solid #fff!important;color:#fff!important}[data-theme=dark] .comment-item,[data-theme=dark] .reason-text,[data-theme=dark] .request-comments{background-color:#0f172a!important;border-color:#fff!important;color:#fff!important}.export-table th{background-color:var(--primary-color);border-bottom:2px solid var(--border-color);color:#fff;font-size:13px;font-weight:600;padding:12px 8px;text-align:left}.export-table td{word-wrap:break-word;border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:12px;max-width:150px;padding:10px 8px;vertical-align:top;white-space:normal}.export-table td:nth-child(9){max-width:250px;white-space:normal;word-break:break-word}.export-table tr:nth-child(2n){background-color:var(--bg-secondary)}.export-table tr:hover{background-color:var(--hover-bg)}.filter-controls{background-color:var(--bg-primary);border-radius:8px;box-shadow:0 2px 8px var(--shadow-light);flex-wrap:wrap;gap:12px;margin-top:15px}.filter-controls label{font-size:14px;font-weight:500}.filter-controls select{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:6px;margin-left:8px;padding:6px 12px}.filter-controls select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db1a}.filter-controls button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.filter-controls button:first-of-type{background-color:var(--btn-default);border:1px solid var(--btn-default-border);color:var(--btn-default-text)}.filter-controls button:first-of-type:hover{background-color:var(--btn-default-hover);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.filter-controls button:nth-of-type(2){background-color:var(--btn-default);border:1px solid var(--btn-default-border);color:var(--btn-default-text)}.filter-controls button:nth-of-type(2):hover{background-color:var(--btn-default-hover);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.filter-controls button:nth-of-type(3){background-color:var(--btn-default);border:1px solid var(--btn-default-border);color:var(--btn-default-text)}.filter-controls button:nth-of-type(3):hover{background-color:var(--btn-default-hover);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.filter-controls button:nth-of-type(4){background-color:var(--btn-excel);color:#fff}.filter-controls button:nth-of-type(4):hover{background-color:var(--btn-excel-hover);box-shadow:0 4px 8px #16a34a4d;transform:translateY(-1px)}.filter-controls button:nth-of-type(5){background-color:var(--btn-pdf);color:#fff}.filter-controls button:nth-of-type(5):hover{background-color:var(--btn-pdf-hover);box-shadow:0 4px 8px #dc26264d;transform:translateY(-1px)}.filter-controls button:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.filter-controls button:active{transform:translateY(0)}.export-section{background-color:var(--bg-secondary);border-left:4px solid var(--primary-color);border-radius:8px;margin:15px 0;padding:12px}.export-section h4{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 10px}@media (max-width:768px){.filter-controls{align-items:stretch;flex-direction:column}.filter-controls label{text-align:center}.filter-controls button{justify-content:center}}.advanced-filters{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px var(--shadow-light);margin:15px 0;padding:20px}.advanced-filters h4{align-items:center;color:var(--text-primary);display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 15px}.filter-row{align-items:end;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.date-range-filter,.month-filter,.team-filter{display:flex;flex-direction:column;gap:8px;min-width:200px}.date-range-filter{align-items:center;flex-direction:row;flex-wrap:wrap;gap:10px}.date-range-filter label,.month-filter label,.team-filter label{color:var(--text-primary);font-size:14px;font-weight:500;white-space:nowrap}.date-range-filter input,.month-filter select,.team-filter select{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:8px 12px;transition:all .3s ease}.date-range-filter input:focus,.month-filter select:focus,.team-filter select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db1a;outline:none}.month-filter{align-items:center;flex-direction:row;gap:10px}.month-filter select{min-width:120px}.filter-actions{align-items:end;gap:10px}.clear-filters-btn{background-color:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.clear-filters-btn:hover{background-color:#c0392b;box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-1px)}.date-range-filter span{color:var(--text-secondary);font-weight:500;margin:0 5px}@media (max-width:768px){.filter-row{flex-direction:column;gap:15px}.date-range-filter,.month-filter,.team-filter{min-width:100%}.date-range-filter,.month-filter{align-items:stretch;flex-direction:column}}.tab-btn{background:var(--bg-secondary);border:2px solid var(--btn-primary);border-radius:8px;color:var(--text-primary);font-size:14px}.tab-btn:hover{transform:translateY(-2px)}.tab-btn.active,.tab-btn:hover{background:var(--btn-primary);box-shadow:0 4px 12px var(--shadow-color);color:#fff}.leave-balance-card{background:linear-gradient(135deg,#f8fafc,#fff);border:1px solid #3498db14;border-radius:16px;box-shadow:0 8px 32px #3498db1f;color:var(--text-primary);margin-bottom:30px;overflow:hidden;padding:28px;position:relative;transition:all .3s ease}.leave-balance-card:before{background:linear-gradient(90deg,#3498db,#2980b9);border-radius:16px 16px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.leave-balance-card:hover{box-shadow:0 12px 40px #3498db29;transform:translateY(-2px)}.leave-balance-card h3{color:#2c3e50;font-size:1.5rem;font-weight:700;letter-spacing:-.5px;margin:0 0 24px;text-align:center}.balance-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.balance-item{background:#fff;border:1px solid #3498db1f;border-radius:12px;box-shadow:0 2px 8px #3498db14;padding:24px;position:relative;text-align:center;transition:all .3s ease}.balance-item:hover{border-color:#3498db33;box-shadow:0 8px 24px #3498db26;transform:translateY(-3px)}.balance-type{color:var(--text-secondary);display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.balance-count{color:var(--text-primary);display:block;font-size:1.8rem;font-weight:700}.leave-form-container{display:flex;justify-content:center}.leave-form-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);max-width:900px;padding:40px;transition:all .3s ease;width:100%}.leave-form-card h2{color:var(--text-primary);font-size:1.6rem;font-weight:600;margin-bottom:25px;text-align:center}.form-row{grid-gap:20px;display:grid;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.95rem;font-weight:600;margin-bottom:8px}.form-control{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;padding:12px;transition:all .3s ease}.form-control:focus{border-color:var(--btn-primary);box-shadow:0 0 0 3px var(--shadow-light);outline:none}.form-control:hover{border-color:var(--border-hover)}.calculated-days{border:1px solid var(--border-color);color:var(--text-primary);padding:12px;text-align:center}.calculated-days,.leave-validation{background:var(--bg-secondary);border-radius:8px}.leave-validation{border-left:4px solid var(--btn-primary);border:1px solid var(--border-color);margin-bottom:20px;padding:15px}.validation-info{color:var(--text-primary);display:flex;justify-content:space-between;margin-bottom:10px}.validation-error{color:var(--btn-danger);font-weight:600;text-align:center}.form-actions{margin-top:25px;text-align:center}.btn-primary{background:var(--btn-primary);font-size:1rem;font-weight:600;min-width:200px;padding:15px 30px;transition:all .3s ease}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover);box-shadow:0 4px 12px var(--shadow-color);transform:translateY(-2px)}.btn-approve{background:var(--btn-success);border:none;border-radius:6px;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-approve:hover{background:var(--btn-success-hover);box-shadow:0 4px 12px var(--shadow-success);transform:translateY(-2px)}.btn-reject{background:var(--btn-danger);border:none;border-radius:6px;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-reject:hover{background:var(--btn-danger-hover);box-shadow:0 4px 12px var(--shadow-danger);transform:translateY(-2px)}.btn-cancel{background:var(--btn-secondary);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .3s ease}.btn-cancel:hover{background:var(--btn-secondary-hover);transform:translateY(-2px)}.btn-secondary{background:var(--btn-secondary);border:none;color:#fff;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-secondary:hover{background:var(--btn-secondary-hover);transform:translateY(-2px)}.leave-history-container{margin:0 auto;max-width:1400px}.leave-history-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);overflow:hidden;width:100%}.leave-history-card h2{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);color:var(--text-primary);font-weight:600;margin:0;padding:20px}.no-requests{padding:40px}.requests-list{padding:20px}.request-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:15px;padding:20px;transition:all .3s ease}.request-item:hover{box-shadow:0 4px 12px var(--shadow-light);transform:scale(1.01)}.request-header{margin-bottom:15px}.request-info{align-items:center;display:flex;gap:15px}.request-type{color:var(--text-primary);font-weight:600}.request-dates{color:var(--text-secondary);font-size:.95rem}.days-count{color:var(--btn-primary);margin-left:8px}.status-badge.pending{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-badge.approved{background-color:#d4edda;border:1px solid #00b894;color:#155724}.status-badge.rejected{background-color:#f8d7da;border:1px solid #e74c3c;color:#721c24}.status-badge.cancelled{background-color:#e2e3e5;border:1px solid #6c757d;color:#383d41}.status-badge.processed,[data-theme=dark] .status-badge.approved{border:1px solid var(--border-color)!important;color:#fff!important}[data-theme=dark] .status-badge.approved{background-color:#d4edda26!important}[data-theme=dark] .status-badge.rejected{background-color:#f8d7da26!important;border:1px solid var(--border-color)!important;color:#fff!important}[data-theme=dark] .status-badge.cancelled{background-color:#e2e3e526!important;border:1px solid var(--border-color)!important;color:#fff!important}[data-theme=dark] .status-badge.processed{background-color:#cfe2ff26!important;border:1px solid var(--border-color)!important;color:#fff!important}[data-theme=dark] .status-badge.cancellation-requested{background-color:#fff3cd26!important;border:1px solid var(--border-color)!important;color:#fff!important}[data-theme=dark] .leave-application-container,[data-theme=dark] .leave-approval-container{background-color:var(--bg-tertiary)!important;color:var(--text-primary)!important}[data-theme=dark] .advanced-filters,[data-theme=dark] .approval-header,[data-theme=dark] .decision-modal,[data-theme=dark] .export-section,[data-theme=dark] .filter-controls,[data-theme=dark] .leave-form-card,[data-theme=dark] .leave-header,[data-theme=dark] .leave-history-card,[data-theme=dark] .request-approval-card,[data-theme=dark] .request-item{background-color:var(--bg-primary)!important;border:1px solid var(--border-color)!important;box-shadow:0 4px 16px var(--shadow-dark)!important;color:var(--text-primary)!important}[data-theme=dark] .approval-header h1,[data-theme=dark] .approval-header p,[data-theme=dark] .employee-details,[data-theme=dark] .employee-info h3,[data-theme=dark] .form-group label,[data-theme=dark] .leave-header h1,[data-theme=dark] .leave-history-card h2,[data-theme=dark] .request-dates,[data-theme=dark] .request-type,[data-theme=dark] .validation-info{color:var(--text-primary)!important}[data-theme=dark] .leave-balance-card{background:var(--bg-primary)!important;border:1px solid var(--border-color)!important;color:var(--text-primary)!important}[data-theme=dark] .balance-item,[data-theme=dark] .calculated-days,[data-theme=dark] .comment-item,[data-theme=dark] .info-item,[data-theme=dark] .leave-details,[data-theme=dark] .reason-text,[data-theme=dark] .request-comments,[data-theme=dark] .request-summary{background-color:var(--bg-secondary)!important;border:1px solid var(--border-color)!important;color:var(--text-primary)!important}[data-theme=dark] .export-table{background-color:var(--bg-primary)!important;border-color:var(--border-color)!important}[data-theme=dark] .export-table td,[data-theme=dark] .export-table th{color:var(--text-primary)!important}[data-theme=dark] .export-table tr:nth-child(2n){background-color:var(--bg-secondary)!important}[data-theme=dark] .comments-section label,[data-theme=dark] .label,[data-theme=dark] .modal-header h3,[data-theme=dark] .reason-section h4{color:var(--text-primary)!important}[data-theme=dark] .comments-section textarea,[data-theme=dark] .date-range-filter input,[data-theme=dark] .form-control,[data-theme=dark] .month-filter select,[data-theme=dark] .team-filter select,[data-theme=dark] input[type=time]{background-color:var(--input-bg)!important;border:1px solid var(--input-border)!important;color:var(--text-primary)!important}[data-theme=dark] .comments-section textarea:focus,[data-theme=dark] .form-control:focus,[data-theme=dark] .month-filter select:focus,[data-theme=dark] .team-filter select:focus{border-color:var(--input-focus)!important;box-shadow:0 0 0 3px #0d6efd4d!important}.leave-type-badge{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.decision-modal{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 8px 32px var(--shadow-dark);max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{border-bottom:1px solid var(--border-color);margin-bottom:20px;padding-bottom:15px}.modal-header h3{color:var(--text-primary);font-size:1.4rem}.modal-close{border-radius:50%;color:var(--text-secondary);font-size:2rem;padding:5px;transition:all .3s ease}.modal-close:hover{background:var(--hover-color);color:var(--btn-danger)}.modal-content{margin-bottom:25px}.request-summary{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;margin-bottom:20px;padding:20px}.request-summary p{color:#2c3e50;margin:8px 0}.request-summary strong{color:#34495e;font-weight:600}.comments-section{margin-top:20px}.comments-section label{font-size:1rem;margin-bottom:8px}.comments-section textarea{font-family:inherit;margin-top:8px;padding:12px;transition:border-color .3s ease}.comments-section textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.modal-actions{border-top:1px solid #e9ecef;gap:15px;padding-top:20px}.loading-state{color:#7f8c8d;font-size:1.1rem;padding:60px 20px;text-align:center}.no-pending{align-items:center;display:flex;justify-content:center;min-height:300px}.no-pending-card{padding:40px;width:100%}.no-pending-card h3{color:#5a6c7d;font-size:1.3rem;margin-bottom:10px}.no-pending-card p{color:#7f8c8d;font-size:1rem}.pending-requests-grid{grid-gap:25px;gap:25px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-top:25px}.request-approval-card{border:1px solid #e9ecef;padding:25px;transition:all .3s ease}.request-approval-card:hover{transform:translateY(-2px)}.employee-info h3{font-size:1.2rem;margin:0 0 5px}.employee-details{line-height:1.4}.request-id{background:#f3f0ff;border-radius:4px;font-size:.9rem;padding:4px 8px}.leave-details{background:#f8f9fa;border-radius:8px;margin:20px 0;padding:15px}.detail-row{align-items:center;margin-bottom:8px;padding:4px 0}.detail-row:last-child{margin-bottom:0}.label{font-size:.95rem}.reason-section{margin:20px 0}.reason-section h4{color:#34495e;font-size:1rem;margin:0 0 10px}.reason-text{border-left:3px solid #3498db;font-size:.95rem;font-style:italic;line-height:1.5;padding:12px}.reporting-info{background:#f1f3f4;border-radius:6px;font-size:.9rem;margin:15px 0;padding:8px 12px}.approval-actions{border-top:1px solid #e9ecef;margin-top:20px;padding-top:15px}.request-details{margin:15px 0}.request-details p{font-size:.95rem;line-height:1.4;margin:8px 0}.request-details strong{color:#34495e;font-weight:600}.request-comments{background:#f8f9fa;margin-top:20px;padding:15px}.request-comments h4{color:#34495e;font-size:1rem;margin:0 0 15px}.comment-item{background:var(--bg-secondary);border-left:3px solid var(--btn-primary);display:flex;flex-direction:column;gap:8px}.comment-header{margin-bottom:5px}.comment-action{background:#007bff1a;border-radius:4px;color:var(--btn-primary);display:inline-block;font-size:.9rem;padding:4px 8px;text-transform:capitalize}.comment-by{font-size:.85rem}.comment-text{font-size:.95rem;line-height:1.4;margin:5px 0}.comment-date{color:var(--text-secondary);font-size:.8rem;text-align:right}.request-actions{border-top:1px solid #e9ecef;margin-top:15px;padding-top:15px}@media (max-width:768px){.leave-application-container,.leave-approval-container{padding-bottom:15px;padding-left:15px;padding-right:15px;padding-top:76px!important}.form-row,.pending-requests-grid{grid-template-columns:1fr}.pending-requests-grid{gap:20px}.tab-navigation{flex-direction:column;gap:8px}.decision-modal{padding:25px;width:95%}.modal-actions{flex-direction:column;gap:10px}.modal-actions button{width:100%}}.mb-0{margin-bottom:0!important}.mt-1{margin-top:.5rem}.p-2{padding:1rem}.leave-type-badge{background:#f3f3f3;border:1px solid #e1e8ed;border-radius:16px;color:#2c3e50;display:inline-block;font-size:.95rem;font-weight:600;margin-left:8px;margin-right:8px;padding:6px 16px;text-transform:capitalize}.leave-type-badge.casual{background:#eafaf1;border-color:#27ae60;color:#27ae60}.leave-type-badge.sick{background:#fff3f3;border-color:#e74c3c;color:#e74c3c}.leave-type-badge.personal{background:#f3f0ff;border-color:#764ba2;color:#764ba2}.modal-overlay{background:#2c3e5040}.decision-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #2c3e5026;max-width:420px;padding:32px;position:relative;width:100%}.modal-header{margin-bottom:18px}.modal-header h3{color:#2c3e50;font-size:1.3rem}.modal-close{background:none;border:none;color:#7f8c8d;cursor:pointer;font-size:1.6rem}.modal-content{margin-bottom:18px}.comments-section label{color:#34495e;display:block;font-weight:600;margin-bottom:6px}.comments-section textarea{border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;margin-top:6px;padding:10px;resize:vertical;width:100%}.modal-actions{justify-content:flex-end}.no-pending-card{background:#f8f9fa;border-radius:12px;box-shadow:0 2px 8px #2c3e5012;color:#7f8c8d;margin:40px auto;max-width:400px;padding:32px;text-align:center}.pending-requests-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));margin-top:24px}.request-approval-card{background:#fff;border-radius:12px;box-shadow:0 4px 16px #2c3e5017;padding:24px;transition:box-shadow .2s}.request-approval-card:hover{box-shadow:0 8px 32px #2c3e5021}.request-header{margin-bottom:12px}.employee-info h3{color:#2c3e50;font-size:1.1rem;margin:0}.employee-details{color:#7f8c8d;font-size:.95rem}.request-id{color:#764ba2;font-size:.95rem;font-weight:600}.leave-details{margin-bottom:12px}.detail-row{display:flex;justify-content:space-between;margin-bottom:6px}.label{color:#34495e;font-weight:600}.days-count{color:#3498db;font-weight:600}.reason-section{margin-bottom:10px}.reason-text{background:#f8f9fa;border-radius:8px;color:#2c3e50;font-size:.98rem;padding:10px}.reporting-info{color:#7f8c8d;font-size:.95rem;margin-bottom:10px}.approval-actions{display:flex;gap:12px;margin-top:10px}.text-center{text-align:center}.duration-type-selector{display:flex;flex-wrap:wrap;gap:15px;padding:10px 0}.radio-option{align-items:center;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .3s ease}.radio-option:hover{background-color:var(--hover-bg);border-color:var(--primary-color)}.radio-option input[type=radio]{accent-color:var(--primary-color);cursor:pointer;height:18px;width:18px}.radio-option input[type=radio]:checked+span{color:var(--primary-color);font-weight:600}.radio-option:has(input[type=radio]:checked){background-color:#4a90e21a;border-color:var(--primary-color)}.info-text{background-color:#3498db1a;border-left:4px solid var(--primary-color);border-radius:6px;color:var(--text-secondary);font-size:13px;line-height:1.5;margin-top:5px;padding:10px 15px}.additional-info{grid-gap:15px;border-top:1px solid var(--border-color);display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:15px;padding-top:15px}.info-item{align-items:center;background-color:var(--bg-secondary);border-radius:8px;display:flex;justify-content:space-between;padding:10px 15px;transition:all .3s ease}.info-item:hover{background-color:var(--hover-bg);transform:translateY(-2px)}.info-label{color:var(--text-secondary);font-size:14px;font-weight:500}.info-value{color:var(--primary-color);font-size:15px;font-weight:600}.monthly-info{background-color:#3498db1a;border-radius:4px;color:var(--text-secondary);display:block;font-size:12px;margin-top:5px;padding:4px 8px;width:-webkit-fit-content;width:fit-content}.duration-badge{background-color:#9b59b633;border:1px solid var(--primary-color);border-radius:12px;color:var(--primary-color);display:inline-block;font-size:12px;font-weight:600;margin-left:10px;padding:4px 10px}input[type=time]{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:14px;padding:10px 15px;transition:all .3s ease}input[type=time]:focus{box-shadow:0 0 0 3px #4a90e21a;outline:none}input[type=time]:focus,input[type=time]:hover{border-color:var(--primary-color)}.calculated-days{background-color:#2ecc711a;border-left:4px solid #2ecc71;border-radius:6px;color:#2ecc71;font-size:15px;font-weight:600;padding:12px 15px}.info-badge{background-color:#3498db26;border:1px solid #3498db4d;border-radius:6px;color:var(--primary-color)}.info-badge,.time-badge{display:inline-block;font-size:13px;font-weight:600;padding:6px 12px}.time-badge{background-color:#9b59b626;border:1px solid #9b59b64d;border-radius:6px;color:#9b59b6}.leave-requests-section{background-color:var(--bg-primary);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);padding:25px;transition:all .3s ease}.leave-requests-section h2{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:24px;font-weight:600;margin-bottom:25px;padding-bottom:12px}.no-requests{background-color:var(--bg-secondary);border:1px dashed var(--border-color);font-size:16px}.requests-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(500px,1fr))}.request-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow-light);overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.request-card:hover{border-color:var(--btn-primary);box-shadow:0 8px 24px var(--shadow-medium);transform:translateY(-4px)}.request-card:before{background:linear-gradient(180deg,#0d6efd,#0a58ca);content:"";height:100%;left:0;position:absolute;top:0;transition:width .3s ease;width:4px}.request-card:hover:before{width:6px}.request-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.request-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.request-header h3:before{content:"👤";font-size:20px}.request-body{margin-bottom:16px}.request-body p{align-items:flex-start;color:var(--text-primary);display:flex;font-size:14px;gap:8px;line-height:1.6;margin:10px 0}.request-body p strong{color:var(--text-secondary);display:inline-block;font-weight:600;min-width:100px}.request-comments{background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;margin-top:16px;padding:16px}.request-comments h4{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:6px;margin-bottom:12px}.request-comments h4:before{content:"💬"}.comment-item{background-color:var(--bg-primary);border-left:3px solid var(--btn-info);border-radius:6px;margin-bottom:10px;padding:12px;transition:all .2s ease}.comment-item:hover{border-left-color:var(--btn-primary);transform:translateX(4px)}.comment-item:last-child{margin-bottom:0}.comment-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:6px}.comment-action{align-items:center;color:var(--text-primary);display:flex;font-size:12px;font-weight:600;gap:4px}.comment-by{color:var(--text-secondary);font-size:12px;font-style:italic}.comment-text{align-items:center;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;font-size:14px;font-weight:600;gap:8px;justify-content:center;line-height:1.5;margin-top:6px;transition:all .3s ease}.btn-approve{background-color:var(--btn-success);color:#fff}.btn-approve:hover:not(:disabled){background-color:var(--btn-success-hover);box-shadow:0 4px 12px #19875466;transform:translateY(-2px)}.btn-approve:before{content:"✓";font-size:16px;font-weight:700}.btn-reject{background-color:var(--btn-danger);color:#fff}.btn-reject:hover:not(:disabled){background-color:var(--btn-danger-hover);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.btn-reject:before{content:"✕";font-size:16px;font-weight:700}.request-actions button:disabled{opacity:.6}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0009}.decision-modal,.modal-content{animation:slideUp .3s ease;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:85vh;max-width:500px;overflow-y:auto;padding:30px;width:90%}.modal-content h3{align-items:center;color:var(--text-primary);display:flex;font-size:22px;font-weight:600;gap:10px;margin-bottom:20px}.modal-content p{color:var(--text-primary);font-size:14px;margin:10px 0}.modal-content p strong{color:var(--text-secondary);font-weight:600}.modal-content textarea{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:14px;margin-top:16px;padding:14px;resize:vertical;transition:all .3s ease;width:100%}.modal-content textarea:focus{background-color:var(--bg-primary);border-color:var(--btn-primary);box-shadow:0 0 0 3px #0d6efd1a;outline:none}.modal-content textarea::placeholder{color:var(--text-tertiary)}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-confirm{background-color:var(--btn-primary);color:#fff}.btn-confirm:hover{background-color:var(--btn-primary-hover);box-shadow:0 4px 12px #0d6efd66;transform:translateY(-2px)}.btn-cancel-modal{background-color:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-cancel-modal:hover{background-color:var(--table-row-hover);border-color:var(--border-hover);transform:translateY(-2px)}[data-theme=dark] .request-card{background-color:#1a1f2e;border-color:#2d3548}[data-theme=dark] .request-card:hover{border-color:#0d6efd;box-shadow:0 8px 24px #00000080}[data-theme=dark] .request-comments{background-color:#141824;border-color:#2d3548}[data-theme=dark] .comment-item{background-color:#1a1f2e;border-left-color:#0dcaf0}[data-theme=dark] .modal-overlay{background-color:#000c}[data-theme=dark] .modal-content{background-color:#1a1f2e;border-color:#2d3548}[data-theme=dark] .btn-cancel-modal,[data-theme=dark] .modal-content textarea{background-color:#141824;border-color:#2d3548;color:#fff}[data-theme=dark] .btn-cancel-modal:hover{background-color:#1a1f2e;border-color:#3d4658}@media (max-width:768px){.requests-list{grid-template-columns:1fr}.request-card{padding:16px}.request-header h3{font-size:16px}.request-actions{flex-direction:column}.modal-content{padding:20px;width:95%}.modal-actions{flex-direction:column}}.btn-request-cancellation{background:linear-gradient(135deg,#ff9800,#f57c00);border:none;border-radius:6px;box-shadow:0 2px 8px #ff98004d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease}.btn-submit-cancellation:disabled{[data-theme=dark] .info-message-small{background-color:#2196f31a;border-left-color:#2196f3;color:#ccc}[data-theme=dark] .info-message-warning{background-color:#fff3cd1a;border-left-color:#ff9800;color:#ffd54f}[data-theme=dark] .request-summary-box{background-color:#1a1f2e;border-left-color:#2196f3}[data-theme=dark] .warning-box{background-color:#fff3cd1a;border-color:#ff9800;color:#ffd54f}[data-theme=dark] .warning-box strong{color:#ff9800}[data-theme=dark] .char-count{color:#999}[data-theme=dark] .cancellation-modal .modal-close:hover{background-color:#2d3548;color:#fff}.btn-cancel-approved{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:6px;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease;width:100%}.btn-cancel-approved:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.btn-approve-cancellation{background:linear-gradient(135deg,#28a745,#218838);border:none;border-radius:6px;box-shadow:0 2px 8px #28a7454d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease}.btn-approve-cancellation:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34);box-shadow:0 4px 12px #28a74566;transform:translateY(-2px)}.btn-cancel-approved-confirm{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:6px;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-cancel-approved-confirm:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.btn-cancel-approved-confirm:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;opacity:.6}.cancel-approved-modal{max-width:650px;width:90%}.confirmation-checkbox{background-color:#fff3cd;border:1px solid #ff9800;border-radius:6px;margin-top:20px;padding:15px}.confirmation-checkbox label{align-items:flex-start;color:#856404;cursor:pointer;display:flex;font-weight:600}.confirmation-checkbox input[type=checkbox]{cursor:pointer;height:18px;margin-right:10px;margin-top:4px;width:18px}}.btn-submit-cancellation:disabled{background:linear-gradient(135deg,#ff9800,#f57c00);border:none;border-radius:6px;box-shadow:0 2px 8px #ff98004d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease;[data-theme=dark] .info-message-small{background-color:#2196f31a;border-left-color:#2196f3;color:#ccc}[data-theme=dark] .info-message-warning{background-color:#fff3cd1a;border-left-color:#ff9800;color:#ffd54f}[data-theme=dark] .request-summary-box{background-color:#1a1f2e;border-left-color:#2196f3}[data-theme=dark] .warning-box{background-color:#fff3cd1a;border-color:#ff9800;color:#ffd54f}[data-theme=dark] .warning-box strong{color:#ff9800}[data-theme=dark] .char-count{color:#999}[data-theme=dark] .cancellation-modal .modal-close:hover{background-color:#2d3548;color:#fff}.btn-cancel-approved{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:6px;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease;width:100%}.btn-cancel-approved:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.btn-approve-cancellation{background:linear-gradient(135deg,#28a745,#218838);border:none;border-radius:6px;box-shadow:0 2px 8px #28a7454d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease}.btn-approve-cancellation:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34);box-shadow:0 4px 12px #28a74566;transform:translateY(-2px)}.btn-cancel-approved-confirm{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:6px;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-cancel-approved-confirm:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.btn-cancel-approved-confirm:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;opacity:.6}.cancel-approved-modal{max-width:650px;width:90%}.confirmation-checkbox{background-color:#fff3cd;border:1px solid #ff9800;border-radius:6px;margin-top:20px;padding:15px}.confirmation-checkbox label{align-items:flex-start;color:#856404;cursor:pointer;display:flex;font-weight:600}.confirmation-checkbox input[type=checkbox]{cursor:pointer;height:18px;margin-right:10px;margin-top:4px;width:18px}.confirmation-checkbox span{flex:1 1}[data-theme=dark] .btn-cancel-approved{box-shadow:0 2px 8px #dc354580}}.btn-request-cancellation:hover{background:linear-gradient(135deg,#f57c00,#e65100);box-shadow:0 4px 12px #ff980066;transform:translateY(-2px)}.btn-submit-cancellation{background:linear-gradient(135deg,#ff5722,#e64a19);border:none;border-radius:6px;box-shadow:0 2px 8px #ff57224d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-submit-cancellation:hover:not(:disabled){background:linear-gradient(135deg,#e64a19,#d84315);box-shadow:0 4px 12px #ff572266;transform:translateY(-2px)}.btn-submit-cancellation:disabled{background:#ccc;[data-theme=dark] .info-message-small{background-color:#2196f31a;border-left-color:#2196f3;color:#ccc}[data-theme=dark] .info-message-warning{background-color:#fff3cd1a;border-left-color:#ff9800;color:#ffd54f}[data-theme=dark] .request-summary-box{background-color:#1a1f2e;border-left-color:#2196f3}[data-theme=dark] .warning-box{background-color:#fff3cd1a;border-color:#ff9800;color:#ffd54f}[data-theme=dark] .warning-box strong{color:#ff9800}[data-theme=dark] .char-count{color:#999}[data-theme=dark] .cancellation-modal .modal-close:hover{background-color:#2d3548;color:#fff}}.btn-cancel-approved{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:6px;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease;width:100%}.btn-cancel-approved:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.btn-approve-cancellation{background:linear-gradient(135deg,#28a745,#218838);border:none;border-radius:6px;box-shadow:0 2px 8px #28a7454d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .3s ease}.btn-approve-cancellation:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34);box-shadow:0 4px 12px #28a74566;transform:translateY(-2px)}.btn-cancel-approved-confirm{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:6px;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-cancel-approved-confirm:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.btn-cancel-approved-confirm:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;opacity:.6}.cancel-approved-modal{max-width:650px;width:90%}.confirmation-checkbox{background-color:#fff3cd;border:1px solid #ff9800;border-radius:6px;margin-top:20px;padding:15px}.confirmation-checkbox label{align-items:flex-start;color:#856404;cursor:pointer;display:flex;font-weight:600}.confirmation-checkbox input[type=checkbox]{cursor:pointer;height:18px;margin-right:10px;margin-top:4px;width:18px}.confirmation-checkbox span{flex:1 1}[data-theme=dark] .btn-cancel-approved{box-shadow:0 2px 8px #dc354580}[data-theme=dark] .confirmation-checkbox{background-color:#fff3cd1a;border-color:#ff9800}[data-theme=dark] .confirmation-checkbox label{color:#ffd54f}.info-message-small{background-color:#f0f8ff;border-left:3px solid #2196f3;border-radius:4px;color:#666;font-size:.85rem;margin-top:8px;padding:8px}.info-message-warning{background-color:#fff3cd;border-left:4px solid #ff9800;border-radius:4px;color:#856404;font-size:.9rem;font-weight:600;padding:12px}.cancellation-modal{max-width:600px;width:90%}.cancellation-modal .modal-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.cancellation-modal .modal-header h3{color:#ff5722;font-size:18px;margin:0}.cancellation-modal .modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:28px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:28px}.cancellation-modal .modal-close:hover{background-color:#f0f0f0;color:#000}.cancellation-modal textarea{height:100px!important;min-height:100px}.request-summary-box{background-color:#f8f9fa;border-left:4px solid #2196f3;border-radius:8px;margin-bottom:10px;padding:10px 15px}.request-summary-box p{font-size:.9rem;margin:4px 0}.warning-box{background-color:#fff3cd;border:1px solid #ff9800;border-radius:6px;color:#856404;font-size:.9rem;margin-bottom:15px;padding:10px}.warning-box strong{color:#ff5722;display:block;margin-bottom:3px}.char-count{color:#666;font-size:.85rem;margin-top:5px;text-align:right}.request-card.pending:before{background:linear-gradient(180deg,#ffc107,#ff9800)}.request-card.pending:hover{border-color:#ff9800}.page-container{background:var(--bg-tertiary);display:flex;flex-direction:column;margin:0;min-height:100vh;overflow-x:hidden;padding:0;width:100%}.page-content{background:var(--card-bg);border:none;border-radius:0;box-shadow:none;box-sizing:border-box;color:var(--text-primary);flex:1 1;margin:0;max-width:100%;padding:20px;width:100%}.page-content>h2{margin-bottom:20px;text-align:center}.tabs{display:flex;gap:8px;justify-content:center;margin:8px 0 16px}.month-selector-wrapper,.my-reports>.filters,.summary-cards{align-items:center;display:flex;flex-wrap:wrap;justify-content:center}.tab{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;padding:10px 16px}.tab.active{background:var(--btn-active);border-color:var(--btn-active);color:#fff}input[type=month]{background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:8px}input[type=month]:focus{border-color:var(--input-focus);outline:none}.eod-form .form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.eod-form label{color:var(--text-primary);font-weight:600}.eod-form{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow-light);margin:0 auto;max-width:900px;padding:24px}.eod-form input,.eod-form select,.eod-form textarea{background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;box-sizing:border-box;color:var(--text-primary);max-width:100%;padding:10px;transition:border .2s ease;width:100%}.eod-form input:focus,.eod-form select:focus,.eod-form textarea:focus{border-color:var(--input-focus);outline:none}.eod-form input:disabled,.eod-form select:disabled,.eod-form textarea:disabled{background:var(--bg-secondary);cursor:not-allowed;opacity:.6}.hint.badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.badge{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:10px;font-weight:600;gap:4px;padding:3px 6px;white-space:nowrap}.badge.forenoon{background:#3182ce}.badge.afternoon{background:#dd6b20}.badge.warning{background:#c34}.badge.ok,.badge.yes{background:#2f855a}.badge.no{background:#718096}.btn-primary{background:var(--btn-active);border:none;border-radius:8px;cursor:pointer;padding:10px 16px}.btn-secondary{background:var(--btn-default);border:1px solid var(--btn-default-border);border-radius:6px;color:var(--btn-default-text);cursor:pointer;padding:8px 14px}.btn-secondary:hover{background:var(--btn-default-hover)}.work-location-cards{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:10px 0 14px}.work-location-cards .card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;box-shadow:0 2px 6px var(--shadow-light);color:var(--text-primary);cursor:pointer;padding:14px;text-align:center;transition:transform .15s ease,border .2s ease,box-shadow .2s ease}.work-location-cards .card .icon{display:block;font-size:22px;margin-bottom:6px}.work-location-cards .card:hover{border-color:var(--border-hover);transform:translateY(-1px)}.work-location-cards .card.active{border-color:var(--btn-active);box-shadow:0 0 0 2px var(--shadow-color) inset}.work-location-cards .card.disabled{cursor:not-allowed;opacity:.5}.work-location-cards .card.disabled:hover{border-color:var(--card-border);transform:none}.slide-in{animation:slideIn .2s ease}.eod-table-wrapper{-webkit-overflow-scrolling:touch;background:var(--card-bg);border:1px solid var(--table-border);border-radius:8px;margin-top:12px;overflow-x:hidden;overflow-y:visible;position:relative;width:100%}.eod-table{border-collapse:initial;border-spacing:0;margin:0;min-width:auto;table-layout:fixed;width:100%}.eod-table td,.eod-table th{background:var(--card-bg);border-bottom:1px solid var(--table-border);color:var(--text-primary);font-size:13px;padding:10px 6px;text-align:left;vertical-align:top}.eod-table td,.eod-table th,.eod-table thead th{word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.eod-table thead th{background:var(--table-header-bg);border-bottom:2px solid var(--border-color);box-shadow:0 2px 4px #0000001a;font-weight:600;line-height:1.3;padding:8px 6px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.eod-table-fixed-header{display:table;width:100%}.eod-table-fixed-header thead{display:table-header-group;width:100%}.eod-table-fixed-header tbody{display:table-row-group}.eod-table-fixed-header tbody tr{display:table-row;width:100%}.eod-table-fixed-header thead th{background:var(--table-header-bg);border-bottom:2px solid var(--border-color);box-shadow:0 2px 4px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:10}.eod-table tr:nth-child(2n){background:var(--bg-secondary)}.eod-table tr:hover{background:var(--table-row-hover)}.eod-table.hover tr.clickable{cursor:pointer}.eod-table td.wrap-text{word-wrap:break-word;max-width:400px;white-space:pre-wrap;word-break:break-word}.eod-table .truncate{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expand{display:none}.expand.open{display:table-row}.expand-content{background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:8px;padding:10px}.filter-panel{border:1px solid var(--border-color);border-radius:10px;margin:16px 0;overflow:hidden}.filter-header{align-items:center;background:var(--bg-secondary);color:var(--text-primary);display:flex;justify-content:space-between;padding:10px 12px}.filters-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));padding:12px}.filter-actions{align-items:center;display:flex;grid-column:1/-1;justify-content:space-between}.export-group{display:inline-flex;gap:8px}.export-group button{background:var(--btn-active);border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 12px}.summary-cards{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));justify-content:center;margin-bottom:12px;margin-left:auto;margin-right:auto;max-width:600px}.summary-cards .card.stat{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;box-shadow:0 2px 6px var(--shadow-light);padding:12px;text-align:center}.summary-cards .value{color:var(--text-primary);font-size:20px;font-weight:700}.summary-cards .label{color:var(--text-secondary);font-size:12px}.pagination{align-items:center;display:flex;gap:10px;justify-content:flex-end;padding-top:10px}.pagination button{background:var(--btn-default);border:1px solid var(--btn-default-border);border-radius:6px;color:var(--btn-default-text);cursor:pointer;padding:6px 10px}.pagination button:hover{background:var(--btn-default-hover)}.skeleton-table{animation:shimmer 1.4s ease infinite;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--border-color) 37%,var(--bg-secondary) 63%);background-size:400% 100%;border-radius:8px;height:240px}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (max-width:480px){.page-container{padding:0;width:100%}.page-content{margin:0;max-width:100%;padding:10px;width:100%}.eod-form input,.eod-form select,.eod-form textarea{font-size:14px;padding:8px;width:100%}.eod-form{border:none;box-shadow:none;max-width:100%;padding:12px}.eod-form textarea{min-height:80px}.work-location-cards{gap:8px;grid-template-columns:1fr}.tabs{flex-direction:column;gap:6px}.tab{padding:8px 12px;text-align:center}.filters-grid{gap:8px;grid-template-columns:1fr}.filters{align-items:stretch!important;flex-direction:column!important}.filters label{width:100%}.filters button{margin-top:0!important;width:100%}input[type=month]{width:100%}.summary-cards{gap:8px;grid-template-columns:repeat(2,1fr)}.eod-table{font-size:11px;table-layout:fixed;width:100%}.eod-table td,.eod-table th{word-wrap:break-word;overflow-wrap:break-word;padding:8px 4px;white-space:normal}.eod-table td[style*="whiteSpace: pre-wrap"]{font-size:11px;line-height:1.4}.eod-table .truncate{max-width:80px}.eod-table-wrapper{max-height:none;overflow-x:hidden;overflow-y:visible}.eod-table-fixed-header{display:table}.eod-table-fixed-header thead{display:table-header-group}.eod-table-fixed-header tbody{display:table-row-group;max-height:none;overflow-y:visible}.eod-table-fixed-header tbody tr{display:table-row}.filter-actions{flex-direction:column;gap:8px}.export-group{flex-direction:column;width:100%}.export-group button{width:100%}.btn-primary,.btn-secondary{padding:10px;width:100%}}@media (min-width:481px) and (max-width:768px){.page-container{padding:0;width:100%}.page-content{margin:0;max-width:100%;padding:15px;width:100%}.eod-form input,.eod-form select,.eod-form textarea{font-size:15px;width:100%}.eod-form{max-width:750px;padding:20px}.eod-form textarea{min-height:100px}.work-location-cards{gap:10px}.filters-grid,.work-location-cards{grid-template-columns:repeat(2,1fr)}.summary-cards{grid-template-columns:repeat(3,1fr)}.eod-table{font-size:13px;table-layout:fixed;width:100%}.eod-table td,.eod-table th{word-wrap:break-word;overflow-wrap:break-word;padding:10px 6px;white-space:normal}.eod-table .truncate{max-width:160px}.eod-table-wrapper{max-height:none;overflow-x:hidden;overflow-y:visible}.eod-table-fixed-header thead th{position:-webkit-sticky;position:sticky;top:0}.tabs{flex-wrap:wrap}}@media (min-width:769px) and (max-width:1024px){.page-container{padding:0;width:100%}.page-content{margin:0;max-width:100%;padding:20px;width:100%}.eod-form input,.eod-form select,.eod-form textarea{font-size:16px;width:100%}.eod-form{max-width:850px;padding:24px}.eod-form textarea{min-height:110px}.filters-grid,.work-location-cards{grid-template-columns:repeat(3,1fr)}.summary-cards{grid-template-columns:repeat(4,1fr)}.eod-table-wrapper{max-height:none;overflow-x:hidden;overflow-y:visible}.eod-table-fixed-header thead th{position:-webkit-sticky;position:sticky;top:0}}@media (min-width:1025px){.page-container{padding:0;width:100%}.page-content{margin:0;max-width:100%;padding:20px;width:100%}.eod-form textarea{min-height:120px}.eod-table-wrapper{max-height:none;overflow-x:hidden;overflow-y:visible}.eod-table-fixed-header thead th{position:-webkit-sticky;position:sticky;top:0}}@media (max-width:768px) and (orientation:landscape){.work-location-cards{grid-template-columns:repeat(3,1fr)}.summary-cards{grid-template-columns:repeat(4,1fr)}}.calendar-wrap{margin:12px 0}.has-eod{background:#3182ce40!important;border-radius:6px}.calendar-legend{align-items:center;color:var(--text-secondary);display:flex;gap:6px;margin-top:6px}.calendar-legend .dot{background:#3182ce;border-radius:50%;display:inline-block;height:10px;width:10px}[data-theme=dark] .page-container,[data-theme=dark] .page-content{background-color:#0b0f1a!important;color:#fff!important}[data-theme=dark] .tabs .tab{background:#0000!important;border:1px solid #fff!important;color:#fff!important}[data-theme=dark] .tabs .tab.active,[data-theme=dark] .tabs .tab:hover{background:#1f2937!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .eod-form,[data-theme=dark] .eod-table-wrapper,[data-theme=dark] .filter-header,[data-theme=dark] .filter-panel,[data-theme=dark] .filters-grid,[data-theme=dark] .summary-cards .card.stat,[data-theme=dark] .work-location-cards .card{background-color:#111827!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .eod-form input,[data-theme=dark] .eod-form select,[data-theme=dark] .eod-form textarea,[data-theme=dark] input[type=month]{background-color:#0f172a!important;border-color:#fff!important;color:#fff!important}[data-theme=dark] .eod-form input::placeholder,[data-theme=dark] .eod-form textarea::placeholder{color:#ffffffb3!important}[data-theme=dark] .eod-table td,[data-theme=dark] .eod-table th{background-color:#111827!important;border-bottom-color:#fff!important;color:#fff!important}[data-theme=dark] .eod-table thead th{background-color:#1f2937!important;border-bottom-color:#fff!important;color:#fff!important}[data-theme=dark] .eod-table tr:nth-child(2n){background:#0f172a!important}[data-theme=dark] .eod-table tr:hover{background:#1f2937!important}[data-theme=dark] .btn-primary,[data-theme=dark] .btn-secondary,[data-theme=dark] .export-group button,[data-theme=dark] .pagination button{border:1px solid #fff!important;color:#fff!important}[data-theme=dark] .page-content .badge,[data-theme=dark] .page-content .info-box,[data-theme=dark] .page-content h1,[data-theme=dark] .page-content h2,[data-theme=dark] .page-content h3,[data-theme=dark] .page-content h4,[data-theme=dark] .page-content label,[data-theme=dark] .page-content p,[data-theme=dark] .page-content span,[data-theme=dark] .page-content strong{color:#fff!important}[data-theme=dark] .page-content input,[data-theme=dark] .page-content select,[data-theme=dark] .page-content textarea{background-color:#0f172a!important;border:1px solid #fff!important;color:#fff!important}[data-theme=dark] .eod-table,[data-theme=dark] .eod-table td,[data-theme=dark] .eod-table th{border-color:#fff!important;color:#fff!important}@media (max-width:768px){.page-container{padding-top:76px!important}}.approval-page{background-color:var(--bg-tertiary);color:var(--text-primary);margin:0 auto;max-width:1400px;min-height:100vh;padding:20px;transition:all .3s ease}.approval-header{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);margin-bottom:30px;padding:20px}.approval-header h2{color:var(--text-primary);font-size:28px;font-weight:600;margin-bottom:10px;text-shadow:0 1px 2px var(--shadow-light)}.user-info{color:var(--text-secondary);font-size:14px;gap:10px}.filter-controls,.user-info{align-items:center;display:flex}.filter-controls{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;gap:15px;margin-bottom:25px;padding:15px;transition:all .3s ease}.filter-controls label{color:var(--text-primary);font-weight:600;white-space:nowrap}.filter-controls select{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;min-width:150px;padding:10px 14px;transition:all .3s ease}.filter-controls select:focus{border-color:var(--btn-primary);box-shadow:0 0 0 3px #0d6efd1a;outline:none}.filter-controls select:hover{border-color:var(--border-hover)}.refresh-btn{align-items:center;background-color:var(--btn-success);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 16px;transition:all .3s ease}.refresh-btn:hover{background-color:var(--btn-success-hover);box-shadow:0 4px 12px #1987544d;transform:translateY(-2px)}.requests-table{word-wrap:break-word;background-color:var(--bg-primary);border-collapse:collapse;border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);overflow:hidden;table-layout:fixed;transition:all .3s ease;width:100%}.requests-table th:first-child{width:10%}.requests-table th:nth-child(2){width:7%}.requests-table th:nth-child(3),.requests-table th:nth-child(4),.requests-table th:nth-child(5){width:8%}.requests-table th:nth-child(6){width:30%}.requests-table th:nth-child(7){width:7%}.requests-table th:nth-child(8){width:8%}.requests-table th:nth-child(10),.requests-table th:nth-child(11),.requests-table th:nth-child(9){width:7%}.extra-work-approvals th:first-child,.requests-table th:nth-child(12){width:10%}.extra-work-approvals th:nth-child(2){width:7%}.extra-work-approvals th:nth-child(3){width:8%}.extra-work-approvals th:nth-child(4),.extra-work-approvals th:nth-child(5){width:7%}.extra-work-approvals th:nth-child(6){width:4%}.extra-work-approvals th:nth-child(7){width:30%}.extra-work-approvals th:nth-child(8){width:8%}.extra-work-approvals th:nth-child(9){width:10%}.extra-work-approvals th:nth-child(10){width:7%}.extra-work-approvals th:nth-child(11){width:8%}.extra-work-approvals th:nth-child(12){width:10%}.requests-table th{background-color:var(--table-header-bg);border-bottom:2px solid var(--border-color);font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 12px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:10}.requests-table td,.requests-table th{word-wrap:break-word;color:var(--text-primary);line-height:1.4;vertical-align:top;white-space:normal;word-break:break-word}.requests-table td{border-bottom:1px solid var(--table-border);height:auto;min-height:50px;padding:12px;transition:all .3s ease}.requests-table th{height:auto;min-height:45px}.requests-table td,.requests-table th{word-wrap:break-word;box-sizing:border-box;white-space:normal;word-break:break-word}.requests-table tr:hover{background-color:var(--table-row-hover);box-shadow:0 2px 8px var(--shadow-light);transform:scale(1.01)}.status-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase;transition:all .3s ease}.status-pending-pm{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-pending-hr{background-color:#cce5ff;border:1px solid #74b9ff;color:#004085}.status-completed{background-color:#d4edda;border:1px solid #00b894;color:#155724}.status-rejected{border:1px solid #e74c3c}.status-pending-admin{background-color:#e1ecf4;border:1px solid #7db0d8;color:#1f4e79}[data-theme=dark] .status-pending-pm{background-color:#fff3cd!important;border:2px solid #ffeaa7!important;color:#856404!important}[data-theme=dark] .status-pending-hr{background-color:#cce5ff!important;border:2px solid #74b9ff!important;color:#004085!important}[data-theme=dark] .status-completed{background-color:#d4edda!important;border:2px solid #00b894!important;color:#155724!important}[data-theme=dark] .status-rejected{background-color:#f8d7da!important;border:2px solid #e74c3c!important;color:#721c24!important}[data-theme=dark] .status-pending-admin{background-color:#e1ecf4!important;border:2px solid #7db0d8!important;color:#1f4e79!important}.status-rejected{background-color:#f8d7da;color:#721c24}.action-buttons{display:flex;flex-direction:column;gap:4px}.extra-work-approvals td:nth-child(12){min-width:100px}.action-buttons{border:1px dashed #00000026;padding:2px}.extra-work-approvals td.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.extra-work-approvals td.clickable{cursor:pointer}.requests-table tr.expand{display:none}.requests-table tr.expand.open{display:table-row}.requests-table .expand-content{background-color:var(--bg-secondary);border-radius:6px;padding:12px}.action-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;min-width:80px;padding:6px 12px;transition:all .2s}.approve-btn{background-color:#28a745;color:#fff}.approve-btn:hover{background-color:#218838}.escalate-btn{background-color:#007bff;color:#fff}.escalate-btn:hover{background-color:#0056b3}.reject-btn{background-color:#dc3545;color:#fff}.reject-btn:hover{background-color:#c82333}.no-action{color:#6c757d;font-size:12px;font-style:italic}.loading,.no-requests{color:#666;padding:40px 20px;text-align:center}.access-denied{background-color:var(--bg-primary);border:2px solid var(--status-rejected);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);color:var(--status-rejected);padding:60px 20px;text-align:center}.access-denied h2{color:var(--status-rejected);margin-bottom:10px}.tab-navigation{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);border-radius:12px 12px 0 0;display:flex;margin-bottom:30px;overflow:hidden}.tab-btn{background-color:initial;border:none;border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease}.tab-btn.active,.tab-btn:hover{background-color:var(--bg-secondary);color:var(--btn-primary)}.tab-btn.active{border-bottom-color:var(--btn-primary)}.tab-content{animation:fadeIn .3s ease-in}.submit-section{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);margin-bottom:30px;padding:25px;transition:all .3s ease}.submit-section h3{border-left:4px solid var(--btn-primary);color:var(--text-primary);margin-bottom:20px;padding-left:15px}.request-form{max-width:600px}.form-row{display:flex;gap:20px;margin-bottom:20px}.form-group{flex:1 1}.form-group label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:5px}.form-group input,.form-group textarea{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;padding:10px 12px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:var(--btn-primary);box-shadow:0 0 0 3px #0d6efd1a;outline:none}.form-group input:hover,.form-group textarea:hover{border-color:var(--border-hover)}.submit-btn{background-color:var(--btn-success);border:none;border-radius:8px;box-shadow:0 2px 8px var(--shadow-light);color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease}.submit-btn:hover:not(:disabled){background-color:var(--btn-success-hover);box-shadow:0 4px 12px #1987544d;transform:translateY(-2px)}.submit-btn:disabled{background-color:var(--btn-secondary);box-shadow:none;cursor:not-allowed;transform:none}.my-requests-section{margin-top:30px}.my-requests-section h3{border-left:4px solid #007bff;color:#333;margin-bottom:20px;padding-left:15px}.approval-info{background-color:#e7f3ff;border:1px solid #b3d7ff;border-radius:4px;margin-bottom:15px;padding:10px 15px}.approval-info p{color:#0056b3;font-size:14px;margin:0}@media (max-width:768px){.approval-page{padding-top:76px!important}.form-row{gap:15px}.form-row,.tab-navigation{flex-direction:column}.tab-btn{border-bottom:1px solid #e0e0e0;border-right:none;text-align:center}.tab-btn.active{border-bottom-color:#007bff;border-right-color:#0000}.requests-table{font-size:12px}.requests-table th:nth-child(6){width:35%}.reason-cell{font-size:12px;line-height:1.3;max-width:none;min-width:120px;padding:8px 6px}.action-buttons{flex-direction:column}}@media (max-width:1440px) and (min-width:1200px){.approval-page{padding:18px}.approval-header h2{font-size:26px}.requests-table td,.requests-table th{word-wrap:break-word;font-size:13px;padding:10px;white-space:normal;word-break:break-word}.reason-cell{font-size:13px;line-height:1.3;max-width:250px;min-width:150px}.filter-controls{gap:12px;padding:12px}}@media (max-width:1200px) and (min-width:769px){.requests-table th:nth-child(6){width:32%}.reason-cell{font-size:12px;line-height:1.3;max-width:220px;min-width:140px}}@media (max-width:1199px) and (min-width:768px){.approval-page{padding:15px}.approval-header{margin-bottom:25px;padding:15px}.approval-header h2{font-size:24px}.filter-controls{flex-wrap:wrap;gap:10px;padding:12px}.filter-controls select{min-width:120px}.requests-table{font-size:13px}.requests-table td,.requests-table th{word-wrap:break-word;padding:8px 6px;white-space:normal;word-break:break-word}.status-badge{font-size:10px;padding:4px 8px}}@media (max-width:767px){.approval-page{padding:10px}.approval-header{margin-bottom:20px;padding:12px}.approval-header h2{font-size:20px;text-align:center}.user-info{flex-direction:column;gap:5px;text-align:center}.filter-controls{align-items:stretch;flex-direction:column;gap:8px;padding:10px}.filter-controls select{min-width:auto;width:100%}.refresh-btn{justify-content:center;width:100%}.requests-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.requests-table{font-size:12px;min-width:800px}.requests-table td,.requests-table th{word-wrap:break-word;padding:6px 4px;white-space:normal;word-break:break-word}.requests-table th{font-size:11px}.status-badge{font-size:9px;padding:3px 6px}.requests-table .hide-mobile{display:none}}@media (max-width:479px){.approval-page{padding:8px}.approval-header{padding:10px}.approval-header h2{font-size:18px}.filter-controls{padding:8px}.requests-table{font-size:11px;min-width:600px}.requests-table td,.requests-table th{word-wrap:break-word;padding:4px 3px;white-space:normal;word-break:break-word}.status-badge{font-size:8px;padding:2px 4px}}@media (max-width:767px) and (orientation:landscape){.approval-header h2{font-size:18px}.filter-controls{flex-direction:row;flex-wrap:wrap}}.form-hint{color:var(--text-secondary);font-size:12px;font-style:italic;margin-top:4px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h3{border-left:4px solid var(--btn-primary);color:var(--text-primary);margin:0;padding-left:15px}.requests-section{margin-top:30px}.requests-table-container{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-light);padding:20px;transition:all .3s ease}.table-wrapper{border-radius:8px;box-shadow:0 2px 8px #0000001a;max-width:100%;overflow-x:auto;overflow-y:visible}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:#a8a8a8}[data-theme=dark] .table-wrapper{background-color:#fff;border:2px solid #dee2e6}[data-theme=dark] .table-wrapper::-webkit-scrollbar-track{background:#e9ecef}[data-theme=dark] .table-wrapper::-webkit-scrollbar-thumb{background:#6c757d}[data-theme=dark] .table-wrapper::-webkit-scrollbar-thumb:hover{background:#495057}.no-requests{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px}.loading,.no-requests{color:var(--text-secondary);padding:40px 20px;text-align:center}.reason-cell{word-wrap:break-word;background-color:var(--bg-primary);border-bottom:1px solid var(--table-border);color:var(--text-primary);line-height:1.4;max-width:300px;min-width:200px;overflow:visible;padding:12px;text-align:left;text-overflow:clip;vertical-align:top;white-space:normal;word-break:break-word}[data-theme=dark] .reason-cell{background-color:#fff!important;border-bottom:2px solid #495057!important;color:#212529!important}.comments-cell{word-wrap:break-word;font-size:13px;max-width:180px;word-break:break-word}.status-pending{background-color:#ffc1071a;border-left:4px solid var(--status-pending)}.status-approved,.status-completed{background-color:#20c9971a;border-left:4px solid var(--status-approved)}.status-rejected{background-color:#dc35451a;border-left:4px solid var(--status-rejected)}.status-escalated{background-color:#0d6efd1a;border-left:4px solid var(--btn-primary)}[data-theme=dark] .status-pending{background-color:#ffc10726}[data-theme=dark] .status-approved,[data-theme=dark] .status-completed{background-color:#20c99726}[data-theme=dark] .status-rejected{background-color:#dc354526}[data-theme=dark] .status-escalated{background-color:#0d6efd26}.employee-info{display:flex;flex-direction:column;gap:2px}.employee-name{color:var(--text-primary);font-weight:500}.employee-id{color:var(--text-secondary);font-size:11px;font-style:italic}.team-info{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:13px;font-weight:500;padding:4px 8px;text-align:center}.approver-info{display:flex;flex-direction:column;gap:2px}.approver-name{color:var(--status-approved);font-size:13px;font-weight:500}.approver-role{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:3px;color:var(--text-secondary);font-size:11px;padding:2px 6px;text-align:center}.no-approver{color:var(--status-rejected);font-size:12px;font-style:italic}[data-theme=dark] .approval-page{background-color:#fff!important;color:#212529!important}[data-theme=dark] .requests-table{color:#212529}[data-theme=dark] .approval-header,[data-theme=dark] .requests-table,[data-theme=dark] .requests-table-container,[data-theme=dark] .submit-section,[data-theme=dark] .tab-navigation{background-color:#fff;border:2px solid #495057}[data-theme=dark] .filter-controls select,[data-theme=dark] .form-group input,[data-theme=dark] .form-group textarea{background-color:#fff;border:2px solid #495057;color:#212529}[data-theme=dark] .filter-controls select:focus,[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group textarea:focus{background-color:#fff;border-color:#0d6efd;box-shadow:0 0 0 3px #0d6efd4d}[data-theme=dark] .requests-table td{background-color:#fff;border-bottom:2px solid #495057;color:#212529}[data-theme=dark] .requests-table th{border-bottom:2px solid #495057}[data-theme=dark] .requests-table th,[data-theme=dark] .requests-table tr:hover td{background-color:#f8f9fa;color:#212529}[data-theme=dark] .approval-header h2,[data-theme=dark] .approval-header p,[data-theme=dark] .approver-info,[data-theme=dark] .approver-name,[data-theme=dark] .employee-id,[data-theme=dark] .employee-info,[data-theme=dark] .employee-name,[data-theme=dark] .filter-controls label,[data-theme=dark] .form-group label,[data-theme=dark] .form-hint,[data-theme=dark] .requests-table,[data-theme=dark] .requests-table td,[data-theme=dark] .requests-table th,[data-theme=dark] .requests-table tr,[data-theme=dark] .section-header h3,[data-theme=dark] .submit-section h3,[data-theme=dark] .user-info{color:#212529!important}[data-theme=dark] .status-badge{border:2px solid!important;font-weight:600!important}[data-theme=dark] .no-action{color:#6c757d!important}[data-theme=dark] .action-btn{color:#fff!important}[data-theme=dark] .approve-btn{background-color:#28a745!important;color:#fff!important}[data-theme=dark] .escalate-btn{background-color:#007bff!important;color:#fff!important}[data-theme=dark] .reject-btn{background-color:#dc3545!important;color:#fff!important}[data-theme=dark] .refresh-btn,[data-theme=dark] .submit-btn{background-color:var(--btn-success);border:2px solid var(--btn-success);color:#fff}[data-theme=dark] .filter-controls{background-color:#fff;border:2px solid #495057}[data-theme=dark] .approval-header,[data-theme=dark] .requests-table-container,[data-theme=dark] .submit-section{box-shadow:0 6px 20px #0000004d}[data-theme=dark] .no-requests{background-color:#fff;border:2px solid #495057;color:#212529}[data-theme=dark] .loading{color:#212529}[data-theme=dark] .tab-btn{color:#6c757d}[data-theme=dark] .tab-btn.active,[data-theme=dark] .tab-btn:hover{background-color:#f8f9fa;color:#0d6efd}[data-theme=dark] .approval-header h2,[data-theme=dark] .approval-header p,[data-theme=dark] .approver-name,[data-theme=dark] .approver-role,[data-theme=dark] .employee-id,[data-theme=dark] .employee-name,[data-theme=dark] .filter-controls label,[data-theme=dark] .form-group label,[data-theme=dark] .form-hint,[data-theme=dark] .requests-table td,[data-theme=dark] .requests-table th,[data-theme=dark] .section-header h3,[data-theme=dark] .submit-section h3,[data-theme=dark] .team-info,[data-theme=dark] .user-info{color:#212529!important}[data-theme=dark] .action-btn,[data-theme=dark] .refresh-btn,[data-theme=dark] .submit-btn{color:#fff!important}[data-theme=dark] .approver-role,[data-theme=dark] .team-info{background-color:#e9ecef!important;border:1px solid #495057!important;color:#212529!important}.confirmation-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.confirmation-dialog{animation:slideIn .3s ease-out;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;padding:0;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirmation-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);border-radius:12px 12px 0 0;padding:20px 24px 16px}.confirmation-header h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.confirmation-content{padding:24px}.confirmation-content p{color:var(--text-secondary);font-size:14px;margin:0 0 20px}.confirmation-details{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:20px}.detail-item{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.detail-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-item strong{color:var(--text-primary);font-size:14px;font-weight:600;min-width:100px}.detail-item span{color:var(--text-secondary);flex:1 1;font-size:14px;margin-left:16px;text-align:right}.detail-item .reason-text{background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;font-style:italic;padding:8px 12px;text-align:left;white-space:pre-wrap}.confirmation-actions{background-color:var(--bg-secondary);border-radius:0 0 12px 12px;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.cancel-btn,.confirm-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;min-width:100px;padding:10px 20px;transition:all .2s ease}.cancel-btn{background-color:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary)}.cancel-btn:hover:not(:disabled){background-color:var(--bg-primary);border-color:var(--text-secondary);color:var(--text-primary)}.confirm-btn{background:linear-gradient(135deg,#007bff,#0056b3);border:1px solid #0056b3;color:#fff}.confirm-btn:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#004494);box-shadow:0 4px 12px #007bff4d;transform:translateY(-1px)}.cancel-btn:disabled,.confirm-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}[data-theme=dark] .confirmation-dialog{box-shadow:0 10px 30px #000000b3}[data-theme=dark] .detail-item .reason-text{background-color:#343a40;border-color:#495057}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.quick-expense-modal{animation:slideUp .3s ease;background:#fff;border-radius:12px;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{color:#111827;font-size:20px;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.close-btn:hover{background:#f3f4f6;color:#111827}.modal-body{flex:1 1;overflow-y:auto;padding:24px}.modal-description{color:#6b7280;font-size:14px;margin:0 0 20px}.expenses-table{margin-bottom:16px}.table-header{background:#f9fafb;border-radius:6px;color:#6b7280;font-size:13px;font-weight:600;margin-bottom:8px}.expense-row,.table-header{grid-gap:12px;display:grid;gap:12px;grid-template-columns:2fr 1.2fr 3fr 60px;padding:12px 8px}.expense-row{align-items:center;border-bottom:1px solid #f3f4f6}.expense-row input,.expense-row select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s ease;width:100%}.expense-row input:focus,.expense-row select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.remove-btn{background:none;border:none;border-radius:6px;cursor:pointer;font-size:20px;padding:6px;transition:background .2s ease}.remove-btn:hover{background:#fee2e2}.add-expense-btn{background:#eff6ff;border:1px dashed #667eea;border-radius:6px;color:#667eea;cursor:pointer;font-weight:500;padding:12px;transition:all .2s ease;width:100%}.add-expense-btn:hover{background:#dbeafe;border-color:#5568d3}.total-section{align-items:center;background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;margin-top:20px;padding:16px}.total-label{color:#374151;font-size:16px;font-weight:600}.total-amount{color:#667eea;font-size:20px;font-weight:700}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-secondary{background:#fff;border:1px solid #d1d5db;color:#6b7280}.btn-secondary:hover{background:#f9fafb}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.quick-expense-modal{border-radius:0;height:100%;max-height:100%;max-width:100%;width:100%}.expense-row,.table-header{gap:8px;grid-template-columns:1fr}.col-actions{display:flex;justify-content:flex-end}}.notification-panel{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;max-height:600px;overflow:hidden;width:400px}.notification-panel-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.notification-panel-header h3{font-size:18px;font-weight:600;margin:0}.mark-all-read-btn{background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px;transition:background .2s ease}.mark-all-read-btn:hover{background:#ffffff4d}.notification-panel-body{flex:1 1;max-height:480px;min-height:300px;overflow-y:auto}.notification-empty,.notification-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.spinner{animation:spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:32px;margin-bottom:12px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.empty-icon{font-size:48px;margin-bottom:12px}.empty-subtitle{color:#9ca3af;font-size:13px}.notification-list{padding:8px 0}.notification-item{border-left:3px solid #0000;cursor:pointer;display:flex;gap:12px;padding:12px 16px;position:relative;transition:background .2s ease}.notification-item:hover{background:#f9fafb}.notification-item.unread{background:#eff6ff;border-left-color:#667eea}.notification-priority-urgent.unread{border-left-color:#ef4444}.notification-priority-high.unread{border-left-color:#f59e0b}.notification-icon{flex-shrink:0;font-size:24px}.notification-content{flex:1 1;min-width:0}.notification-title{color:#111827;font-size:14px;font-weight:600;margin-bottom:4px}.notification-message{color:#6b7280;font-size:13px;line-height:1.4;margin-bottom:4px}.notification-reference{color:#667eea;font-size:12px;font-weight:500;margin-bottom:4px}.notification-time{color:#9ca3af;font-size:11px}.notification-delete-btn{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;font-size:24px;height:24px;justify-content:center;opacity:0;padding:0;transition:all .2s ease;width:24px}.notification-item:hover .notification-delete-btn{opacity:1}.notification-delete-btn:hover{background:#fee2e2;color:#ef4444}.notification-panel-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:12px 16px}.view-all-btn{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#667eea;cursor:pointer;font-weight:500;padding:10px;transition:all .2s ease;width:100%}.view-all-btn:hover{background:#667eea;border-color:#667eea;color:#fff}@media (max-width:480px){.notification-panel{border-radius:0;bottom:0;left:0;max-height:100vh;position:fixed;right:0;top:0;width:100vw}}.notifications-page .page-content{margin:32px auto;max-width:960px}.notifications-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.notifications-header h1{color:var(--gray-900);font-size:24px;font-weight:600}.notifications-actions{align-items:center;display:flex;gap:12px}.notifications-actions .badge{background:var(--gray-200);border-radius:999px;color:var(--gray-700);font-size:13px;padding:6px 12px}.notification-list.full{max-height:none}.notification-empty.full,.notification-loading.full{padding:60px 20px}.notification-item .unread-dot{background:var(--blue-primary);border-radius:50%;display:inline-block;height:8px;margin-left:8px;width:8px}.notification-item .notification-meta{align-items:center;color:var(--gray-600);display:flex;font-size:12px;gap:16px;margin-top:6px}.notification-item .notification-link{color:var(--blue-primary);font-weight:500;text-decoration:none}.notification-item .notification-link:hover{text-decoration:underline}
/*# sourceMappingURL=main.786d6701.css.map*/