:root{--primary-50:#ecfdf5;--primary-100:#d1fae5;--primary-200:#a7f3d0;--primary-300:#6ee7b7;--primary-400:#34d399;--primary-500:#10b981;--primary-600:#059669;--primary-700:#047857;--primary-800:#065f46;--primary-900:#064e3b;--primary:#10b981;--primary-hover:#059669;--primary-light:#ecfdf5;--primary-dark:#047857;--accent-50:#eef2ff;--accent-100:#e0e7ff;--accent-200:#c7d2fe;--accent-300:#a5b4fc;--accent-400:#818cf8;--accent-500:#667eea;--accent-600:#5b5bd6;--accent-700:#764ba2;--accent-800:#4338ca;--accent-900:#3730a3;--accent-gradient:linear-gradient(135deg,var(--accent-500) 0%,var(--accent-700) 100%);--secondary-50:#f8fafc;--secondary-100:#f1f5f9;--secondary-200:#e2e8f0;--secondary-300:#cbd5e1;--secondary-400:#94a3b8;--secondary-500:#64748b;--secondary-600:#475569;--secondary-700:#334155;--secondary-800:#1e293b;--secondary-900:#0f172a;--success-50:#ecfdf5;--success-100:#d1fae5;--success-500:#10b981;--success-600:#059669;--success-700:#047857;--warning-50:#fffbeb;--warning-100:#fef3c7;--warning-500:#f59e0b;--warning-600:#d97706;--warning-700:#b45309;--danger-50:#fef2f2;--danger-100:#fee2e2;--danger-500:#ef4444;--danger-600:#dc2626;--danger-700:#b91c1c;--info-50:#f0f9ff;--info-100:#e0f2fe;--info-500:#0ea5e9;--info-600:#0284c7;--info-700:#0369a1;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--text-3xl:28px;--text-4xl:36px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--surface-0:#fff;--surface-1:#f8fafc;--surface-2:#f1f5f9;--surface-3:#e2e8f0;--surface-4:#cbd5e1;--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-sidebar:#0f172a;--bg-sidebar-hover:#1e293b;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#fff;--border-light:#e2e8f0;--border-default:#cbd5e1;--border-dark:#94a3b8;--overlay-light:#fffc;--overlay-dark:#00000080;--backdrop-blur:blur(8px);--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--transition-fast:150ms ease;--transition-normal:200ms ease;--transition-slow:300ms ease;--transition-spring:300ms cubic-bezier(0.34,1.56,0.64,1);--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800}[data-theme=dark]{--primary-50:#064e3b;--primary-100:#065f46;--primary-200:#047857;--primary-light:#065f46;--accent-50:#1e1b4b;--accent-100:#312e81;--surface-0:#0f172a;--surface-1:#1e293b;--surface-2:#334155;--surface-3:#475569;--surface-4:#64748b;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-sidebar:#0b1120;--bg-sidebar-hover:#162032;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#0f172a;--border-light:#334155;--border-default:#475569;--border-dark:#64748b;--overlay-light:#0006;--overlay-dark:#000000b3;--shadow-xs:0 1px 2px 0 #0003;--shadow-sm:0 1px 3px 0 #0000004d,0 1px 2px -1px #0003;--shadow-md:0 4px 6px -1px #0000004d,0 2px 4px -2px #0003;--shadow-lg:0 10px 15px -3px #0000004d,0 4px 6px -4px #0003;--shadow-xl:0 20px 25px -5px #0000004d,0 8px 10px -6px #0003;--success-50:#064e3b;--success-100:#065f46;--warning-50:#451a03;--warning-100:#78350f;--danger-50:#450a0a;--danger-100:#7f1d1d;--info-50:#0c4a6e;--info-100:#075985;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--surface-0:#0f172a;--surface-1:#1e293b;--surface-2:#334155;--surface-3:#475569;--surface-4:#64748b;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-sidebar:#0b1120;--bg-sidebar-hover:#162032;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#0f172a;--border-light:#334155;--border-default:#475569;--border-dark:#64748b;--overlay-light:#0006;--overlay-dark:#000000b3;--shadow-xs:0 1px 2px 0 #0003;--shadow-sm:0 1px 3px 0 #0000004d,0 1px 2px -1px #0003;--shadow-md:0 4px 6px -1px #0000004d,0 2px 4px -2px #0003;--shadow-lg:0 10px 15px -3px #0000004d,0 4px 6px -4px #0003;--shadow-xl:0 20px 25px -5px #0000004d,0 8px 10px -6px #0003;--success-50:#064e3b;--success-100:#065f46;--warning-50:#451a03;--warning-100:#78350f;--danger-50:#450a0a;--danger-100:#7f1d1d;--info-50:#0c4a6e;--info-100:#075985;--primary-50:#064e3b;--primary-100:#065f46;--primary-200:#047857;--primary-light:#065f46;--accent-50:#1e1b4b;--accent-100:#312e81;color-scheme:dark}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;background-color:var(--bg-primary);color:#0f172a;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;font-size:var(--text-base);line-height:1.5}code{font-family:JetBrains Mono,Fira Code,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.skip-link{background:#10b981;background:var(--primary);border-radius:6px;border-radius:var(--radius-md);color:#fff;color:var(--text-inverse);font-size:13px;font-size:var(--text-sm);font-weight:600;font-weight:var(--font-semibold);left:16px;left:var(--space-4);padding:8px 16px;padding:var(--space-2) var(--space-4);position:absolute;text-decoration:none;top:-100%;transition:top .15s ease;transition:top var(--transition-fast);z-index:700;z-index:var(--z-tooltip)}.skip-link:focus{top:16px;top:var(--space-4)}.loading{align-items:center;color:#475569;color:var(--text-secondary);display:flex;font-size:1rem;gap:12px;gap:var(--space-3);height:100vh;justify-content:center}.loading:before{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-top-color:#10b981;border:3px solid var(--border-light);border-radius:50%;border-top-color:var(--primary);content:"";height:24px;width:24px}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);border-radius:6px;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{border-radius:4px;border-radius:var(--radius-sm);height:14px;margin-bottom:8px;margin-bottom:var(--space-2)}.skeleton-text:last-child{width:60%}.skeleton-avatar{border-radius:9999px;border-radius:var(--radius-full);flex-shrink:0;height:48px;width:48px}.skeleton-card{border-radius:12px}.skeleton-row{border-radius:6px;border-radius:var(--radius-md);height:48px;margin-bottom:8px;margin-bottom:var(--space-2)}.skeleton-heading{border-radius:4px;border-radius:var(--radius-sm);height:24px;margin-bottom:16px;margin-bottom:var(--space-4);width:40%}.empty-state{padding:48px 24px}.empty-state-icon{background:#f1f5f9;background:var(--bg-tertiary);border-radius:9999px;color:#94a3b8;margin-bottom:16px}.empty-state-icon svg{height:28px;width:28px}.empty-state-title{color:#0f172a;font-size:16px;font-size:var(--text-lg);font-weight:600;font-weight:var(--font-semibold);margin-bottom:8px}.empty-state-description{color:#94a3b8;font-size:14px;line-height:1.6;margin-bottom:24px;margin-bottom:var(--space-6)}.alert{border-radius:6px;border-radius:var(--radius-md);font-size:var(--text-base);gap:8px;gap:var(--space-2);margin-bottom:16px;margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4)}.alert svg{flex-shrink:0;height:18px;width:18px}.alert-success{background:#ecfdf5;border-left:3px solid #10b981;border-left:3px solid var(--success-500);color:#047857}.alert-error{background:#fef2f2;border-left:3px solid #ef4444;border-left:3px solid var(--danger-500);color:#b91c1c}.alert-warning{background:#fffbeb;background:var(--warning-50);border-left:3px solid #f59e0b;border-left:3px solid var(--warning-500);color:#b45309;color:var(--warning-700)}.alert-info{background:#f0f9ff;background:var(--info-50);border-left:3px solid #0ea5e9;border-left:3px solid var(--info-500);color:#0369a1;color:var(--info-700)}.icon-inline{display:inline-flex;flex-shrink:0;margin-right:8px;margin-right:var(--space-2);vertical-align:middle}.form-hint{color:#94a3b8;font-size:var(--text-xs);margin-top:4px;margin-top:var(--space-1)}.input-uppercase{text-transform:uppercase}.btn{align-items:center;border:none;border-radius:6px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:14px;font-size:var(--text-base);font-weight:500;font-weight:var(--font-medium);gap:8px;gap:var(--space-2);justify-content:center;line-height:1;padding:10px 16px;text-decoration:none;transition:all .15s ease;transition:all var(--transition-fast)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#10b981;color:var(--text-inverse)}.btn-primary:hover:not(:disabled){background:#059669;background:var(--primary-hover);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn-accent{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--accent-gradient);color:#fff}.btn-accent:hover:not(:disabled){box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-md);opacity:.9;transform:translateY(-1px)}.btn-secondary{background:#fff;background:var(--bg-secondary);border:1px solid #cbd5e1;border:1px solid var(--border-default);color:#475569}.btn-secondary:hover:not(:disabled){background:#f1f5f9;background:var(--bg-tertiary);border-color:#94a3b8;border-color:var(--border-dark);color:#0f172a;color:var(--text-primary)}.btn-success{background:#059669;background:var(--success-600);color:#fff}.btn-success:hover:not(:disabled){background:#047857;background:var(--success-700)}.btn-danger{background:#dc2626;background:var(--danger-600);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;background:var(--danger-700)}.btn-ghost{background:#0000;color:#475569;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:#f1f5f9;background:var(--bg-tertiary);color:#0f172a;color:var(--text-primary)}.btn-sm{font-size:13px;font-size:var(--text-sm);padding:6px 12px}.btn-lg{font-size:15px;padding:12px 20px}.btn-icon{height:36px;min-width:36px;padding:8px;padding:var(--space-2)}.spinner-sm{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.input,.select,.textarea{background:#fff;background:var(--bg-secondary);border:1px solid #cbd5e1;border:1px solid var(--border-default);border-radius:6px;border-radius:var(--radius-md);color:#0f172a;color:var(--text-primary);font-size:14px;font-size:var(--text-base);line-height:1.5;padding:10px 12px;transition:all .15s ease;transition:all var(--transition-fast);width:100%}.input:focus,.select:focus,.textarea:focus{border-color:#10b981;border-color:var(--primary);box-shadow:0 0 0 3px #d1fae5;box-shadow:0 0 0 3px var(--primary-100);outline:none}.input::placeholder{color:#94a3b8;color:var(--text-muted)}.card{background:#fff;background:var(--bg-secondary);border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:8px;border-radius:var(--radius-lg);padding:20px;padding:var(--space-5);transition:all .2s cubic-bezier(.25,.46,.45,.94)}.card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-md)}.card-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-light);margin-bottom:16px;margin-bottom:var(--space-4);padding-bottom:16px;padding-bottom:var(--space-4)}.card-title{color:#0f172a;color:var(--text-primary);font-size:16px;font-size:var(--text-lg);font-weight:600;font-weight:var(--font-semibold);margin:0}.badge{border-radius:9999px;font-size:12px;font-weight:500;font-weight:var(--font-medium);padding:4px 10px;padding:var(--space-1) 10px}.badge-primary{background:#d1fae5;background:var(--primary-100);color:#047857;color:var(--primary-700)}.badge-success{background:#d1fae5;background:var(--success-100);color:#047857;color:var(--success-700)}.badge-warning{background:#fef3c7;background:var(--warning-100);color:#b45309;color:var(--warning-700)}.badge-danger{background:#fee2e2;background:var(--danger-100);color:#b91c1c;color:var(--danger-700)}.badge-info{background:#e0f2fe;background:var(--info-100);color:#0369a1;color:var(--info-700)}.badge-neutral{background:#f1f5f9;background:var(--secondary-100);color:#334155;color:var(--secondary-700)}.badge-accent{background:#e0e7ff;background:var(--accent-100);color:#764ba2;color:var(--accent-700)}.table{border-collapse:collapse;width:100%}.table th{background:#f1f5f9;background:var(--bg-tertiary);border-bottom:1px solid #cbd5e1;border-bottom:1px solid var(--border-default);color:#475569;color:var(--text-secondary);font-size:12px;font-size:var(--text-xs);font-weight:600;font-weight:var(--font-semibold);letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:1}.table td,.table th{padding:12px 16px;padding:var(--space-3) var(--space-4)}.table td{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-light);color:#0f172a;color:var(--text-primary);font-size:14px;font-size:var(--text-base);vertical-align:middle}.table tbody tr{transition:background .15s ease;transition:background var(--transition-fast)}.table tbody tr:hover{background:#ecfdf5;background:var(--primary-50)}.table .row-actions{opacity:0;transition:opacity .15s ease;transition:opacity var(--transition-fast)}.table tbody tr:hover .row-actions{opacity:1}.stat-trend{align-items:center;border-radius:9999px;border-radius:var(--radius-full);display:inline-flex;font-size:12px;font-size:var(--text-xs);font-weight:500;font-weight:var(--font-medium);gap:4px;gap:var(--space-1);padding:2px 8px;padding:2px var(--space-2)}.stat-trend.up{background:#ecfdf5;background:var(--success-50);color:#047857;color:var(--success-700)}.stat-trend.down{background:#fef2f2;background:var(--danger-50);color:#b91c1c;color:var(--danger-700)}.stat-trend.neutral{background:#f1f5f9;background:var(--bg-tertiary);color:#94a3b8;color:var(--text-muted)}.mini-bar-chart{align-items:flex-end;display:flex;gap:2px;height:24px}.mini-bar-chart .bar{background:#6ee7b7;background:var(--primary-300);border-radius:2px;transition:height .3s ease;transition:height var(--transition-slow);width:4px}.progress-bar{background:#f1f5f9;height:8px;width:100%}.progress-bar,.progress-bar-fill{border-radius:9999px;border-radius:var(--radius-full)}.progress-bar-fill{background:#10b981;background:var(--primary);height:100%;transition:width .8s cubic-bezier(.25,.46,.45,.94)}.progress-bar-fill.warning{background:#f59e0b;background:var(--warning-500)}.progress-bar-fill.danger{background:#ef4444;background:var(--danger-500)}@keyframes successPulse{0%{box-shadow:0 0 0 0 #10b98166}70%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 0 0 #10b98100}}.success-pulse{animation:successPulse .6s ease-out}@keyframes errorShake{0%,to{transform:translateX(0)}10%,50%,90%{transform:translateX(-4px)}30%,70%{transform:translateX(4px)}}.error-shake{animation:errorShake .4s ease-out}@keyframes contentEnter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.content-enter{animation:contentEnter .25s ease-out}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f5f9;background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:#cbd5e1;background:var(--secondary-300);border-radius:9999px;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--secondary-400)}[data-theme=dark] ::-webkit-scrollbar-track{background:#1e293b;background:var(--secondary-800)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#475569;background:var(--secondary-600)}:focus-visible{outline:2px solid #10b981;outline:2px solid var(--primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background:#a7f3d0;background:var(--primary-200);color:#064e3b;color:var(--primary-900)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:#f1f5f9;background:var(--bg-tertiary);border-color:#cbd5e1;border-color:var(--border-default);color:#0f172a;color:var(--text-primary)}[data-theme=dark] input::placeholder{color:#94a3b8;color:var(--text-muted)}[data-theme=dark] .modal-overlay{background:#000000b3}.pagination{gap:4px;gap:var(--space-1);margin-top:16px;margin-top:var(--space-4)}.pagination-btn{align-items:center;background:#fff;background:var(--bg-secondary);border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:6px;border-radius:var(--radius-md);color:#475569;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:13px;font-size:var(--text-sm);font-weight:500;font-weight:var(--font-medium);height:36px;justify-content:center;min-width:36px;transition:all .15s ease;transition:all var(--transition-fast)}.pagination-btn:hover{background:#f1f5f9;background:var(--bg-tertiary);border-color:#cbd5e1;border-color:var(--border-default);color:#0f172a;color:var(--text-primary)}.pagination-btn.active{background:#10b981;background:var(--primary);border-color:#10b981;border-color:var(--primary);color:#fff}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.login-container{background:var(--bg-secondary);display:flex;min-height:100vh}.login-branding{align-items:center;background:var(--secondary-900);display:flex;flex:1 1;flex-direction:column;justify-content:center;overflow:hidden;padding:var(--space-12);position:relative}.login-branding:before{animation:gradientShift 15s ease-in-out infinite alternate;background:radial-gradient(circle at 30% 50%,#10b9811f 0,#0000 50%),radial-gradient(circle at 70% 80%,#667eea14 0,#0000 50%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes gradientShift{0%{transform:translate(0) rotate(0deg)}to{transform:translate(-5%,-5%) rotate(3deg)}}.branding-content{max-width:440px;position:relative;width:100%;z-index:1}.branding-logo{align-items:center;display:flex;gap:var(--space-3);margin-bottom:var(--space-12)}.branding-logo .brand-icon{align-items:center;background:var(--primary);border-radius:var(--radius-lg);color:#fff;display:flex;height:48px;justify-content:center;width:48px}.branding-logo .brand-text{font-size:var(--text-2xl)}.branding-logo .brand-text,.branding-tagline{color:#fff;font-weight:var(--font-bold);letter-spacing:-.5px}.branding-tagline{font-size:var(--text-3xl);line-height:1.3;margin-bottom:var(--space-3)}.branding-subtitle{color:var(--secondary-400);font-size:var(--text-lg);line-height:1.6;margin-bottom:var(--space-10)}.branding-features{display:flex;flex-direction:column;gap:var(--space-4)}.branding-feature{align-items:center;color:var(--secondary-300);display:flex;font-size:var(--text-base);gap:var(--space-3)}.branding-feature .feature-icon{align-items:center;background:#ffffff0f;border:1px solid #ffffff14;border-radius:var(--radius-lg);color:var(--primary-400);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.branding-feature .feature-icon svg{height:20px;width:20px}.branding-feature span{font-weight:var(--font-medium)}.login-form-panel{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;max-width:560px;min-width:420px;padding:var(--space-12)}.login-box{max-width:400px;width:100%}.login-header{margin-bottom:var(--space-8)}.login-header h1{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.5px;margin-bottom:var(--space-2)}.login-header p{color:var(--text-muted);font-size:var(--text-base);margin:0}.login-form .form-group{margin-bottom:var(--space-5)}.login-form label{color:var(--text-primary);display:block;font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-2)}.input-wrapper{position:relative}.input-icon,.input-wrapper{align-items:center;display:flex}.input-icon{color:var(--text-muted);pointer-events:none;position:absolute;right:var(--space-3);transition:color var(--transition-fast)}.input-icon svg{height:18px;width:18px}.input-wrapper input{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-base);padding:var(--space-3) 42px var(--space-3) var(--space-3);transition:all var(--transition-fast);width:100%}.input-wrapper input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.input-wrapper:focus-within .input-icon{color:var(--primary)}.input-wrapper input::placeholder{color:var(--text-muted)}.login-btn{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:var(--font-semibold);gap:var(--space-2);justify-content:center;margin-top:var(--space-6);padding:var(--space-3) var(--space-4);transition:all var(--transition-fast);width:100%}.login-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.login-btn:active:not(:disabled){transform:scale(.98)}.login-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-btn svg{height:18px;width:18px}.error-message{gap:var(--space-2)}.error-message svg{flex-shrink:0;height:18px;width:18px}.login-info{border-top:1px solid var(--border-light);margin-top:var(--space-8);padding-top:var(--space-6)}.login-info-header{color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.5px;margin-bottom:var(--space-3);text-transform:uppercase}.login-info p{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-sm);gap:var(--space-2);margin:var(--space-1) 0}.login-info code{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:var(--text-xs);padding:2px var(--space-2)}.copyright-footer{border-top:1px solid var(--border-light);margin-top:var(--space-6);padding-top:var(--space-5);text-align:center}.copyright-footer p{color:var(--text-muted);font-size:var(--text-xs);margin:0}@media (max-width:1024px){.login-branding,.login-form-panel{padding:var(--space-8)}.login-form-panel{min-width:380px}}@media (max-width:768px){.login-container{flex-direction:column}.login-branding{flex:0 1;min-height:auto;padding:var(--space-8) var(--space-6)}.branding-content{max-width:100%}.branding-tagline{font-size:var(--text-2xl)}.branding-features{display:none}.branding-subtitle{margin-bottom:0}.login-form-panel{flex:1 1;max-width:none;min-width:auto;padding:var(--space-6)}.login-box{margin:0 auto;max-width:420px}}@media (max-width:480px){.login-branding{padding:var(--space-6) var(--space-4)}.branding-logo{margin-bottom:var(--space-4)}.branding-tagline{font-size:var(--text-xl);margin-bottom:var(--space-2)}.branding-subtitle{font-size:var(--text-base)}.login-form-panel{padding:var(--space-5) var(--space-4)}.login-header h1{font-size:var(--text-2xl)}}.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{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}.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}.calendar-container{background:var(--bg-tertiary);min-height:calc(100vh - 80px);padding:var(--space-6)}.calendar-container h2{align-items:center;color:var(--text-primary);display:flex;font-size:var(--text-3xl);font-weight:var(--font-bold);gap:12px;margin:0 0 8px}.calendar-instruction{align-items:center;color:var(--text-secondary);display:flex;font-size:15px;gap:8px;margin-bottom:var(--space-5)}.info-banner{background:var(--info-50);border-left:4px solid var(--info-500);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);color:var(--info-700);font-size:var(--text-base);line-height:1.6;margin-bottom:var(--space-6);padding:var(--space-4) var(--space-5)}.info-banner strong{color:var(--info-700);font-weight:var(--font-bold)}.calendar-wrapper{grid-gap:var(--space-5);align-items:start;display:grid;gap:var(--space-5);grid-template-columns:1fr 320px;margin-bottom:var(--space-8)}.calendar-legend-horizontal{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);display:flex;flex-wrap:wrap;gap:var(--space-5);margin-bottom:var(--space-6);padding:var(--space-5) var(--space-6)}.calendar-legend-horizontal .legend-item{align-items:center;border-radius:var(--radius-md);display:flex;gap:8px;margin-bottom:0;padding:6px 12px;transition:all var(--transition-fast)}.calendar-legend-horizontal .legend-item:hover{background:var(--bg-tertiary);transform:translateY(-2px)}.calendar-legend-horizontal .legend-color{align-items:center;border-radius:var(--radius-md);box-shadow:var(--shadow-xs);display:flex;height:24px;justify-content:center;position:relative;width:24px}.calendar-legend-horizontal .legend-item span:last-child{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap}.react-calendar{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-width:600px;padding:var(--space-5);width:100%!important}.react-calendar__navigation{height:48px;margin-bottom:var(--space-5)}.react-calendar__navigation button{background:var(--bg-secondary);border:2px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;font-size:var(--text-lg);font-weight:var(--font-semibold);min-width:48px;transition:all var(--transition-fast)}.react-calendar__navigation button:hover{background:var(--bg-tertiary);border-color:var(--border-default)}.react-calendar__navigation button:first-child{margin-right:8px}.react-calendar__navigation button:last-child{margin-left:8px}.react-calendar__navigation__label{background:var(--bg-secondary)!important;border:none!important;font-size:var(--text-xl);font-weight:var(--font-bold)}.react-calendar__month-view__weekdays{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-bold);padding:8px 0;text-align:center}.react-calendar__month-view__weekdays__weekday{padding:12px 0}.react-calendar__tile{align-items:center;border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--text-lg);font-weight:var(--font-semibold);justify-content:center;margin:3px;min-height:56px!important;position:relative;transition:all var(--transition-fast)}.react-calendar__tile:hover{background-color:var(--bg-tertiary)!important;transform:translateY(-1px)}.react-calendar__tile--active{background:linear-gradient(135deg,var(--success-500) 0,var(--success-600) 100%)!important}.react-calendar__tile--active,.react-calendar__tile.selected-date{box-shadow:var(--shadow-md);color:#fff!important;font-weight:var(--font-bold)}.react-calendar__tile.selected-date{background:linear-gradient(135deg,var(--info-500) 0,#0284c7 100%)!important;background:linear-gradient(135deg,var(--info-500) 0,var(--info-600,#0284c7) 100%)!important}.react-calendar__tile.selected-date:hover{background:linear-gradient(135deg,#0284c7 0,var(--info-700) 100%)!important;background:linear-gradient(135deg,var(--info-600,#0284c7) 0,var(--info-700) 100%)!important}.react-calendar__tile.approved-leave{background:linear-gradient(135deg,var(--success-500) 0,var(--success-600) 100%);box-shadow:var(--shadow-sm);color:#fff;font-weight:var(--font-bold)}.react-calendar__tile.pending-leave{background:linear-gradient(135deg,var(--warning-500) 0,var(--warning-600) 100%);box-shadow:var(--shadow-sm);color:#fff;font-weight:var(--font-bold)}.react-calendar__tile.company-holiday{background:var(--accent-gradient);box-shadow:var(--shadow-sm);color:#fff;cursor:default;font-weight:var(--font-bold)}.react-calendar__tile.company-holiday:hover{background:linear-gradient(135deg,#5b5bd6 0,var(--accent-700) 100%);background:linear-gradient(135deg,var(--accent-600,#5b5bd6) 0,var(--accent-700) 100%)}.react-calendar__tile.team-leave{background:linear-gradient(135deg,var(--accent-100) 0,var(--accent-200) 100%);color:#5b5bd6;color:var(--accent-600,#5b5bd6);font-weight:var(--font-semibold)}.react-calendar__month-view__days__day--neighboringMonth{color:var(--border-default);opacity:.5}.react-calendar__tile--now{background:#0000;border-radius:var(--radius-lg);box-shadow:inset 0 0 0 2px var(--primary);color:var(--text-primary);font-weight:var(--font-bold)}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--selected:enabled:hover{background:var(--info-700)!important}.leave-indicator{font-size:12px;font-weight:700;position:absolute;right:2px;top:2px}.holiday-indicator{font-size:14px;position:absolute;right:2px;top:2px}.team-leave-indicator{background:#ffffffe6;border-radius:3px;bottom:2px;font-size:11px;left:2px;padding:2px 4px;position:absolute}.selected-indicator{color:#fff;line-height:1;opacity:.9;position:absolute;right:2px;top:2px}.calendar-legend{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:260px;padding:var(--space-6)}.calendar-legend h3{align-items:center;color:var(--text-primary);display:flex;font-size:var(--text-xl);font-weight:var(--font-bold);gap:10px;margin:0 0 var(--space-5) 0}.calendar-legend h3:before{background:linear-gradient(135deg,var(--info-500) 0,#0284c7 100%);background:linear-gradient(135deg,var(--info-500) 0,var(--info-600,#0284c7) 100%);border-radius:2px;content:"";display:inline-block;height:20px;width:4px}.calendar-legend .legend-item{align-items:center;border-radius:var(--radius-lg);display:flex;gap:14px;margin-bottom:var(--space-4);padding:10px;transition:all var(--transition-fast)}.calendar-legend .legend-item:hover{background:var(--bg-tertiary);transform:translateX(4px)}.calendar-legend .legend-item:last-child{margin-bottom:0}.calendar-legend .legend-color{border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);flex-shrink:0;height:36px;overflow:hidden;position:relative;width:36px}.calendar-legend .legend-color:after{background:linear-gradient(135deg,#ffffff1a,#fff0);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.legend-color.holiday{background:var(--accent-gradient);border:2px solid #5b5bd6;border:2px solid var(--accent-600,#5b5bd6)}.legend-color.selected{background:linear-gradient(135deg,var(--info-500) 0,#0284c7 100%);background:linear-gradient(135deg,var(--info-500) 0,var(--info-600,#0284c7) 100%);border:2px solid var(--info-700)}.legend-color.approved{background:linear-gradient(135deg,var(--success-500) 0,var(--success-600) 100%);border:2px solid var(--success-700)}.legend-color.pending{background:linear-gradient(135deg,var(--warning-500) 0,var(--warning-600) 100%);border:2px solid var(--warning-700)}.legend-color.team{background:linear-gradient(135deg,var(--accent-100) 0,var(--accent-200) 100%);border:2px solid var(--accent-400)}.calendar-legend .legend-item span:last-child{color:var(--text-secondary);flex:1 1;font-size:var(--text-base);font-weight:var(--font-medium)}.legend-item .legend-icon{color:#fff;font-size:16px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1}.legend-color.team .legend-icon{color:var(--accent-400)}.selected-dates-info{background:var(--bg-secondary);border:2px solid var(--accent-100);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-top:var(--space-6);padding:var(--space-6)}.selected-dates-info h3{align-items:center;color:var(--text-primary);display:flex;font-size:var(--text-xl);font-weight:var(--font-bold);gap:10px;margin:0 0 var(--space-5) 0}.dates-list{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:var(--space-6)}.date-tag{background:linear-gradient(135deg,var(--info-500) 0,#0284c7 100%);background:linear-gradient(135deg,var(--info-500) 0,var(--info-600,#0284c7) 100%);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);font-size:var(--text-base);font-weight:var(--font-semibold);gap:8px;padding:10px 18px}.date-tag,.proceed-btn{align-items:center;color:#fff;display:inline-flex}.proceed-btn{background:linear-gradient(135deg,var(--success-500) 0,var(--success-600) 100%);border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);cursor:pointer;font-family:inherit;font-size:var(--text-lg);font-weight:var(--font-bold);gap:10px;padding:14px 36px;transition:all var(--transition-slow)}.proceed-btn:hover{background:linear-gradient(135deg,var(--success-600) 0,var(--success-700) 100%);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.proceed-btn:active{transform:translateY(0)}.proceed-btn:disabled{background:var(--border-default);box-shadow:none;cursor:not-allowed;transform:none}.modal-overlay{animation:fadeIn .3s ease}.modal-content{animation:slideUp .25s cubic-bezier(.16,1,.3,1);border-radius:16px;box-shadow:0 20px 50px #00000040,0 0 0 1px #0000000d;width:92%}.modal-header{padding:20px 24px 0}.modal-content h2{align-items:center;color:var(--text-primary);display:flex;font-size:18px;font-weight:700;gap:8px;line-height:1;margin:0}.modal-content h2 svg{color:var(--info-500)}.modal-close-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .15s ease;width:32px}.modal-close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:20px 24px}.summary-strip{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.summary-chip{align-items:center;background:var(--bg-tertiary);border-radius:20px;color:var(--text-primary);display:inline-flex;font-size:13px;font-weight:600;gap:5px;padding:6px 12px}.summary-chip svg{color:var(--info-500)}.summary-chip-label{color:var(--text-secondary);font-weight:500}.modal-body .form-group{margin-bottom:16px}.modal-body .form-group:last-child{margin-bottom:0}.modal-body .form-group label{color:var(--text-secondary);display:block;font-size:13px;font-weight:600;margin-bottom:6px}.modal-body .form-group select,.modal-body .form-group textarea{background:var(--bg-secondary);border:1.5px solid var(--border-light);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.modal-body .form-group select:focus,.modal-body .form-group textarea:focus{border-color:var(--info-500);box-shadow:0 0 0 3px #0ea5e91a;outline:none}.modal-body .form-group textarea{resize:vertical}.time-slot-options{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.time-slot-card{align-items:center;background:var(--bg-secondary);border:1.5px solid var(--border-light);border-radius:10px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:8px;letter-spacing:normal;margin:0;padding:10px 12px;text-transform:none;transition:all .15s ease}.time-slot-card input[type=radio]{display:none}.time-slot-card:hover{background:var(--info-50);border-color:#38bdf8;border-color:var(--info-400,#38bdf8)}.time-slot-card.time-slot-selected{background:var(--info-50);border-color:var(--info-500);color:#0284c7;color:var(--info-600,#0284c7)}.time-slot-info{display:flex;flex-direction:column}.time-slot-time{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.4}.time-slot-selected .time-slot-time{color:#0284c7;color:var(--info-600,#0284c7)}.time-slot-label{color:var(--text-secondary);font-size:11px;font-weight:500;line-height:1}.modal-error{align-items:flex-start;animation:shakeIn .3s ease;background:var(--danger-50);border:1px solid var(--danger-100);border-radius:10px;color:var(--danger-700);display:flex;font-size:13px;font-weight:500;gap:8px;line-height:1.4;margin:0 24px 16px;padding:10px 14px}.modal-error svg{color:var(--danger-500);flex-shrink:0;margin-top:1px}@keyframes shakeIn{0%{opacity:0;transform:translateX(-6px)}40%{transform:translateX(4px)}70%{transform:translateX(-2px)}to{opacity:1;transform:translateX(0)}}.modal-actions{border-top:1px solid var(--border-light);gap:8px;justify-content:flex-end;padding:16px 24px 20px}.cancel-btn{background:var(--bg-secondary);border:1.5px solid var(--border-default);border-radius:10px;color:var(--text-secondary);font-family:inherit;font-size:14px;font-weight:600;padding:9px 18px;transition:all .15s ease}.cancel-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.submit-btn{background:var(--info-500);border-radius:10px;font-family:inherit;font-size:14px;padding:9px 20px;transition:all .15s ease}.submit-btn:hover:not(:disabled){background:#0284c7;background:var(--info-600,#0284c7)}.cancel-btn:disabled,.submit-btn:disabled{cursor:not-allowed;opacity:.5}.error-message{border:2px solid var(--danger-100);border-radius:var(--radius-lg)}.error-message,.success-message{align-items:flex-start;font-weight:var(--font-medium);gap:12px;padding:var(--space-4) var(--space-5)}.success-message{border:2px solid var(--success-100);border-radius:var(--radius-lg);white-space:pre-line}@media (max-width:1024px){.calendar-wrapper{grid-template-columns:1fr}.upcoming-holidays-section{max-width:100%;width:100%}.holidays-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.holiday-list-item{flex-wrap:wrap}}@media (max-width:768px){.calendar-container{padding:var(--space-4)}.calendar-legend-horizontal{gap:var(--space-3);padding:var(--space-4)}.calendar-legend-horizontal .legend-item{padding:4px 8px}.react-calendar{max-width:100%}.modal-content{width:95%}.modal-header{padding:16px 16px 0}.modal-body{padding:16px}.modal-actions{flex-direction:column-reverse;padding:12px 16px 16px}.cancel-btn,.submit-btn{display:flex;justify-content:center;text-align:center;width:100%}.time-slot-options{grid-template-columns:1fr}}.upcoming-holidays-section{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);max-width:320px;min-width:280px;padding:var(--space-6)}.upcoming-holidays-section h3{align-items:center;color:var(--text-primary);display:flex;font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 var(--space-5) 0}.holidays-list{display:flex;flex-direction:column;gap:8px}.holiday-list-item{align-items:center;background:var(--bg-tertiary);border-left:3px solid var(--accent-500);border-radius:var(--radius-lg);display:flex;gap:14px;padding:12px;transition:all var(--transition-fast)}.holiday-list-item:hover{background:var(--bg-tertiary);transform:translateX(4px)}.holiday-list-date{align-items:center;color:var(--accent-500);display:flex;flex-direction:column;min-width:40px;padding:4px 8px}.holiday-day{font-size:var(--text-xl);line-height:1}.holiday-day,.holiday-month{color:var(--accent-500);font-weight:var(--font-semibold)}.holiday-month{font-size:11px;opacity:.8;text-transform:uppercase}.holiday-list-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.holiday-list-name{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold)}.holiday-list-day{color:var(--text-secondary);font-size:var(--text-xs)}.holiday-list-countdown{text-align:right}.countdown-today{background:var(--success-100);color:var(--success-600)}.countdown-today,.countdown-tomorrow{border-radius:var(--radius-full);display:inline-block;font-size:11px;font-weight:var(--font-semibold);padding:4px 10px}.countdown-tomorrow{background:var(--warning-100);color:var(--warning-600)}.countdown-days{background:var(--accent-100);border-radius:var(--radius-full);color:#5b5bd6;color:var(--accent-600,#5b5bd6);display:inline-block;font-size:11px;font-weight:var(--font-semibold);padding:4px 10px}.more-holidays-note{color:var(--text-muted);font-size:var(--text-xs);font-style:italic;margin:12px 0 0;text-align:center}.no-holidays{color:var(--text-muted);font-size:var(--text-base);margin:0;padding:var(--space-5) 0}.table-container{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow-x:auto;padding:var(--space-8)}.table-container h2{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-5)}.data-table{border-collapse:collapse;min-width:800px;width:100%}.data-table th,.data-table thead{background:var(--bg-tertiary)}.data-table th{-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.3px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:1}.data-table td,.data-table th{padding:var(--space-4) var(--space-3)}.data-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--text-base)}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--primary-50)}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-3)}.badge.low{background:var(--info-100);color:var(--info-700)}.badge.medium{background:var(--warning-100);color:var(--warning-700)}.badge.high{background:var(--danger-100);color:var(--danger-700)}.badge.critical{background:var(--danger-600);color:#fff}.badge.open{background:var(--warning-100);color:var(--warning-700)}.badge.resolved{background:var(--success-100);color:var(--success-700)}.badge.pending{background:var(--warning-100);color:var(--warning-700)}.badge.approved{background:var(--success-100);color:var(--success-700)}.badge.rejected{background:var(--danger-100);color:var(--danger-700)}.action-btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-1);margin-right:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.action-btn:hover:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(-1px)}.action-btn:disabled{cursor:not-allowed;opacity:.5}.action-btn.resolve{background:var(--success-600);color:#fff}.action-btn.resolve:hover:not(:disabled){background:var(--success-700)}.action-btn.approve{background:var(--success-600);color:#fff}.action-btn.approve:hover:not(:disabled){background:var(--success-700)}.action-btn.reject{background:var(--danger-600);color:#fff}.action-btn.reject:hover:not(:disabled){background:var(--danger-700)}.no-data{font-size:var(--text-lg);padding:var(--space-10)}.leaves-container{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow-x:auto;padding:var(--space-8)}.leaves-container h2{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-5)}.leaves-table{border-collapse:collapse;min-width:1000px;width:100%}.leaves-table th,.leaves-table thead{background:var(--bg-tertiary)}.leaves-table th{-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.3px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:1}.leaves-table td,.leaves-table th{padding:var(--space-4) var(--space-3)}.leaves-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--text-base)}.leaves-table tbody tr{transition:background var(--transition-fast)}.leaves-table tbody tr:hover{background:var(--primary-50)}.status-badge{font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-3)}.status-badge.status-pending-manager-approval{background:var(--warning-100);color:var(--warning-700)}.status-badge.status-pending-hr-approval{background:var(--info-100);color:var(--info-700)}.status-badge.status-approved{background:var(--success-100);color:var(--success-700)}.status-badge.status-rejected{background:var(--danger-100);color:var(--danger-700)}.approve-btn{align-items:center;background:var(--success-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-1);margin-right:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.approve-btn:hover:not(:disabled){background:var(--success-700);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.approve-btn:disabled{cursor:not-allowed;opacity:.5}.reject-btn{align-items:center;background:var(--danger-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-1);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.reject-btn:hover:not(:disabled){background:var(--danger-700);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.reject-btn:disabled{cursor:not-allowed;opacity:.5}.error-message,.success-message{font-size:var(--text-base);margin-bottom:var(--space-5);padding:var(--space-4)}.revoke-btn{background:var(--danger-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-base);font-weight:var(--font-medium);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.revoke-btn:hover:not(:disabled){background:var(--danger-700)}.revoke-btn:disabled{cursor:not-allowed;opacity:.5}.cancel-btn{background:var(--warning-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-base);font-weight:var(--font-medium);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.cancel-btn:hover:not(:disabled){background:var(--warning-700)}.cancel-btn:disabled{cursor:not-allowed;opacity:.5}.info-text{color:var(--text-muted);font-size:var(--text-base)}.approval-info,.rejection-info{font-size:var(--text-xs);text-align:left}.approved-badge{background:var(--success-100);color:var(--success-700)}.approved-badge,.rejected-badge{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);margin-bottom:var(--space-1);padding:2px var(--space-2)}.rejected-badge{background:var(--danger-100);color:var(--danger-700)}.pending-text{color:var(--warning-600);font-style:italic}.approver,.pending-text{font-size:var(--text-xs)}.approver{color:var(--text-secondary);margin-top:2px}.comment{background:var(--surface-1);color:var(--text-primary);font-style:italic}.comment,.reason{border-radius:var(--radius-sm);font-size:var(--text-xs);margin-top:var(--space-1);padding:var(--space-1)}.reason{background:var(--danger-50);color:var(--danger-700);font-weight:var(--font-medium)}.attachment-cell{min-width:120px}.attachment-actions{display:flex}.attachment-actions,.download-btn{align-items:center;gap:var(--space-1)}.download-btn{background:var(--info-100);border:1px solid var(--info-500);border-radius:var(--radius-md);color:var(--info-700);cursor:pointer;display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-medium);max-width:150px;overflow:hidden;padding:var(--space-1) var(--space-2);text-overflow:ellipsis;transition:all var(--transition-fast);white-space:nowrap}.download-btn:hover{background:var(--info-50);border-color:var(--info-600);box-shadow:var(--shadow-xs)}.delete-attachment-btn{background:var(--danger-50);border:1px solid var(--danger-100);border-radius:var(--radius-md);color:var(--danger-600);cursor:pointer;font-size:var(--text-xs);font-weight:var(--font-bold);padding:var(--space-1) var(--space-2);transition:all var(--transition-fast)}.delete-attachment-btn:hover{background:var(--danger-100);border-color:var(--danger-500)}.upload-label{cursor:pointer;display:inline-block}.upload-btn{align-items:center;background:var(--surface-1);border:1px dashed var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:var(--text-xs);gap:var(--space-1);padding:var(--space-1) var(--space-3);transition:all var(--transition-fast)}.upload-btn:hover{background:var(--success-50);border-color:var(--success-500);color:var(--success-700)}.no-attachment{color:var(--text-muted);font-size:var(--text-xs)}.export-btn{background:var(--primary);border:none;border-radius:var(--radius-md);color:#fff;padding:var(--space-2) var(--space-3)}.export-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-sm)}@media (max-width:768px){.leaves-container,.table-container{border-radius:var(--radius-lg);padding:var(--space-4)}.leaves-container h2,.table-container h2{font-size:var(--text-xl)}.data-table,.leaves-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}}.action-btn:focus-visible,.approve-btn:focus-visible,.cancel-btn:focus-visible,.download-btn:focus-visible,.export-btn:focus-visible,.reject-btn:focus-visible,.revoke-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.leave-stats-container{animation:slideIn .6s ease-out;margin:0 auto;max-width:1400px;padding:var(--space-5)}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.leave-stats-container h2{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);letter-spacing:-.5px;margin-bottom:var(--space-6);text-align:center;text-shadow:none}.leave-stats-container h3{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-4)}.stats-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:40px}.stat-card{border-left:1px solid var(--border-light);border-left-width:4px;gap:var(--space-5);padding:var(--space-6);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.stat-card.total{border-left-color:var(--info-500)}.stat-card.holidays{border-left-color:var(--danger-500)}.stat-card.used{border-left-color:var(--text-muted)}.stat-card.pending{border-left-color:var(--warning-500)}.stat-card.available{background:linear-gradient(135deg,var(--success-50) 0,var(--bg-secondary) 100%);border-left-color:var(--success-600)}.stat-icon{font-size:48px;line-height:1}.stat-card:hover .stat-icon{transform:scale(1.05)}.stat-info{flex:1 1;position:relative;z-index:1}.stat-info h3{color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:1px;margin:0 0 10px;text-transform:uppercase}.stat-number{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.5px;line-height:1.1;margin:0 0 6px}.stat-number.highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--success-600) 0,#2ecc71 100%);-webkit-background-clip:text;background-clip:text;color:var(--success-600)}.stat-label{font-weight:500}.quick-info-section{margin-bottom:40px}.quick-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.quick-info-card{align-items:flex-start;background:var(--bg-secondary);border-left:1px solid var(--border-light);border:1px solid var(--border-light);border-left-width:4px;border-radius:var(--radius-xl);display:flex;gap:var(--space-4);padding:var(--space-5);transition:box-shadow var(--transition-normal)}.quick-info-card:hover{box-shadow:var(--shadow-md)}.quick-info-card.salary-card{border-left-color:var(--success-600)}.quick-info-card.pending-card{border-left-color:var(--warning-500)}.quick-info-card.team-card{border-left-color:var(--info-500)}.quick-info-card.holidays-info-card{border-left-color:var(--accent-500)}.quick-info-icon{font-size:32px;line-height:1}.quick-info-content{flex:1 1;min-width:0}.quick-info-content h4{color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.quick-info-value{color:var(--text-primary);font-size:20px;font-weight:700;line-height:1.2;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-info-value.muted{color:var(--text-muted);font-size:14px;font-weight:500}.quick-info-label{color:var(--text-muted);display:block;font-size:12px}.quick-info-label.teammate-names{color:var(--info-500);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-chart-section{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-6);padding:var(--space-6)}.donut-chart-section h3{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:24px}.donut-chart-wrapper{align-items:center;display:flex;gap:var(--space-10);justify-content:center}.donut-chart{background:conic-gradient(var(--danger-500) 0deg calc(var(--used-pct)*3.6deg),var(--warning-500) calc(var(--used-pct)*3.6deg) calc((var(--used-pct) + var(--pending-pct))*3.6deg),var(--success-500) calc((var(--used-pct) + var(--pending-pct))*3.6deg) 1turn);flex-shrink:0;height:180px;position:relative;width:180px}.donut-center,.donut-chart{align-items:center;border-radius:50%;display:flex;justify-content:center}.donut-center{background:var(--bg-secondary);flex-direction:column;height:120px;width:120px}.donut-value{color:var(--success-600);font-size:var(--text-3xl);font-weight:var(--font-bold);line-height:1}.donut-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);margin-top:2px}.donut-legend{display:flex;flex-direction:column;gap:var(--space-3)}.legend-item{display:flex}.legend-color{border-radius:3px;flex-shrink:0;height:12px;width:12px}.legend-color.used{background:var(--danger-500)}.legend-color.pending{background:var(--warning-500)}.legend-color.available{background:var(--success-500)}.legend-text{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}@media (max-width:480px){.donut-chart-wrapper{flex-direction:column;gap:var(--space-6)}.donut-chart{height:150px;width:150px}.donut-center{height:100px;width:100px}.donut-legend{flex-direction:row;flex-wrap:wrap;gap:var(--space-4);justify-content:center}}.leave-breakdown{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-8);padding:var(--space-6);transition:box-shadow var(--transition-normal)}.leave-breakdown:hover{box-shadow:var(--shadow-md)}.breakdown-item{margin-bottom:30px}.breakdown-item:last-child{margin-bottom:0}.breakdown-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.leave-type-name{color:var(--text-primary);font-size:16px;font-weight:600}.leave-numbers{color:var(--success-600);font-size:14px;font-weight:600}.progress-bar{background:var(--bg-tertiary);border-radius:6px;height:12px;margin-bottom:8px;overflow:hidden}.progress-fill{border-radius:6px;height:100%;transition:width .3s ease}.progress-fill.casual{background:linear-gradient(90deg,var(--info-500) 0,#5dade2 100%)}.progress-fill.sick{background:linear-gradient(90deg,var(--danger-500) 0,#ec7063 100%)}.progress-fill.earned{background:linear-gradient(90deg,var(--warning-500) 0,#f8c471 100%)}.progress-fill.short-day{background:linear-gradient(90deg,var(--accent-500) 0,#bb8fce 100%)}.breakdown-details{color:var(--text-secondary);display:flex;font-size:13px;gap:20px}.breakdown-details span{display:inline-block}.breakdown-details .info-text{color:var(--accent-500);font-size:12px;font-style:italic}.breakdown-item.short-day{background-color:var(--accent-50);border-left:4px solid var(--accent-500);border-radius:8px;padding:15px}.holidays-section{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-6);transition:box-shadow var(--transition-normal)}.holidays-section:hover{box-shadow:var(--shadow-md)}.holidays-section h3{color:var(--text-primary);font-size:22px;margin-bottom:25px}.holidays-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.holiday-card{background:var(--accent-gradient);border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;overflow:hidden;padding:24px;position:relative;text-align:center;transition:all .3s ease}.holiday-card:before{background:radial-gradient(circle,#fff3 0,#0000 70%);content:"";height:200%;left:-50%;opacity:0;position:absolute;top:-50%;transition:opacity .3s ease;width:200%}.holiday-card:hover{box-shadow:0 8px 25px #667eea80;transform:translateY(-5px) scale(1.03)}.holiday-card:hover:before{opacity:1}.holiday-date{font-size:20px;font-weight:800;margin-bottom:10px;position:relative;z-index:1}.holiday-name{font-size:14px;font-weight:500;opacity:.95;position:relative;z-index:1}.skeleton{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--border-light) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;border-radius:var(--radius-lg)}.skeleton-heading{border-radius:var(--radius-md);height:32px}.skeleton-card{border-radius:var(--radius-xl);height:120px}@media (max-width:1024px){.leave-stats-container{padding:25px}.leave-stats-container h2{font-size:28px}.stats-grid{gap:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:768px){.leave-stats-container{padding:20px 15px}.leave-stats-container h2{font-size:24px;margin-bottom:25px}.stats-grid{gap:15px;grid-template-columns:1fr}.quick-info-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.quick-info-card{flex-direction:column;gap:10px;padding:16px}.quick-info-icon{font-size:24px}.quick-info-value{font-size:16px}.stat-card{padding:22px}.stat-icon{font-size:48px}.stat-number{font-size:32px}.holidays-section,.leave-breakdown{padding:25px}.holidays-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.holiday-card{padding:20px}.holiday-date{font-size:18px}.holiday-name{font-size:13px}}@media (max-width:480px){.leave-stats-container{padding:15px 10px}.leave-stats-container h2{font-size:22px}.stat-card{flex-direction:column;padding:20px;text-align:center}.stat-icon{font-size:44px}.stat-number{font-size:28px}.stat-info h3{font-size:12px}.quick-info-grid{gap:10px;grid-template-columns:1fr}.quick-info-card{flex-direction:row;padding:14px}.holidays-section,.leave-breakdown{padding:20px 15px}.breakdown-header{align-items:flex-start;flex-direction:column;gap:8px}.holidays-grid{grid-template-columns:1fr}}.profile-container{margin:0 auto;max-width:1200px;padding:30px}.profile-container h2{color:var(--text-primary);font-size:28px;font-weight:700;margin-bottom:25px}.profile-section{background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 10px #00000014;margin-bottom:25px;padding:25px}.profile-section h3{border-bottom:2px solid #ecf0f1;color:var(--text-secondary);font-size:20px;font-weight:700;margin:0 0 20px;padding-bottom:12px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.info-item{display:flex;flex-direction:column;gap:5px}.info-label{color:var(--text-muted);font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-value{color:var(--text-primary);font-size:16px;font-weight:600}.tax-not-applicable{align-items:center;background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745;border-radius:10px;display:flex;gap:20px;padding:25px}.tax-na-icon{font-size:48px;line-height:1}.tax-na-content h4{color:#155724;font-size:20px;font-weight:700;margin:0 0 10px}.tax-na-content p{color:#155724;font-size:15px;line-height:1.6;margin:5px 0}.tax-na-note{color:#1e7e34!important;font-size:14px!important;font-style:italic;margin-top:10px!important}.tax-regime-selector{display:flex;flex-direction:column;gap:20px}.tax-regime-info{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.tax-regime-info p{color:var(--text-secondary);font-size:15px;margin:0}.locked-badge{align-items:center;background:linear-gradient(135deg,#ffe6e6,#fcc);border:2px solid var(--danger-500);border-radius:20px;color:#c0392b;display:flex;font-size:13px;font-weight:600;gap:8px;padding:8px 15px}.lock-icon{font-size:16px}.tax-regime-dropdown{align-items:center;display:flex;gap:15px}.tax-regime-dropdown label,.tax-regime-dropdown select{color:var(--text-primary);font-size:15px;font-weight:600}.tax-regime-dropdown select{background:var(--bg-secondary);border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;flex:1 1;padding:12px 15px;transition:all .3s ease}.tax-regime-dropdown select:hover:not(:disabled){border-color:var(--accent-500)}.tax-regime-dropdown select:focus{border-color:var(--accent-500);box-shadow:0 0 0 3px #667eea1a;outline:none}.tax-regime-dropdown select.locked,.tax-regime-dropdown select:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}.tax-regime-details{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.regime-detail-card{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-left:4px solid var(--accent-500);border-radius:10px;padding:20px}.regime-detail-card h4{color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 15px}.regime-detail-card ul{list-style:none;margin:0;padding:0}.regime-detail-card li{color:var(--text-secondary);font-size:14px;line-height:1.6;padding:8px 0}.locked-message{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;font-size:14px;margin:0;padding:12px 15px}.password-form{max-width:500px}.form-group input{border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:12px 15px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:var(--accent-500);box-shadow:0 0 0 3px #667eea1a;outline:none}.change-password-btn{background:var(--accent-gradient);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 30px;transition:all .3s ease}.change-password-btn:hover:not(:disabled){box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.change-password-btn:disabled{cursor:not-allowed;opacity:.6}.password-note{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;font-size:13px;margin-top:15px;padding:10px 15px}.leave-balance-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.leave-balance-item{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-left:4px solid var(--accent-500);border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:20px}.leave-type{color:var(--text-muted);font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.leave-count{color:var(--text-primary);font-size:24px;font-weight:700}.error-message,.success-message{border-radius:8px;font-weight:600;margin-bottom:20px;padding:15px 20px}.icon-success{color:var(--success-600)}.icon-danger{color:var(--danger-500)}@media (max-width:768px){.profile-container{padding:20px}.info-grid,.leave-balance-grid,.tax-regime-details{grid-template-columns:1fr}.tax-regime-dropdown{align-items:stretch;flex-direction:column}.tax-not-applicable{flex-direction:column;text-align:center}.password-form{max-width:100%}}.leads-dashboard{padding:24px}.leads-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-card{gap:16px}.stat-card:hover{transform:translateY(-2px)}.stat-card .stat-icon{align-items:center;border-radius:var(--radius-lg);display:flex;height:48px;justify-content:center;width:48px}.stat-card .stat-icon svg{height:24px;width:24px}.stat-card .stat-content h3{color:var(--text-primary);font-size:26px;font-weight:700;margin:0}.stat-card .stat-content p{color:var(--text-secondary);font-size:13px;margin:4px 0 0}.stat-card.total{border-left:3px solid var(--primary)}.stat-card.total .stat-icon{background:var(--primary-100);color:var(--primary-600)}.stat-card.pipeline{border-left:3px solid var(--warning-600)}.stat-card.pipeline .stat-icon{background:var(--warning-100);color:var(--warning-600)}.stat-card.won{border-left:3px solid var(--success-600)}.stat-card.won .stat-icon{background:var(--success-100);color:var(--success-600)}.stat-card.conversion{border-left:3px solid var(--accent-600)}.stat-card.conversion .stat-icon{background:var(--accent-100);color:var(--accent-600)}.leads-pipeline{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:24px;padding:24px}.leads-pipeline h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 20px}.pipeline-stages{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.stage{border-radius:var(--radius-lg);min-width:100px;padding:16px 20px;text-align:center;transition:all var(--transition-fast)}.stage:hover{transform:translateY(-2px)}.stage-count{display:block;font-size:28px;font-weight:700}.stage-label{display:block;font-size:11px;font-weight:500;letter-spacing:.3px;margin-top:4px;text-transform:uppercase}.stage.new{background:var(--info-100);color:var(--info-700)}.stage.contacted{background:var(--warning-100);color:var(--warning-700)}.stage.qualified{background:var(--primary-100);color:var(--primary-700)}.stage.proposal{background:var(--accent-100);color:var(--accent-700)}.stage.negotiation{background:var(--danger-100);color:var(--danger-700)}.stage.won{background:var(--success-100);color:var(--success-700)}.stage-arrow{color:var(--text-muted);font-size:20px}.follow-ups-section{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:24px;padding:24px}.follow-ups-section h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 20px}.follow-ups-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.follow-up-card{border-radius:var(--radius-lg);padding:16px}.follow-up-card h4{font-size:13px;font-weight:600;margin:0 0 14px}.follow-up-card.overdue{background:var(--danger-50);border:1px solid var(--danger-100)}.follow-up-card.overdue h4{color:var(--danger-600)}.follow-up-card.today{background:var(--warning-50);border:1px solid var(--warning-100)}.follow-up-card.today h4{color:var(--warning-700)}.follow-up-card.upcoming{background:var(--success-50);border:1px solid var(--success-100)}.follow-up-card.upcoming h4{color:var(--success-600)}.follow-up-card ul{list-style:none;margin:0;padding:0}.follow-up-card li{background:var(--overlay-light);border-radius:var(--radius-md);cursor:pointer;margin-bottom:6px;padding:10px;transition:all var(--transition-fast)}.follow-up-card li:hover{background:var(--surface-0);box-shadow:var(--shadow-xs)}.follow-up-card .lead-title{color:var(--text-primary);display:block;font-size:13px;font-weight:500}.follow-up-card .lead-company{color:var(--text-muted);display:block;font-size:12px}.leads-simple-header{background:var(--bg-secondary);border:1px solid var(--border-light);border-left:4px solid var(--primary);border-radius:var(--radius-xl);margin-bottom:24px;padding:24px}.leads-simple-header h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 8px}.leads-simple-header .leads-hint{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.leads-actions{margin-bottom:16px}.create-lead-btn{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all var(--transition-fast)}.create-lead-btn:hover{background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.create-lead-btn svg{height:18px;width:18px}.leads-list-container{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:24px}.leads-list-container h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 20px}.leads-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.leads-filters .filter-group{flex:1 1;min-width:140px}.leads-filters input,.leads-filters select{border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:14px;padding:10px 12px;transition:all var(--transition-fast);width:100%}.leads-filters input:focus,.leads-filters select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.leads-filters .search-group{position:relative}.leads-filters .search-icon{color:var(--text-muted);left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.leads-filters .search-input{min-width:240px;padding-left:36px}.refresh-btn{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);display:flex;font-weight:500;gap:6px;padding:10px 16px}.refresh-btn:hover{background:var(--border-light);color:var(--text-primary)}.refresh-btn svg{height:16px;width:16px}.leads-table{border-collapse:collapse;width:100%}.leads-table th{-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);background:var(--bg-tertiary);border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.3px;padding:var(--space-3) var(--space-4);position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:1}.leads-table td{border-bottom:1px solid var(--border-light);font-size:14px;padding:12px 14px}.leads-table .lead-row{cursor:pointer;transition:background var(--transition-fast)}.leads-table .lead-row:hover{background:var(--bg-tertiary)}.lead-title-cell .lead-title{color:var(--text-primary);display:block;font-weight:500}.lead-title-cell .lead-source{color:var(--text-muted);display:block;font-size:11px;text-transform:capitalize}.contact-info .contact-name{color:var(--text-primary);display:block;font-weight:500}.contact-info .contact-email{color:var(--text-secondary);display:block;font-size:12px}.assignee-info .assignee-name{color:var(--text-primary);display:block;font-weight:500}.assignee-info .assignee-team{color:var(--text-muted);display:block;font-size:11px}.unassigned{color:var(--text-muted);font-style:italic}.status-badge{padding:4px 10px}.status-new{background:var(--info-100);color:var(--info-700)}.status-contacted{background:var(--warning-100);color:var(--warning-700)}.status-qualified{background:var(--primary-100);color:var(--primary-700)}.status-proposal{background:var(--accent-100);color:var(--accent-700)}.status-negotiation{background:var(--danger-100);color:var(--danger-700)}.status-won{background:var(--success-100);color:var(--success-700)}.status-lost{background:var(--danger-100);color:var(--danger-700)}.priority-badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:11px;font-weight:500;padding:4px 10px;text-transform:capitalize}.priority-low{background:var(--secondary-100);color:var(--secondary-600)}.priority-medium{background:var(--warning-100);color:var(--warning-700)}.priority-high{background:var(--danger-100);color:var(--danger-700)}.priority-hot{background:var(--danger-600);color:#fff}.overdue{color:var(--danger-600);font-weight:600}.pagination{align-items:center;border-top:1px solid var(--border-light);display:flex;gap:12px;justify-content:center;margin-top:20px;padding-top:20px}.pagination button{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;font-size:14px;padding:8px 14px;transition:all var(--transition-fast)}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination button:not(:disabled):hover{background:var(--bg-tertiary);border-color:var(--primary)}.pagination span{color:var(--text-secondary);font-size:14px}.no-leads{color:var(--text-muted);padding:40px;text-align:center}.no-leads svg{height:48px;margin-bottom:12px;opacity:.5;width:48px}.lead-detail{background:var(--bg-primary);min-height:100%}.lead-detail-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-light);gap:20px;margin-bottom:20px;padding:20px 24px}.back-btn,.lead-detail-header{align-items:center;display:flex}.back-btn{background:none;border:none;color:var(--primary);cursor:pointer;font-size:14px;font-weight:500;gap:6px;padding:0}.back-btn:hover{text-decoration:underline}.back-btn svg{height:18px;width:18px}.lead-title-section{flex:1 1}.lead-title-section h2{color:var(--text-primary);font-size:22px;font-weight:600;margin:0}.lead-title-section .company-name{color:var(--text-secondary);font-size:14px}.lead-actions{display:flex;gap:10px}.assign-btn{background:var(--primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:all var(--transition-fast)}.assign-btn:hover{background:var(--primary-hover)}.close-lead-btn{background:var(--warning-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:all var(--transition-fast)}.close-lead-btn:hover{background:var(--warning-700)}.lead-detail-content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:340px 1fr;padding:0 24px 24px}.lead-info-section{display:flex;flex-direction:column;gap:16px}.info-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:20px}.info-card h4{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 16px;padding-bottom:12px}.info-row{align-items:center;display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.info-row label{color:var(--text-secondary)}.info-row span{color:var(--text-primary);font-weight:500}.info-row a{color:var(--primary);text-decoration:none}.info-row a:hover{text-decoration:underline}.source-badge{background:var(--info-100);border-radius:var(--radius-full);color:var(--info-700);font-size:12px;font-weight:500;padding:4px 10px;text-transform:capitalize}.actual-value{color:var(--success-600);font-weight:600}.description-text{color:var(--text-secondary);font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.closure-card{border-left:4px solid var(--warning-500)}.status-card{border-left:4px solid var(--primary)}.status-selector{display:flex;flex-wrap:wrap;gap:8px}.status-option{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-full);cursor:pointer;font-size:12px;font-weight:500;padding:6px 14px;text-transform:capitalize;transition:all var(--transition-fast)}.status-option:hover:not(.disabled){background:var(--primary-100);border-color:var(--primary)}.status-option.active{background:var(--primary);border-color:var(--primary);color:#fff}.status-option.disabled{cursor:not-allowed;opacity:.5}.final-status{border-radius:var(--radius-full);font-size:12px;font-weight:600;padding:6px 14px}.final-status.won{background:var(--success-100);color:var(--success-700)}.final-status.lost{background:var(--danger-100);color:var(--danger-700)}.activities-section{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:20px}.activities-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.activities-header h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0}.add-activity-btn{align-items:center;background:var(--success-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all var(--transition-fast)}.add-activity-btn:hover{background:var(--success-700)}.add-activity-btn svg{height:16px;width:16px}.add-activity-form{background:var(--bg-tertiary);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px}.add-activity-form .form-row{margin-bottom:14px}.add-activity-form label{color:var(--text-secondary);display:block;font-size:13px;font-weight:500;margin-bottom:6px}.add-activity-form input,.add-activity-form select,.add-activity-form textarea{border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:14px;padding:10px 12px;transition:all var(--transition-fast);width:100%}.add-activity-form input:focus,.add-activity-form select:focus,.add-activity-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.add-activity-form .form-actions{display:flex;gap:10px;margin-top:16px}.add-activity-form button{border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:all var(--transition-fast)}.add-activity-form button[type=submit]{background:var(--success-600);border:none;color:#fff}.add-activity-form button[type=submit]:hover{background:var(--success-700)}.add-activity-form button[type=button]{background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-secondary)}.add-activity-form button[type=button]:hover{background:var(--border-light)}.activity-timeline{position:relative}.activity-item{border-bottom:1px solid var(--border-light);display:flex;gap:14px;padding:14px 0}.activity-item:last-child{border-bottom:none}.activity-icon{align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-full);color:var(--text-secondary);display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.activity-icon svg{height:18px;width:18px}.activity-item.call .activity-icon{background:var(--primary-100);color:var(--primary-600)}.activity-item.email .activity-icon{background:var(--warning-100);color:var(--warning-600)}.activity-item.meeting .activity-icon{background:var(--success-100);color:var(--success-600)}.activity-item.status_change .activity-icon{background:var(--accent-100);color:var(--accent-600)}.activity-content{flex:1 1}.activity-header{align-items:center;display:flex;gap:10px;margin-bottom:4px}.activity-type{background:var(--secondary-100);border-radius:var(--radius-sm);color:var(--secondary-600);font-size:11px;font-weight:500;padding:2px 8px;text-transform:capitalize}.activity-subject{color:var(--text-primary);font-size:14px;font-weight:600}.activity-time{color:var(--text-muted);font-size:12px;margin-left:auto}.activity-text{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:4px 0}.activity-user{color:var(--text-muted);font-size:12px}.no-activities{color:var(--text-muted);padding:32px;text-align:center}.no-activities svg{height:40px;margin-bottom:10px;opacity:.5;width:40px}.assignment-history{border-top:1px solid var(--border-light);margin-top:24px;padding-top:20px}.assignment-history h4{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 14px}.history-item{background:var(--bg-tertiary);border-radius:var(--radius-md);font-size:13px;margin-bottom:10px;padding:12px}.history-date{color:var(--text-muted);display:block;font-size:11px;margin-bottom:4px}.history-text{color:var(--text-primary);display:block;font-weight:500}.history-reason{color:var(--text-secondary);font-style:italic}.history-by,.history-reason{display:block;margin-top:4px}.history-by{color:var(--text-muted);font-size:11px}.modal-overlay{background:var(--overlay-dark);z-index:var(--z-modal-backdrop)}.modal{background:var(--bg-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;max-width:500px;overflow-y:auto;padding:24px;width:100%}.modal h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 20px}.modal .form-group{margin-bottom:16px}.modal .form-group label{color:var(--text-secondary);display:block;font-size:14px;font-weight:500;margin-bottom:6px}.modal input,.modal select,.modal textarea{border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:14px;padding:10px 12px;transition:all var(--transition-fast);width:100%}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.modal-actions{display:flex;gap:10px;margin-top:24px}.modal-actions button{border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:all var(--transition-fast)}.modal-actions button[type=submit]{background:var(--primary);border:none;color:#fff}.modal-actions button[type=submit]:hover{background:var(--primary-hover)}.modal-actions button[type=submit].won{background:var(--success-600)}.modal-actions button[type=submit].won:hover{background:var(--success-700)}.modal-actions button[type=submit].lost{background:var(--danger-600)}.modal-actions button[type=submit].lost:hover{background:var(--danger-700)}.modal-actions button[type=button]{background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-secondary)}.modal-actions button[type=button]:hover{background:var(--bg-tertiary)}.outcome-options{display:flex;gap:16px}.outcome-option{border:2px solid var(--border-default);border-radius:var(--radius-lg);cursor:pointer;flex:1 1;font-weight:600;padding:16px;text-align:center;transition:all var(--transition-fast)}.outcome-option input{display:none}.outcome-option.won.selected{background:var(--success-50);border-color:var(--success-500);color:var(--success-700)}.outcome-option.lost.selected{background:var(--danger-50);border-color:var(--danger-500);color:var(--danger-700)}.create-lead-modal{max-width:620px}.create-lead-modal .modal-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.close-modal-btn{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;padding:4px;transition:all var(--transition-fast)}.close-modal-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.close-modal-btn svg{height:20px;width:20px}.form-section{margin-bottom:24px}.form-section h4{color:var(--text-primary);font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 14px;text-transform:uppercase}.form-row{grid-gap:14px;gap:14px}.form-row.three-col{grid-template-columns:repeat(3,1fr)}.create-lead-modal .form-group{margin-bottom:14px}.create-lead-modal .form-group label{color:var(--text-secondary);display:block;font-size:13px;font-weight:500;margin-bottom:6px}.create-lead-modal input,.create-lead-modal select,.create-lead-modal textarea{border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:14px;padding:10px 12px;transition:all var(--transition-fast);width:100%}.create-lead-modal input:focus,.create-lead-modal select:focus,.create-lead-modal textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.create-lead-modal .modal-actions{border-top:1px solid var(--border-light);padding-top:16px}.cancel-btn{background:var(--bg-secondary)!important;border:1px solid var(--border-default)!important;color:var(--text-secondary)!important}.cancel-btn:hover{background:var(--bg-tertiary)!important}.submit-btn{background:var(--primary)!important;border:none!important}.submit-btn:hover{background:var(--primary-hover)!important}.error-message{padding:12px 14px}.form-help{color:var(--text-muted);display:block;font-size:12px;margin-top:4px}@media (max-width:1024px){.form-row,.form-row.three-col,.lead-detail-content{grid-template-columns:1fr}}@media (max-width:768px){.leads-dashboard{padding:16px}.leads-stats-grid{grid-template-columns:1fr 1fr}.pipeline-stages{flex-direction:column}.stage-arrow{transform:rotate(90deg)}.lead-detail-header,.leads-filters{flex-direction:column}.lead-detail-header{align-items:flex-start}.lead-actions{width:100%}.lead-actions button{flex:1 1}}.leave-balance-history{padding:var(--space-5)}.history-header{margin-bottom:var(--space-6)}.history-header h3{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.year-selector{align-items:center;display:flex;gap:10px}.year-selector label{color:var(--text-secondary);font-weight:var(--font-medium)}.year-selector select{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--text-base);padding:8px 15px}.balance-summary-cards{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:var(--space-8)}.summary-card{background:var(--bg-secondary);gap:15px;transition:box-shadow var(--transition-normal)}.summary-card .card-icon{font-size:36px}.summary-card .card-content h4{color:var(--text-secondary);font-size:var(--text-base);margin:0 0 5px}.summary-card .card-content .balance{font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0}.summary-card .card-content .used{color:var(--text-muted);font-size:var(--text-xs)}.summary-card.casual{border-left:4px solid var(--info-500)}.summary-card.casual .balance{color:var(--info-500)}.summary-card.sick{border-left:4px solid var(--danger-500)}.summary-card.sick .balance{color:var(--danger-500)}.summary-card.earned{border-left:4px solid var(--warning-500)}.summary-card.earned .balance{color:var(--warning-500)}.history-table-container{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-8);overflow-x:auto;padding:var(--space-5)}.history-table-container h4{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 15px}.history-table{border-collapse:collapse;font-size:var(--text-base);width:100%}.history-table th{background:var(--bg-tertiary);border-bottom:2px solid var(--border-light);color:var(--text-secondary);font-weight:var(--font-semibold);padding:12px 10px;text-align:center}.history-table th:first-child{text-align:left}.history-table .sub-header th{background:var(--bg-tertiary);border-bottom:1px solid var(--border-light);font-size:11px;padding:6px 10px;text-transform:uppercase}.history-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);padding:12px 10px;text-align:center}.history-table td:first-child{text-align:left}.history-table .month-name{color:var(--text-primary);font-weight:var(--font-semibold)}.history-table .current-month{background:var(--info-50)}.history-table .current-month .month-name{color:var(--info-700)}.history-table .low-balance{color:var(--danger-600);font-weight:var(--font-semibold)}.history-table .total-month{font-weight:var(--font-medium)}.taken-badge{background:var(--warning-100);border-radius:var(--radius-full);color:var(--warning-700);font-size:var(--text-xs);padding:3px 8px}.balance-chart{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-5)}.balance-chart h4{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 var(--space-5)}.chart-container{display:flex;height:220px;padding:10px 0}.chart-y-axis{display:flex;flex-direction:column;flex-shrink:0;justify-content:space-between;padding-bottom:28px;text-align:right;width:32px}.y-axis-label{color:var(--text-muted);font-size:11px;line-height:1}.chart-main-area{flex:1 1;padding-bottom:28px;position:relative}.chart-grid-lines{bottom:28px;left:0;pointer-events:none;position:absolute;right:0;top:0}.chart-grid-line{border-top:1px dashed var(--border-light);left:0;position:absolute;right:0}.chart-bars-wrapper{align-items:flex-end;display:flex;height:calc(100% - 28px);justify-content:space-around;position:relative;z-index:1}.chart-bar-group{align-items:center;animation:barGrow .6s cubic-bezier(.25,.46,.45,.94) both;display:flex;flex:1 1;flex-direction:column}@keyframes barGrow{0%{opacity:0;transform:scaleY(0);transform-origin:bottom}to{opacity:1;transform:scaleY(1);transform-origin:bottom}}.chart-bar-group .bars{align-items:flex-end;display:flex;gap:4px;height:160px}.chart-bar-group .bar{border-radius:6px 6px 0 0;min-height:4px;position:relative;transition:height .3s ease;width:24px}.chart-bar-group .bar.casual{background:linear-gradient(to top,var(--info-500),#38bdf8);background:linear-gradient(to top,var(--info-500),var(--info-400,#38bdf8))}.chart-bar-group .bar.sick{background:linear-gradient(to top,var(--danger-500),#f87171);background:linear-gradient(to top,var(--danger-500),var(--danger-400,#f87171))}.chart-bar-group .bar.earned{background:linear-gradient(to top,var(--warning-500),#fbbf24);background:linear-gradient(to top,var(--warning-500),var(--warning-400,#fbbf24))}.bar-value{color:var(--text-secondary);font-size:10px;font-weight:var(--font-semibold);left:50%;position:absolute;top:-18px;transform:translateX(-50%);white-space:nowrap}.chart-bar-group .month-label{color:var(--text-muted);font-size:11px;font-weight:var(--font-medium);margin-top:8px;text-transform:uppercase}.chart-legend{display:flex;gap:25px;justify-content:center;margin-top:15px}.chart-legend .legend-item{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-xs);gap:6px}.chart-legend .legend-item .dot{border-radius:3px;height:12px;width:12px}.chart-legend .legend-item .dot.casual{background:var(--info-500)}.chart-legend .legend-item .dot.sick{background:var(--danger-500)}.chart-legend .legend-item .dot.earned{background:var(--warning-500)}.leave-balance-history .no-data{background:var(--bg-secondary);border-radius:var(--radius-xl);color:var(--text-muted);padding:var(--space-10);text-align:center}.leave-balance-history .error-message{background:var(--danger-100);border-radius:var(--radius-md);color:var(--danger-600);margin-bottom:var(--space-5);padding:12px}@media (max-width:768px){.history-header{align-items:flex-start;flex-direction:column;gap:15px}.balance-summary-cards{grid-template-columns:1fr}.history-table{font-size:var(--text-xs)}.history-table td,.history-table th{padding:8px 5px}.chart-bar-group .bar{width:14px}.bar-value{font-size:9px}}.team-leave-balance-history{padding:20px}.history-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:25px}.history-header,.history-header .header-left{align-items:center;display:flex;gap:15px}.history-header .back-btn{background:none;border:none;color:var(--accent-500);cursor:pointer;font-size:14px;padding:0}.history-header .back-btn:hover{text-decoration:underline}.employee-meta{align-items:center;display:flex;gap:10px}.employee-meta .emp-id{background:#e5e7eb;border-radius:4px;color:var(--text-secondary);font-size:12px;padding:4px 10px}.employee-meta .team-badge{background:#dbeafe;border-radius:4px;color:#1d4ed8;font-size:12px;font-weight:500;padding:4px 10px}.filters{display:flex;flex-wrap:wrap;gap:15px}.filter-group{align-items:center;gap:8px}.filter-group label{font-size:14px;font-weight:500}.filter-group select{background:var(--bg-secondary);border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;min-width:120px;padding:8px 15px}.year-selector-inline{align-items:center;display:flex;gap:10px;margin-bottom:20px}.year-selector-inline label{color:var(--text-secondary);font-weight:500}.year-selector-inline select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 15px}.team-summary-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:30px}.team-summary-cards .summary-card{align-items:center;background:var(--bg-secondary);border-radius:10px;box-shadow:0 2px 8px #0000000f;display:flex;gap:12px;padding:15px}.team-summary-cards .card-icon{font-size:28px}.team-summary-cards .card-content h4{color:var(--text-muted);font-size:12px;margin:0;text-transform:uppercase}.team-summary-cards .card-content .value{color:var(--text-primary);font-size:22px;font-weight:700;margin:5px 0 0}.team-summary-cards .summary-card.month{border-left:4px solid #8b5cf6}.team-summary-cards .summary-card.month .value{color:#8b5cf6}.team-table-container{background:var(--bg-secondary);border-radius:10px;box-shadow:0 2px 10px #00000014;overflow-x:auto;padding:20px}.team-table-container h4{color:var(--text-primary);margin:0 0 15px}.team-table{border-collapse:collapse;font-size:14px;width:100%}.team-table th{background:var(--bg-tertiary);border-bottom:2px solid #eee;color:var(--text-secondary);font-weight:600;padding:12px 10px;text-align:left;white-space:nowrap}.team-table td{border-bottom:1px solid #eee;padding:12px 10px;vertical-align:middle}.team-table .employee-info{display:flex;flex-direction:column;gap:2px}.team-table .employee-info .name{color:var(--text-primary);font-weight:600}.team-table .employee-info .emp-id{color:var(--text-muted);font-size:11px}.team-table td.critical{background:#fee2e2;color:#dc2626;font-weight:600}.team-table td.low{background:#fef3c7;color:#b45309}.view-history-btn{background:var(--accent-500);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;white-space:nowrap}.view-history-btn:hover{background:#5a6fd6}@media (max-width:1024px){.filters{justify-content:flex-start;width:100%}}@media (max-width:768px){.history-header{align-items:flex-start;flex-direction:column}.filters{flex-direction:column;gap:10px}.filter-group{width:100%}.filter-group select{flex:1 1}.team-summary-cards{grid-template-columns:1fr 1fr}.team-table{font-size:12px}.team-table td,.team-table th{padding:8px 6px}}.celebrations-container{padding:var(--space-6)}.celebrations-header{margin-bottom:var(--space-6)}.celebrations-header h2{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-bold);margin:0 0 var(--space-1)}.celebrations-subtitle{color:var(--text-secondary);font-size:var(--text-base);margin:0}.celebrations-summary{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:var(--space-8)}.summary-card{align-items:center;background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;gap:var(--space-4);padding:var(--space-5);transition:all var(--transition-normal)}.summary-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.summary-icon{align-items:center;border-radius:var(--radius-lg);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.summary-content{display:flex;flex-direction:column}.summary-value{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-bold);line-height:1}.summary-label{margin-top:var(--space-1)}.today-card{border-left:3px solid var(--warning-500)}.today-card .summary-icon{background:var(--warning-100);color:var(--warning-600)}.week-card{border-left:3px solid var(--info-500)}.week-card .summary-icon{background:var(--info-100);color:var(--info-600)}.birthday-card{border-left:3px solid var(--danger-500)}.birthday-card .summary-icon{background:var(--danger-100);color:var(--danger-600)}.anniversary-card{border-left:3px solid var(--success-600)}.anniversary-card .summary-icon{background:var(--success-100);color:var(--success-600)}.celebrations-tabs{background:var(--surface-1);border:1px solid var(--border-light);border-radius:var(--radius-lg);display:flex;gap:var(--space-2);margin-bottom:var(--space-6);padding:var(--space-1)}.celebrations-tabs button{background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-3) var(--space-5);transition:all var(--transition-normal)}.celebrations-tabs button:hover{background:var(--surface-2);color:var(--text-primary)}.celebrations-tabs button.active{background:var(--accent-gradient);box-shadow:var(--shadow-sm);color:#fff}.celebrations-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:1fr 1fr}.celebrations-section{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-5)}.celebrations-section h3{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 var(--space-5);padding-bottom:var(--space-3)}.celebration-list{display:flex;flex-direction:column;gap:var(--space-3)}.celebration-list.full-width{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-5)}.no-items{color:var(--text-muted);font-style:italic;padding:var(--space-8);text-align:center}.celebration-card{align-items:center;background:var(--surface-1);border:1px solid #0000;border-radius:var(--radius-lg);display:flex;gap:var(--space-4);padding:var(--space-4);transition:all var(--transition-normal)}.celebration-card:hover{background:var(--surface-2);border-color:var(--border-light);transform:translateX(4px)}.celebration-card.today{background:var(--warning-50);border:1px solid var(--warning-500);box-shadow:0 0 0 3px var(--warning-100)}.celebration-card.horizontal{justify-content:flex-start}.card-icon{align-items:center;background:var(--danger-100);border-radius:var(--radius-lg);color:var(--danger-600);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.celebration-card.horizontal .card-icon,.celebrations-section:last-child .card-icon{background:var(--surface-2);color:var(--text-secondary)}.card-content{flex:1 1;min-width:0}.card-content h4{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-team{color:var(--text-secondary);font-size:var(--text-xs);margin:0}.card-date,.card-years{color:var(--text-muted);font-size:var(--text-sm);margin:var(--space-1) 0 0}.card-date-info{align-items:flex-end;display:flex;flex-direction:column;min-width:80px}.card-date-info .date{color:var(--text-primary);font-weight:var(--font-semibold)}.card-date-info .age,.card-date-info .years{color:var(--text-secondary);font-size:var(--text-xs)}.card-badge{align-items:center;display:flex;justify-content:flex-end;min-width:70px}.celebrations-container .badge{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-3);text-transform:uppercase}.celebrations-container .badge.today{animation:todayGlow 2s ease-in-out infinite;background:var(--warning-500);color:#fff}.celebrations-container .badge.days{background:var(--surface-2);color:var(--text-secondary)}@keyframes todayGlow{0%,to{box-shadow:0 0 0 0 #f59e0b66}50%{box-shadow:0 0 0 6px #f59e0b00}}.celebrations-compact{padding:var(--space-4)}.celebrations-compact h4{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0 0 var(--space-3)}.today-celebrations{background:var(--warning-50);border:1px solid var(--warning-100);border-radius:var(--radius-lg);margin-bottom:var(--space-4);padding:var(--space-4)}.upcoming-celebrations{background:var(--surface-1);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4)}.celebration-item{align-items:center;display:flex;gap:var(--space-3);padding:var(--space-2) 0}.celebration-item:not(:last-child){border-bottom:1px solid var(--border-light)}.celebration-item .celebration-icon{color:var(--text-secondary)}.celebration-item .celebration-text{color:var(--text-primary);font-size:var(--text-sm)}.celebration-item .celebration-details{display:flex;flex-direction:column}.celebration-item .celebration-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium)}.celebration-item .celebration-info{color:var(--text-secondary);font-size:var(--text-xs)}.no-celebrations{color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-5);text-align:center}.celebrations-loading{color:var(--text-secondary);padding:var(--space-8);text-align:center}.celebrations-error{background:var(--danger-50);border:1px solid var(--danger-100);border-radius:var(--radius-xl);padding:var(--space-10) var(--space-5);text-align:center}.celebrations-error .error-icon{color:var(--danger-500);display:block;margin-bottom:var(--space-3)}.celebrations-error p{color:var(--danger-700);font-size:var(--text-base);margin:0 0 var(--space-4)}.celebrations-error .retry-btn{background:var(--danger-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-weight:var(--font-semibold);padding:var(--space-3) var(--space-5);transition:background var(--transition-fast)}.celebrations-error .retry-btn:hover{background:var(--danger-700)}.celebrations-toast{align-items:center;animation:toast-in .3s ease;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;font-size:var(--text-base);font-weight:var(--font-medium);gap:var(--space-2);padding:var(--space-3) var(--space-5);position:fixed;right:var(--space-5);top:var(--space-5);z-index:var(--z-toast)}.celebrations-toast.success{background:var(--success-100);border:1px solid var(--success-500);color:var(--success-700)}.celebrations-toast.error{background:var(--danger-100);border:1px solid var(--danger-500);color:var(--danger-700)}@keyframes toast-in{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.wishes-wall{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--space-8);padding:var(--space-6)}.wishes-wall-title{align-items:center;color:var(--text-primary);display:flex;font-size:var(--text-lg);font-weight:var(--font-semibold);gap:var(--space-2);margin:0 0 var(--space-5)}.wishes-wall-title svg{color:var(--danger-500)}.wish-card{background:var(--surface-1);border:1px solid var(--border-light);border-left:3px solid var(--danger-500);border-radius:var(--radius-xl);margin-bottom:var(--space-4);padding:var(--space-5);transition:all var(--transition-normal)}.wish-card:hover{box-shadow:var(--shadow-md)}.wish-card.work_anniversary{border-left-color:var(--success-600)}.wish-card:last-child{margin-bottom:0}.wish-card-header{align-items:center;display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.wish-card-icon{align-items:center;background:var(--danger-100);border-radius:var(--radius-full);color:var(--danger-600);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.wish-card.work_anniversary .wish-card-icon{background:var(--success-100);color:var(--success-700)}.wish-card-info{flex:1 1}.wish-card-info h4{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 2px}.wish-card-info p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.wish-card-team{color:var(--text-muted);font-size:var(--text-xs)}.wish-count-badge{align-items:center;background:var(--surface-2);border-radius:var(--radius-full);color:var(--text-secondary);display:flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-1);padding:var(--space-2) var(--space-3)}.wish-form{display:flex;gap:var(--space-2)}.wish-form input{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);color:var(--text-primary);flex:1 1;font-size:var(--text-base);padding:var(--space-3) var(--space-4);transition:all var(--transition-normal)}.wish-form input:focus{border-color:var(--danger-500);box-shadow:0 0 0 3px var(--danger-100);outline:none}.wish-card.work_anniversary .wish-form input:focus{border-color:var(--success-500);box-shadow:0 0 0 3px var(--success-100)}.wish-send-btn{align-items:center;background:var(--danger-600);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4);transition:all var(--transition-normal)}.wish-card.work_anniversary .wish-send-btn{background:var(--success-600)}.wish-send-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-1px)}.wish-send-btn:disabled{cursor:not-allowed;opacity:.5}.wish-sent-badge{align-items:center;background:var(--success-100);border-radius:var(--radius-lg);color:var(--success-700);display:flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-2);padding:var(--space-3) var(--space-4)}.wish-list{border-top:1px solid var(--border-light);margin-top:var(--space-3);padding-top:var(--space-3)}.wish-toggle-btn{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-1) 0;transition:color var(--transition-fast)}.wish-toggle-btn:hover{color:var(--text-primary)}.wish-messages{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.wish-message{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-3)}.wish-message-header{align-items:center;display:flex;gap:var(--space-2);margin-bottom:var(--space-1)}.wish-message-header strong{color:var(--text-primary);font-size:var(--text-sm)}.wish-dept{background:var(--surface-2);border-radius:var(--radius-full);color:var(--text-muted);font-size:var(--text-xs);padding:2px var(--space-2)}.wish-message p{color:var(--text-secondary);font-size:var(--text-base);line-height:1.5;margin:0}@media (max-width:768px){.celebrations-container{padding:var(--space-4)}.celebrations-grid{grid-template-columns:1fr}.celebrations-summary{grid-template-columns:1fr 1fr}.celebrations-tabs{flex-wrap:wrap}.celebrations-tabs button{flex:1 1;font-size:var(--text-sm);min-width:100px;padding:var(--space-3) var(--space-4)}.celebration-card.horizontal{flex-wrap:wrap}.card-date-info{align-items:flex-start;border-top:1px solid var(--border-light);flex-direction:row;justify-content:space-between;margin-top:var(--space-3);padding-top:var(--space-3);width:100%}}.todo-container{margin:0 auto;max-width:1200px;padding:var(--space-6)}.todo-header{align-items:flex-start;flex-wrap:wrap;justify-content:space-between;margin-bottom:var(--space-6)}.todo-header,.todo-header-left{display:flex;gap:var(--space-4)}.todo-header-icon,.todo-header-left{align-items:center}.todo-header-icon{background:linear-gradient(135deg,var(--primary-400) 0,var(--primary-500) 100%);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);color:#fff;display:flex;height:48px;justify-content:center;width:48px}.todo-header h2{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0 0 var(--space-1) 0}.todo-subtitle{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.todo-toast{align-items:center;animation:todo-toast-in .3s var(--transition-spring);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;font-size:var(--text-base);font-weight:var(--font-medium);gap:var(--space-2);padding:var(--space-3) var(--space-5);position:fixed;right:var(--space-5);top:var(--space-5);z-index:var(--z-toast)}.todo-toast.success{background:var(--success-100);border:1px solid var(--success-500);color:var(--success-700)}.todo-toast.error{background:var(--danger-100);border:1px solid var(--danger-500);color:var(--danger-700)}@keyframes todo-toast-in{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.todo-view-toggle{background:var(--surface-1);border:1px solid var(--border-light);border-radius:var(--radius-lg);display:flex;flex-shrink:0;gap:var(--space-1);padding:var(--space-1)}.view-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--transition-normal);white-space:nowrap}.view-btn:hover{background:var(--surface-2);color:var(--text-primary)}.view-btn.active{background:linear-gradient(135deg,var(--primary-500) 0,var(--primary-600) 100%);box-shadow:var(--shadow-sm);color:#fff}.todo-stats-scroll{display:flex;gap:var(--space-4);margin-bottom:var(--space-6);overflow-x:auto;padding-bottom:var(--space-2);scrollbar-width:thin}.todo-stats-scroll::-webkit-scrollbar{height:4px}.todo-stats-scroll::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--radius-full)}.todo-stat-card{align-items:center;background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-shrink:0;gap:var(--space-3);min-width:140px;padding:var(--space-4) var(--space-5);transition:all var(--transition-normal)}.todo-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.todo-stat-card .stat-icon{align-items:center;border-radius:var(--radius-lg);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.todo-stat-card .stat-info{display:flex;flex-direction:column}.todo-stat-card .stat-value{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:1}.todo-stat-card .stat-label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;margin-top:2px;text-transform:uppercase}.todo-stat-card.pending .stat-icon{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.todo-stat-card.progress .stat-icon{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0284c7}.todo-stat-card.completed .stat-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.todo-stat-card.overdue .stat-icon{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.todo-stat-card.total .stat-icon{background:linear-gradient(135deg,var(--primary-100) 0,var(--primary-200) 100%);color:var(--primary-600)}.todo-add-section{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);margin-bottom:var(--space-6);padding:var(--space-5)}.todo-add-header{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-2);margin-bottom:var(--space-4)}.todo-form{flex-direction:column}.todo-form,.todo-input-wrapper{display:flex;gap:var(--space-3)}.todo-input{background:var(--bg-secondary);border:2px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text-primary);flex:1 1;font-size:var(--text-base);padding:var(--space-3) var(--space-4);transition:all var(--transition-normal)}.todo-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 4px #10b9811a;outline:none}.todo-input::placeholder{color:var(--text-muted)}.todo-add-btn{align-items:center;background:linear-gradient(135deg,var(--primary-500) 0,var(--primary-600) 100%);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;display:flex;font-size:var(--text-base);font-weight:var(--font-semibold);gap:var(--space-2);padding:var(--space-3) var(--space-5);transition:all var(--transition-normal);white-space:nowrap}.todo-add-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-1px)}.todo-add-btn:disabled{cursor:not-allowed;opacity:.5}.todo-add-actions{display:flex;gap:var(--space-2)}.todo-assign-toggle{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;display:flex;padding:var(--space-3);transition:all var(--transition-normal)}.todo-assign-toggle:hover{border-color:var(--primary-400);color:var(--primary-600)}.todo-assign-toggle.active{background:linear-gradient(135deg,var(--primary-500) 0,var(--primary-600) 100%);border-color:#0000;color:#fff}.todo-assign-row{align-items:center;background:linear-gradient(135deg,var(--accent-50) 0,var(--surface-1) 100%);border:1px dashed var(--accent-300);border-radius:var(--radius-lg);color:var(--text-secondary);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.assign-select{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;flex:1 1;font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.assign-select:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #10b9811a;outline:none}.todo-hint{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-2);margin:0}.todo-hint svg{color:var(--info-500)}.todo-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-5)}.todo-search{flex:1 1;min-width:200px;position:relative}.todo-search input{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-sm);padding:var(--space-3) var(--space-4) var(--space-3) var(--space-10);transition:all var(--transition-fast);width:100%}.todo-search input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #10b9811a;outline:none}.todo-search-icon{color:var(--text-muted);left:var(--space-3);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.todo-filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-btn:hover{background:var(--surface-2);border-color:var(--primary-400)}.filter-btn.active{background:linear-gradient(135deg,var(--primary-500) 0,var(--primary-600) 100%);border-color:#0000;box-shadow:var(--shadow-sm);color:#fff}.todo-group{margin-bottom:var(--space-6)}.todo-group-header{align-items:center;border-bottom:2px solid var(--border-light);display:flex;gap:var(--space-3);margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.todo-group-title{align-items:center;color:var(--text-primary);display:flex;font-size:var(--text-base);font-weight:var(--font-bold);gap:var(--space-2)}.todo-group-count{background:var(--surface-2);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:2px var(--space-2)}.todo-group-title.overdue{color:var(--danger-600)}.todo-group-title.overdue .todo-group-count{background:var(--danger-100);color:var(--danger-700)}.todo-list{display:flex;flex-direction:column;gap:var(--space-3)}.empty-state{background:var(--surface-0);border:2px dashed var(--border-light);border-radius:var(--radius-2xl);padding:var(--space-16) var(--space-8)}.empty-state-icon{animation:emptyFloat 3s ease-in-out infinite;background:linear-gradient(135deg,var(--primary-100) 0,var(--primary-200) 100%);color:var(--primary-600);height:80px;margin:0 auto var(--space-5);width:80px}@keyframes emptyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.empty-state-title{font-size:var(--text-xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.empty-state-description{color:var(--text-secondary);font-size:var(--text-base);margin:0 auto;max-width:320px}.todo-item{align-items:flex-start;background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);display:flex;gap:var(--space-4);overflow:hidden;padding:var(--space-4) var(--space-5);position:relative}.todo-item,.todo-item:before{transition:all var(--transition-normal)}.todo-item:before{background:var(--border-default);bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.todo-item:hover{border-color:var(--accent-200);box-shadow:var(--shadow-md);transform:translateY(-2px)}.todo-item.pending:before{background:linear-gradient(180deg,var(--warning-400) 0,var(--warning-500) 100%)}.todo-item.in_progress:before{background:linear-gradient(180deg,var(--info-400) 0,var(--info-500) 100%)}.todo-item.completed:before{background:linear-gradient(180deg,var(--success-400) 0,var(--success-500) 100%)}.todo-item.completed{opacity:.7}.todo-item.overdue:before{background:linear-gradient(180deg,var(--danger-400) 0,var(--danger-500) 100%)}.todo-item.overdue{background:linear-gradient(135deg,var(--danger-50) 0,var(--surface-0) 50%);border-color:var(--danger-200)}.todo-checkbox{flex-shrink:0;padding-top:2px}.todo-checkbox input[type=checkbox]{accent-color:var(--success-500);border:2px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;height:22px;transition:all var(--transition-fast);width:22px}.todo-checkbox input[type=checkbox]:hover{border-color:var(--success-500);transform:scale(1.1)}.todo-checkbox input[type=checkbox]:checked{background:var(--success-500);border-color:var(--success-500)}.todo-content{flex:1 1;min-width:0}.todo-title-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-2)}.todo-title{color:var(--text-primary);flex:1 1;font-size:var(--text-base);font-weight:var(--font-semibold);line-height:1.4}.todo-title.completed{color:var(--text-muted);text-decoration:line-through}.todo-priority{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-bold);gap:4px;letter-spacing:.3px;padding:var(--space-1) var(--space-3);text-transform:uppercase;white-space:nowrap}.priority-urgent{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.priority-high{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.priority-medium{background:linear-gradient(135deg,#fef9c3,#fef08a);color:#a16207}.priority-low{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.priority-dot-urgent{color:#dc2626}.priority-dot-high{color:#d97706}.priority-dot-medium{color:#ca8a04}.priority-dot-low{color:#059669}.todo-description{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5;margin:0 0 var(--space-3) 0}.todo-meta{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4)}.todo-due,.todo-status{align-items:center;background:var(--surface-1);border-radius:var(--radius-md);color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-1);padding:var(--space-1) var(--space-2)}.todo-due.overdue{background:var(--danger-100);color:var(--danger-700);font-weight:var(--font-semibold)}.todo-due.today{background:var(--primary-100);color:var(--primary-700);font-weight:var(--font-semibold)}.todo-assigned{align-items:center;background:var(--primary-50);border-radius:var(--radius-md);color:var(--primary-600);display:flex;font-size:var(--text-xs);font-weight:var(--font-medium);gap:var(--space-1);padding:var(--space-1) var(--space-2)}.todo-category{background:var(--surface-2);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-3)}.todo-edit-form{display:flex;flex-direction:column;gap:var(--space-2)}.todo-edit-title{background:var(--bg-secondary);border:2px solid var(--primary-500);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold);padding:var(--space-2) var(--space-3)}.todo-edit-title:focus{box-shadow:0 0 0 3px #10b98133;outline:none}.todo-edit-desc{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.todo-edit-desc:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #10b9811a;outline:none}.todo-edit-actions{display:flex;gap:var(--space-2)}.edit-save-btn{align-items:center;background:var(--success-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.edit-save-btn:hover{background:var(--success-700)}.edit-cancel-btn{align-items:center;background:var(--surface-2);border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.edit-cancel-btn:hover{background:var(--surface-3)}.todo-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--space-2);opacity:0;transition:opacity var(--transition-fast)}.todo-item:hover .todo-actions{opacity:1}.status-select{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-2) var(--space-3)}.status-select:focus{border-color:var(--primary-500);outline:none}.todo-edit-btn{align-items:center;background:none;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;padding:var(--space-2);transition:all var(--transition-fast)}.todo-edit-btn:hover{background:var(--primary-100);color:var(--primary-600)}.todo-delete-btn{align-items:center;background:none;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;padding:var(--space-2);transition:all var(--transition-fast)}.todo-delete-btn:hover{background:var(--danger-100);color:var(--danger-600)}.todo-progress-section{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5)}.todo-progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.todo-progress-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.todo-progress-stats{color:var(--primary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.todo-progress-track{background:var(--surface-2);border-radius:var(--radius-full);height:10px;overflow:hidden;width:100%}.todo-progress-fill{background:linear-gradient(90deg,var(--primary-400) 0,var(--primary-500) 50%,var(--primary-600) 100%);border-radius:var(--radius-full);height:100%;position:relative;transition:width .8s cubic-bezier(.25,.46,.45,.94)}.todo-progress-fill:after{animation:progressShine 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d 50%,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes progressShine{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.todo-loading{color:var(--text-secondary);padding:var(--space-16);text-align:center}.keyboard-hint{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-2);margin-top:var(--space-3)}.keyboard-hint kbd{background:var(--surface-2);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-xs);padding:2px 6px}@media (max-width:768px){.todo-container{padding:var(--space-4)}.todo-header{flex-direction:column;gap:var(--space-3)}.todo-header h2{font-size:var(--text-xl)}.todo-view-toggle{width:100%}.view-btn{flex:1 1;justify-content:center}.todo-add-section{padding:var(--space-4)}.todo-input-wrapper{flex-direction:column}.todo-add-btn{justify-content:center;width:100%}.todo-add-actions{width:100%}.todo-assign-toggle{flex:1 1;justify-content:center}.todo-toolbar{flex-direction:column}.todo-search{width:100%}.todo-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--space-1);width:100%}.filter-btn{flex-shrink:0}.todo-actions{opacity:1}.todo-item{flex-wrap:wrap}.todo-title-row{flex-direction:column;gap:var(--space-2)}.todo-actions{border-top:1px solid var(--border-light);margin-top:var(--space-3);padding-top:var(--space-3);width:100%}.status-select{flex:1 1}}@media (max-width:480px){.todo-stat-card{min-width:120px;padding:var(--space-3)}.todo-stat-card .stat-icon{height:36px;width:36px}.todo-stat-card .stat-value{font-size:var(--text-xl)}.empty-state{padding:var(--space-10) var(--space-4)}.empty-state-icon{height:60px;width:60px}}.chat-assistant-container{bottom:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:fixed;right:24px;z-index:9999}.chat-toggle-btn{align-items:center;background:#fffffff2;border:2px solid #ffffff4d;border-radius:50%;box-shadow:0 4px 20px #00000026;color:var(--accent-500);cursor:pointer;display:flex;font-size:22px;height:50px;justify-content:center;transition:all .3s ease;width:50px}.chat-toggle-btn:hover{background:var(--bg-secondary);box-shadow:0 6px 25px #0003;transform:scale(1.05)}.chat-toggle-btn.active{background:var(--bg-secondary);color:var(--danger-500);transform:rotate(0deg)}.chat-window{animation:slideUp .3s ease;background:var(--bg-secondary);border-radius:16px;bottom:60px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;height:520px;overflow:hidden;position:absolute;right:0;width:380px}.chat-header{background:var(--accent-gradient);color:#fff;justify-content:space-between;padding:16px}.chat-header,.chat-header-info{align-items:center;display:flex}.chat-header-info{gap:12px}.chat-avatar{background:#fff3;border-radius:50%;font-size:28px;padding:8px}.chat-header-text h4{font-size:16px;font-weight:600;margin:0}.chat-status{font-size:12px;opacity:.9}.chat-close-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:16px;height:32px;transition:background .2s;width:32px}.chat-close-btn:hover{background:#ffffff4d}.chat-messages{background:var(--bg-tertiary);display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.chat-message{animation:fadeIn .3s ease;display:flex;gap:10px;max-width:85%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.assistant{align-self:flex-start}.message-avatar{flex-shrink:0;font-size:20px}.message-content{background:var(--bg-secondary);border-radius:16px;box-shadow:0 2px 8px #00000014;padding:12px 16px}.chat-message.user .message-content{background:var(--accent-gradient);border-bottom-right-radius:4px;color:#fff}.chat-message.assistant .message-content{border-bottom-left-radius:4px}.chat-message.error .message-content{background:#fee;color:#c0392b}.message-content p{font-size:14px;line-height:1.5;margin:0;white-space:pre-wrap}.message-time{margin-top:6px;opacity:.6}.chat-message.user .message-time{text-align:right}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{animation:bounce 1.4s ease-in-out infinite both;background:var(--accent-500);border-radius:50%;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.quick-questions{background:var(--bg-secondary);border-top:1px solid #eee;padding:12px 16px}.quick-label{color:var(--text-muted);font-size:12px;margin:0 0 8px}.quick-btns{display:flex;flex-wrap:wrap;gap:6px}.quick-btn{background:#f0f2ff;border:1px solid #dde1ff;border-radius:16px;color:var(--accent-500);cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.quick-btn:hover{background:var(--accent-500);border-color:var(--accent-500);color:#fff}.chat-input-form{background:var(--bg-secondary);border-top:1px solid #eee;display:flex;gap:8px;padding:12px 16px}.chat-input{border:2px solid #e0e0e0;border-radius:24px;flex:1 1;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s}.chat-input:focus{border-color:var(--accent-500)}.chat-input:disabled{background:#f5f5f5}.chat-send-btn{background:var(--accent-gradient);border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:18px;height:44px;transition:all .2s;width:44px}.chat-send-btn:hover:not(:disabled){transform:scale(1.1)}.chat-send-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:480px){.chat-assistant-container{bottom:16px;right:16px}.chat-window{bottom:55px;height:calc(100vh - 120px);max-height:500px;right:-8px;width:calc(100vw - 32px)}.chat-toggle-btn{font-size:18px;height:46px;width:46px}}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#0000}.chat-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#aaa}.company-chat-container{bottom:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:fixed;right:90px;z-index:9999}.chat-fab{align-items:center;background:var(--info-600);border:none;border-radius:50%;box-shadow:0 2px 12px #1a73e866;color:#fff;cursor:pointer;display:flex;height:56px;justify-content:center;position:relative;transition:all .2s ease;width:56px}.chat-fab svg{height:24px;width:24px}.chat-fab:hover{background:#1557b0;box-shadow:0 4px 16px #1a73e880;transform:scale(1.05)}.chat-fab.active{background:#5f6368}.unread-badge{align-items:center;background:#ea4335;border-radius:10px;color:#fff;font-size:11px;font-weight:600;height:20px;justify-content:center;min-width:20px;padding:0 5px;right:-4px;top:-4px}.chat-panel,.unread-badge{display:flex;position:absolute}.chat-panel{animation:slideUp .25s ease;background:var(--bg-secondary);border-radius:12px;bottom:70px;box-shadow:0 8px 32px #00000026;flex-direction:column;height:500px;overflow:hidden;right:0;width:360px}.chat-panel-header{align-items:center;background:var(--info-600);color:#fff;display:flex;gap:12px;min-height:60px;padding:16px}.chat-panel-header h3{flex:1 1;font-size:16px;font-weight:500;margin:0}.back-btn,.new-chat-btn{align-items:center;background:#ffffff26;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:background .2s;width:36px}.back-btn:hover,.new-chat-btn:hover{background:#ffffff40}.back-btn svg,.new-chat-btn svg{height:20px;width:20px}.header-title{flex:1 1}.chat-user-info,.header-title{align-items:center;display:flex}.chat-user-info{gap:10px}.chat-user-info .user-avatar{font-size:13px;height:36px;width:36px}.chat-user-info h3{font-size:15px;margin:0}.chat-user-info .user-role{font-size:12px;opacity:.85}.chat-panel-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.conversations-list{flex:1 1;overflow-y:auto}.conversation-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background .15s}.conversation-item:hover{background:var(--bg-tertiary)}.conversation-item.unread{background:#e8f0fe}.conv-avatar,.user-avatar{align-items:center;background:var(--accent-gradient);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:44px;justify-content:center;width:44px}.conv-info{flex:1 1;min-width:0}.conv-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.conv-name{color:#202124;font-size:14px;font-weight:500}.conv-time{color:#5f6368;font-size:11px}.conv-preview{align-items:center;display:flex;justify-content:space-between}.conv-preview span:first-child{color:#5f6368;font-size:13px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-preview span.bold{color:#202124;font-weight:500}.unread-count{align-items:center;background:var(--info-600);border-radius:9px;color:#fff;display:flex;font-size:11px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:0 5px}.empty-state{color:#5f6368;height:100%;padding:32px}.empty-state svg{stroke:#dadce0;height:64px;margin-bottom:16px;width:64px}.empty-state p{font-size:14px;margin:0 0 16px}.empty-state button{background:var(--info-600);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background .2s}.empty-state button:hover{background:#1557b0}.users-list{flex:1 1;overflow-y:auto}.search-box{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid #e0e0e0;display:flex;gap:10px;padding:12px 16px}.search-box svg{stroke:#5f6368;flex-shrink:0;height:18px;width:18px}.search-box input{background:none;border:none;flex:1 1;outline:none}.search-box input::placeholder{color:#9aa0a6}.user-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background .15s}.user-item:hover{background:var(--bg-tertiary)}.user-info{flex:1 1}.user-name{color:#202124;display:block;font-size:14px;font-weight:500;margin-bottom:2px}.user-dept{color:#5f6368;font-size:12px}.messages-container{background:var(--bg-tertiary);flex:1 1;overflow-y:auto;padding:16px}.empty-chat,.loading-messages{align-items:center;color:#5f6368;display:flex;font-size:14px;height:100%;justify-content:center}.message{display:flex;margin-bottom:8px}.message.sent{justify-content:flex-end}.message.received{justify-content:flex-start}.message-bubble{border-radius:18px;max-width:75%;padding:10px 14px;position:relative}.message.sent .message-bubble{background:var(--info-600);border-bottom-right-radius:4px;color:#fff}.message.received .message-bubble{background:var(--bg-secondary);border-bottom-left-radius:4px;box-shadow:0 1px 2px #0000001a;color:#202124}.message-bubble p{word-wrap:break-word;font-size:14px;line-height:1.4;margin:0}.message-time{display:block;font-size:10px;margin-top:4px;opacity:.7;text-align:right}.message-input-form{align-items:center;background:var(--bg-secondary);border-top:1px solid #e0e0e0;display:flex;gap:8px;padding:12px 16px}.message-input-form input{border:1px solid #e0e0e0;border-radius:24px;flex:1 1;font-size:14px;outline:none;padding:10px 16px;transition:border-color .2s}.message-input-form input:focus{border-color:var(--info-600)}.message-input-form button{align-items:center;background:var(--info-600);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background .2s;width:40px}.message-input-form button:hover:not(:disabled){background:#1557b0}.message-input-form button:disabled{background:#dadce0;cursor:not-allowed}.message-input-form button svg{height:18px;width:18px}.conversations-list::-webkit-scrollbar,.messages-container::-webkit-scrollbar,.users-list::-webkit-scrollbar{width:6px}.conversations-list::-webkit-scrollbar-track,.messages-container::-webkit-scrollbar-track,.users-list::-webkit-scrollbar-track{background:#0000}.conversations-list::-webkit-scrollbar-thumb,.messages-container::-webkit-scrollbar-thumb,.users-list::-webkit-scrollbar-thumb{background:#dadce0;border-radius:3px}@media (max-width:480px){.company-chat-container{bottom:16px;right:80px}.chat-panel{bottom:65px;height:calc(100vh - 100px);max-height:550px;right:-60px;width:calc(100vw - 32px)}.chat-fab{height:50px;width:50px}}.time-tracker{align-items:center;background:var(--bg-tertiary);border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;margin-right:12px;padding:8px 12px}.time-tracker-display{align-items:center;display:flex;gap:12px}.current-time{align-items:center;background:var(--bg-secondary);border-radius:6px;box-shadow:0 1px 2px #0000000d;color:var(--text-primary);display:flex;font-family:Courier New,monospace;font-size:16px;font-weight:600;gap:6px;padding:6px 12px}.current-time svg{color:var(--info-500)}.status-badge{border-radius:6px;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.status-working{background:#d4edda;color:#155724}.status-break{background:#fff3cd;color:#856404}.status-logged-out{background:#e9ecef;color:#6c757d}.status-dot{animation:pulse 2s infinite;border-radius:50%;height:8px;width:8px}.status-working .status-dot{background:#28a745}.status-break .status-dot{background:#ffc107}.status-logged-out .status-dot{background:#6c757d}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.elapsed-time{background:var(--bg-secondary);border-radius:6px;box-shadow:0 1px 2px #0000000d;color:var(--text-primary);font-family:Courier New,monospace;font-size:16px;font-weight:600;padding:6px 12px}.clock-btn{align-items:center;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.clock-btn:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.clock-in-btn{background:linear-gradient(135deg,#28a745,#20c997)}.clock-in-btn:hover{background:linear-gradient(135deg,#218838,#1ea080)}.clock-out-btn{background:linear-gradient(135deg,#dc3545,#c82333)}.clock-out-btn:hover{background:linear-gradient(135deg,#c82333,#bd2130)}.end-break-btn{background:linear-gradient(135deg,#17a2b8,#138496)}.end-break-btn:hover{background:linear-gradient(135deg,#138496,#117a8b)}.break-buttons{display:flex;gap:6px}.break-btn{align-items:center;background:var(--bg-secondary);border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:4px;padding:6px 10px;transition:all .2s ease}.break-btn:hover{background:var(--bg-tertiary);border-color:#adb5bd}.break-btn.active{background:#fff3cd;border-color:#ffc107;color:#856404}.settings-btn{align-items:center;background:#e9ecef;border:none;border-radius:6px;color:#6c757d;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.settings-btn:hover{background:#dee2e6;color:#495057}.wfh-label,.wfh-toggle{align-items:center;display:flex}.wfh-label{background:var(--bg-secondary);border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;font-size:13px;gap:6px;padding:6px 10px;transition:all .2s ease}.wfh-label:hover{background:#f8f9ff;border-color:#6c63ff}.wfh-label input[type=checkbox]{accent-color:#6c63ff;cursor:pointer;height:16px;width:16px}.wfh-label span{font-weight:500}.wfh-indicator{align-items:center;display:flex}.wfh-badge{background:linear-gradient(135deg,#6c63ff,#4834d4);border-radius:4px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px}.late-arrival-indicator{align-items:center;display:flex}.late-badge{background:linear-gradient(135deg,#ffc107,#e0a800);border-radius:4px;color:#212529;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px}@media (max-width:768px){.time-tracker{margin-right:8px;padding:6px 8px}.time-tracker-display{gap:8px}.current-time,.elapsed-time{font-size:14px;padding:4px 8px}.status-badge{font-size:11px;padding:4px 8px}.clock-btn{font-size:12px;padding:6px 10px}.break-btn{font-size:11px;padding:4px 8px}.break-btn span{display:none}.settings-btn{height:32px;width:32px}}@media (max-width:480px){.time-tracker{margin-bottom:8px;margin-right:0;width:100%}.time-tracker-display{flex-wrap:wrap;justify-content:space-between;width:100%}}.modal-overlay{animation:fadeIn .2s ease;z-index:500;z-index:var(--z-modal-backdrop,500)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.break-settings-modal{animation:slideUp .3s ease;background:var(--bg-secondary);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:24px}.modal-header h2{font-weight:600}.close-btn{background:var(--bg-tertiary);border-radius:8px;color:var(--text-muted);transition:all .2s ease}.close-btn:hover{background:var(--border-light)}.modal-body{padding:24px}.awareness-banner{align-items:center;background:var(--info-50);border:1px solid var(--info-100);border-radius:8px;color:var(--info-700);display:flex;font-size:13px;gap:10px;line-height:1.5;margin-bottom:20px;padding:12px 16px}.awareness-banner svg{color:var(--info-500);flex-shrink:0}.modal-description{color:var(--text-muted);font-size:14px;margin:0 0 24px}.setting-info{color:var(--text-muted);font-size:12px;font-style:italic;line-height:1.4;margin:12px 0 0}.break-timer-display{align-items:center;background:linear-gradient(135deg,var(--primary-500) 0,var(--primary-700) 100%);border-radius:12px;display:flex;gap:20px;margin-bottom:32px;padding:24px}.timer-circle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:50%;display:flex;height:100px;justify-content:center;width:100px}.timer-inner{color:#fff}.timer-inner,.timer-text{align-items:center;display:flex;flex-direction:column}.timer-text{margin-top:4px}.timer-value{font-size:28px;font-weight:700;line-height:1}.timer-label{font-size:11px;letter-spacing:1px;opacity:.9;text-transform:uppercase}.timer-info{flex:1 1}.timer-title{color:#fff;font-size:14px;font-weight:500;margin-bottom:8px;opacity:.9}.timer-status{color:#fff;font-size:20px;font-weight:600}.timer-status.warning{color:var(--warning-400)}.settings-section{display:flex;flex-direction:column;gap:28px}.setting-group{background:var(--bg-tertiary);border-radius:12px;padding:20px}.setting-label{align-items:center;color:var(--text-primary);display:flex;font-size:15px;font-weight:600;gap:10px;margin-bottom:16px}.setting-label svg{color:var(--primary-500)}.range-control{align-items:center;display:flex;gap:16px;margin-bottom:8px}.range-slider{-webkit-appearance:none;background:linear-gradient(to right,var(--primary-500) 0,var(--primary-500) 50%,var(--border-light) 50%,var(--border-light) 100%);border-radius:3px;flex:1 1;height:6px;outline:none}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--bg-secondary);border:3px solid var(--primary-500);border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:20px;-webkit-transition:all .2s ease;transition:all .2s ease;width:20px}.range-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 8px #00000026;transform:scale(1.1)}.range-slider::-moz-range-thumb{background:var(--bg-secondary);border:3px solid var(--primary-500);border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:20px;-moz-transition:all .2s ease;transition:all .2s ease;width:20px}.range-slider::-moz-range-thumb:hover{box-shadow:0 4px 8px #00000026;transform:scale(1.1)}.range-slider.disabled{background:var(--border-light);cursor:not-allowed;opacity:.5}.range-slider.disabled::-webkit-slider-thumb{border-color:var(--border-default);cursor:not-allowed}.range-slider.disabled::-moz-range-thumb{border-color:var(--border-default);cursor:not-allowed}.frozen-banner{background:var(--warning-50);border-color:var(--warning-100);color:var(--warning-700)}.frozen-banner svg{color:var(--warning-500)}.range-value{color:var(--primary-500);font-size:16px;font-weight:600;min-width:80px;text-align:right}.range-limits{color:var(--text-muted);display:flex;font-size:12px;justify-content:space-between}.alert{align-items:center;border-radius:8px;display:flex;font-size:14px;font-weight:500;gap:10px;margin-top:20px;padding:12px 16px}.alert-error{background:var(--danger-50);border:1px solid var(--danger-100);color:var(--danger-700)}.alert-success{background:var(--success-50);border:1px solid var(--success-100);color:var(--success-700)}.modal-footer{gap:12px;padding:24px}.btn-primary,.btn-secondary{border-radius:8px;font-size:15px;font-weight:500;padding:12px 24px;transition:all .2s ease}.btn-secondary{background:var(--bg-tertiary)}.btn-secondary:hover{background:var(--border-light)}.btn-primary{background:var(--primary);box-shadow:0 4px 12px #10b9814d}.btn-primary:hover{box-shadow:0 6px 16px #10b98166;transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;transform:none}@media (max-width:768px){.modal-overlay{padding:12px}.modal-header{padding:20px}.modal-header h2{font-size:20px}.modal-body{padding:20px}.break-timer-display{flex-direction:column;padding:20px;text-align:center}.timer-info{width:100%}.settings-section{gap:20px}.setting-group{padding:16px}.modal-footer{flex-direction:column-reverse;padding:20px}.btn-primary,.btn-secondary{width:100%}}@media (max-width:480px){.modal-header h2{font-size:18px}.timer-circle{height:80px;width:80px}.timer-value{font-size:24px}.range-control{gap:12px}.range-value{font-size:14px;min-width:70px}}.attendance-dashboard{animation:att-enter .35s ease;background:var(--bg-tertiary);min-height:calc(100vh - 80px);padding:var(--space-6)}@keyframes att-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.dashboard-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-6)}.dashboard-header h2{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.3px;margin:0 0 var(--space-1) 0}.dashboard-header p{color:var(--text-muted);font-size:var(--text-sm);margin:0}.stats-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:var(--space-8)}.stat-card{align-items:center;background:var(--surface-0);border-left:4px solid var(--border-default);box-shadow:var(--shadow-sm);display:flex;gap:var(--space-4);overflow:hidden;padding:var(--space-5);position:relative;transition:all .25s cubic-bezier(.25,.46,.45,.94)}.stat-card:after{border-radius:var(--radius-full);content:"";height:60px;opacity:.04;position:absolute;right:0;top:0;transform:translate(20px,-20px);transition:opacity var(--transition-normal);width:60px}.stat-card:hover{transform:translateY(-3px)}.stat-card:hover:after{opacity:.08}.stat-card:has(.present-icon){border-left-color:var(--success-500)}.stat-card:has(.present-icon):after{background:var(--success-500)}.stat-card:has(.work-hours-icon){border-left-color:var(--info-500)}.stat-card:has(.work-hours-icon):after{background:var(--info-500)}.stat-card:has(.overtime-icon){border-left-color:var(--warning-500)}.stat-card:has(.overtime-icon):after{background:var(--warning-500)}.stat-card:has(.punctuality-icon){border-left-color:var(--accent-500)}.stat-card:has(.punctuality-icon):after{background:var(--accent-500)}.stat-card:has(.average-icon){border-left-color:var(--primary-500)}.stat-card:has(.average-icon):after{background:var(--primary-500)}.stat-icon{align-items:center;border-radius:var(--radius-xl);display:flex;flex-shrink:0;height:48px;justify-content:center;transition:transform var(--transition-normal);width:48px}.stat-card:hover .stat-icon{transform:scale(1.08)}.present-icon{background:var(--success-100);color:var(--success-600)}.work-hours-icon{background:var(--info-100);color:var(--info-600)}.overtime-icon{background:var(--warning-100);color:var(--warning-600)}.punctuality-icon{background:var(--accent-100);color:var(--accent-600)}.average-icon{background:var(--primary-100);color:var(--primary-600)}.stat-content{flex:1 1;min-width:0}.stat-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.4px;margin-bottom:3px}.stat-value{font-feature-settings:"tnum";font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:var(--font-bold);line-height:1.2}.stat-subtitle{color:var(--text-muted);font-size:var(--text-xs);margin-top:3px}.tabs-container{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.tabs-nav{background:var(--surface-1);border-bottom:1px solid var(--border-light);display:flex;gap:var(--space-1);padding:var(--space-1)}.tab-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-2);padding:var(--space-3) var(--space-5);transition:all var(--transition-normal);white-space:nowrap}.tab-btn:hover{background:var(--surface-1);color:var(--text-primary)}.tab-btn.active{background:var(--accent-gradient);box-shadow:var(--shadow-sm);color:#fff}.tab-content{padding:var(--space-6)}.attendance-table-container{border-radius:var(--radius-lg);overflow-x:auto}.attendance-table{background:var(--surface-0);border-collapse:collapse;width:100%}.attendance-table th{-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);background:var(--surface-1);border-bottom:2px solid var(--border-light);color:var(--text-muted);font-size:11px;font-weight:var(--font-semibold);letter-spacing:.6px;padding:var(--space-3) var(--space-4);position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;white-space:nowrap}.attendance-table td{font-feature-settings:"tnum";border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--text-sm);font-variant-numeric:tabular-nums;padding:var(--space-3) var(--space-4)}.attendance-table tbody tr{transition:background var(--transition-fast)}.attendance-table tbody tr:nth-child(2n){background:var(--surface-1)}.attendance-table tbody tr:hover{background:var(--primary-50)}.attendance-table tbody tr:last-child td{border-bottom:none}.no-data{font-size:var(--text-base);font-style:italic;padding:var(--space-10)!important}.records-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-5)}.records-header h3{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.filter-btn{align-items:center;background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-full);box-shadow:0 1px 2px #0000000a;color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--transition-normal)}.filter-btn:hover{background:var(--accent-50);border-color:var(--accent-400);box-shadow:0 2px 6px #667eea1f;color:var(--accent-600)}.filter-panel{animation:slideDown .2s ease;background:var(--surface-1);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:var(--space-5);padding:var(--space-5)}.filter-row{grid-gap:var(--space-4);align-items:flex-end;display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.filter-group label{color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.5px;text-transform:uppercase}.filter-group input,.filter-group select{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);padding:var(--space-3) var(--space-3);transition:all var(--transition-fast)}.filter-group input:focus,.filter-group select:focus{border-color:var(--accent-500);box-shadow:0 0 0 3px var(--accent-100);outline:none}.filter-group input::placeholder{color:var(--text-muted)}.filter-actions{align-items:flex-end;display:flex;gap:var(--space-2)}.clear-filters-btn{align-items:center;background:#0000;border:1px solid var(--danger-500);border-radius:var(--radius-md);color:var(--danger-600);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-1);padding:var(--space-2) var(--space-4);transition:all var(--transition-normal)}.clear-filters-btn:hover{background:var(--danger-600);color:#fff}.status-badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:11px;font-weight:650;gap:5px;letter-spacing:.2px;padding:3px var(--space-3);text-transform:capitalize;white-space:nowrap}.status-badge:before{border-radius:var(--radius-full);content:"";flex-shrink:0;height:6px;width:6px}.status-working{background:var(--success-100);color:var(--success-700)}.status-working:before{background:var(--success-500)}.status-on_break{background:var(--warning-100);color:var(--warning-700)}.status-on_break:before{animation:pulse-dot 2s ease-in-out infinite;background:var(--warning-500)}.status-logged_out{background:var(--surface-2);color:var(--text-secondary)}.status-logged_out:before{background:var(--text-muted)}.status-present{background:var(--success-100);color:var(--success-700)}.status-present:before{background:var(--success-500)}.status-absent{background:var(--danger-100);color:var(--danger-700)}.status-absent:before{background:var(--danger-500)}.status-holiday{background:var(--accent-100);color:var(--accent-700)}.status-holiday:before{background:var(--accent-500)}.status-leave{background:var(--info-100);color:var(--info-700)}.status-leave:before{background:var(--info-500)}.office-badge-small,.wfh-badge-small{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.3px;padding:2px var(--space-3)}.wfh-badge-small{background:var(--info-50);color:var(--info-500)}.office-badge-small{background:var(--success-50);color:var(--success-500)}.edit-btn{align-items:center;background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--text-xs);gap:var(--space-1);justify-content:center;padding:6px 10px;transition:all var(--transition-fast)}.edit-btn:hover{background:var(--accent-50);border-color:var(--accent-300);box-shadow:0 2px 6px #667eea26;color:var(--accent-600);transform:translateY(-1px)}.badge-count{background:var(--danger-500);color:#fff;font-size:var(--text-xs);font-weight:var(--font-bold);height:20px;justify-content:center;margin-left:var(--space-1);min-width:20px;padding:0 var(--space-2)}.badge-count,.pending-count{align-items:center;border-radius:var(--radius-full);display:inline-flex}.pending-count{background:var(--warning-100);color:var(--warning-700);font-size:var(--text-sm);font-weight:var(--font-medium);padding:var(--space-1) var(--space-3)}.action-buttons{gap:var(--space-2)}.approve-btn,.reject-btn{align-items:center;border:none;border-radius:var(--radius-lg);cursor:pointer;display:inline-flex;font-size:11px;font-weight:650;gap:5px;letter-spacing:.2px;padding:6px 12px;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.approve-btn{background:var(--success-100);border:1px solid var(--success-200);color:var(--success-700)}.approve-btn:hover{background:var(--success-600);border-color:var(--success-600);box-shadow:0 3px 8px #05966940;color:#fff;transform:translateY(-1px)}.reject-btn{background:var(--danger-100);border:1px solid var(--danger-200);color:var(--danger-700)}.reject-btn:hover{background:var(--danger-600);border-color:var(--danger-600);box-shadow:0 3px 8px #dc262640;color:#fff;transform:translateY(-1px)}.approve-btn:disabled,.reject-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.reason-cell{color:var(--text-secondary);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-overlay{animation:att-modal-bg .2s ease;background:#0f172a99;padding:var(--space-4);z-index:var(--z-modal)}@keyframes att-modal-bg{0%{opacity:0}to{opacity:1}}.modal-content{animation:att-modal-in .25s cubic-bezier(.34,1.56,.64,1);background:var(--surface-0);border-radius:var(--radius-2xl);box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;max-width:480px}@keyframes att-modal-in{0%{opacity:0;transform:translateY(-16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:var(--space-5) var(--space-6)}.modal-header h3{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0}.close-btn{background:#0000;border-radius:var(--radius-md);color:var(--text-secondary);display:inline-flex;height:32px;transition:all var(--transition-fast);width:32px}.close-btn:hover{background:var(--surface-2)}.modal-body{padding:var(--space-6)}.modal-description{color:var(--text-secondary);font-size:var(--text-base);line-height:1.5;margin:0 0 var(--space-5) 0}.modal-footer{background:var(--surface-1);border-top:1px solid var(--border-light);display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-4) var(--space-6)}.form-group{margin-bottom:var(--space-4)}.form-group label{font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-2)}.form-group input,.form-group textarea{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-base);padding:var(--space-3);transition:all var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent-500);box-shadow:0 0 0 3px var(--accent-100)}.error-message,.success-message{font-size:var(--text-sm);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4)}.btn-primary,.btn-secondary{border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-3) var(--space-5);transition:all var(--transition-fast)}.btn-primary{background:var(--accent-gradient);color:#fff}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md);opacity:.9;transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:var(--surface-2);color:var(--text-secondary)}.btn-secondary:hover{background:var(--surface-3);color:var(--text-primary)}.changed-cell{background:var(--warning-50)!important;color:var(--warning-700);font-weight:var(--font-semibold)}.empty-state{flex-direction:column;padding:var(--space-12) var(--space-6);text-align:center}.empty-state,.empty-state-icon{align-items:center;display:flex;justify-content:center}.empty-state-icon{animation:att-float 3s ease-in-out infinite;background:linear-gradient(135deg,var(--surface-1) 0,var(--surface-2) 100%);border-radius:var(--radius-full);color:var(--text-muted);height:64px;margin-bottom:var(--space-4);width:64px}@keyframes att-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.empty-state-title{color:var(--text-primary);font-size:var(--text-base);font-weight:650;margin:0 0 var(--space-1) 0}.empty-state-description{color:var(--text-muted);font-size:var(--text-sm);margin:0;max-width:280px}.edit-summary{background:var(--surface-1);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-5);padding:var(--space-5)}.edit-summary h4{color:var(--text-primary);font-size:var(--text-sm);font-weight:650;letter-spacing:.4px;margin:0 0 var(--space-3) 0;text-transform:uppercase}.edit-comparison{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.comparison-row{align-items:center;display:flex;font-size:var(--text-sm);gap:var(--space-2)}.comparison-row .label{color:var(--text-muted);font-weight:var(--font-medium);width:60px}.comparison-row .original{color:var(--text-muted);text-decoration:line-through}.comparison-row .arrow{color:var(--text-muted)}.comparison-row .changed{color:var(--success-600);font-weight:var(--font-semibold)}.reason-display{border-top:1px solid var(--border-light);color:var(--text-secondary);font-size:var(--text-sm);padding-top:var(--space-3)}.reason-display strong{color:var(--text-primary)}.export-btn{align-items:center;background:var(--surface-0);border:1px solid var(--primary-200);border-radius:var(--radius-full);box-shadow:0 1px 2px #0000000a;color:var(--primary);cursor:pointer;display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.export-btn:hover:not(:disabled){background:var(--primary);border-color:var(--primary);box-shadow:0 3px 8px #10b98133;color:#fff;transform:translateY(-1px)}.export-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:992px){.stats-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat-card{padding:var(--space-4)}.stat-icon{height:40px;width:40px}.stat-value{font-size:var(--text-xl)}}@media (max-width:768px){.attendance-dashboard{padding:var(--space-4)}.dashboard-header h2{font-size:var(--text-2xl)}.stats-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;margin-bottom:var(--space-5)}.tabs-nav{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:var(--space-1)}.tab-btn{font-size:var(--text-xs);padding:var(--space-3) var(--space-4)}.tab-content{padding:var(--space-4)}.records-header{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.filter-row{gap:var(--space-3);grid-template-columns:1fr}.filter-actions{width:100%}.attendance-table{font-size:var(--text-xs)}.attendance-table td,.attendance-table th{padding:var(--space-3) var(--space-2)}}@media (max-width:480px){.attendance-dashboard{padding:var(--space-3)}.dashboard-header{margin-bottom:var(--space-4)}.dashboard-header h2{font-size:var(--text-xl)}.stats-grid{grid-template-columns:1fr}.stat-card{padding:var(--space-3)}.stat-icon{height:36px;width:36px}.stat-value{font-size:var(--text-lg)}.modal-content{margin:var(--space-4);max-height:calc(100vh - var(--space-8))}.modal-body,.modal-footer,.modal-header{padding:var(--space-4)}}.attendance-calendar-container{grid-gap:var(--space-6);animation:cal-enter .3s ease;display:grid;gap:var(--space-6);grid-template-columns:1.8fr 1fr;min-height:500px}@keyframes cal-enter{0%{opacity:0}to{opacity:1}}.calendar-section{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);padding:var(--space-6)}.calendar-header{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:var(--space-5)}.calendar-header h3{color:var(--text-primary);font-size:var(--text-xl);font-weight:700;letter-spacing:-.2px;margin:0 0 var(--space-1) 0}.calendar-subtitle{color:var(--text-muted);font-size:var(--text-sm);margin:0}.react-calendar{background:#0000;border:none;font-family:inherit;width:100%}.react-calendar__navigation{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-4)}.react-calendar__navigation__label{border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);padding:var(--space-2) var(--space-3);transition:background var(--transition-fast)}.react-calendar__navigation__label:hover{background:var(--surface-2)}.react-calendar__navigation__arrow{border-radius:var(--radius-md);color:var(--text-secondary);padding:var(--space-2);transition:all var(--transition-fast)}.react-calendar__navigation__arrow:hover{background:var(--surface-2);color:var(--text-primary)}.react-calendar__month-view__weekdays{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.5px;text-transform:uppercase}.react-calendar__month-view__weekdays__weekday{padding:var(--space-2) 0;text-align:center}.react-calendar__month-view__days__day{align-items:center;aspect-ratio:1;border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:2px;justify-content:center;padding:var(--space-2);transition:all var(--transition-fast)}.react-calendar__month-view__days__day:hover:not(.react-calendar__tile--disabled){background:var(--surface-2)!important}.react-calendar__tile--now{background:var(--accent-100)!important;color:var(--accent-700);font-weight:var(--font-semibold)}.react-calendar__tile--active{background:var(--accent-gradient)!important;color:#fff}.react-calendar__tile--focus{outline:2px solid var(--accent-500);outline-offset:2px}.calendar-day{position:relative;transition:all var(--transition-fast)}.present-day{background:var(--success-100)!important}.present-day:hover{background:var(--success-200)!important}.absent-day{background:var(--danger-100)!important}.absent-day:hover{background:var(--danger-200)!important}.holiday-day{background:var(--accent-100)!important}.holiday-day:hover{background:var(--accent-200)!important}.leave-day{background:var(--info-100)!important}.leave-day:hover{background:var(--info-200)!important}.weekend-day{background:var(--surface-2)!important;color:var(--text-muted)}.weekend-day:hover{background:var(--surface-3)!important}.half-day{background:var(--warning-100)!important}.half-day:hover{background:var(--warning-200)!important}.upcoming-day{background:var(--surface-1)!important;color:var(--text-muted)}.upcoming-day:hover{background:var(--surface-2)!important}.pending-day{background:var(--info-100)!important}.pending-day:hover{background:var(--info-200)!important}.calendar-day-number{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium)}.upcoming-day .calendar-day-number,.weekend-day .calendar-day-number{color:var(--text-muted)}.calendar-day-content{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.work-hours-badge{font-feature-settings:"tnum";-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172acc;bottom:3px;font-size:8px;font-variant-numeric:tabular-nums;font-weight:700;left:50%;letter-spacing:.3px;padding:1px 5px;transform:translateX(-50%)}.attendance-indicator,.work-hours-badge{border-radius:var(--radius-full);color:#fff;position:absolute}.attendance-indicator{align-items:center;box-shadow:0 1px 3px #0000001f;display:flex;height:15px;justify-content:center;line-height:1;pointer-events:none;right:3px;top:3px;width:15px}.present-day .attendance-indicator{background:var(--success-600)}.absent-day .attendance-indicator{background:var(--danger-600)}.half-day .attendance-indicator{background:var(--warning-600)}.holiday-day .attendance-indicator{background:var(--accent-600)}.leave-day .attendance-indicator,.pending-day .attendance-indicator{background:var(--info-600)}.calendar-legend{border-top:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-5)}.legend-item{align-items:center;background:var(--surface-1);border:1px solid var(--border-light);border-radius:var(--radius-full);display:inline-flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast);white-space:nowrap}.legend-item:hover{background:var(--surface-2);transform:translateY(-1px)}.legend-dot{border-radius:var(--radius-full);flex-shrink:0;height:10px;width:10px}.legend-dot.present{background:var(--success-500)}.legend-dot.absent{background:var(--danger-500)}.legend-dot.holiday{background:var(--accent-500)}.legend-dot.leave{background:var(--info-500)}.legend-dot.half-day{background:var(--warning-500)}.legend-dot.pending{background:var(--info-500)}.legend-dot.weekend{background:var(--surface-4)}.legend-dot.upcoming{background:var(--surface-3)}.legend-item:has(.legend-dot.upcoming),.legend-item:has(.legend-dot.weekend){min-height:auto}.legend-icon{color:var(--text-muted);flex-shrink:0}.legend-label{color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap}.details-section{background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);height:-webkit-fit-content;height:fit-content;padding:var(--space-6);position:-webkit-sticky;position:sticky;top:var(--space-4)}.details-section h3{color:var(--text-primary);font-size:var(--text-lg);font-weight:700;letter-spacing:-.2px;margin:0 0 var(--space-5) 0}.date-details{animation:cal-detail-in .2s ease;min-height:280px}@keyframes cal-detail-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.date-details.empty{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;height:280px;justify-content:center;text-align:center}.empty-icon{color:var(--text-muted);margin-bottom:var(--space-4);opacity:.35}.date-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-5);padding-bottom:var(--space-4)}.date-header h3{color:var(--text-primary);font-size:var(--text-sm);font-weight:600;margin:0}.status-pill{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.5px;padding:var(--space-1) var(--space-3);text-transform:uppercase}.status-pill.status-present{background:var(--success-100);color:var(--success-700)}.status-pill.status-absent{background:var(--danger-100);color:var(--danger-700)}.status-pill.status-holiday{background:var(--accent-100);color:var(--accent-700)}.status-pill.status-leave{background:var(--info-100);color:var(--info-700)}.status-pill.status-weekend{background:var(--surface-2);color:var(--text-secondary)}.status-pill.status-half-day{background:var(--warning-100);color:var(--warning-700)}.status-pill.status-upcoming{background:var(--surface-1);color:var(--text-secondary)}.status-pill.status-pending{background:var(--info-100);color:var(--info-700)}.detail-grid{grid-gap:var(--space-3);display:grid;gap:var(--space-3)}.detail-item{align-items:center;background:var(--surface-1);border:1px solid var(--border-light);border-radius:var(--radius-xl);display:flex;gap:var(--space-3);padding:var(--space-3);transition:all var(--transition-fast)}.detail-item:hover{background:var(--surface-0);border-color:var(--border-default);box-shadow:var(--shadow-xs)}.detail-icon{align-items:center;border-radius:var(--radius-xl);display:flex;flex-shrink:0;height:38px;justify-content:center;width:38px}.login-icon{background:var(--success-100);color:var(--success-600)}.logout-icon{background:var(--danger-100);color:var(--danger-600)}.detail-content .work-hours-icon,.detail-icon.work-hours-icon{background:var(--info-100);color:var(--info-600)}.detail-icon.overtime-icon{background:var(--warning-100);color:var(--warning-600)}.break-icon{background:var(--accent-100);color:var(--accent-600)}.detail-content{flex:1 1}.detail-label{color:var(--text-muted);font-size:10px;font-weight:650;letter-spacing:.6px;margin-bottom:2px;text-transform:uppercase}.detail-value{font-feature-settings:"tnum";color:var(--text-primary);font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-weight:700}.holiday-info,.leave-info,.pending-info,.upcoming-info,.weekend-info{align-items:center;border-left:4px solid;border-radius:var(--radius-xl);display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-3);padding:var(--space-4) var(--space-5)}.holiday-info{background:var(--accent-50);border-left-color:var(--accent-500);color:var(--accent-700)}.leave-info{background:var(--info-50);border-left-color:var(--info-500);color:var(--info-700)}.upcoming-info,.weekend-info{background:var(--surface-1);border-left-color:var(--surface-4);color:var(--text-secondary)}.pending-info{background:var(--info-50);border-left-color:var(--info-500);color:var(--info-700)}.half-day-info{background:var(--warning-50);border-left:4px solid var(--warning-500);border-radius:var(--radius-xl);padding:var(--space-4)}.half-day-info .detail-icon{background:var(--warning-100);color:var(--warning-600)}.loading{color:var(--text-muted);font-size:var(--text-base);padding:var(--space-10);text-align:center}@media (max-width:1200px){.attendance-calendar-container{grid-template-columns:1.5fr 1fr}}@media (max-width:992px){.attendance-calendar-container{grid-template-columns:1fr}.calendar-legend{justify-content:center}.details-section{position:static}}@media (max-width:768px){.calendar-section{padding:var(--space-4)}.calendar-header h3{font-size:var(--text-lg)}.details-section{padding:var(--space-4)}.date-header{align-items:flex-start;flex-direction:column}.calendar-legend,.date-header{gap:var(--space-2)}.legend-item{padding:var(--space-1) var(--space-2)}.legend-label{font-size:10px}.attendance-indicator{height:14px;right:1px;top:1px;width:14px}.detail-icon{height:36px;width:36px}}@media (max-width:480px){.calendar-section,.details-section{padding:var(--space-3)}.calendar-legend{gap:var(--space-1)}.legend-item{padding:4px 8px}.legend-icon{display:none}}.whos-in{display:flex;flex-direction:column;gap:var(--space-6)}.whos-in-toolbar{flex-wrap:wrap;justify-content:space-between}.whos-in-live-indicator,.whos-in-toolbar{align-items:center;display:flex;gap:var(--space-2)}.whos-in-live-indicator{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium)}.live-dot{animation:pulse-dot 2s ease-in-out infinite;background:var(--success-500);border-radius:var(--radius-full);height:8px;width:8px}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 0 #10b98166;opacity:1}50%{box-shadow:0 0 0 4px #10b98100;opacity:.7}}.whos-in-toolbar-right{align-items:center;display:flex;gap:var(--space-3)}.last-updated{color:var(--text-muted);font-size:var(--text-xs)}.refresh-btn{align-items:center;background:var(--surface-0);border:1px solid var(--border-light);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-medium);gap:var(--space-1);padding:var(--space-1) var(--space-3);transition:all var(--transition-fast)}.refresh-btn:hover:not(:disabled){background:var(--surface-1);border-color:var(--accent-400);color:var(--accent-600)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.refresh-btn .spin{animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.whos-in-summary{display:flex;gap:var(--space-4)}.summary-item{align-items:center;border:1px solid var(--border-light);border-radius:var(--radius-xl);display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:var(--space-5) var(--space-4);position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.summary-item:after{bottom:0;content:"";height:3px;left:0;position:absolute;right:0}.summary-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.summary-item--working{background:var(--success-50);border-color:var(--success-100)}.summary-item--working:after{background:var(--success-500)}.summary-item--break{background:var(--warning-50);border-color:var(--warning-100)}.summary-item--break:after{background:var(--warning-500)}.summary-item--offline{background:var(--surface-1);border-color:var(--border-light)}.summary-item--offline:after{background:var(--surface-4)}.summary-count{font-feature-settings:"tnum";font-size:var(--text-4xl);font-variant-numeric:tabular-nums;font-weight:800;line-height:1}.summary-item--working .summary-count{color:var(--success-600)}.summary-item--break .summary-count{color:var(--warning-600)}.summary-item--offline .summary-count{color:var(--text-muted)}.summary-label{color:var(--text-secondary);font-size:var(--text-xs);font-weight:650;letter-spacing:.5px;margin-top:var(--space-2);text-transform:uppercase}.whos-in-columns{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(3,1fr)}.whos-in-column{display:flex;flex-direction:column;gap:var(--space-3)}.column-header{align-items:center;border-bottom:2px solid var(--border-light);color:var(--text-primary);display:flex;font-size:var(--text-sm);font-weight:650;gap:var(--space-2);letter-spacing:.2px;margin-bottom:var(--space-1);padding-bottom:var(--space-3)}.column-header--working{border-bottom-color:var(--success-300)}.column-header--break{border-bottom-color:var(--warning-300)}.column-header--offline{border-bottom-color:var(--surface-3)}.column-dot{border-radius:var(--radius-full);flex-shrink:0;height:8px;width:8px}.column-dot--working{background:var(--success-500)}.column-dot--break{background:var(--warning-500)}.column-dot--offline{background:var(--text-muted)}.column-empty{background:var(--surface-1);border:1px dashed var(--border-light);border-radius:var(--radius-xl);color:var(--text-muted);font-size:var(--text-xs);font-style:italic;padding:var(--space-8) var(--space-4);text-align:center}.person-card{align-items:flex-start;background:var(--surface-0);border:1px solid var(--border-light);border-left:3px solid #0000;border-radius:var(--radius-xl);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);transition:all .2s cubic-bezier(.25,.46,.45,.94)}.person-card--working{border-left-color:var(--success-400)}.person-card--break{border-left-color:var(--warning-400)}.person-card--offline{border-left-color:var(--surface-3);opacity:.75}.person-card:hover{border-color:var(--border-default);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.person-card--offline:hover{opacity:1}.person-avatar{align-items:center;border-radius:var(--radius-xl);color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:800;height:36px;justify-content:center;letter-spacing:.3px;width:36px}.person-avatar--working{background:linear-gradient(135deg,var(--success-400) 0,var(--success-600) 100%)}.person-avatar--break{background:linear-gradient(135deg,var(--warning-400) 0,var(--warning-600) 100%)}.person-avatar--offline{background:var(--surface-3);color:var(--text-secondary)}.person-info{flex:1 1;min-width:0}.person-name{align-items:center;color:var(--text-primary);display:flex;flex-wrap:wrap;font-size:var(--text-sm);font-weight:600;gap:var(--space-2)}.wfh-tag{align-items:center;background:var(--info-50);border:1px solid var(--info-100);border-radius:var(--radius-full);color:var(--info-600);display:inline-flex;font-size:9px;font-weight:700;gap:3px;letter-spacing:.3px;padding:2px 7px;text-transform:uppercase}.person-meta{color:var(--text-secondary);font-size:var(--text-xs);margin-top:1px}.person-team{color:var(--text-muted);font-size:var(--text-xs)}.person-login-time{color:var(--text-muted);font-size:10px;margin-top:2px}.person-break-info{align-items:center;display:flex;gap:var(--space-2);margin-top:4px}.break-type-label{background:var(--warning-50);border:1px solid var(--warning-100);border-radius:var(--radius-full);color:var(--warning-700);font-size:9px;font-weight:700;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase}.break-timer{font-feature-settings:"tnum";color:var(--warning-600);font-family:JetBrains Mono,Fira Code,monospace;font-size:11px;font-variant-numeric:tabular-nums;font-weight:800}.skeleton-summary-item{border-radius:var(--radius-lg);flex:1 1;height:80px}.skeleton-card{border-radius:var(--radius-lg);height:72px}@media (max-width:992px){.whos-in-columns{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.whos-in-summary{flex-direction:row;gap:var(--space-3)}.summary-item{padding:var(--space-3) var(--space-2)}.summary-count{font-size:var(--text-2xl)}}@media (max-width:640px){.whos-in-columns{grid-template-columns:1fr}}.notification-icon-container{display:inline-block;position:relative}.notification-icon-btn{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:8px;position:relative;transition:all .2s ease}.notification-icon-btn:hover{background-color:#f1f5f9;color:#1e293b}.notification-badge{align-items:center;background-color:#ef4444;border-radius:10px;box-shadow:0 2px 4px #0003;color:#fff;display:flex;font-size:10px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:2px 6px;position:absolute;right:0;top:0;transform:translate(25%,-25%)}.notification-dropdown{animation:slideDown .2s ease;background:var(--bg-secondary);border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 25px #00000026;display:flex;flex-direction:column;max-height:500px;position:absolute;right:0;top:calc(100% + 10px);width:360px;z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-dropdown-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:12px 16px}.notification-dropdown-header h3{color:#1e293b;font-size:15px;font-weight:600;margin:0}.header-actions{display:flex;flex-wrap:wrap;gap:8px}.mark-all-read-btn{align-items:center;background:none;border:none;border-radius:4px;color:#3b82f6;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px;transition:all .2s ease}.mark-all-read-btn:hover{background-color:#eff6ff;color:#2563eb}.mark-all-read-btn svg{height:10px;width:10px}.clear-all-btn{align-items:center;background:none;border:none;border-radius:4px;color:#ef4444;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px;transition:all .2s ease}.clear-all-btn:hover{background-color:#fee2e2;color:#dc2626}.clear-all-btn svg{height:10px;width:10px}.notification-dropdown-body{flex:1 1;max-height:400px;overflow-y:auto}.no-notifications{color:#94a3b8;margin:0;padding:30px;text-align:center}.notification-list{padding:4px 0}.notification-item{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;gap:8px;padding:12px 16px;transition:background-color .2s ease}.notification-item:hover{background-color:#f8fafc}.notification-item.unread{background-color:#eff6ff}.notification-item.unread:hover{background-color:#dbeafe}.notification-item.read{opacity:.8}.notification-content{flex:1 1;min-width:0}.notification-title{word-wrap:break-word;color:#1e293b;font-size:14px;font-weight:600;margin-bottom:4px}.notification-message{word-wrap:break-word;color:#475569;font-size:13px;line-height:1.4}.notification-time{color:#94a3b8;font-size:11px;margin-top:6px}.mark-read-btn{align-items:center;background:none;border:none;border-radius:4px;color:#3b82f6;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px;transition:all .2s ease}.mark-read-btn:hover{background-color:#dbeafe;color:#2563eb}.mark-read-btn svg{height:10px;width:10px}.notification-dropdown-footer{border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;padding:8px 12px}.close-btn,.notification-dropdown-footer .close-btn{align-items:center;background:none!important;border:none!important;border-radius:4px!important;color:#64748b!important;cursor:pointer;display:flex!important;font-size:11px!important;font-weight:500!important;gap:2px;height:auto!important;justify-content:flex-start;padding:3px 6px!important;transition:all .2s ease;width:auto!important}.close-btn:hover,.notification-dropdown-footer .close-btn:hover{background-color:#f1f5f9!important;color:#1e293b!important}.close-btn svg,.notification-dropdown-footer .close-btn svg{height:10px!important;width:10px!important}.notification-dropdown-body::-webkit-scrollbar{width:6px}.notification-dropdown-body::-webkit-scrollbar-track{background:#f1f5f9}.notification-dropdown-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.notification-dropdown-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.notification-dropdown{right:-100px;width:300px}.notification-dropdown-header{align-items:flex-start;flex-direction:column}.header-actions{justify-content:flex-start;width:100%}}.celebration-banner{background:linear-gradient(135deg,var(--warning-50) 0,var(--warning-100) 40%,var(--warning-100) 100%);border:1px solid var(--warning-500);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);margin-bottom:var(--space-5);overflow:hidden;position:relative}.celebration-banner-confetti{bottom:0;left:0;overflow:hidden;pointer-events:none;position:absolute;right:0;top:0}.confetti-piece{animation:confetti-fall 4s ease-in-out infinite;border-radius:2px;height:8px;opacity:.5;position:absolute;width:8px}.confetti-0{animation-delay:0s;animation-duration:3.5s;background:var(--danger-500);left:5%;top:-10px}.confetti-1{animation-delay:.5s;animation-duration:4s;background:var(--accent-500);left:20%;top:-10px}.confetti-2{animation-delay:1s;animation-duration:3.8s;background:var(--info-500);left:40%;top:-10px}.confetti-3{animation-delay:.3s;animation-duration:4.2s;background:var(--success-500);left:60%;top:-10px}.confetti-4{animation-delay:.8s;animation-duration:3.6s;background:var(--warning-500);left:75%;top:-10px}.confetti-5{animation-delay:1.2s;animation-duration:4.1s;background:var(--danger-600);left:90%;top:-10px}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-10px) rotate(0deg)}10%{opacity:.6}50%{opacity:.4}to{opacity:0;transform:translateY(80px) rotate(1turn)}}.celebration-banner-content{align-items:center;display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);position:relative;z-index:1}.celebration-banner-icon{align-items:center;background:var(--surface-0);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--warning-600);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.celebration-banner-text{align-items:center;color:var(--warning-700);display:flex;flex:1 1;flex-wrap:wrap;font-size:var(--text-base);font-weight:var(--font-medium);gap:var(--space-1)}.banner-highlight{align-items:center;display:inline-flex;font-weight:var(--font-semibold);gap:var(--space-1)}.banner-highlight svg{flex-shrink:0}.banner-separator{color:var(--warning-600);margin:0 2px}.celebration-banner-action{background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;flex-shrink:0;font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-2) var(--space-4);transition:all var(--transition-normal);white-space:nowrap}.celebration-banner-action:hover{box-shadow:var(--shadow-md);opacity:.95;transform:translateY(-1px)}.celebration-banner-close{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--warning-600);cursor:pointer;display:flex;flex-shrink:0;opacity:.6;padding:var(--space-1);transition:opacity var(--transition-fast)}.celebration-banner-close:hover{opacity:1}@media (max-width:640px){.celebration-banner-content{flex-wrap:wrap;padding:var(--space-3) var(--space-4)}.celebration-banner-text{flex-basis:calc(100% - 60px);font-size:var(--text-sm)}.celebration-banner-action{margin-top:var(--space-1);text-align:center;width:100%}}.dashboard-layout{background:var(--bg-primary);display:flex;min-height:100vh}.sidebar{background:var(--bg-sidebar);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:width var(--transition-slow);width:260px;z-index:var(--z-fixed)}.sidebar.collapsed{width:72px}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;min-height:72px;padding:20px 16px}.sidebar .company-brand{align-items:center;display:flex;gap:12px;overflow:hidden}.sidebar .brand-icon{align-items:center;background:var(--primary);border-radius:var(--radius-lg);color:#fff;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.sidebar .brand-icon svg{height:20px;width:20px}.sidebar .brand-name{color:#fff;font-size:17px;font-weight:600;letter-spacing:-.3px;white-space:nowrap}.sidebar-toggle{align-items:center;background:#ffffff14;border:none;border-radius:var(--radius-md);color:#ffffffb3;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all var(--transition-fast);width:32px}.sidebar-toggle:hover{background:#ffffff1f;color:#fff}.sidebar-toggle svg{height:18px;width:18px}.sidebar.collapsed .sidebar-header{justify-content:center;padding:20px 12px}.sidebar.collapsed .sidebar-toggle{background:var(--bg-sidebar);border:1px solid var(--border-light);border-radius:var(--radius-full);box-shadow:var(--shadow-md);height:28px;position:absolute;right:-14px;top:26px;width:28px}.nav-section-label{color:#ffffff59;font-size:11px;font-weight:600;letter-spacing:1px;overflow:hidden;padding:16px 14px 6px;text-transform:uppercase;white-space:nowrap}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow-y:auto;padding:8px 12px 16px}.sidebar-nav .nav-item{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:#ffffffa6;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:10px 14px;position:relative;text-align:left;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:100%}.sidebar-nav .nav-item:hover{background:#ffffff14;color:#fff}.sidebar-nav .nav-item.active{background:#ffffff1a;color:#fff;font-weight:500}.sidebar-nav .nav-item.active:before{background:var(--primary);border-radius:0 3px 3px 0;bottom:6px;content:"";left:0;position:absolute;top:6px;width:3px}.sidebar-nav .nav-item .nav-icon{align-items:center;display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.sidebar-nav .nav-item .nav-icon svg{height:20px;width:20px}.sidebar-nav .nav-item .nav-label{overflow:hidden;white-space:nowrap}.sidebar-nav .nav-item .badge{background:var(--danger-500);border-radius:var(--radius-full);color:#fff;font-size:11px;font-weight:600;margin-left:auto;min-width:20px;padding:2px 8px;text-align:center}.sidebar.collapsed .nav-item{justify-content:center;padding:11px}.sidebar.collapsed .nav-item .badge{font-size:9px;min-width:16px;padding:2px 5px;position:absolute;right:4px;top:4px}.mobile-menu-toggle,.sidebar-overlay{display:none}.main-content{background:var(--bg-primary);flex:1 1;margin-left:260px;min-height:100vh;transition:margin-left var(--transition-slow)}.dashboard-layout.sidebar-collapsed .main-content{margin-left:72px}.top-header{backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);background:var(--overlay-light);border-bottom:1px solid var(--border-light);justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.breadcrumb,.top-header{align-items:center;display:flex}.breadcrumb{color:var(--text-muted);font-size:var(--text-xs);gap:var(--space-1);margin-top:var(--space-1)}.breadcrumb-separator{color:var(--border-dark)}.breadcrumb-current{color:var(--text-secondary);font-weight:var(--font-medium)}.top-header .user-info{display:flex;flex-direction:column;gap:4px}.top-header .greeting{color:var(--text-primary);font-size:18px;font-weight:600;letter-spacing:-.3px;margin:0}.top-header .role-badge{align-items:center;background:var(--primary-100);border-radius:var(--radius-full);color:var(--primary-700);display:inline-flex;font-size:12px;font-weight:500;margin:0;padding:4px 10px;width:-webkit-fit-content;width:fit-content}.top-header .role-badge.hr-badge{background:var(--warning-100);color:var(--warning-700)}.top-header .role-badge.admin-badge{background:var(--danger-100);color:var(--danger-700)}.top-header .role-badge.super-manager-badge{background:var(--success-100);color:var(--success-700)}.top-header .logout-btn{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all var(--transition-fast)}.top-header .logout-btn:hover{background:var(--bg-tertiary);border-color:var(--border-dark);color:var(--text-primary)}.top-header .logout-icon{align-items:center;display:flex}.top-header .logout-icon svg{height:18px;width:18px}.top-header .header-actions{align-items:center;display:flex;gap:12px}.dashboard-content{margin:0 auto;max-width:1400px;padding:24px}.dashboard-content.elegant-content{animation:contentEnter .25s ease-out;padding:var(--space-6)}.elegant-overview h2{color:var(--text-primary);font-size:22px;font-weight:600;letter-spacing:-.3px;margin-bottom:20px}.elegant-overview h3{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:16px}.stats-grid-modern{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:28px}.stat-card-modern{align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);display:flex;gap:16px;padding:20px;transition:all .25s cubic-bezier(.25,.46,.45,.94)}.stat-card-modern:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stat-card-modern .stat-icon{align-items:center;border-radius:var(--radius-lg);display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.stat-card-modern .stat-icon svg{height:24px;width:24px}.stat-card-modern.blue .stat-icon{background:var(--primary-100);color:var(--primary-600)}.stat-card-modern.orange .stat-icon{background:var(--warning-100);color:var(--warning-600)}.stat-card-modern.red .stat-icon{background:var(--danger-100);color:var(--danger-600)}.stat-card-modern.green .stat-icon{background:var(--success-100);color:var(--success-600)}.stat-card-modern.purple .stat-icon{background:var(--accent-100);color:var(--accent-500)}.stat-card-modern.teal .stat-icon{background:var(--info-100);color:var(--info-600)}.stat-card-modern .stat-content{flex:1 1;min-width:0}.stat-card-modern .stat-content h3{color:var(--text-secondary);font-size:12px;font-weight:500;letter-spacing:.3px;margin:0 0 4px;text-transform:uppercase}.stat-card-modern .stat-number{color:var(--text-primary);font-size:28px;font-weight:700;letter-spacing:-.5px;line-height:1.2;margin:0 0 2px}.stat-card-modern .stat-label{color:var(--text-muted);font-size:12px}.hr-info-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:28px}.hr-info-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:20px}.hr-info-card h3{align-items:center;border-bottom:1px solid var(--border-light);color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 16px;padding-bottom:12px}.hr-info-card h3 svg{color:var(--primary);height:18px;width:18px}.info-list{list-style:none;margin:0;padding:0}.info-list li{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:10px 0}.info-list li:last-child{border-bottom:none}.info-list .emp-name{color:var(--text-primary);font-size:14px;font-weight:500}.info-list .emp-detail{color:var(--text-muted);font-size:12px}.info-list .dept-name{color:var(--text-primary);font-size:14px}.info-list .dept-count{background:var(--primary-100);border-radius:var(--radius-full);color:var(--primary);font-size:13px;font-weight:600;padding:3px 10px}.info-list .birthday-icon{font-size:16px;margin-right:8px}.info-list .birthday-date{color:var(--text-muted);font-size:12px}.info-list .more-items{color:var(--primary);font-size:13px;font-weight:500;justify-content:center}.no-data{color:var(--text-muted);font-size:14px;padding:20px;text-align:center}.quick-actions-section{margin-top:24px}.quick-actions-section h3{align-items:center;color:var(--text-primary);display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:16px}.quick-actions-section h3 svg{color:var(--primary);height:20px;width:20px}.action-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.action-card{align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;padding:16px;text-align:left;transition:all var(--transition-fast)}.action-card:hover{border-color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.action-card .action-icon{align-items:center;background:var(--primary-100);border-radius:var(--radius-lg);color:var(--primary);display:flex;height:40px;justify-content:center;margin-bottom:12px;width:40px}.action-card .action-icon svg{height:20px;width:20px}.action-card .action-title{color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:4px}.action-card .action-desc{color:var(--text-muted);font-size:12px}.stats-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:24px}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:20px;transition:all var(--transition-fast)}.stat-card:hover{box-shadow:var(--shadow-md)}.stat-card h2{color:var(--text-primary);font-size:32px;font-weight:700;margin-bottom:8px}.stat-card p{color:var(--text-secondary);font-size:14px;font-weight:500;margin:0}.stat-card.blue{border-left:4px solid var(--primary)}.stat-card.green{border-left:4px solid var(--success-600)}.stat-card.red{border-left:4px solid var(--danger-600)}.stat-card.orange{border-left:4px solid var(--warning-600)}.dashboard-layout.hr-theme .sidebar-nav .nav-item.active:before{background:var(--warning-500)}.dashboard-layout.hr-theme .top-header .role-badge{background:var(--warning-100);color:var(--warning-700)}.dashboard-layout.admin-theme .sidebar-nav .nav-item.active:before{background:var(--danger-500)}.dashboard-layout.admin-theme .top-header .role-badge{background:var(--danger-100);color:var(--danger-700)}.dashboard-layout.super-manager-theme .sidebar-nav .nav-item.active:before{background:var(--success-500)}.dashboard-layout.super-manager-theme .top-header .role-badge{background:var(--success-100);color:var(--success-700)}@media (max-width:1024px){.sidebar{width:240px}.main-content{margin-left:240px}.dashboard-layout.sidebar-collapsed .main-content{margin-left:72px}.stats-grid-modern{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (max-width:768px){.sidebar{width:72px}.sidebar .brand-name,.sidebar-nav .nav-item .nav-label{display:none}.sidebar-header{justify-content:center;padding:20px 12px}.sidebar-toggle{background:var(--bg-sidebar);border-radius:var(--radius-full);box-shadow:var(--shadow-md);position:absolute;right:-14px;top:26px}.sidebar-nav .nav-item{justify-content:center;padding:11px}.sidebar-nav .nav-item .badge{font-size:9px;padding:2px 5px;position:absolute;right:4px;top:4px}.main-content{margin-left:72px}.top-header{padding:12px 16px}.top-header .greeting{font-size:16px}.dashboard-content.elegant-content{padding:16px}.stats-grid-modern{gap:12px;grid-template-columns:repeat(2,1fr)}.stat-card-modern{padding:16px}.stat-card-modern .stat-number{font-size:24px}.sidebar:hover{width:260px}.sidebar:hover .brand-name,.sidebar:hover .nav-item .nav-label{display:block}.sidebar:hover .sidebar-header{justify-content:space-between;padding:20px 16px}.sidebar:hover .sidebar-toggle{border-radius:var(--radius-md);box-shadow:none;position:static}.sidebar:hover .nav-item{justify-content:flex-start;padding:11px 14px}.sidebar:hover .nav-item .badge{font-size:11px;padding:2px 8px;position:static}}@media (max-width:480px){.sidebar{transform:translateX(-100%);width:260px}.sidebar.mobile-open{transform:translateX(0)}.sidebar:hover{width:260px}.dashboard-layout.sidebar-collapsed .main-content,.main-content{margin-left:0}.mobile-menu-toggle{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;left:14px;position:fixed;top:14px;width:40px;z-index:calc(var(--z-fixed) + 1)}.mobile-menu-toggle svg{height:20px;width:20px}.top-header{padding:14px 14px 14px 64px}.top-header .greeting{font-size:15px}.top-header .role-badge{font-size:11px;padding:3px 8px}.top-header .logout-btn{font-size:13px;padding:8px 12px}.top-header .logout-btn span:not(.logout-icon){display:none}.dashboard-content.elegant-content{padding:14px}.stats-grid-modern{gap:12px}.action-grid,.hr-info-row,.stats-grid-modern{grid-template-columns:1fr}.sidebar-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:calc(var(--z-fixed) - 1)}.sidebar-overlay.active{display:block}}.dashboard-widgets{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:1fr 1fr}.dashboard-widgets .widget{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-5);transition:box-shadow var(--transition-normal)}.dashboard-widgets .widget:hover{box-shadow:var(--shadow-md)}.widget-full{grid-column:1/-1}.widget-header{justify-content:space-between;margin-bottom:var(--space-4)}.widget-header,.widget-title{align-items:center;display:flex}.widget-title{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);gap:var(--space-2)}.quick-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);grid-column:1/-1}.quick-action-btn{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-2);padding:10px 20px;transition:all var(--transition-normal)}.quick-action-btn:hover{background:var(--primary-50);border-color:var(--primary);color:var(--primary)}.kpi-cards{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.kpi-card{gap:var(--space-3);padding:var(--space-5)!important}.kpi-card,.kpi-icon{align-items:center;display:flex}.kpi-icon{border-radius:var(--radius-lg);flex-shrink:0;height:44px;justify-content:center;width:44px}.kpi-icon-blue{background:var(--info-100);color:var(--info-600)}.kpi-icon-orange{background:var(--warning-100);color:var(--warning-600)}.kpi-icon-purple{background:var(--accent-100);color:var(--accent-500)}.kpi-icon-green{background:var(--success-100);color:var(--success-600)}.kpi-info{display:flex;flex-direction:column;min-width:0}.kpi-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.3px;text-transform:uppercase}.kpi-value{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);letter-spacing:-.5px;line-height:1.2}.kpi-sub{color:var(--text-muted);font-size:var(--text-xs)}.dashboard-main-sidebar{grid-gap:var(--space-5);align-items:start;display:grid;gap:var(--space-5);grid-column:1/-1;grid-template-columns:1fr 320px}.dashboard-main-col{display:flex;flex-direction:column;gap:var(--space-5)}.dashboard-sidebar-col{display:flex;flex-direction:column;gap:var(--space-4)}.dashboard-widgets .donut-chart-wrapper{align-items:center;display:flex;gap:var(--space-8);justify-content:center}.dashboard-widgets .donut-chart{align-items:center;animation:donutSpin .8s ease-out;background:conic-gradient(var(--danger-500) 0deg calc(var(--used-pct)*3.6deg),var(--warning-500) calc(var(--used-pct)*3.6deg) calc((var(--used-pct) + var(--pending-pct))*3.6deg),var(--success-500) calc((var(--used-pct) + var(--pending-pct))*3.6deg) 1turn);border-radius:50%;display:flex;flex-shrink:0;height:160px;justify-content:center;position:relative;width:160px}@keyframes donutSpin{0%{opacity:0;transform:rotate(-90deg)}to{opacity:1;transform:rotate(0deg)}}.dashboard-widgets .donut-center{align-items:center;background:var(--bg-secondary);border-radius:50%;display:flex;flex-direction:column;height:108px;justify-content:center;width:108px}.dashboard-widgets .donut-value{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:1}.dashboard-widgets .donut-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);margin-top:2px}.dashboard-widgets .donut-sublabel{color:var(--text-muted);font-size:10px;margin-top:2px}.dashboard-widgets .donut-legend{display:flex;flex-direction:column;gap:var(--space-3)}.dashboard-widgets .legend-item{align-items:center;display:flex;gap:var(--space-2)}.dashboard-widgets .legend-color{border-radius:3px;flex-shrink:0;height:12px;width:12px}.dashboard-widgets .legend-color.used{background:var(--danger-500)}.dashboard-widgets .legend-color.pending{background:var(--warning-500)}.dashboard-widgets .legend-color.available{background:var(--success-500)}.dashboard-widgets .legend-text{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);min-width:60px}.dashboard-widgets .legend-value{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.trend-chart-container{display:flex;gap:var(--space-2);height:180px;position:relative}.trend-y-axis{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:24px;text-align:right;width:30px}.y-tick{color:var(--text-muted);font-size:11px;line-height:1}.trend-chart-area{flex:1 1;padding-bottom:24px;position:relative}.trend-grid-lines{bottom:24px;top:0}.grid-line,.trend-grid-lines{left:0;position:absolute;right:0}.grid-line{border-top:1px dashed var(--border-light)}.trend-bars{align-items:flex-end;display:flex;height:calc(100% - 24px);justify-content:space-around;position:relative;z-index:1}.trend-bar-group{align-items:center;animation:barGrowIn .6s cubic-bezier(.25,.46,.45,.94) both;display:flex;flex:1 1;flex-direction:column;max-width:80px}@keyframes barGrowIn{0%{opacity:0;transform:scaleY(0);transform-origin:bottom}to{opacity:1;transform:scaleY(1);transform-origin:bottom}}.trend-bar-stack{align-items:center;display:flex;flex-direction:column;width:36px}.trend-bar-value{color:var(--text-secondary);font-size:11px;font-weight:var(--font-semibold);margin-bottom:4px}.trend-bar{border-radius:4px 4px 0 0;min-height:2px;width:28px}.trend-bar-balance.casual{background:var(--info-500)}.trend-bar-balance.sick{background:var(--danger-400)}.trend-bar-balance.earned{background:var(--warning-400)}.trend-bar-used.casual{background:var(--info-200);border-radius:0}.trend-bar-used.sick{background:var(--danger-200);border-radius:0}.trend-bar-used.earned{background:var(--warning-200);border-radius:0}.trend-bar-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);margin-top:var(--space-2);text-transform:uppercase}.trend-legend{display:flex;gap:var(--space-5);justify-content:center;margin-top:var(--space-3)}.trend-legend-item{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-xs);gap:6px}.trend-dot{border-radius:2px;height:10px;width:10px}.trend-dot.balance{background:var(--info-500)}.trend-dot.used{background:var(--info-200)}.sidebar-widget{padding:var(--space-4)!important}.sidebar-list{display:flex;flex-direction:column;gap:var(--space-2);list-style:none;margin:0;padding:0}.sidebar-list-item{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:var(--space-3);padding:var(--space-2) 0}.sidebar-list-item:last-child{border-bottom:none}.sidebar-avatar{align-items:center;background:var(--primary-100);border-radius:var(--radius-full);color:var(--primary);display:flex;flex-shrink:0;font-size:var(--text-xs);font-weight:var(--font-semibold);height:28px;justify-content:center;width:28px}.sidebar-list-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-list-more{font-size:var(--text-xs);padding:var(--space-1) 0}.sidebar-empty,.sidebar-list-more{color:var(--text-muted);text-align:center}.sidebar-empty{font-size:var(--text-sm);margin:0;padding:var(--space-3) 0}.next-holiday-info{display:flex;flex-direction:column;gap:var(--space-1)}.next-holiday-name{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold)}.next-holiday-countdown{color:var(--accent-500);font-size:var(--text-sm);font-weight:var(--font-medium)}.more-holidays{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2)}.upcoming-holiday-mini{color:var(--text-muted);font-size:var(--text-xs)}.celebration-item{gap:var(--space-2)!important}.celebration-emoji{flex-shrink:0;font-size:18px}.celebration-info{display:flex;flex-direction:column;min-width:0}.celebration-when{color:var(--text-muted);font-size:var(--text-xs)}.salary-info{display:flex;flex-direction:column;gap:var(--space-1)}.salary-amount{color:var(--success-600);font-size:var(--text-xl);font-weight:var(--font-bold)}.salary-period{color:var(--text-muted);font-size:var(--text-xs)}@media (max-width:1024px){.kpi-cards{grid-template-columns:repeat(2,1fr)}.dashboard-main-sidebar{grid-template-columns:1fr}.dashboard-sidebar-col{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.dashboard-widgets,.kpi-cards{grid-template-columns:1fr}.quick-actions{flex-wrap:wrap}.dashboard-sidebar-col{grid-template-columns:1fr}.dashboard-widgets .donut-chart-wrapper{flex-direction:column;gap:var(--space-4)}.dashboard-widgets .donut-legend{flex-direction:row;flex-wrap:wrap;gap:var(--space-4);justify-content:center}}.modal-content-large{animation:modalSlideIn .25s cubic-bezier(.25,.46,.45,.94);background:var(--bg-secondary);border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:1200px;overflow-y:auto;width:100%}.user-form{padding:30px}.form-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));margin-bottom:30px}.form-section{background:var(--bg-tertiary);border-left:4px solid var(--accent-500);border-radius:10px;padding:25px}.form-section h3{color:var(--accent-500);font-size:18px;font-weight:700;margin:0 0 20px}.form-group input,.form-group select{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 15px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus{border-color:var(--accent-500);outline:none}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.form-group input[type=number]{-moz-appearance:textfield}.form-group input[type=number]::-webkit-inner-spin-button,.form-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}@media (max-width:1024px){.form-grid{grid-template-columns:1fr}}@media (max-width:768px){.modal-content-large{border-radius:8px;max-height:95vh}.modal-header{padding:20px}.modal-header h2{font-size:20px}.form-section,.user-form{padding:20px}.form-actions{margin:0 -20px -20px;padding:15px 20px}}.user-management{margin:0 auto;max-width:1600px;padding:24px}.management-header{margin-bottom:24px}.header-left h2{font-size:22px;font-weight:600;letter-spacing:-.3px;margin:0 0 4px}.add-user-btn{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all var(--transition-fast)}.add-user-btn:hover{background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.add-user-btn svg{height:18px;width:18px}.filters-section{display:flex;gap:16px;margin-bottom:20px}.search-box{flex:1 1}.search-box input{border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:14px;padding:10px 14px;transition:all var(--transition-fast);width:100%}.search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.role-filter select{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;font-size:14px;min-width:160px;padding:10px 14px;transition:all var(--transition-fast)}.role-filter select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.users-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:20px}.stat-box{border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:16px;transition:all var(--transition-fast)}.stat-box:hover{box-shadow:var(--shadow-sm)}.stat-box.blue{border-left:3px solid var(--primary)}.stat-box.green{border-left:3px solid var(--success-600)}.stat-box.orange{border-left:3px solid var(--warning-600)}.stat-box.purple{border-left:3px solid #9333ea}.stat-box.teal{border-left:3px solid var(--info-600)}.stat-box.red{border-left:3px solid var(--danger-600)}.stat-value{color:var(--text-primary);font-size:28px;margin-bottom:4px}.stat-label{font-size:11px}.users-table-container{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:var(--bg-tertiary)}.users-table th{border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase}.users-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:14px;padding:14px 16px;vertical-align:middle}.users-table tbody tr{transition:background var(--transition-fast)}.users-table tbody tr:hover{background:var(--bg-tertiary)}.role-badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:12px;font-weight:500;padding:5px 12px}.role-admin{background:var(--danger-100);color:var(--danger-700)}.role-super-manager{background:var(--success-100);color:var(--success-700)}.role-manager{background:var(--primary-100);color:var(--primary-700)}.role-hr{background:var(--warning-100);color:var(--warning-700)}.role-sales{background:#d1fae5;color:#047857}.role-employee{background:var(--secondary-100);color:var(--secondary-700)}.tax-regime-badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:11px;font-weight:600;letter-spacing:.3px;padding:5px 12px;text-transform:uppercase}.tax-regime-badge.new-regime{background:var(--primary-100);color:var(--primary-700)}.tax-regime-badge.old-regime{background:var(--warning-100);color:var(--warning-700)}.tax-regime-cell{align-items:center;display:flex;gap:8px}.lock-toggle-btn{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:14px;opacity:.6;padding:4px;transition:all var(--transition-fast)}.lock-toggle-btn:hover{background:var(--bg-tertiary);opacity:1}.lock-icon{font-size:14px}.action-buttons{gap:6px}.btn-delete,.btn-edit{align-items:center;border-radius:var(--radius-md);display:flex;justify-content:center;padding:8px;transition:all var(--transition-fast)}.btn-edit{color:var(--primary)}.btn-edit:hover{background:var(--primary-100)}.btn-delete{color:var(--danger-600)}.btn-delete:hover{background:var(--danger-100)}.btn-delete svg,.btn-edit svg{height:18px;width:18px}.no-users{color:var(--text-muted);padding:48px 20px;text-align:center}.no-users svg{height:48px;margin-bottom:12px;opacity:.5;width:48px}.no-users p{font-size:15px;margin:0}.success-message{background:var(--success-50);border-left:3px solid var(--success-500);color:var(--success-700)}.error-message,.success-message{align-items:center;border-radius:var(--radius-md);display:flex;font-size:14px;gap:10px;margin-bottom:16px;padding:12px 16px}.error-message{background:var(--danger-50);border-left:3px solid var(--danger-500);color:var(--danger-700)}@media (max-width:768px){.user-management{padding:16px}.management-header{align-items:flex-start;flex-direction:column;gap:16px}.add-user-btn{justify-content:center;width:100%}.filters-section{flex-direction:column;gap:12px}.role-filter select{width:100%}.users-stats{grid-template-columns:repeat(2,1fr)}.users-table-container{overflow-x:auto}.users-table{min-width:900px}}@media (max-width:480px){.users-stats{grid-template-columns:1fr}}.holiday-form{padding:30px}.form-group input,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 15px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);outline:none}.form-group input:read-only{background:#f5f5f5;cursor:not-allowed}.checkbox-group{display:flex;flex-direction:column;gap:5px}.checkbox-group label{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-weight:600;gap:10px}.checkbox-group input[type=checkbox]{cursor:pointer;transform:scale(1.2);width:auto}.checkbox-group span{font-size:14px}.btn-submit{background:linear-gradient(135deg,var(--primary) 0,var(--primary-400) 100%)}.btn-submit:hover:not(:disabled){box-shadow:0 4px 15px #11998e66}@media (max-width:768px){.modal-content{border-radius:8px;max-height:95vh}.modal-header{padding:20px}.modal-header h2{font-size:20px}.holiday-form{padding:20px}.form-actions{margin:0 -20px -20px;padding:15px 20px}}.holiday-management{margin:0 auto;max-width:1800px;padding:30px}.add-holiday-btn{background:linear-gradient(135deg,var(--primary) 0,var(--primary-400) 100%);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 25px;transition:transform .2s,box-shadow .2s}.add-holiday-btn:hover{box-shadow:0 4px 15px #11998e66;transform:translateY(-2px)}.year-filter{align-items:center;display:flex;gap:10px}.year-filter label{color:var(--text-secondary);font-size:14px;font-weight:600}.year-filter select{background:var(--bg-secondary);border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;min-width:180px;padding:12px 15px}.year-filter select:focus{border-color:var(--primary);outline:none}.holidays-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:25px}.stat-box{border-left:4px solid var(--primary)}.stat-box.stat-active{border-left-color:var(--primary-400)}.stat-box.stat-inactive{border-left-color:var(--danger-500)}.stat-value{color:var(--primary)}.stat-active .stat-value{color:var(--primary-400)}.stat-inactive .stat-value{color:var(--danger-500)}.holidays-table-container{background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 10px #00000014;overflow:hidden}.holidays-table{border-collapse:collapse;width:100%}.holidays-table thead{background:var(--bg-tertiary)}.holidays-table th{border-bottom:2px solid #dee2e6;color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-align:left;text-transform:uppercase}.holidays-table td{border-bottom:1px solid #e9ecef;color:var(--text-primary);font-size:14px;padding:15px 12px;vertical-align:middle}.holidays-table tbody tr:hover{background:var(--bg-tertiary)}.holidays-table tbody tr.inactive-row{background:#fafafa;opacity:.6}.status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.status-active{background:linear-gradient(135deg,var(--primary) 0,var(--primary-400) 100%);color:#fff}.status-inactive{background:linear-gradient(135deg,var(--text-muted) 0,var(--text-muted) 100%);color:#fff}.action-buttons{display:flex;gap:8px}.btn-delete,.btn-edit{font-size:18px;padding:6px 10px}.no-holidays{color:#999;padding:60px 20px;text-align:center}.no-holidays p{font-size:16px;margin:0}@media (max-width:768px){.holiday-management{padding:15px}.management-header{align-items:flex-start;flex-direction:column;gap:15px}.holidays-table-container{overflow-x:auto}.holidays-table{min-width:1000px}}.modal-overlay{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalSlideIn .25s cubic-bezier(.25,.46,.45,.94);background:var(--bg-secondary);border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:25px 30px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header h2{color:var(--text-primary);font-size:24px;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;transition:background .2s,color .2s;width:40px}.close-btn:hover{background:#f0f0f0;color:var(--text-primary)}.setting-form{padding:30px}.form-group{margin-bottom:25px}.form-group label{color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;transition:border-color .3s}.form-group input.disabled-input{background:#f5f5f5;cursor:not-allowed;opacity:.7}.form-group textarea{min-height:80px;resize:vertical}.form-hint{color:var(--text-muted);display:block;font-size:12px;font-style:italic;margin-top:5px}.form-actions{background:var(--bg-secondary);border-top:1px solid var(--border-light);bottom:0;display:flex;gap:15px;justify-content:flex-end;margin:0 -30px -30px;padding:20px 30px;position:-webkit-sticky;position:sticky}.btn-cancel{background:#e0e0e0;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:15px;font-weight:600;padding:12px 30px;transition:background .2s}.btn-cancel:hover{background:#d0d0d0}.btn-submit{background:var(--accent-gradient);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 30px;transition:transform .2s,box-shadow .2s}.btn-submit:hover:not(:disabled){box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.error-message{margin:0 30px 20px}@media (max-width:768px){.modal-content{border-radius:8px;max-height:95vh}.modal-header{padding:20px}.modal-header h2{font-size:20px}.setting-form{padding:20px}.form-actions{margin:0 -20px -20px;padding:15px 20px}}.company-settings{margin:0 auto;max-width:1800px;padding:30px}.management-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.header-left h2{color:var(--text-primary);font-size:28px;margin:0 0 5px}.subtitle{color:var(--text-secondary);font-size:14px;margin:0}.add-setting-btn{background:var(--accent-gradient);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 25px;transition:transform .2s,box-shadow .2s}.add-setting-btn:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.filters-section{margin-bottom:25px}.category-filter{align-items:center;display:flex;gap:10px}.category-filter label{color:var(--text-secondary);font-size:14px;font-weight:600}.category-filter select{background:var(--bg-secondary);border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;min-width:200px;padding:12px 15px}.category-filter select:focus{border-color:var(--accent-500);outline:none}.settings-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:25px}.stat-box{background:var(--bg-secondary);border-left:4px solid var(--accent-500);border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;text-align:center}.stat-box.stat-leave-policy{border-left-color:var(--info-500)}.stat-box.stat-general{border-left-color:var(--text-muted)}.stat-value{color:var(--accent-500);display:block;font-size:32px;font-weight:700;margin-bottom:5px}.stat-leave-policy .stat-value{color:var(--info-500)}.stat-general .stat-value{color:var(--text-muted)}.stat-label{color:var(--text-secondary);display:block;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.settings-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.setting-card{background:var(--bg-secondary);border-left:4px solid var(--accent-500);border-radius:12px;box-shadow:0 2px 10px #00000014;padding:20px;transition:transform .2s,box-shadow .2s}.setting-card:hover{box-shadow:0 4px 20px #0000001f;transform:translateY(-3px)}.setting-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.setting-info{flex:1 1}.setting-key{color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 8px;word-break:break-word}.setting-value{background:var(--bg-tertiary);border-radius:6px;color:var(--text-primary);font-size:14px;margin-bottom:12px;padding:12px;word-break:break-all}.setting-description,.setting-value strong{color:var(--text-secondary)}.setting-description{font-size:13px;line-height:1.5;margin-bottom:12px}.setting-footer{align-items:center;border-top:1px solid #e9ecef;display:flex;justify-content:space-between;padding-top:12px}.setting-updated{color:#999;font-size:12px}.category-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.category-leave-policy{background:linear-gradient(135deg,var(--info-500) 0,#2980b9 100%);color:#fff}.category-general{background:linear-gradient(135deg,var(--text-muted) 0,var(--text-muted) 100%);color:#fff}.category-system{background:linear-gradient(135deg,var(--danger-500) 0,#c0392b 100%);color:#fff}.category-notification{background:linear-gradient(135deg,var(--warning-500) 0,#e67e22 100%);color:#fff}.setting-actions{display:flex;gap:6px}.btn-delete,.btn-edit{background:none;border:none;border-radius:6px;cursor:pointer;font-size:16px;padding:6px;transition:background .2s,transform .2s}.btn-edit:hover{background:#e3f2fd;transform:scale(1.1)}.btn-delete:hover{background:#ffebee;transform:scale(1.1)}.no-settings{background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 10px #00000014;color:#999;padding:60px 20px;text-align:center}.no-settings p{font-size:16px;margin:0}.success-message{border:1px solid #c3e6cb;border-radius:8px}.error-message,.success-message{font-weight:500;padding:15px 20px}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24}@media (max-width:768px){.company-settings{padding:15px}.management-header{align-items:flex-start;flex-direction:column;gap:15px}.settings-grid{grid-template-columns:1fr}.setting-header{flex-direction:column;gap:10px}.setting-actions{align-self:flex-end}}.bar-chart-section{margin-bottom:28px;padding:28px}.bar-chart-section h3{margin-bottom:20px}.bar-chart{gap:16px}.bar-chart-item{gap:12px}.bar-chart-fill.info{background:linear-gradient(90deg,var(--info-500) 0,var(--info-400) 100%)}.bar-chart-fill.success{background:linear-gradient(90deg,var(--success-600) 0,var(--success-400) 100%)}.bar-chart-fill.warning{background:linear-gradient(90deg,var(--warning-500) 0,var(--warning-400) 100%)}.bar-chart-fill.danger{background:linear-gradient(90deg,var(--danger-500) 0,var(--danger-400) 100%)}@media (max-width:768px){.stats-grid-modern{gap:15px;grid-template-columns:1fr}.stat-card-modern{padding:20px}.stat-number{font-size:28px}.action-grid{gap:15px;grid-template-columns:1fr}.admin-header{padding:20px}.header-content{flex-direction:column;gap:15px;text-align:center}.admin-dashboard-overview{padding:15px}.bar-chart-section,.quick-actions-section{padding:20px}.bar-chart-label{font-size:12px;min-width:80px}.bar-chart-track{height:20px}}@media (max-width:480px){.admin-dashboard-overview h2{font-size:22px}.stat-icon{height:50px;width:50px}.stat-icon,.stat-number{font-size:24px}}.form-container{background:var(--bg-secondary);border-radius:10px;box-shadow:0 2px 10px #00000014;max-width:700px;padding:35px}.form-container h2{color:var(--text-primary);font-size:24px;margin-bottom:25px}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:5px;font-family:inherit;font-size:14px;padding:12px 15px;transition:border .3s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-500);outline:none}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.checkbox-label{align-items:center;cursor:pointer;display:flex!important;font-weight:500!important;gap:10px}.checkbox-label input[type=checkbox]{cursor:pointer;transform:scale(1.2);width:auto!important}.checkbox-label span{-webkit-user-select:none;user-select:none}.info-box{background-color:#e8f4fd;border-left:4px solid #2196f3;border-radius:4px;margin-bottom:20px;padding:12px 15px}.info-box p{color:#1976d2;font-size:14px;line-height:1.5;margin:0}.info-box strong,.submit-btn{font-weight:600}.submit-btn{background:var(--accent-gradient);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:14px 35px;transition:transform .2s}.submit-btn:hover{transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.success-message{background:#d4edda;border-left:4px solid #28a745;color:#155724}.error-message,.success-message{border-radius:5px;margin-bottom:20px;padding:12px 15px}.error-message{background:#ffe6e6;border-left:4px solid #d32f2f;color:#d32f2f}.file-input-wrapper{display:flex;flex-direction:column;gap:8px}.file-input{background:#fafafa;border:2px dashed #ddd;border-radius:5px;cursor:pointer;padding:10px;transition:border-color .3s,background .3s}.file-input:hover{background:#f5f5ff;border-color:var(--accent-500)}.file-input:focus{border-color:var(--accent-500);outline:none}.file-selected{align-items:center;background:#e8f5e9;border-radius:4px;color:#2e7d32;display:flex;font-size:13px;gap:10px;padding:8px 12px}.remove-file-btn{background:#ef5350;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:12px;margin-left:auto;padding:4px 10px;transition:background .2s}.remove-file-btn:hover{background:#d32f2f}.file-hint{color:var(--text-muted);font-size:12px}.hr-leave-management{width:100%}.hr-leave-tabs{display:flex;gap:8px;margin-bottom:20px}.hr-leave-tab{align-items:center;background:var(--bg-secondary);border:1px solid #ddd;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.hr-leave-tab:hover{background:#f5f5f5;border-color:#bbb}.hr-leave-tab.active{background:var(--accent-gradient);border-color:#0000;color:#fff}.hr-add-leave-form{max-width:700px}.form-subtitle{background:#fff8e1;border-left:4px solid #ff9800;border-radius:4px;color:var(--text-secondary);font-size:14px;margin-bottom:25px;margin-top:-15px;padding:10px 15px}.hr-leaves-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.hr-leaves-header h2{margin-bottom:0}.hr-add-leave-btn{align-items:center;background:var(--accent-gradient);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:transform .2s,box-shadow .2s}.hr-add-leave-btn:hover{box-shadow:0 4px 12px #667eea59;transform:translateY(-1px)}.hr-leaves-filters{align-items:center;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.hr-search-box{align-items:center;background:var(--bg-tertiary);border:1px solid #ddd;border-radius:6px;display:flex;flex:1 1;gap:8px;min-width:250px;padding:8px 12px}.hr-search-box input{background:#0000;border:none;color:var(--text-primary);font-size:14px;outline:none;width:100%}.hr-search-box input::placeholder{color:#999}.hr-clear-search{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;padding:2px}.hr-clear-search:hover{color:#d32f2f}.hr-filter-group{display:flex;gap:10px}.hr-filter-group select{background:var(--bg-secondary);border:1px solid #ddd;border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:14px;padding:8px 12px}.hr-filter-group select:focus{border-color:var(--accent-500);outline:none}.hr-delete-leave-btn{align-items:center;background:#ffebee;border:1px solid #ef9a9a;border-radius:4px;color:#c62828;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:6px 12px;transition:all .2s}.hr-delete-leave-btn:hover:not(:disabled){background:#ffcdd2;border-color:#e57373;transform:translateY(-1px)}.hr-delete-leave-btn:disabled{cursor:not-allowed;opacity:.5}.hr-reason-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hr-leaves-count{color:var(--text-muted);font-size:13px;margin-top:15px;text-align:right}.half-day-badge{color:#1565c0;font-size:11px;font-weight:600}.short-day-badge{color:#7b1fa2;font-size:11px;font-weight:600}@media (max-width:768px){.hr-leave-tabs,.hr-leaves-header{flex-direction:column}.hr-leaves-header{align-items:flex-start;gap:10px}.hr-leaves-filters{flex-direction:column}.hr-search-box{min-width:auto;width:100%}.hr-filter-group{width:100%}.hr-filter-group select{flex:1 1}}.bar-chart-section{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-5)}.bar-chart-section h3{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-4)}.bar-chart{display:flex;flex-direction:column;gap:var(--space-4)}.bar-chart-item{align-items:center;display:flex;gap:var(--space-3)}.bar-chart-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);min-width:120px;text-align:right}.bar-chart-track{background:var(--bg-tertiary);border-radius:var(--radius-md);flex:1 1;height:24px;overflow:hidden;position:relative}.bar-chart-fill{align-items:center;background:var(--accent-gradient);border-radius:var(--radius-md);display:flex;height:100%;min-width:-webkit-fit-content;min-width:fit-content;padding-left:8px;transition:width .8s cubic-bezier(.25,.46,.45,.94)}.bar-chart-fill.primary{background:linear-gradient(90deg,var(--primary) 0,var(--primary-400) 100%)}.bar-chart-fill.accent{background:var(--accent-gradient)}.bar-chart-fill.info{background:linear-gradient(90deg,var(--info-500) 0,#38bdf8 100%);background:linear-gradient(90deg,var(--info-500) 0,var(--info-400,#38bdf8) 100%)}.bar-chart-fill.success{background:linear-gradient(90deg,var(--success-600) 0,var(--success-500) 100%)}.bar-chart-fill.warning{background:linear-gradient(90deg,var(--warning-500) 0,#fbbf24 100%);background:linear-gradient(90deg,var(--warning-500) 0,var(--warning-400,#fbbf24) 100%)}.bar-chart-fill.danger{background:linear-gradient(90deg,var(--danger-500) 0,#f87171 100%);background:linear-gradient(90deg,var(--danger-500) 0,var(--danger-400,#f87171) 100%)}.bar-chart-value{color:#fff;font-size:var(--text-xs);font-weight:var(--font-bold);white-space:nowrap}.bar-chart-count{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);min-width:40px;text-align:left}@media (max-width:768px){.bar-chart-label{font-size:var(--text-xs);min-width:80px}.bar-chart-track{height:20px}}.team-stats-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.team-card{background:var(--bg-secondary);border-left:1px solid var(--border-light);border:1px solid var(--border-light);border-left-width:4px;border-radius:var(--radius-lg);padding:var(--space-5);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.team-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.team-card.team-blue{border-left-color:var(--info-500)}.team-card.team-slate{border-left-color:var(--text-secondary)}.team-card.team-sky{border-left-color:var(--primary)}.team-card.team-purple{border-left-color:var(--accent-500)}.team-card.team-pink{border-left-color:var(--danger-400)}.team-card.team-blue .team-header h4{color:var(--info-700)}.team-card.team-slate .team-header h4{color:var(--text-primary)}.team-card.team-sky .team-header h4{color:var(--primary-700)}.team-card.team-purple .team-header h4{color:var(--accent-700)}.team-card.team-pink .team-header h4{color:var(--danger-600)}.team-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.team-header h4{color:var(--text-primary);font-size:var(--text-base);margin:0}.member-badge,.team-header h4{font-weight:var(--font-semibold)}.member-badge{background:var(--primary-100);border-radius:var(--radius-full);color:var(--primary-700);font-size:var(--text-xs);padding:4px 12px}.team-stats-row{display:flex;gap:var(--space-3)}.team-stat{align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-md);display:flex;flex:1 1;flex-direction:column;padding:var(--space-3)}.team-stat-value{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-bold);line-height:1}.team-stat-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);margin-top:2px}.sm-teams-badge{background:var(--primary-100);color:var(--primary-700);font-size:var(--text-xs);padding:4px 14px}.leave-type-pill,.sm-teams-badge{border-radius:var(--radius-full);font-weight:var(--font-semibold)}.leave-type-pill{background:var(--info-100);color:var(--info-700);font-size:11px;padding:3px 10px;white-space:nowrap}.birthday-countdown{color:var(--accent-500);font-size:var(--text-xs);font-weight:var(--font-medium);margin-left:auto;white-space:nowrap}.calendar-info,.leads-header-info,.section-header-info{margin-bottom:var(--space-5)}.calendar-info h2,.leads-header-info h2,.section-header-info h2{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0 0 var(--space-2) 0}.calendar-info p,.leads-header-info p,.section-header-info p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.approvals-header{margin-bottom:var(--space-5)}.approvals-header h2{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0 0 var(--space-2) 0}.approvals-header .subtitle{color:var(--text-secondary);font-size:var(--text-sm);margin:0}@media (max-width:768px){.team-stats-grid{grid-template-columns:1fr}.team-stats-row{gap:var(--space-2)}.team-stat{padding:var(--space-2)}.team-stat-value{font-size:var(--text-lg)}}.toast-container{flex-direction:column;gap:var(--space-2);pointer-events:none;position:fixed;right:var(--space-4);top:var(--space-4);z-index:var(--z-toast)}.toast,.toast-container{display:flex;max-width:400px}.toast{align-items:flex-start;animation:toastSlideIn .3s cubic-bezier(.34,1.56,.64,1);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);gap:var(--space-3);min-width:300px;padding:var(--space-3) var(--space-4);pointer-events:auto}.toast.exiting{animation:toastSlideOut .2s ease-in forwards}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.toast-icon{flex-shrink:0;height:20px;margin-top:1px;width:20px}.toast.success .toast-icon{color:var(--success-600)}.toast.error .toast-icon{color:var(--danger-600)}.toast.info .toast-icon{color:var(--info-600)}.toast.success{border-left:3px solid var(--success-500)}.toast.error{border-left:3px solid var(--danger-500)}.toast.info{border-left:3px solid var(--info-500)}.toast-content{flex:1 1;min-width:0}.toast-title{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:2px}.toast-message{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.4}.toast-close{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:2px;transition:all var(--transition-fast)}.toast-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.toast-progress{animation:toastProgress 4s linear forwards;border-radius:0 0 0 var(--radius-lg);bottom:0;height:3px;left:0;position:absolute}.toast.success .toast-progress{background:var(--success-500)}.toast.error .toast-progress{background:var(--danger-500)}.toast.info .toast-progress{background:var(--info-500)}@keyframes toastProgress{0%{width:100%}to{width:0}}@media (max-width:480px){.toast-container{left:var(--space-4);max-width:none;right:var(--space-4)}.toast{max-width:none;min-width:auto}}.App{background:var(--bg-primary);min-height:100vh}
/*# sourceMappingURL=main.02c459f8.css.map*/