:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{width:100%;height:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%;overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{font-family:inherit;cursor:pointer}.toast{display:flex;align-items:center;gap:12px;min-width:300px;max-width:500px;padding:16px;border-radius:12px;box-shadow:0 8px 24px #00000026,0 2px 6px #0000001a;background:#fff;border:1px solid #e2e8f0;position:relative;overflow:hidden;animation:slideInRight .3s cubic-bezier(.34,1.56,.64,1);margin-bottom:12px}.toast:hover{box-shadow:0 12px 32px #0003,0 4px 8px #0000001f;transform:translateY(-2px);transition:all .2s ease}@keyframes slideInRight{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%}.toast-success .toast-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.toast-error .toast-icon{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.toast-warning .toast-icon{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.toast-info .toast-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.toast-message{flex:1;font-size:14px;font-weight:500;color:#1a202c;line-height:1.5;word-wrap:break-word}.toast-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:#f3f4f6;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.toast-close:hover{background:#e5e7eb;color:#374151;transform:scale(1.1)}.toast-progress{position:absolute;bottom:0;left:0;height:4px;width:100%;transform-origin:left;animation:progressBar linear}.toast-success .toast-progress{background:linear-gradient(90deg,#10b981,#059669)}.toast-error .toast-progress{background:linear-gradient(90deg,#ef4444,#dc2626)}.toast-warning .toast-progress{background:linear-gradient(90deg,#f59e0b,#d97706)}.toast-info .toast-progress{background:linear-gradient(90deg,#3b82f6,#2563eb)}@keyframes progressBar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-container{position:fixed;top:24px;right:24px;z-index:9999;display:flex;flex-direction:column;pointer-events:none}.toast-container .toast{pointer-events:auto}@media(max-width:640px){.toast-container{top:16px;right:16px;left:16px}.toast{min-width:unset;max-width:unset;width:100%}@keyframes slideInRight{0%{transform:translateY(-100px);opacity:0}to{transform:translateY(0);opacity:1}}}.header{height:70px;background-color:#fff;border-bottom:1px solid #E5E7EB;display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:100;box-shadow:0 1px 2px #0000000d}.header-left{display:flex;align-items:center}.header-brand{display:flex;align-items:center;gap:12px}.engispider-logo{height:47px;width:auto;object-fit:contain}.header-logo{width:235px;text-align:center}.org-logo{width:45px;height:45px;border-radius:8px;object-fit:contain}.org-logo-placeholder{width:45px;height:45px;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:700}.header-title-section{display:flex;flex-direction:column;gap:4px}.header-top-line{display:flex;align-items:center;gap:10px}.product-name{font-size:18px;font-weight:700;color:#1f2937;line-height:1}.separator{font-size:18px;color:#d1d5db;font-weight:300}.organization-name{font-size:26px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.product-tagline{font-size:11px;color:#9ca3af;margin:0;line-height:1}.header-right{display:flex;align-items:center;gap:12px}.icon-button{position:relative;background:transparent;border:none;padding:10px;cursor:pointer;border-radius:8px;color:#6b7280;transition:all .2s;display:flex;align-items:center;justify-content:center}.icon-button:hover{background-color:#f3f4f6;color:#1f2937}.badge{position:absolute;top:6px;right:6px;background-color:#ef4444;color:#fff;font-size:10px;font-weight:600;padding:2px 5px;border-radius:10px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center}.user-profile-dropdown{position:relative}.user-profile-button{display:flex;align-items:center;gap:10px;padding:6px 12px;border-radius:10px;cursor:pointer;transition:all .2s;background:transparent;border:1px solid #E5E7EB}.user-profile-button:hover{background-color:#f9fafb;border-color:#d1d5db}.user-avatar-img{width:38px;height:38px;border-radius:50%;object-fit:cover}.user-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600}.user-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.user-name{font-size:14px;font-weight:600;color:#1f2937;line-height:1}.user-role{font-size:11px;color:#6b7280;text-transform:capitalize;line-height:1}.dropdown-icon{color:#9ca3af;transition:transform .2s ease}.dropdown-icon.open{transform:rotate(180deg)}.profile-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #E5E7EB;border-radius:12px;box-shadow:0 10px 25px #0000001a;min-width:240px;z-index:1000;animation:dropdownSlideIn .2s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0}.dropdown-user-info{color:#fff}.dropdown-user-name{font-size:16px;font-weight:600;margin:0 0 4px;color:#fff}.dropdown-user-email{font-size:12px;margin:0 0 2px;opacity:.9;color:#fff}.dropdown-user-dept{font-size:11px;margin:4px 0 0;opacity:.8;color:#fff;background:#fff3;display:inline-block;padding:2px 8px;border-radius:4px}.dropdown-divider{height:1px;background-color:#e5e7eb;margin:8px 0}.dropdown-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:transparent;border:none;cursor:pointer;transition:background-color .2s;color:#4b5563;font-size:14px;text-align:left}.dropdown-item:hover{background-color:#f3f4f6}.dropdown-item.logout{color:#dc2626}.dropdown-item.logout:hover{background-color:#fee2e2}.dropdown-item svg{flex-shrink:0}@media(max-width:768px){.header{padding:0 16px;height:60px}.product-name{font-size:14px}.product-tagline{font-size:9px}.organization-info{display:none}.org-logo,.org-logo-placeholder{width:36px;height:36px;font-size:16px}.user-info{display:none}.user-profile-button{padding:6px;border:none}.dropdown-icon{display:none}.profile-dropdown-menu{right:-10px}}@media(max-width:480px){.header-right{gap:8px}.icon-button{padding:8px}.header-brand{gap:8px}}.sidebar{width:280px;background:linear-gradient(180deg,#fff,#f9fafb);border-right:2px solid #e5e7eb;height:calc(100vh - 70px);position:sticky;top:70px;overflow-y:auto;box-shadow:2px 0 8px #00000008}.sidebar-nav{padding:16px 0}.menu-list{list-style:none;margin:0;padding:0}.submenu-list{list-style:none;margin:4px 0 4px 20px;padding:0;background:transparent;border-left:2px solid #e0e7ff;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.menu-item{margin:2px 8px;border:none;overflow:hidden;transition:all .2s ease}.submenu-list .menu-item{margin:2px 0}.menu-link-wrapper{position:relative;display:flex;align-items:center;transition:all .3s ease}.menu-link-wrapper.level-0{background-color:transparent}.menu-link-wrapper.level-1,.menu-link-wrapper.level-2,.menu-link-wrapper.level-3{background:transparent;padding-left:8px}.menu-link{display:flex;align-items:center;gap:12px;padding:12px 16px;color:#6b7280;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;font-weight:500;border-radius:8px;flex:1;position:relative;overflow:hidden}.menu-link:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#667eea,#764ba2);transform:scaleY(0);transition:transform .3s ease}.menu-link:hover{background:linear-gradient(135deg,#eef2ff,#f9fafb);color:#4f46e5;transform:translate(4px);box-shadow:0 2px 8px #4f46e526}.menu-link:hover:before{transform:scaleY(1)}.menu-link.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600;box-shadow:0 4px 12px #667eea4d;transform:translate(4px)}.menu-link-wrapper.level-1 .menu-link{font-size:13px;padding:10px 12px}.menu-link-wrapper.level-2 .menu-link{font-size:13px;padding:9px 12px}.menu-link-wrapper.level-3 .menu-link{font-size:12px;padding:8px 12px}.menu-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.3px}.menu-emoji{font-size:22px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:8px;transition:all .3s ease}.menu-link:hover .menu-emoji{transform:scale(1.05);background:linear-gradient(135deg,#667eea33,#764ba233)}.menu-link.active .menu-emoji{background:#fff3;transform:scale(1.05)}.menu-link-wrapper.level-1 .menu-emoji,.menu-link-wrapper.level-2 .menu-emoji,.menu-link-wrapper.level-3 .menu-emoji{width:26px;height:26px;font-size:16px}.expand-toggle{position:absolute;right:6px;width:28px;height:28px;border:2px solid #cbd5e0;background:linear-gradient(135deg,#fff,#f7fafc);color:#667eea;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .3s ease;z-index:1;box-shadow:0 1px 3px #0000001a}.expand-toggle:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;transform:scale(1.1);box-shadow:0 4px 8px #667eea4d}.menu-link.active~.expand-toggle{background:#ffffff4d;color:#fff;border-color:#ffffff80}.expand-toggle-inline{display:flex;align-items:center;justify-content:center;margin-left:auto;padding-left:8px;color:inherit;transition:transform .3s ease}.menu-link:hover .expand-toggle-inline{transform:scale(1.2)}.menu-link-wrapper.level-1:after,.menu-link-wrapper.level-2:after,.menu-link-wrapper.level-3:after{content:"";position:absolute;left:2px;top:50%;width:6px;height:6px;border-radius:50%;transform:translateY(-50%)}.app-container{min-height:100vh;background-color:#f3f4f6}.main-wrapper{display:flex}.content{flex:1;padding:30px;min-height:calc(100vh - 70px);overflow-x:auto}.login-container{min-height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;position:fixed;inset:0;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2)}.login-background{position:absolute;width:100%;height:100%;overflow:hidden}.login-circle{position:absolute;border-radius:50%;background:#ffffff1a;animation:float 20s infinite ease-in-out}.circle-1{width:300px;height:300px;top:-100px;left:-100px;animation-delay:0s}.circle-2{width:400px;height:400px;bottom:-150px;right:-150px;animation-delay:-5s}.circle-3{width:200px;height:200px;top:50%;right:10%;animation-delay:-10s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}.login-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;padding:50px;width:90%;max-width:480px;position:relative;z-index:1;animation:slideUp .5s ease-out}@media(min-width:768px){.login-card{width:100%}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:30px}.login-icon{width:70px;height:70px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#fff}.login-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 10px}.login-header p{font-size:14px;color:#718096;margin:0}.alert{padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:10px;margin-bottom:20px;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.alert-error{background-color:#fee;color:#c53030;border:1px solid #fc8181}.login-form{margin-top:30px}.form-group label{display:block;font-size:14px;font-weight:600;color:#2d3748;margin-bottom:8px}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:16px;color:#667eea;pointer-events:none;z-index:2;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:20px;height:20px}.input-wrapper input{width:100%;padding:12px 14px 12px 48px;border:2px solid #e2e8f0;border-radius:10px;font-size:14px;transition:all .3s ease;outline:none;background:#fff;box-sizing:border-box;text-overflow:ellipsis}.input-wrapper input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-wrapper input.input-error{border-color:#fc8181}.input-wrapper input:disabled{background-color:#f7fafc;cursor:not-allowed}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#667eea;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease;z-index:3;width:32px;height:32px;flex-shrink:0}.password-toggle:hover{background-color:#f7fafc;color:#764ba2}.password-toggle:active{transform:translateY(-50%) scale(.95)}.password-toggle:focus{outline:none;box-shadow:0 0 0 2px #667eea33}.input-wrapper input[type=email]{padding:12px 14px 12px 48px}.input-wrapper input[type=password],.input-wrapper input[name=password]{padding:12px 52px 12px 48px}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:52px!important;padding-left:48px!important}.error-message{display:block;color:#c53030;font-size:12px;margin-top:5px}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:12px}.remember-me{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#4a5568;-webkit-user-select:none;user-select:none}.remember-me input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#667eea}.forgot-password{font-size:14px;color:#667eea;text-decoration:none;font-weight:500;transition:color .3s ease;white-space:nowrap}.forgot-password:hover{color:#764ba2;text-decoration:underline}.btn-login{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px}.btn-login:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d}.btn-login:active:not(:disabled){transform:translateY(0)}.btn-login:disabled{opacity:.7;cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-footer{margin-top:30px;text-align:center;font-size:14px;color:#718096}.login-footer p{margin:0}.link-signup{color:#667eea;text-decoration:none;font-weight:600;transition:color .3s ease}.link-signup:hover{color:#764ba2;text-decoration:underline}@media(max-width:640px){.login-card{margin:20px;padding:30px 25px}.login-header h1{font-size:24px}.login-icon{width:60px;height:60px}.form-options{flex-direction:column;gap:15px;align-items:flex-start}.input-wrapper input{font-size:16px}.password-input-wrapper input{padding-right:50px!important}.password-toggle{right:8px}.btn-login{font-size:15px}}@media(max-width:480px){.login-card{padding:25px 20px}.login-header h1{font-size:22px}.form-group{margin-bottom:18px}}.modern-dashboard{max-width:1600px;margin:0 auto;padding:0 24px 24px;opacity:0;animation:fadeInDashboard .8s cubic-bezier(.23,1,.32,1) forwards}@keyframes fadeInDashboard{to{opacity:1}}.dashboard-hero-advanced{position:relative;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);border-radius:24px;padding:32px 36px;margin-bottom:24px;overflow:hidden;box-shadow:0 16px 48px #667eea4d;min-height:180px}.hero-particles{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.particle{position:absolute;background:radial-gradient(circle,rgba(255,255,255,.8),transparent);border-radius:50%;animation:float-particle linear infinite}.particle:nth-child(odd){width:4px;height:4px}.particle:nth-child(2n){width:6px;height:6px}@keyframes float-particle{0%{transform:translateY(100vh) translate(0) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100px) translate(100px) rotate(360deg);opacity:0}}.hero-content-advanced{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.hero-left-content{flex:1;display:flex;flex-direction:column}.greeting-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:100px;background:#fffffff2;border:2px solid rgba(255,255,255,.5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:13px;font-weight:600;margin-bottom:12px;animation:slideInLeft .8s cubic-bezier(.34,1.56,.64,1);align-self:flex-start;color:#1f2937;box-shadow:0 4px 12px #0000001a}.greeting-badge:empty,.greeting-badge:not(:has(*)){display:none;margin:0}.hero-title-advanced{font-size:32px;font-weight:800;margin:0 0 10px;color:#fff;line-height:1.2;animation:slideInLeft .8s cubic-bezier(.34,1.56,.64,1) .1s backwards}.user-name-gradient{background:linear-gradient(135deg,#ffd89b,#19547b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:inline-block}.hero-subtitle-advanced{display:flex;align-items:center;gap:8px;font-size:14px;color:#fffffff2;margin:0 0 16px;animation:slideInLeft .8s cubic-bezier(.34,1.56,.64,1) .2s backwards}.sparkle-icon{animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.2) rotate(180deg);opacity:.8}}.org-badge-advanced{position:relative;display:inline-flex;align-items:center;gap:10px;padding:8px 18px;background:#ffffff26;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:100px;border:2px solid rgba(255,255,255,.3);color:#fff;font-size:14px;font-weight:600;overflow:hidden;animation:slideInRight .8s cubic-bezier(.34,1.56,.64,1) .3s backwards;flex-shrink:0;align-self:flex-start}.badge-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shine 3s ease-in-out infinite}@keyframes shine{0%,to{left:-100%}50%{left:100%}}.hero-stats-mini{display:flex;gap:16px;margin-top:20px;animation:slideUp .8s cubic-bezier(.34,1.56,.64,1) .4s backwards}.mini-stat{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#ffffff26;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;border:1px solid rgba(255,255,255,.2);color:#fff;transition:all .3s ease}.mini-stat:hover{background:#ffffff40;transform:translateY(-4px)}.mini-stat svg{flex-shrink:0}.mini-value{display:block;font-size:20px;font-weight:800;line-height:1;margin-bottom:3px}.mini-label{display:block;font-size:11px;opacity:.9}.quick-stats-intelligent{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.quick-stat-card{position:relative;background:#fff;border-radius:16px;padding:18px;box-shadow:0 3px 16px #00000014;overflow:hidden;transition:all .4s cubic-bezier(.34,1.56,.64,1);animation:slideUp .6s cubic-bezier(.34,1.56,.64,1)}.quick-stat-card:nth-child(1){animation-delay:.1s;opacity:0;animation-fill-mode:forwards}.quick-stat-card:nth-child(2){animation-delay:.2s;opacity:0;animation-fill-mode:forwards}.quick-stat-card:nth-child(3){animation-delay:.3s;opacity:0;animation-fill-mode:forwards}.quick-stat-card:nth-child(4){animation-delay:.4s;opacity:0;animation-fill-mode:forwards}.quick-stat-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 12px 40px #00000026}.quick-stat-card.urgent{border-left:4px solid #F59E0B}.quick-stat-card.celebration{border-left:4px solid #EC4899}.quick-stat-card.info{border-left:4px solid #8B5CF6}.quick-stat-card.success{border-left:4px solid #10B981}.stat-card-header-mini{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.stat-icon-mini{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 6px 12px #00000026;transition:transform .3s ease}.quick-stat-card:hover .stat-icon-mini{transform:scale(1.1) rotate(5deg)}.stat-icon-mini.urgent-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon-mini.birthday-icon{background:linear-gradient(135deg,#ec4899,#be185d)}.stat-icon-mini.holiday-icon{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.stat-icon-mini.target-icon{background:linear-gradient(135deg,#10b981,#059669)}.urgency-badge,.info-badge{font-size:11px;font-weight:700;padding:4px 12px;border-radius:100px;text-transform:uppercase;letter-spacing:.5px}.urgency-badge{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.info-badge{background:linear-gradient(135deg,#ddd6fe,#c4b5fd);color:#5b21b6}.stat-card-body-mini h3{font-size:28px;font-weight:800;color:#1f2937;margin:0 0 6px;line-height:1}.stat-card-body-mini p{font-size:13px;color:#6b7280;margin:0 0 12px;font-weight:500}.quick-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease}.quick-action-btn:hover{transform:translate(4px);box-shadow:0 6px 20px #667eea66}.celebration-text,.success-text{font-size:13px;font-weight:600}.celebration-text{color:#ec4899}.success-text{color:#10b981}.confetti-icon{font-size:24px;animation:bounce 1s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.pulse-indicator{position:absolute;top:20px;right:20px;width:12px;height:12px;background:#f59e0b;border-radius:50%;animation:pulse-ring 2s ease-in-out infinite}@keyframes pulse-ring{0%{box-shadow:0 0 #f59e0bb3}70%{box-shadow:0 0 0 16px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.two-column-section-full{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:24px;width:100%}.two-column-section-full .modern-card-intelligent{height:100%}.stats-grid-intelligent{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:24px}.stat-card-intelligent{position:relative;background:#fff;border-radius:20px;padding:24px;box-shadow:0 6px 20px #00000014;overflow:hidden;transition:all .4s cubic-bezier(.34,1.56,.64,1);animation:slideUp .8s cubic-bezier(.34,1.56,.64,1)}.stat-card-intelligent:nth-child(1){animation-delay:.1s;opacity:0;animation-fill-mode:forwards}.stat-card-intelligent:nth-child(2){animation-delay:.2s;opacity:0;animation-fill-mode:forwards}.stat-card-intelligent:nth-child(3){animation-delay:.3s;opacity:0;animation-fill-mode:forwards}.stat-card-intelligent:nth-child(4){animation-delay:.4s;opacity:0;animation-fill-mode:forwards}.stat-card-intelligent:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 20px 60px #0000002e}.card-glow{position:absolute;top:-50%;right:-50%;width:200%;height:200%;opacity:.05;transition:opacity .4s ease;pointer-events:none}.stat-card-intelligent:hover .card-glow{opacity:.1;animation:rotate-glow 10s linear infinite}.primary-glow{background:radial-gradient(circle,#4F46E5,transparent)}.success-glow{background:radial-gradient(circle,#10B981,transparent)}.warning-glow{background:radial-gradient(circle,#F59E0B,transparent)}.purple-glow{background:radial-gradient(circle,#8B5CF6,transparent)}@keyframes rotate-glow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stat-header-intelligent{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.stat-icon-intelligent{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 20px #00000029;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.stat-card-intelligent:hover .stat-icon-intelligent{transform:scale(1.15) rotate(8deg)}.gradient-blue{background:linear-gradient(135deg,#4f46e5,#7c3aed)}.gradient-green{background:linear-gradient(135deg,#10b981,#059669)}.gradient-orange{background:linear-gradient(135deg,#f59e0b,#d97706)}.gradient-purple{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.trend-badge-intelligent{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:100px;font-size:14px;font-weight:700;border:2px solid}.insight-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:100px;font-size:13px;font-weight:600}.insight-badge.excellent{background:linear-gradient(135deg,gold,orange);color:#92400e}.insight-badge.good{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.insight-badge.average{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.insight-badge.low{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.notification-badge{position:absolute;top:24px;right:24px;width:32px;height:32px;background:#ef4444;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;box-shadow:0 4px 12px #ef444466}.notification-badge.pulse{animation:pulse-ring 2s ease-in-out infinite}.period-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#f3f4f6;border-radius:100px;font-size:12px;font-weight:600;color:#6b7280}.stat-body-intelligent{margin-bottom:18px}.stat-value-intelligent{margin-bottom:14px}.value-number{display:block;font-size:38px;font-weight:900;color:#1f2937;line-height:1;margin-bottom:6px;background:linear-gradient(135deg,#1f2937,#4b5563);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.value-label{display:block;font-size:14px;color:#6b7280;font-weight:600}.stat-insights{display:flex;flex-wrap:wrap;gap:12px}.insight-item{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#f9fafb;border-radius:10px;font-size:14px;color:#374151;font-weight:500;transition:all .3s ease}.insight-item:hover{background:#f3f4f6;transform:translateY(-2px)}.insight-icon{flex-shrink:0}.insight-icon.active{color:#10b981}.insight-icon.new{color:#3b82f6}.insight-icon.inactive{color:#ef4444}.attendance-breakdown{display:flex;flex-direction:column;gap:12px}.breakdown-item{display:flex;align-items:center;gap:10px;font-size:14px;color:#374151;font-weight:500}.breakdown-bar{flex:1;height:8px;background:#f3f4f6;border-radius:100px;overflow:hidden}.bar-fill{height:100%;border-radius:100px;transition:width 1.2s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.leave-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.leave-stat-item{display:flex;flex-direction:column;gap:8px;padding:12px;background:#f9fafb;border-radius:12px;transition:all .3s ease}.leave-stat-item:hover{background:#f3f4f6;transform:translateY(-2px)}.leave-stat-item.approved svg{color:#10b981}.leave-stat-item.rejected svg{color:#ef4444}.leave-stat-item.active svg{color:#f59e0b}.leave-stat-item .count{font-size:20px;font-weight:800;color:#1f2937;line-height:1}.leave-stat-item .label{font-size:11px;color:#6b7280;font-weight:500}.growth-indicator{display:flex;flex-direction:column;gap:16px}.growth-chart{display:flex;align-items:flex-end;gap:6px;height:60px;padding:10px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:12px}.chart-bar{flex:1;background:linear-gradient(180deg,#8b5cf6,#6d28d9);border-radius:4px 4px 0 0;opacity:0;animation:grow-bar .8s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes grow-bar{0%{height:0;opacity:0}to{opacity:1}}.growth-text{display:flex;align-items:center;gap:8px;font-size:14px;color:#8b5cf6;font-weight:600}.stat-footer-intelligent{padding-top:16px;border-top:2px solid #F3F4F6}.progress-bar-intelligent{height:10px;background:#f3f4f6;border-radius:100px;overflow:hidden;margin-bottom:12px}.progress-fill-intelligent{height:100%;border-radius:100px;position:relative;overflow:hidden;transition:width 1.4s cubic-bezier(.34,1.56,.64,1)}.progress-shimmer{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%,to{left:-100%}50%{left:100%}}.progress-info{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:#6b7280;font-weight:600}.flame-icon{color:#f59e0b;animation:flicker 2s ease-in-out infinite}@keyframes flicker{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.circular-progress{display:flex;flex-direction:column;align-items:center;gap:8px}.circular-chart{max-width:90px;max-height:90px}.circle-bg{fill:none;stroke:#f3f4f6;stroke-width:3.8}.circle{fill:none;stroke:url(#gradient);stroke-width:2.8;stroke-linecap:round;animation:progress 1.5s ease-in-out forwards;transform:rotate(-90deg);transform-origin:50% 50%}.circular-chart .percentage{fill:#1f2937;font-size:.5em;font-weight:800;text-anchor:middle}.circular-label{font-size:13px;color:#6b7280;font-weight:600}@keyframes progress{0%{stroke-dasharray:0 100}}.month-summary{display:flex;align-items:center;gap:10px;font-size:14px;color:#6b7280;font-weight:600}.heart-icon{color:#ec4899;animation:heartbeat 1.5s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(1.2)}20%,40%{transform:scale(1)}}.content-grid-intelligent{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.modern-card-intelligent{background:#fff;border-radius:20px;padding:24px;box-shadow:0 6px 20px #00000014;transition:all .4s ease;animation:slideUp 1s cubic-bezier(.34,1.56,.64,1)}.modern-card-intelligent:nth-child(1){animation-delay:.2s;opacity:0;animation-fill-mode:forwards}.modern-card-intelligent:nth-child(2){animation-delay:.3s;opacity:0;animation-fill-mode:forwards}.modern-card-intelligent:nth-child(3){animation-delay:.4s;opacity:0;animation-fill-mode:forwards}.modern-card-intelligent:nth-child(4){animation-delay:.5s;opacity:0;animation-fill-mode:forwards}.modern-card-intelligent:hover{box-shadow:0 16px 48px #0000001f;transform:translateY(-6px)}.card-header-intelligent{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.header-left{display:flex;align-items:center;gap:14px}.header-icon{width:40px;height:40px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px #667eea4d}.card-header-intelligent h3{font-size:17px;font-weight:800;color:#1f2937;margin:0}.badge-count-intelligent{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 16px;border-radius:100px;font-size:14px;font-weight:700;box-shadow:0 4px 12px #667eea4d}.card-body-intelligent{max-height:400px;overflow-y:auto;padding-right:8px}.card-body-intelligent::-webkit-scrollbar{width:6px}.card-body-intelligent::-webkit-scrollbar-track{background:#f3f4f6;border-radius:100px}.card-body-intelligent::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea,#764ba2);border-radius:100px}.timeline-activities{display:flex;flex-direction:column;gap:14px;position:relative;padding-left:28px}.timeline-activities:before{content:"";position:absolute;left:10px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#667eea,#764ba2);opacity:.2}.timeline-item{position:relative;animation:slideInRight .6s cubic-bezier(.34,1.56,.64,1);opacity:0;animation-fill-mode:forwards}.timeline-dot{position:absolute;left:-25px;top:8px;width:12px;height:12px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 0 0 4px #667eea33;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 4px #667eea33}50%{box-shadow:0 0 0 8px #667eea00}}.timeline-content{background:#f9fafb;padding:12px;border-radius:12px;border-left:3px solid transparent;transition:all .3s ease}.timeline-item:hover .timeline-content{background:#f3f4f6;border-left-color:#667eea;transform:translate(4px)}.activity-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.activity-employee-name{font-size:15px;font-weight:700;color:#1f2937}.activity-action-text{font-size:14px;color:#6b7280;margin:0 0 8px}.activity-time-text{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#9ca3af;font-weight:500}.activity-icon{padding:6px;border-radius:8px}.activity-icon.leave-icon{background:#fef3c720;color:#f59e0b}.activity-icon.checkin-icon{background:#d1fae520;color:#10b981}.activity-icon.checkout-icon{background:#fee2e220;color:#ef4444}.activity-icon.profile-icon{background:#ede9fe20;color:#8b5cf6}.activity-icon.default-icon{background:#f3f4f620;color:#6b7280}.leaves-grid-intelligent{display:flex;flex-direction:column;gap:16px}.leave-card-mini{display:flex;gap:12px;padding:12px;background:linear-gradient(135deg,#f9fafb,#fff);border-radius:14px;border:2px solid #F3F4F6;transition:all .3s ease;animation:slideInRight .6s cubic-bezier(.34,1.56,.64,1);opacity:0;animation-fill-mode:forwards}.leave-card-mini:hover{border-color:#667eea;background:linear-gradient(135deg,#fff,#f9fafb);transform:translate(6px);box-shadow:0 8px 24px #667eea26}.leave-avatar-intelligent{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;flex-shrink:0;box-shadow:0 6px 16px #667eea40}.leave-info-intelligent{flex:1;min-width:0}.leave-name{font-size:16px;font-weight:700;color:#1f2937;margin:0 0 6px}.leave-dates-mini{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;margin:0 0 10px}.leave-meta{display:flex;gap:10px}.leave-type-badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:100px;background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#6d28d9;text-transform:uppercase;letter-spacing:.5px}.leave-duration{font-size:12px;font-weight:700;color:#8b5cf6}.department-chart{display:flex;flex-direction:column;gap:20px}.dept-item-intelligent{animation:slideInRight .6s cubic-bezier(.34,1.56,.64,1);opacity:0;animation-fill-mode:forwards}.dept-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.dept-color-indicator{width:16px;height:16px;border-radius:4px;box-shadow:0 4px 8px #00000026}.dept-name{flex:1;font-size:15px;font-weight:700;color:#1f2937}.dept-percentage{font-size:18px;font-weight:800;color:#6b7280}.dept-bar-container{height:12px;background:#f3f4f6;border-radius:100px;overflow:hidden;margin-bottom:8px}.dept-bar-fill{height:100%;border-radius:100px;position:relative;overflow:hidden;animation:expand-bar 1.2s cubic-bezier(.34,1.56,.64,1) forwards;transform-origin:left}@keyframes expand-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.bar-shimmer{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:shimmer 2s ease-in-out infinite}.dept-footer{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280;font-weight:500}.events-list-intelligent{display:flex;flex-direction:column;gap:16px}.event-item-intelligent{display:flex;gap:12px;padding:12px;background:#f9fafb;border-radius:14px;transition:all .3s ease;animation:slideInRight .6s cubic-bezier(.34,1.56,.64,1);opacity:0;animation-fill-mode:forwards}.event-item-intelligent:hover{background:#f3f4f6;transform:translate(6px)}.event-icon-large{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.event-icon{width:100%;height:100%;padding:12px}.event-icon.birthday-icon{color:#ec4899;background:linear-gradient(135deg,#fce7f320,#fbe2f420)}.event-icon.holiday-icon{color:#8b5cf6;background:linear-gradient(135deg,#ede9fe20,#ddd6fe20)}.event-icon.anniversary-icon{color:#f59e0b;background:linear-gradient(135deg,#fef3c720,#fde68a20)}.event-icon.default-icon{color:#6b7280;background:linear-gradient(135deg,#f3f4f620,#e5e7eb20)}.event-content-intelligent{flex:1;min-width:0}.event-title-text{font-size:16px;font-weight:700;color:#1f2937;margin:0 0 6px}.event-description-text{font-size:14px;color:#6b7280;margin:0 0 8px}.event-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#667eea;font-weight:600}.empty-state-intelligent{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;color:#d1d5db}.empty-state-intelligent svg{opacity:.3;margin-bottom:16px}.empty-state-intelligent p{margin:0;font-size:15px;font-weight:600;color:#9ca3af}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:600px}.loading-spinner-modern{position:relative;width:120px;height:120px;margin-bottom:32px}.spinner-ring{position:absolute;width:100%;height:100%;border:4px solid transparent;border-top-color:#667eea;border-radius:50%;animation:spin-ring 1.5s cubic-bezier(.68,-.55,.27,1.55) infinite}.spinner-ring:nth-child(2){border-top-color:#764ba2;animation-delay:.3s;animation-duration:1.8s}.spinner-ring:nth-child(3){border-top-color:#f093fb;animation-delay:.6s;animation-duration:2.1s}@keyframes spin-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#667eea;animation:sparkle 1.5s ease-in-out infinite}.loading-text{font-size:18px;font-weight:600;color:#6b7280;margin:0 0 20px}.loading-dots{display:flex;gap:8px}.loading-dots span{width:10px;height:10px;background:#667eea;border-radius:50%;animation:bounce-dot 1.4s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce-dot{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:500px;padding:48px;text-align:center}.error-icon-wrapper{color:#ef4444;margin-bottom:24px;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.error-container h3{font-size:24px;font-weight:800;color:#1f2937;margin:0 0 12px}.error-container p{font-size:16px;color:#6b7280;margin:0 0 32px;max-width:400px}.retry-button{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #667eea4d}.retry-button:hover{transform:translateY(-4px);box-shadow:0 12px 32px #667eea66}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1200px){.content-grid-intelligent{grid-template-columns:1fr}}@media(max-width:768px){.modern-dashboard{padding:0 16px 16px}.dashboard-hero-advanced{padding:40px 28px;border-radius:24px}.hero-content-advanced{flex-direction:column;gap:16px}.org-badge-advanced{align-self:flex-end}.hero-title-advanced{font-size:32px}.hero-subtitle-advanced{font-size:15px}.hero-stats-mini{flex-direction:column;gap:12px}.mini-stat{width:100%}.quick-stats-intelligent{grid-template-columns:repeat(2,1fr)}.two-column-section-full,.stats-grid-intelligent{grid-template-columns:1fr}.value-number{font-size:42px}.stat-card-intelligent,.modern-card-intelligent{padding:24px}}@media(max-width:480px){.quick-stats-intelligent,.two-column-section-full{grid-template-columns:1fr}.hero-title-advanced{font-size:28px}.leave-stats-grid{grid-template-columns:1fr}.growth-chart{height:60px}}.skeleton-card{background:#fff;border:1px solid #f0f0f0;padding:20px;border-radius:16px}.quick-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:24px}.stats-grid-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:24px}.dashboard-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin-bottom:24px}.skeleton-hero{background:linear-gradient(135deg,#e5e7eb,#d1d5db)}.skeleton-greeting-badge{width:150px;height:32px;margin-bottom:16px;border-radius:20px}.skeleton-hero-title{width:350px;height:36px;margin-bottom:12px}.skeleton-hero-subtitle{width:400px;height:20px}.skeleton-org-badge{width:180px;height:40px;border-radius:20px}.skeleton-mini-icon{width:20px;height:20px;border-radius:4px}.skeleton-mini-value{width:50px;height:24px;margin-bottom:4px}.skeleton-mini-label{width:70px;height:14px}.skeleton-quick-icon{width:40px;height:40px;border-radius:12px;margin-bottom:12px}.skeleton-quick-value{width:60px;height:28px;margin-bottom:8px}.skeleton-quick-label{width:80px;height:16px}.stat-header-skeleton{display:flex;align-items:center;gap:12px;margin-bottom:16px}.skeleton-stat-icon-large{width:56px;height:56px;border-radius:16px}.skeleton-stat-title{width:120px;height:20px}.skeleton-stat-value-large{width:100px;height:42px;margin-bottom:12px}.skeleton-stat-trend{width:90px;height:24px;border-radius:12px}.skeleton-card-title{width:180px;height:24px;margin-bottom:20px}.skeleton-chart-area{width:100%;height:280px;border-radius:12px}.skeleton-activity-row{width:100%;height:72px;margin-bottom:12px;border-radius:12px}.skeleton-event-row{width:100%;height:84px;margin-bottom:12px;border-radius:12px}.modern-dropdown{position:relative;width:100%}.modern-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:11px 16px;font-size:14px;font-weight:500;color:#1e293b;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;gap:12px}.modern-dropdown-trigger:hover:not(:disabled){border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-1px)}.modern-dropdown-trigger:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea33}.modern-dropdown.open .modern-dropdown-trigger{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a}.dropdown-value{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-value.placeholder{color:#94a3b8}.dropdown-icon{flex-shrink:0;color:#667eea;transition:transform .3s cubic-bezier(.4,0,.2,1)}.dropdown-icon.rotate{transform:rotate(180deg)}.modern-dropdown-trigger:disabled{background-color:#f1f5f9;color:#94a3b8;cursor:not-allowed;border-color:#e2e8f0;box-shadow:none}.modern-dropdown-trigger:disabled .dropdown-icon{color:#94a3b8}.modern-dropdown.disabled{opacity:.6}.modern-dropdown-menu{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 32px #0000001f,0 2px 8px #00000014;z-index:9999;overflow:hidden;animation:dropdownSlideIn .2s cubic-bezier(.4,0,.2,1);max-width:100vw}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dropdownSlideInUpward{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modern-dropdown-menu.open-upward{animation:dropdownSlideInUpward .2s cubic-bezier(.4,0,.2,1)}.dropdown-search{padding:12px;border-bottom:1px solid #f1f5f9;background:#fafbfc}.dropdown-search input{width:100%;padding:8px 12px;font-size:13px;border:1px solid #e2e8f0;border-radius:8px;outline:none;transition:all .2s}.dropdown-search input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.dropdown-options{list-style:none;margin:0;padding:8px;max-height:280px;overflow-y:auto}.dropdown-options::-webkit-scrollbar{width:8px}.dropdown-options::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.dropdown-options::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.dropdown-options::-webkit-scrollbar-thumb:hover{background:#667eea}.dropdown-option{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;font-size:14px;color:#1e293b;border-radius:8px;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);gap:8px}.dropdown-option:hover{background:linear-gradient(135deg,#eef2ff,#f5f7ff);color:#667eea;transform:translate(4px)}.dropdown-option.selected{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.dropdown-option.selected:hover{background:linear-gradient(135deg,#5568d3,#6a4091);transform:translate(2px)}.option-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.check-icon{flex-shrink:0;animation:checkIn .2s cubic-bezier(.4,0,.2,1)}@keyframes checkIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.dropdown-option.no-results{color:#94a3b8;cursor:default;text-align:center;padding:20px 12px}.dropdown-option.no-results:hover{background:transparent;transform:none}@media(max-width:768px){.modern-dropdown-trigger{font-size:16px}.dropdown-options{max-height:240px}}@media(prefers-color-scheme:dark){.modern-dropdown-trigger{background:#1e293b;color:#f1f5f9;border-color:#334155}.modern-dropdown-trigger:hover:not(:disabled){border-color:#818cf8}.modern-dropdown.open .modern-dropdown-trigger,.modern-dropdown-trigger:focus{border-color:#818cf8;box-shadow:0 0 0 4px #818cf826}.modern-dropdown-menu{background:#1e293b;border-color:#334155}.dropdown-search{background:#0f172a;border-bottom-color:#334155}.dropdown-search input{background:#1e293b;color:#f1f5f9;border-color:#334155}.dropdown-option{color:#f1f5f9}.dropdown-option:hover{background:linear-gradient(135deg,#1e293b,#334155);color:#818cf8}}.search-filter-container{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;gap:16px}.search-filter-box{position:relative;display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;transition:all .2s;width:100%}.search-filter-box:focus-within{border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.search-filter-box.searching{border-color:#667eea;background:#fff}.search-icon{color:#a0aec0;flex-shrink:0}.search-filter-input{flex:1;border:none;background:transparent;outline:none;font-size:14px;color:#2d3748;padding-left:30px}.search-filter-input::placeholder{color:#a0aec0}.search-spinner{color:#667eea;flex-shrink:0;animation:spin 1s linear infinite}.search-clear-btn{display:flex;align-items:center;justify-content:center;padding:4px;background:#e2e8f0;border:none;border-radius:4px;cursor:pointer;transition:all .2s;color:#718096;flex-shrink:0}.search-clear-btn:hover{background:#cbd5e0;color:#2d3748}.search-clear-btn:active{transform:scale(.95)}.filter-dropdown{width:100%}@media(max-width:1024px){.filter-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media(max-width:768px){.search-filter-container{padding:16px;gap:12px}.filter-grid{grid-template-columns:1fr}.search-filter-box{padding:10px 14px}.btn-clear-all-filters{width:100%;justify-content:center}}.search-filter-container.compact{padding:12px;margin-bottom:16px}.search-filter-container.compact .search-filter-box{padding:8px 12px}.search-filter-container.compact .btn-clear-all-filters{padding:8px 14px;font-size:13px}.confirm-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:confirmOverlayFadeIn .2s ease-out;padding:20px}@keyframes confirmOverlayFadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal-content{background:#fff;border-radius:20px;padding:40px;max-width:480px;width:100%;box-shadow:0 20px 60px #0000004d;position:relative;animation:confirmModalSlideIn .3s cubic-bezier(.4,0,.2,1);text-align:center}@keyframes confirmModalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-modal-close{position:absolute;top:16px;right:16px;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.confirm-modal-close:hover:not(:disabled){background:#f1f5f9;color:#475569}.confirm-modal-close:disabled{opacity:.5;cursor:not-allowed}.confirm-modal-icon{width:80px;height:80px;margin:0 auto 24px;border-radius:50%;display:flex;align-items:center;justify-content:center;animation:confirmIconBounce .5s cubic-bezier(.4,0,.2,1)}@keyframes confirmIconBounce{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.confirm-modal-icon.warning{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#f59e0b}.confirm-modal-icon.danger{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#ef4444}.confirm-modal-icon.success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#10b981}.confirm-modal-icon.info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#3b82f6}.confirm-modal-title{font-size:24px;font-weight:700;color:#1e293b;margin:0 0 12px}.confirm-modal-message{font-size:15px;color:#64748b;line-height:1.6;max-width:380px;margin:0 auto 32px}.confirm-modal-actions{display:flex;gap:12px;justify-content:center}.confirm-modal-btn{padding:12px 32px;font-size:15px;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:8px;min-width:120px;justify-content:center}.confirm-modal-btn:disabled{opacity:.6;cursor:not-allowed}.confirm-modal-btn-cancel{background:#f1f5f9;color:#475569;border:2px solid #e2e8f0}.confirm-modal-btn-cancel:hover:not(:disabled){background:#e2e8f0;border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.confirm-modal-btn-cancel:active:not(:disabled){transform:translateY(0)}.confirm-modal-btn-confirm{color:#fff;box-shadow:0 4px 12px #00000026}.confirm-modal-btn-confirm.warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.confirm-modal-btn-confirm.warning:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b66}.confirm-modal-btn-confirm.danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.confirm-modal-btn-confirm.danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.confirm-modal-btn-confirm.success{background:linear-gradient(135deg,#667eea,#764ba2)}.confirm-modal-btn-confirm.success:hover:not(:disabled){background:linear-gradient(135deg,#667eea,#764ba2);transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.confirm-modal-btn-confirm.info{background:linear-gradient(135deg,#667eea,#764ba2)}.confirm-modal-btn-confirm.info:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.confirm-modal-btn-confirm:active:not(:disabled){transform:translateY(0)}@media(max-width:640px){.confirm-modal-content{padding:32px 24px;margin:20px}.confirm-modal-title{font-size:20px}.confirm-modal-message{font-size:14px}.confirm-modal-actions{flex-direction:column-reverse}.confirm-modal-btn{width:100%}}@media(prefers-color-scheme:dark){.confirm-modal-content{background:#1e293b}.confirm-modal-title{color:#f1f5f9}.confirm-modal-message{color:#94a3b8}.confirm-modal-btn-cancel{background:#334155;color:#e2e8f0;border-color:#475569}.confirm-modal-btn-cancel:hover:not(:disabled){background:#475569;border-color:#64748b}}.employees-page{padding:24px;max-width:1400px;margin:0 auto}.employees-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;margin-bottom:20px}.employees-table thead{background:#f7fafc}.employees-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.employees-table td{padding:16px 20px;font-size:14px;color:#2d3748;border-bottom:1px solid #e2e8f0}.employees-table tbody tr:last-child td{border-bottom:none}.employees-table tbody tr{transition:background-color .2s}.employees-table tbody tr:hover{background-color:#f7fafc}.employee-name{display:flex;align-items:center;gap:12px}.employee-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #e2e8f0}.avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;flex-shrink:0}.employee-name span{font-weight:600;color:#1a202c}.contact-info{display:flex;flex-direction:column;gap:6px}.contact-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#64748b}.contact-item svg{color:#a0aec0;flex-shrink:0}.status-badge.status-terminated{background-color:#fee2e2;color:#991b1b}.btn-icon{padding:8px;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;background-color:#dbeafe;color:#1e40af}.btn-icon:hover:not(:disabled){background-color:#bfdbfe}.btn-icon-view{background-color:#e0e7ff;color:#4338ca}.btn-icon-view:hover:not(:disabled){background-color:#c7d2fe}.btn-icon-danger{background-color:#fee2e2;color:#991b1b}.btn-icon-danger:hover:not(:disabled){background-color:#fecaca}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;flex-wrap:wrap;gap:16px}@media(max-width:1024px){.filter-group{width:100%}.filter-group>*{flex:1 1 180px}}@media(max-width:768px){.employees-page{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-primary{width:100%;justify-content:center}.employees-filters{padding:16px}.filter-row{flex-direction:column}.filter-group{width:100%}.filter-group>*{min-width:100%;max-width:100%}.btn-clear-filters{width:100%;justify-content:center}.table-footer{flex-direction:column;align-items:stretch}.footer-info{flex-direction:column;align-items:flex-start;gap:12px}.pagination{flex-wrap:wrap;justify-content:center}.employees-table th,.employees-table td{padding:12px 16px;font-size:13px}.employee-avatar,.avatar{width:32px;height:32px}}@media(max-width:480px){.employees-table{font-size:12px}.pagination-btn{padding:6px 10px;font-size:13px}.pagination-btn:not(.active):not(:first-child):not(:last-child):not(:nth-last-child(2)):not(:nth-child(2)){display:none}}.file-upload{width:100%;display:flex;flex-direction:column}.file-upload-label{display:block;font-size:13px;font-weight:600;color:#4a5568;margin-bottom:8px;flex-shrink:0}.file-upload-label .required{color:#e53e3e;margin-left:4px}.file-upload-area{border:2px dashed #cbd5e0;border-radius:8px;padding:24px 20px;text-align:center;cursor:pointer;transition:all .2s;background:#f7fafc;width:100%;box-sizing:border-box}.file-upload-area:hover:not(.disabled){border-color:#667eea;background:#edf2f7}.file-upload-area.drag-active{border-color:#667eea;background:#e6f2ff}.file-upload-area.error{border-color:#fc8181;background:#fff5f5}.file-upload.disabled .file-upload-area{opacity:.5;cursor:not-allowed}.upload-icon{color:#a0aec0;margin-bottom:12px}.upload-text{font-size:14px;color:#2d3748;margin:0 0 4px;font-weight:500}.upload-help{font-size:12px;color:#718096;margin:0}.upload-progress{display:flex;flex-direction:column;align-items:center;gap:12px}.upload-progress p{margin:0;font-size:14px;color:#4a5568;font-weight:500}.spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.progress-bar{width:100%;max-width:200px;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.file-preview{border:2px solid #e2e8f0;border-radius:8px;padding:16px;background:#fff;width:100%;box-sizing:border-box}.image-preview{margin-bottom:12px;display:flex;justify-content:center;width:100%}.image-preview img{max-width:200px;max-height:200px;width:100%;height:auto;border-radius:8px;object-fit:cover;border:1px solid #e2e8f0}.file-info{display:flex;align-items:center;gap:12px;padding:12px;background:#f7fafc;border-radius:6px;margin-bottom:12px}.file-info svg{color:#667eea;flex-shrink:0}.file-name{font-size:14px;color:#2d3748;font-weight:500;word-break:break-all}.file-actions{display:flex;gap:8px;justify-content:center}.btn-file-action{display:flex;align-items:center;gap:6px;padding:8px 16px;border:2px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;background:#fff}.btn-remove{color:#e53e3e;border-color:#feb2b2}.btn-remove:hover:not(:disabled){background:#fff5f5;border-color:#fc8181}.btn-replace{color:#667eea;border-color:#c3dafe}.btn-replace:hover:not(:disabled){background:#ebf4ff;border-color:#a3bffa}.btn-file-action:disabled{opacity:.5;cursor:not-allowed}.file-upload-error{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;background:#fff5f5;border:1px solid #feb2b2;border-radius:6px;color:#c53030;font-size:13px}.file-upload-success{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;background:#f0fff4;border:1px solid #9ae6b4;border-radius:6px;color:#22543d;font-size:13px}@media(max-width:480px){.file-upload-area{padding:24px 16px}.upload-icon{width:32px;height:32px}.image-preview img{max-width:150px;max-height:150px}.file-actions{flex-direction:column}.btn-file-action{width:100%;justify-content:center}}.date-picker-wrapper{display:flex;flex-direction:column;gap:8px;width:100%}.date-picker-label{font-size:13px;font-weight:600;color:#4a5568;display:flex;align-items:center;gap:4px}.required-mark{color:#dc2626;font-weight:700}.date-picker-input-wrapper{position:relative;display:flex;align-items:center}.date-picker-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#667eea;pointer-events:none;z-index:1;flex-shrink:0}.date-picker-input{width:100%;padding:11px 14px 11px 48px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;font-weight:500;transition:all .2s;outline:none;font-family:inherit;background:#fff;cursor:pointer;position:relative}.date-picker-input:hover{border-color:#cbd5e0}.date-picker-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.date-picker-input:disabled{background:#f7fafc;color:#a0aec0;cursor:not-allowed;border-color:#e2e8f0}.date-picker-input:disabled+.date-picker-icon{color:#a0aec0}.date-picker-input::-webkit-calendar-picker-indicator{opacity:0;width:100%;height:100%;position:absolute;top:0;left:0;cursor:pointer}.date-picker-input::-webkit-datetime-edit{padding-left:20px}.date-picker-input::-webkit-datetime-edit-text,.date-picker-input::-webkit-datetime-edit-month-field,.date-picker-input::-webkit-datetime-edit-day-field,.date-picker-input::-webkit-datetime-edit-year-field{color:#1a202c}.date-picker-input:invalid{color:#a0aec0}.date-picker-wrapper.has-error .date-picker-input{border-color:#dc2626}.date-picker-wrapper.has-error .date-picker-input:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.date-picker-wrapper.has-error .date-picker-icon{color:#dc2626}.date-picker-error{font-size:12px;color:#dc2626;font-weight:500;margin-top:-4px}.date-picker-input::-webkit-calendar-picker-indicator{cursor:pointer}@media(max-width:768px){.date-picker-input{font-size:16px}}.date-picker-input:not(:invalid){color:#1a202c;font-weight:600}.employee-form-page{padding:24px;max-width:1200px;margin:0 auto}.employee-form-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.form-header{margin-bottom:24px}.btn-back{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#4a5568;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:20px}.form-header h2{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.form-header p{color:#718096;font-size:14px;margin:0}.progress-container{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.progress-steps{display:flex;justify-content:space-between;margin-bottom:20px;position:relative}.progress-steps:before{content:"";position:absolute;top:20px;left:0;right:0;height:4px;background:#e2e8f0;z-index:0}.progress-steps:after{content:"";position:absolute;top:20px;left:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);z-index:1;transition:width .3s ease;width:var(--progress-width, 0%)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;cursor:pointer;transition:all .2s;position:relative}.step-circle{width:40px;height:40px;border-radius:50%;background:#e2e8f0;color:#718096;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;transition:all .2s;position:relative;z-index:3;border:3px solid white;box-shadow:0 2px 4px #0000001a}.progress-step.active .step-circle{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #667eea4d}.progress-step.completed .step-circle{background:#10b981;color:#fff}.step-title{font-size:12px;font-weight:600;color:#718096;text-align:center;transition:all .2s}.progress-step.active .step-title{color:#667eea}.progress-step.completed .step-title{color:#10b981}.form-container{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a;min-height:500px;overflow:visible}.form-step{overflow:visible}.form-step h3{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700;color:#1a202c;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.form-step h3 svg{color:#667eea}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;overflow:visible}.form-group{display:flex;flex-direction:column;gap:8px;align-items:stretch;position:relative;z-index:1}.form-group:has(.modern-dropdown.open){z-index:100}.form-group:focus-within{z-index:50}.form-group>*{width:100%}.form-group select{padding:11px 40px 11px 16px;border-radius:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px}.form-section-header{grid-column:1 / -1;margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.form-section-header h4{font-size:16px;font-weight:600;color:#2d3748;margin:0}.form-navigation{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:24px;border-top:2px solid #e2e8f0}.btn-nav{display:flex;align-items:center;gap:8px;padding:12px 24px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;background:#fff;color:#4a5568}.btn-nav:disabled{opacity:.5;cursor:not-allowed}.btn-next{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.btn-next:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.step-indicator{font-size:14px;font-weight:600;color:#fff}.address-section{margin-bottom:24px;padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e2e8f0;overflow:visible}.address-section h4{font-size:16px;font-weight:600;color:#2d3748;margin:0 0 16px}.address-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.address-header h4{margin:0}.checkbox-label{display:flex;align-items:center;justify-content:flex-start;gap:8px;font-size:14px;font-weight:500;color:#4a5568;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#667eea;flex-shrink:0;margin:0}.checkbox-group{display:flex;flex-wrap:wrap;gap:12px;padding:12px;background:#f9fafb;border-radius:8px;border:2px solid #e2e8f0}.checkbox-group .checkbox-label{flex:0 0 auto;min-width:140px;padding:8px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;transition:all .2s}.checkbox-group .checkbox-label:hover{background:#f7fafc;border-color:#cbd5e0}.bank-account-section,.relative-section{margin-bottom:24px;padding:24px;background:#f9fafb;border-radius:8px;border:2px solid #e2e8f0;position:relative;overflow:visible}.section-header-with-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.section-header-with-actions h4{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:#2d3748;margin:0}.badge-primary{display:inline-flex;align-items:center;padding:4px 10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:11px;font-weight:700;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.btn-add{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:#fff;color:#667eea;border:2px dashed #667eea;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;width:100%;margin-top:16px}.btn-add:hover{background:#f7fafc;border-color:#764ba2;color:#764ba2}.btn-remove-small{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;color:#dc2626;border:1px solid #fee2e2;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-remove-small:hover{background:#fee2e2;border-color:#fca5a5}.empty-state{text-align:center;padding:40px 20px;background:#f9fafb;border:2px dashed #e2e8f0;border-radius:8px;margin-bottom:16px}@media(max-width:768px){.employee-form-page{padding:16px}.form-container{padding:20px}.form-grid{grid-template-columns:1fr}.progress-steps{flex-wrap:wrap;gap:12px}.progress-step{flex:0 0 calc(25% - 9px)}.step-title{font-size:10px}.step-circle{width:32px;height:32px;font-size:12px}.form-navigation{flex-direction:column;gap:12px}.btn-nav,.btn-submit{width:100%;justify-content:center}.step-indicator{order:-1}.checkbox-group .checkbox-label{flex:0 0 auto;min-width:120px}.section-header-with-actions{flex-direction:column;align-items:flex-start;gap:12px}.address-section,.bank-account-section,.relative-section{padding:16px}}@media(max-width:480px){.progress-step{flex:0 0 calc(50% - 6px)}.form-step h3{font-size:18px}.checkbox-group .checkbox-label{flex:0 0 100%}.btn-remove-small{font-size:11px;padding:5px 10px}}.employee-detail-page{padding:24px;max-width:1400px;margin:0 auto}.employee-detail-loading,.employee-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.employee-detail-error svg{color:#dc2626}.employee-detail-error p{font-size:16px;color:#4a5568;margin:0}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn-back{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;color:#4a5568;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back:hover{background:#f7fafc;border-color:#cbd5e0}.header-actions{display:flex;gap:12px}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.employee-header-card{background:#fff;border-radius:12px;padding:32px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.employee-header-content{display:flex;gap:32px;align-items:flex-start}.employee-photo-section{flex-shrink:0}.employee-photo-large{width:150px;height:150px;border-radius:12px;object-fit:cover;border:4px solid #e2e8f0}.avatar-large{width:150px;height:150px;border-radius:12px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;border:4px solid #e2e8f0}.employee-header-info{flex:1;display:flex;flex-direction:column;gap:16px}.employee-title{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.employee-title h2{font-size:28px;font-weight:700;color:#1a202c;margin:0}.employee-id-large{font-weight:600;color:#667eea}.employee-meta{display:flex;flex-wrap:wrap;gap:24px}.meta-item{display:flex;align-items:center;gap:8px;color:#4a5568;font-size:14px}.meta-item svg{color:#667eea}.employee-contact-quick{display:flex;gap:24px;flex-wrap:wrap;padding-top:16px;border-top:1px solid #e2e8f0}.contact-quick-item{display:flex;align-items:center;gap:8px;color:#2d3748;font-size:14px;font-weight:500}.contact-quick-item svg{color:#667eea}.status-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-active{background-color:#d1fae5;color:#065f46}.status-inactive{background-color:#e5e7eb;color:#374151}.status-terminated{background-color:#fee2e2;color:#991b1b}.detail-content{display:flex;flex-direction:column;gap:24px}.detail-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.section-header svg{color:#667eea}.section-header h3{font-size:20px;font-weight:700;color:#1a202c;margin:0}.section-body{display:flex;flex-direction:column;gap:20px}.subsection-header{margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.subsection-header:first-child{margin-top:0;padding-top:0;border-top:none}.subsection-header h4{font-size:16px;font-weight:600;color:#2d3748;margin:0 0 16px;display:flex;align-items:center;gap:12px}.badge-primary-small{display:inline-flex;padding:3px 8px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:10px;font-weight:700;border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.detail-item{display:flex;flex-direction:column;gap:6px}.detail-item label{font-size:12px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.5px}.detail-item span{font-size:14px;color:#1a202c;font-weight:500}.document-link{display:inline-flex;align-items:center;gap:6px;color:#667eea;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s}.document-link:hover{color:#764ba2;text-decoration:underline}.document-link-button{display:inline-flex;align-items:center;gap:6px;color:#667eea;font-size:14px;font-weight:600;background:none;border:none;padding:0;cursor:pointer;text-decoration:none;transition:all .2s;font-family:inherit}.document-link-button:hover{color:#764ba2;text-decoration:underline}.bank-account-detail,.relative-detail{padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e2e8f0}.no-data-text{text-align:center;color:#718096;font-size:14px;padding:20px;margin:0;background:#f9fafb;border-radius:8px;border:2px dashed #e2e8f0}@media(max-width:1024px){.employee-header-content{flex-direction:column;align-items:center;text-align:center}.employee-meta,.employee-contact-quick{justify-content:center}}@media(max-width:768px){.employee-detail-page{padding:16px}.detail-header{flex-direction:column;gap:12px;align-items:stretch}.header-actions{width:100%}.btn-primary,.btn-back{width:100%;justify-content:center}.employee-header-card{padding:20px}.employee-photo-large,.avatar-large{width:120px;height:120px}.employee-title h2{font-size:22px}.detail-section{padding:20px}.detail-grid{grid-template-columns:1fr}.section-header h3{font-size:18px}.employee-meta,.employee-contact-quick{flex-direction:column;gap:12px}}@media(max-width:480px){.employee-header-card{padding:16px}.employee-photo-large,.avatar-large{width:100px;height:100px}.employee-title{flex-direction:column;align-items:center}.employee-title h2{font-size:20px}.detail-section{padding:16px}.section-header h3{font-size:16px}.bank-account-detail,.relative-detail{padding:16px}}.leave-page{max-width:1400px}.leave-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card-small{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a}.stat-card-small h4{color:#6b7280;font-size:14px;font-weight:500;margin-bottom:8px}.stat-number{font-size:32px;font-weight:700;color:#1f2937}.stat-number.pending{color:#f59e0b}.stat-number.approved{color:#10b981}.stat-number.rejected{color:#ef4444}.tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:2px solid #E5E7EB;background:#fff;padding:0 20px;border-radius:12px 12px 0 0;box-shadow:0 1px 3px #0000001a}.tab{padding:16px 24px;background:transparent;border:none;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.tab:hover{color:#4f46e5}.tab.active{color:#4f46e5;border-bottom-color:#4f46e5}.leave-table{width:100%;border-collapse:collapse}.leave-table thead{background-color:#f9fafb;border-bottom:1px solid #E5E7EB}.leave-table th{text-align:left;padding:16px 20px;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.leave-table td{padding:16px 20px;border-bottom:1px solid #F3F4F6}.leave-table tbody tr:last-child td{border-bottom:none}.leave-table tbody tr:hover{background-color:#f9fafb}.employee-cell{display:flex;align-items:center;gap:12px}.btn-approve,.btn-reject{padding:6px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-approve:hover{background-color:#a7f3d0}.btn-reject:hover{background-color:#fecaca}.no-action{color:#9ca3af}.departments{padding:24px;max-width:1400px;margin:0 auto}.departments-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.departments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.departments-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.departments-header p{font-size:14px;color:#718096;margin:0}.btn-add-department{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-department:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.departments-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.departments-table-container{overflow-x:auto}.departments-table{width:100%;border-collapse:collapse}.departments-table thead{background:#f7fafc}.departments-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.departments-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.departments-table tbody tr:hover{background-color:#f7fafc}.departments-table td{padding:16px 20px;font-size:14px;color:#2d3748}.department-cell{display:flex;align-items:center;gap:12px}.department-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.department-name{font-weight:600;color:#1a202c}.branch-cell{display:flex;align-items:center;gap:8px;color:#4a5568}.branch-cell svg{color:#a0aec0;flex-shrink:0}@media(max-width:768px){.departments{padding:16px}.departments-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-add-department{width:100%;justify-content:center}.search-stats{text-align:center}.departments-table th,.departments-table td{padding:12px 16px;font-size:13px}.form-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;justify-content:center}}@media(max-width:480px){.departments-table{font-size:12px}.department-icon{width:32px;height:32px}}.profile-page{padding:24px;max-width:1400px;margin:0 auto}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.profile-header{margin-bottom:24px}.profile-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 8px}.profile-header p{font-size:14px;color:#718096;margin:0}.profile-content{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}.profile-card{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.profile-banner{height:120px;position:relative;overflow:hidden}.banner-gradient{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2)}.profile-info-section{padding:0 32px 24px;border-bottom:1px solid #e2e8f0;position:relative}.profile-avatar-section{position:relative;width:fit-content;margin-top:-50px}.profile-avatar-large{width:100px;height:100px;border-radius:50%;border:4px solid white;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:36px;font-weight:700;object-fit:cover}.avatar-edit-btn{position:absolute;bottom:4px;right:4px;width:32px;height:32px;border-radius:50%;background:#fff;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;color:#4a5568}.avatar-edit-btn:hover{background:#f7fafc;border-color:#cbd5e0;color:#2d3748}.profile-header-info{margin-top:16px}.profile-header-info h2{font-size:24px;font-weight:700;color:#1a202c;margin:0 0 4px}.profile-role{font-size:14px;color:#667eea;font-weight:600;text-transform:capitalize;margin:0 0 4px}.profile-org{font-size:13px;color:#718096;margin:0}.btn-edit-profile{position:absolute;top:24px;right:32px;display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit-profile:hover{background:#667eea;color:#fff}.profile-details{padding:32px}.profile-section{margin-bottom:32px}.profile-section:last-child{margin-bottom:0}.profile-section h3{font-size:18px;font-weight:600;color:#2d3748;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.profile-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.profile-field{display:flex;flex-direction:column;gap:8px}.profile-field label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.profile-field label svg{color:#a0aec0}.profile-field p{font-size:15px;color:#1a202c;margin:0;padding:12px 0}.profile-input{padding:12px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:15px;color:#1a202c;transition:all .2s;outline:none}.profile-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.profile-input:disabled{background-color:#f7fafc;cursor:not-allowed;color:#a0aec0}.role-badge{display:inline-flex;padding:6px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:6px;font-size:13px;font-weight:600;text-transform:capitalize;width:fit-content}.profile-actions{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid #e2e8f0}.btn-save,.btn-cancel{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.profile-sidebar{display:flex;flex-direction:column;gap:16px}.info-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a}.info-card h4{font-size:16px;font-weight:600;color:#2d3748;margin:0 0 16px}.status-item,.stat-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f7fafc}.status-item:last-child,.stat-item:last-child{border-bottom:none;padding-bottom:0}.status-label,.stat-label{font-size:13px;color:#718096}.status-value,.stat-value{font-size:14px;font-weight:600;color:#2d3748}.status-badge{display:inline-flex;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}@media(max-width:1024px){.profile-content{grid-template-columns:1fr}.profile-sidebar{grid-template-columns:repeat(2,1fr);flex-direction:row}}@media(max-width:768px){.profile-page{padding:16px}.profile-info-section{padding:0 20px 20px}.profile-details{padding:20px}.btn-edit-profile{position:static;margin-top:16px;width:100%;justify-content:center}.profile-fields,.profile-sidebar{grid-template-columns:1fr}.profile-actions{flex-direction:column}.btn-save,.btn-cancel{width:100%;justify-content:center}}.access-management{padding:32px;max-width:1600px;margin:0 auto;background:#f8f9fa;min-height:100vh}.access-management-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.spinner-large{width:56px;height:56px;border:5px solid #f0f2f5;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.access-header{background:#fff;border-radius:16px;padding:32px 40px;margin-bottom:32px;box-shadow:0 2px 8px #0000000a;border:1px solid #eef1f5}.header-content{display:flex;align-items:center;gap:20px}.header-icon{color:#667eea;background:#eef2ff;padding:14px;border-radius:12px;width:50px;height:50px;min-width:50px;min-height:50px}.access-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 6px;letter-spacing:-.5px}.access-header p{font-size:15px;color:#64748b;margin:0;font-weight:400}.message{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:8px;margin-bottom:24px;animation:slideDown .3s ease-out}.message-success{background-color:#f0fdf4;color:#166534;border:1px solid #86efac}.message-error{background-color:#fef2f2;color:#991b1b;border:1px solid #fca5a5}.access-content{display:grid;grid-template-columns:350px 1fr;gap:24px;align-items:start}.users-panel,.permissions-panel{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.panel-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-header h2{font-size:18px;font-weight:600;color:#1a202c;margin:0}.panel-subtitle{font-size:13px;color:#718096;margin:4px 0 0}.users-list{max-height:600px;overflow-y:auto}.user-item{padding:16px 24px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid #f7fafc}.user-item:hover{background-color:#f7fafc}.user-item.active{background-color:#eef2ff;border-left:3px solid #667eea}.user-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.user-info h3{font-size:14px;font-weight:600;color:#1a202c;margin:0 0 4px}.user-info p{font-size:12px;color:#718096;margin:0}.no-results{padding:40px 24px;text-align:center;color:#a0aec0;font-size:14px}.btn-save{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.warning-box{display:flex;align-items:center;gap:10px;padding:12px 24px;background-color:#fffbeb;color:#92400e;border-bottom:1px solid #fcd34d;font-size:14px}.permissions-table{padding:24px}.table-header{display:grid;grid-template-columns:1fr 150px 150px;gap:16px;padding:12px 0;border-bottom:2px solid #e2e8f0;font-weight:600;font-size:13px;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.table-body{display:flex;flex-direction:column}.table-row{display:grid;grid-template-columns:1fr 150px 150px;gap:16px;padding:10px 0;border-bottom:1px solid #f7fafc;align-items:center;transition:all .2s ease;border-left:4px solid transparent}.table-row.level-0{font-weight:600;background-color:#fff;border-left:4px solid #667eea;box-shadow:0 1px 3px #0000000d}.table-row.level-1{background:#fcfcff;border-left:3px solid #a5b4fc}.table-row.level-2{background:#fafbff;border-left:3px solid #c7d2fe}.table-row.level-3{background:#f8f9ff;border-left:2px solid #ddd6fe}.table-row:hover{background:#eef2ff!important;box-shadow:0 2px 8px #667eea1f;border-left-color:#667eea!important;transform:translate(1px)}.col-page,.col-access{display:flex;align-items:center}.col-access{justify-content:center}.tree-cell{display:flex;align-items:center;gap:12px;position:relative;padding:6px 0;min-height:52px}.toggle-container{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.page-info{display:flex;align-items:center;gap:12px}.page-icon{width:40px;height:40px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;flex-shrink:0;box-shadow:0 4px 6px #667eea40;transition:all .3s ease}.table-row:hover .page-icon{transform:scale(1.05);box-shadow:0 6px 12px #667eea66}.table-row.level-1 .page-icon{width:36px;height:36px;background:linear-gradient(135deg,#818cf8,#6366f1)}.table-row.level-2 .page-icon{width:34px;height:34px;background:linear-gradient(135deg,#a5b4fc,#818cf8)}.table-row.level-3 .page-icon{width:32px;height:32px;background:linear-gradient(135deg,#c7d2fe,#a5b4fc)}.emoji-icon{font-size:20px}.page-info h4{font-size:15px;font-weight:600;color:#1a202c;margin:0 0 4px;letter-spacing:.3px}.table-row.level-1 .page-info h4{font-size:14px;color:#374151;font-weight:600}.table-row.level-2 .page-info h4{font-size:13px;color:#4b5563;font-weight:500}.table-row.level-3 .page-info h4{font-size:13px;color:#6b7280;font-weight:500}.page-info p{font-size:12px;color:#718096;margin:0;font-family:Courier New,monospace}.toggle-switch{position:relative;display:inline-block;width:48px;height:26px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background-color:#cbd5e0;border-radius:34px;transition:.3s}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.3s}.toggle-switch input:checked+.toggle-slider{background-color:#667eea}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.empty-icon{color:#cbd5e0;margin-bottom:16px}@media(max-width:1024px){.access-content{grid-template-columns:1fr}.users-panel{max-height:400px}}@media(max-width:768px){.access-management{padding:16px}.table-header,.table-row{grid-template-columns:1fr 100px 100px;gap:8px;font-size:12px}.page-info h4{font-size:13px}.page-info p{font-size:11px}.panel-header{flex-direction:column;align-items:flex-start}.btn-save{width:100%;justify-content:center}}.manage-user{padding:24px;max-width:1400px;margin:0 auto}.manage-user-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.manage-user-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.manage-user-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.manage-user-header p{font-size:14px;color:#718096;margin:0}.btn-add-user{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-user:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.manage-user-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.users-table-container{overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:#f7fafc}.users-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.users-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.users-table tbody tr:hover{background-color:#f7fafc}.users-table td{padding:16px 20px;font-size:14px;color:#2d3748}.user-cell{display:flex;align-items:center;gap:12px}.user-avatar-small{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600;flex-shrink:0}.user-name{font-weight:600;color:#1a202c}.role-badge{display:inline-flex;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.role-badge.role-admin{background-color:#fce7f3;color:#fff}.role-badge.role-manager{background-color:#dbeafe;color:#fff}.role-badge.role-hr{background-color:#fef3c7;color:#fff}.role-badge.role-employee{background-color:#e0e7ff;color:#fff}.btn-activate{background-color:#d1fae5;color:#065f46}.btn-activate:hover:not(:disabled){background-color:#a7f3d0}@media(max-width:768px){.manage-user{padding:16px}.manage-user-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-add-user{width:100%;justify-content:center}.filter-btn{flex:1;justify-content:center}.search-stats{text-align:center}.users-table th,.users-table td{padding:12px 16px;font-size:13px}.form-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;justify-content:center}}@media(max-width:480px){.users-table{font-size:12px}.user-avatar-small{width:32px;height:32px;font-size:12px}}.pages{padding:24px;max-width:1600px;margin:0 auto}.pages-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.pages-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.pages-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.pages-header p{font-size:14px;color:#718096;margin:0}.btn-add2-nav{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add2-nav:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.pages-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.filter-group{display:flex;gap:12px}.nav-table-container{overflow-x:auto}.nav-table{width:100%;border-collapse:collapse}.nav-table thead{background:#f7fafc}.nav-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.nav-table th.text-center{text-align:center}.nav-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.nav-table tbody tr:hover{background-color:#f7fafc}.nav-table td{padding:12px 20px;font-size:14px;color:#2d3748}.nav-table td.text-center{text-align:center}.tree-row{position:relative;transition:all .2s ease;border-left:4px solid transparent}.tree-row.level-0{font-weight:600;background-color:#fff;border-left:4px solid #667eea}.tree-row.level-1{background:#fcfcff;border-left:3px solid #a5b4fc}.tree-row.level-2{background:#fafbff;border-left:3px solid #c7d2fe}.tree-row.level-3{background:#f8f9ff;border-left:2px solid #ddd6fe}.tree-row:hover{background:#eef2ff;box-shadow:0 2px 6px #667eea26;border-left-color:#667eea}.tree-cell{display:flex;align-items:center;gap:10px;position:relative;padding:4px 0;min-height:48px}.drag-handle{display:flex;align-items:center;justify-content:center;color:#cbd5e0;cursor:grab;padding:4px;border-radius:4px;transition:all .2s;flex-shrink:0}.drag-handle:hover{color:#667eea;background:#eef2ff}.drag-handle:active{cursor:grabbing}.tree-row.dragging{opacity:.5;background:#f3f4f6}.tree-row.drag-over{border-top:3px solid #667eea;background:#eef2ff}.toggle-container{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.btn-toggle{width:28px;height:28px;padding:0;border:2px solid #cbd5e0;background:linear-gradient(135deg,#fff,#f7fafc);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#667eea;border-radius:6px;transition:all .3s ease;flex-shrink:0;box-shadow:0 1px 3px #0000001a}.btn-toggle:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;transform:scale(1.1);box-shadow:0 4px 8px #667eea4d}.tree-spacer{width:28px;height:28px;display:inline-block;flex-shrink:0}.nav-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;font-size:16px;box-shadow:0 4px 6px #667eea40;transition:all .3s ease}.tree-row:hover .nav-icon{transform:scale(1.05);box-shadow:0 6px 12px #667eea66}.tree-row.level-1 .nav-icon{width:36px;height:36px;background:linear-gradient(135deg,#818cf8,#6366f1)}.tree-row.level-2 .nav-icon{width:34px;height:34px;background:linear-gradient(135deg,#a5b4fc,#818cf8)}.tree-row.level-3 .nav-icon{width:32px;height:32px;background:linear-gradient(135deg,#c7d2fe,#a5b4fc)}.emoji-icon{font-size:18px}.text-icon{font-size:12px;font-weight:600}.nav-info{display:flex;align-items:center;gap:10px;flex:1}.nav-name{font-weight:600;color:#1a202c;font-size:15px;letter-spacing:.3px}.tree-row.level-1 .nav-name{font-size:14px;color:#374151;font-weight:600}.tree-row.level-2 .nav-name{font-size:13px;color:#4b5563;font-weight:500}.tree-row.level-3 .nav-name{font-size:13px;color:#6b7280;font-weight:500}.system-badge{display:inline-flex;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;background-color:#e0e7ff;color:#3730a3;text-transform:uppercase;letter-spacing:.3px}.path-code{display:inline-block;padding:4px 8px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;font-family:Courier New,Courier,monospace;font-size:12px;color:#667eea}.btn-add2{background-color:#d1fae5;color:#065f46}.btn-add2:hover:not(:disabled){background-color:#a7f3d0}.form-group.checkbox-group{flex-direction:row;align-items:center}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:500;color:#2d3748}.form-group input,.form-group textarea{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit}.form-group select{font-family:inherit}@media(max-width:1024px){.pages{padding:20px}.nav-table th,.nav-table td{padding:12px 16px;font-size:13px}}@media(max-width:768px){.pages{padding:16px}.pages-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-add2-nav{width:100%;justify-content:center}.search-section{flex-direction:column;align-items:stretch}.search-box2{min-width:100%}.search-stats{text-align:center}.form-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;justify-content:center}.nav-table thead{display:none}.nav-table tbody tr{display:flex;flex-direction:column;border:1px solid #e2e8f0;margin-bottom:12px;border-radius:8px;overflow:hidden}.nav-table td{padding:12px 16px;border-bottom:1px solid #e2e8f0}.nav-table td:last-child{border-bottom:none}.nav-table td:before{content:attr(data-label);font-weight:600;color:#4a5568;display:block;margin-bottom:4px;font-size:12px;text-transform:uppercase}.tree-cell{padding-left:0!important}}@media(max-width:480px){.nav-table{font-size:12px}.nav-icon{width:28px;height:28px;font-size:12px}.emoji-icon{font-size:16px}}.indent-guides{display:inline-block;height:100%;margin-right:8px;background-image:repeating-linear-gradient(to right,#e5e7eb 0,#e5e7eb 1px,transparent 1px,transparent 24px)}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;margin-left:6px;border-radius:999px;font-size:11px;font-weight:700;background:#eef2ff;color:#3730a3}.manage-branch{padding:24px;max-width:1400px;margin:0 auto}.manage-branch-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.manage-branch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.manage-branch-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.manage-branch-header p{font-size:14px;color:#718096;margin:0}.btn-add-branch{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-branch:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.manage-branch-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.branches-table-container{overflow-x:auto}.branches-table{width:100%;border-collapse:collapse}.branches-table thead{background:#f7fafc}.branches-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.branches-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.branches-table tbody tr:hover{background-color:#f7fafc}.branches-table td{padding:16px 20px;font-size:14px;color:#2d3748}.branch-cell{display:flex;align-items:center;gap:12px}.branch-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.branch-name{font-weight:600;color:#1a202c}.location-cell{display:flex;flex-direction:column;gap:4px}.location-primary{font-weight:600;color:#1a202c}.location-secondary{font-size:13px;color:#718096}.contact-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#4a5568}.contact-item svg{color:#a0aec0}.form-group input,.form-group select{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none}@media(max-width:768px){.manage-branch{padding:16px}.manage-branch-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-add-branch{width:100%;justify-content:center}.search-section{flex-direction:column;align-items:stretch}.search-stats{text-align:center}.branches-table th,.branches-table td{padding:12px 16px;font-size:13px}.form-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;justify-content:center}}@media(max-width:480px){.branches-table{font-size:12px}.branch-icon{width:32px;height:32px}}.bulk-upload-modal{background:#fff;border-radius:12px;width:95%;max-width:1400px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003}.bulk-upload-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #e5e7eb}.bulk-upload-modal .modal-header h2{margin:0;font-size:24px;font-weight:600;color:#1f2937}.bulk-upload-modal .close-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s;color:#6b7280}.bulk-upload-modal .close-btn:hover{background-color:#f3f4f6;color:#1f2937}.bulk-upload-modal .modal-body{padding:32px;overflow-y:auto;flex:1}.bulk-upload-modal .form-group{margin-bottom:24px}.bulk-upload-modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.bulk-upload-modal .template-section{margin-bottom:24px;display:flex;flex-direction:column;gap:16px}.bulk-upload-modal .info-box{display:flex;gap:12px;padding:16px;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1e40af;font-size:14px;line-height:1.5}.bulk-upload-modal .info-box svg{flex-shrink:0;margin-top:2px}.bulk-upload-modal .file-upload-area{border:2px dashed #d1d5db;border-radius:12px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .3s;background-color:#f9fafb}.bulk-upload-modal .file-upload-area:not(.disabled):hover{border-color:#2563eb;background-color:#eff6ff}.bulk-upload-modal .file-upload-area.drag-active{border-color:#2563eb;background-color:#dbeafe}.bulk-upload-modal .file-upload-area.disabled{opacity:.5;cursor:not-allowed}.bulk-upload-modal .upload-icon{color:#9ca3af;margin-bottom:16px}.bulk-upload-modal .upload-text{font-size:16px;font-weight:500;color:#374151;margin:0 0 8px}.bulk-upload-modal .upload-help{font-size:14px;color:#6b7280;margin:0}.bulk-upload-modal .upload-progress{display:flex;flex-direction:column;align-items:center;gap:12px}.bulk-upload-modal .spinner{border:3px solid #f3f4f6;border-top:3px solid #2563eb;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}.bulk-upload-modal .preview-summary{display:flex;gap:24px;padding:20px;background-color:#f9fafb;border-radius:8px;margin-bottom:24px}.bulk-upload-modal .summary-item{display:flex;align-items:center;gap:8px;font-size:14px}.bulk-upload-modal .summary-label{font-weight:500;color:#6b7280}.bulk-upload-modal .summary-value{font-weight:600;font-size:18px;color:#1f2937}.bulk-upload-modal .summary-item.success,.bulk-upload-modal .summary-item.success .summary-value{color:#059669}.bulk-upload-modal .summary-item.error,.bulk-upload-modal .summary-item.error .summary-value{color:#dc2626}.bulk-upload-modal .preview-table-container{overflow-x:auto;margin-bottom:24px;border:1px solid #e5e7eb;border-radius:8px;max-height:400px;overflow-y:auto}.bulk-upload-modal .preview-table{width:100%;border-collapse:collapse;font-size:13px}.bulk-upload-modal .preview-table thead{position:sticky;top:0;background-color:#f9fafb;z-index:10}.bulk-upload-modal .preview-table th{padding:12px 8px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap;font-size:12px}.bulk-upload-modal .preview-table td{padding:8px;border-bottom:1px solid #e5e7eb}.bulk-upload-modal .preview-table tbody tr:hover{background-color:#f9fafb}.bulk-upload-modal .preview-table tbody tr.invalid-row{background-color:#fef2f2}.bulk-upload-modal .preview-table input{width:100%;min-width:100px;padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px}.bulk-upload-modal .preview-table input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.bulk-upload-modal .preview-table input.error-cell{border-color:#dc2626;background-color:#fef2f2}.bulk-upload-modal .badge{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:nowrap}.bulk-upload-modal .badge-success{background-color:#d1fae5;color:#059669}.bulk-upload-modal .badge-error{background-color:#fee2e2;color:#dc2626;cursor:help}.bulk-upload-modal .btn-icon-danger{background:none;border:none;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;color:#dc2626}.bulk-upload-modal .btn-icon-danger:hover{background-color:#fee2e2}.bulk-upload-modal .validation-errors{display:flex;gap:12px;padding:16px;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px;margin-bottom:16px}.bulk-upload-modal .validation-errors svg{flex-shrink:0;margin-top:2px}.bulk-upload-modal .validation-errors ul{margin:8px 0 0;padding-left:20px}.bulk-upload-modal .validation-errors li{margin-bottom:4px}.bulk-upload-modal .error-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-top:16px}.bulk-upload-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 32px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.bulk-upload-modal .btn-primary,.bulk-upload-modal .btn-secondary{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.bulk-upload-modal .btn-primary{background-color:#2563eb;color:#fff}.bulk-upload-modal .btn-primary:hover:not(:disabled){background-color:#1d4ed8}.bulk-upload-modal .btn-primary:disabled{opacity:.5;cursor:not-allowed}.bulk-upload-modal .btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.bulk-upload-modal .btn-secondary:hover{background-color:#f3f4f6}.organization-management-container{padding:24px;max-width:1400px;margin:0 auto}.organization-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.header-title-section-org{display:flex;align-items:center;gap:16px}.organization-management-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0}.subtitle{color:#64748b;font-size:14px;margin:4px 0 0}.btn-add-new{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #667eea40}.btn-add-new:hover{transform:translateY(-2px);box-shadow:0 6px 12px #667eea59}.btn-secondary{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #667eea40}.message{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px;margin-bottom:20px;animation:slideDown .3s ease}.message-close{margin-left:auto;background:transparent;border:none;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center}.message-close:hover{background:#0000001a}.stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border-radius:12px;border:1px solid #e5e7eb;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card svg{color:#667eea}.stat-card.active svg{color:#10b981}.stat-card.inactive svg{color:#ef4444}.stat-value{font-size:24px;font-weight:700;color:#1a202c}.stat-label{font-size:14px;color:#64748b}.table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.organization-management-table{width:100%;border-collapse:collapse}.organization-management-table thead{background:#f7fafc;border-bottom:2px solid #e5e7eb}.organization-management-table th{padding:16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#64748b}.organization-management-table td{padding:16px;border-bottom:1px solid #f3f4f6;color:#334155}.organization-management-table tbody tr{transition:background .2s ease}.organization-management-table tbody tr:hover{background:#f9fafb}.org-info{display:flex;flex-direction:column;gap:4px}.org-info strong{font-size:14px;color:#1a202c}.org-website{display:flex;align-items:center;gap:4px;font-size:12px;color:#667eea}.industry-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#ede9fe;color:#6d28d9;border-radius:20px;font-size:12px;font-weight:500}.contact-info{display:flex;flex-direction:column;gap:6px;font-size:13px}.contact-info div{display:flex;align-items:center;gap:6px;color:#64748b}.location-info{display:flex;align-items:flex-start;gap:6px;font-size:13px;color:#64748b;max-width:250px}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.status-active{background:#d1fae5;color:#065f46}.status-inactive{background:#fee2e2;color:#991b1b}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;background:transparent}.btn-edit{color:#3b82f6}.btn-edit:hover{background:#dbeafe}.btn-delete{color:#ef4444}.btn-delete:hover{background:#fee2e2}.btn-activate{color:#10b981}.btn-activate:hover{background:#d1fae5}.btn-deactivate{color:#f59e0b}.btn-deactivate:hover{background:#fef3c7}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.btn-close-modal{background:transparent;border:none;cursor:pointer;padding:8px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.btn-close-modal:hover{background:#f3f4f6}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.form-section{grid-column:1 / -1;margin-top:12px}.form-section h3{font-size:16px;font-weight:600;color:#1a202c;margin:0 0 4px;display:flex;align-items:center;gap:8px}.section-description{font-size:13px;color:#64748b;margin:4px 0 0}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:#374151}.required{color:#ef4444}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s ease}.form-hint{font-size:12px;color:#64748b;margin-top:4px}.btn-cancel,.btn-save{padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;font-size:14px}.btn-cancel{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-cancel:hover{background:#f9fafb}.btn-save{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff}.btn-save:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-save:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#64748b}.spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.no-data{text-align:center;padding:60px 20px;color:#64748b}.no-data svg{opacity:.3;margin-bottom:16px}.no-data p{margin:8px 0}.no-data .hint{font-size:14px;color:#94a3b8}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:768px){.organization-management-container{padding:16px}.organization-management-header{flex-direction:column;align-items:flex-start}.form-grid,.stats-container{grid-template-columns:1fr}.table-container{overflow-x:auto}.organization-management-table{min-width:800px}}.designations{padding:24px;max-width:1400px;margin:0 auto}.designations-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.designations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.designations-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.designations-header p{font-size:14px;color:#718096;margin:0}.btn-add-designation{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-designation:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.designations-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.designations-table-container{overflow-x:auto}.designations-table{width:100%;border-collapse:collapse}.designations-table thead{background:#f7fafc}.designations-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.designations-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.designations-table tbody tr:hover{background-color:#f7fafc}.designations-table td{padding:16px 20px;font-size:14px;color:#2d3748}.designation-cell{display:flex;align-items:center;gap:12px}.designation-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#f59e0b,#d97706);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.designation-name{font-weight:600;color:#1a202c}.code-badge{display:inline-flex;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:700;background:#eef2ff;color:#4338ca;font-family:Courier New,monospace;letter-spacing:.5px}.level-cell{display:flex;align-items:center;gap:8px;color:#4a5568}.level-cell svg{color:#10b981;flex-shrink:0}.department-cell{display:flex;align-items:center;gap:8px;color:#4a5568}.department-cell svg{color:#a0aec0;flex-shrink:0}.description-text{color:#64748b;font-size:13px;line-height:1.5;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-flex;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.status-badge.status-inactive{background-color:#f3f4f6;color:#6b7280}.form-group input,.form-group textarea,.form-group select{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:#f7fafc;cursor:not-allowed;color:#a0aec0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e2e8f0}@media(max-width:768px){.designations{padding:16px}.designations-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-add-designation{width:100%;justify-content:center}.search-stats{text-align:center}.designations-table th,.designations-table td{padding:12px 16px;font-size:13px}.form-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;justify-content:center}}@media(max-width:480px){.designations-table{font-size:12px}.designation-icon{width:32px;height:32px}}.shifts{padding:2rem;max-width:1400px;margin:0 auto}.shifts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.shifts-header h1{margin:0;font-size:2rem;font-weight:700;color:#1e293b}.shifts-header p{margin:.25rem 0 0;color:#64748b;font-size:.95rem}.btn-add-shift{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-shift:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.shifts-content{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.search-stats{font-size:.9rem;color:#64748b;padding:0 20px 10px}.time-range{color:#64748b;font-size:.9rem;font-weight:500}.type-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600}.type-badge.day{background:#fef3c7;color:#92400e}.type-badge.night{background:#dbeafe;color:#1e40af}.ot-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600}.ot-badge.enabled{background:#d1fae5;color:#065f46}.ot-badge.disabled{background:#f1f5f9;color:#64748b}.status-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600}.status-badge.status-active{background:#d1fae5;color:#065f46}.status-badge.status-inactive{background:#fee2e2;color:#991b1b}.btn-icon:hover:not(:disabled){background:#f1f5f9}.btn-icon.btn-edit:hover:not(:disabled){color:#3b82f6;background:#dbeafe}.btn-icon.btn-delete:hover:not(:disabled){color:#ef4444;background:#fee2e2}.modal-content{background:#fff;border-radius:1rem;width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.btn-add-item{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-add-item:hover{background:#e2e8f0;border-color:#cbd5e1}.break-item{display:flex;gap:1rem;align-items:flex-end;margin-bottom:1rem;padding:1rem;background:#f8fafc;border-radius:.5rem}.break-item .form-grid{flex:1}.btn-remove-item{padding:.5rem;background:#fee2e2;color:#dc2626;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-group label{font-size:.875rem;font-weight:600;color:#475569;display:flex;align-items:center;gap:.375rem}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group input[type=time],.form-group textarea{padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.95rem;color:#1e293b;transition:all .2s ease}.form-group input[type=checkbox]{width:auto;margin-right:.5rem}.modal-footer{padding:1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:1rem;position:sticky;bottom:0;background:#fff}.warning-box{margin-bottom:1rem;padding:1rem 1.5rem;background:#fef3c7;border-left:4px solid #f59e0b;border-radius:.5rem;display:flex;align-items:center;gap:.75rem;color:#92400e;font-size:.95rem;font-weight:500}.shifts-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem;color:#64748b}@media(max-width:768px){.shifts{padding:1rem}.shifts-header{flex-direction:column;align-items:stretch}.header-content{flex-direction:column;align-items:flex-start}.btn-add-shift{width:100%;justify-content:center}.search-section{flex-direction:column;align-items:stretch}.search-box{max-width:100%}.form-grid{grid-template-columns:1fr}.modal-content{max-width:100%;margin:1rem}}.shift-assignments{padding:24px;max-width:1400px;margin:0 auto}.shift-assignments-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;color:#718096}.shift-assignments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.shift-assignments-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.shift-assignments-header p{font-size:14px;color:#718096;margin:0}.message-info{background-color:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.warning-box{display:flex;align-items:center;gap:12px;padding:14px 18px;background-color:#fef3c7;border:1px solid #fbbf24;color:#92400e;border-radius:8px;margin-bottom:20px;font-size:14px}.shift-assignments-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.filters-section{padding:24px;border-bottom:1px solid #e2e8f0;background:#f7fafc}.filter-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.filter-header svg{color:#667eea}.filter-header h3{font-size:16px;font-weight:600;color:#1a202c;margin:0}.filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.form-group input,.form-group select,.form-group textarea{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit}.btn-load-employees{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-load-employees:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-load-employees:disabled{opacity:.6;cursor:not-allowed;transform:none}.search-stats{font-size:13px;color:#718096;font-weight:500;white-space:nowrap;padding:0 20px 10px}.shift-assignments-table{width:100%;border-collapse:collapse}.shift-assignments-table thead{background:#f7fafc}.shift-assignments-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.shift-assignments-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.shift-assignments-table tbody tr:hover{background-color:#f7fafc}.shift-assignments-table td{padding:16px 20px;font-size:14px;color:#2d3748}.employee-id{font-family:Courier New,monospace;font-weight:600;color:#4a5568;background:#f7fafc;padding:4px 8px;border-radius:4px;font-size:13px}.employee-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.employee-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.employee-avatar-placeholder.loading{background:#e2e8f0}.employee-avatar-placeholder.loading .spinner-small{border-color:#cbd5e1;border-top-color:#667eea}.empty-state{text-align:center;padding:80px 20px;color:#a0aec0}.empty-state svg{margin-bottom:16px;opacity:.4}.empty-state h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#4a5568}.empty-state p{margin:0;font-size:14px;color:#718096}.no-data p{margin:0;font-size:14px;color:#718096}.action-footer{padding:20px 24px;border-top:1px solid #e2e8f0;background:#f7fafc;display:flex;justify-content:flex-end;position:sticky;bottom:0}.btn-bulk-assign{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-bulk-assign:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-bulk-assign:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content.results-modal{max-width:600px}.modal-content.assignments-modal{max-width:650px}.form-section{margin-bottom:24px}.form-section h3{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#1a202c;margin:0 0 12px}.form-section h3 svg{color:#667eea}.form-hint{font-size:13px;color:#718096;margin:0 0 12px}.day-selector{display:flex;flex-wrap:wrap;gap:8px}.day-button{padding:10px 16px;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;font-size:13px;font-weight:600;color:#4a5568;cursor:pointer;transition:all .2s;min-width:60px;text-align:center}.day-button:hover{background:#e2e8f0;border-color:#cbd5e1}.day-button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.results-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.result-stat{padding:20px;border-radius:8px;display:flex;align-items:center;gap:16px}.result-stat.success{background:#d1fae5;border:1px solid #6ee7b7}.result-stat.success svg{color:#065f46}.result-stat.error{background:#fee2e2;border:1px solid #fca5a5}.result-stat.error svg{color:#991b1b}.result-stat strong{display:block;font-size:24px;font-weight:700;color:#1a202c}.result-stat span{display:block;font-size:13px;color:#4a5568;font-weight:500}.results-list{max-height:300px;overflow-y:auto}.result-item{display:flex;gap:12px;padding:12px;border-radius:8px;margin-bottom:8px}.result-item.success{background:#f0fdf4;border-left:3px solid #10b981}.result-item.error{background:#fef2f2;border-left:3px solid #ef4444}.result-icon{flex-shrink:0}.result-item.success .result-icon{color:#10b981}.result-item.error .result-icon{color:#ef4444}.result-details{flex:1}.result-details strong{display:block;font-size:14px;font-weight:600;color:#1a202c;margin-bottom:2px}.result-details span{display:block;font-size:13px;color:#64748b}.employee-subtitle{font-size:14px;color:#fff;margin:4px 0 0;font-weight:500}.no-assignments{text-align:center;padding:60px 20px;color:#a0aec0}.no-assignments svg{margin-bottom:16px;opacity:.4}.no-assignments h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#4a5568}.no-assignments p{margin:0;font-size:14px;color:#718096}.assignments-list{display:flex;flex-direction:column;gap:16px}.assignment-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .2s}.assignment-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.assignment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.shift-info{display:flex;gap:12px;align-items:flex-start}.shift-info svg{color:#667eea;flex-shrink:0;margin-top:2px}.shift-info h4{margin:0 0 4px;font-size:16px;font-weight:600;color:#1a202c}.shift-time{font-size:13px;color:#718096;font-weight:500}.assignment-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.assignment-status.status-active{background:#d1fae5;color:#065f46}.assignment-status.status-completed{background:#e0e7ff;color:#4338ca}.assignment-details{display:flex;flex-direction:column;gap:10px}.detail-row{display:flex;justify-content:space-between;align-items:center;font-size:14px}.detail-label{color:#718096;font-weight:500;min-width:120px}.detail-value{color:#1a202c;font-weight:600;text-align:right}.weekly-off-days{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.day-badge{padding:4px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:11px;font-weight:700;color:#667eea;letter-spacing:.5px}@media(max-width:1024px){.filter-grid{grid-template-columns:1fr 1fr}.filter-grid .form-group:last-child{grid-column:1 / -1}}@media(max-width:768px){.shift-assignments{padding:16px}.shift-assignments-header{flex-direction:column;align-items:flex-start;gap:16px}.header-content{flex-direction:column;align-items:flex-start}.filter-grid{grid-template-columns:1fr}.search-section{flex-direction:column;align-items:stretch}.search-box{max-width:100%}.search-stats{text-align:center}.shift-assignments-table th,.shift-assignments-table td{padding:12px 16px;font-size:13px}.form-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save,.btn-bulk-assign{width:100%;justify-content:center}.results-summary{grid-template-columns:1fr}.action-footer{padding:16px}.assignment-header{flex-direction:column;gap:12px}.assignment-status{align-self:flex-start}.detail-row{flex-direction:column;align-items:flex-start;gap:4px}.detail-label{min-width:auto}.detail-value{text-align:left}.weekly-off-days{justify-content:flex-start}}@media(max-width:480px){.shift-assignments-table{font-size:12px}.employee-avatar,.employee-avatar-placeholder{width:32px;height:32px}.day-button{min-width:50px;padding:8px 12px}}.confirmation-modal{max-width:700px}.confirmation-modal .modal-header{display:flex;align-items:flex-start;gap:16px;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.confirmation-modal .warning-icon{color:#f59e0b;flex-shrink:0}.confirmation-modal .warning-subtitle{font-size:14px;color:#64748b;margin:4px 0 0;font-weight:400}.warning-message{background-color:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:14px 16px;margin-bottom:20px}.warning-message p{margin:0;color:#92400e;font-size:14px;line-height:1.5}.confirmation-list{display:flex;flex-direction:column;gap:16px;margin-bottom:20px;max-height:400px;overflow-y:auto}.confirmation-item{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.confirmation-item .employee-info{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.confirmation-item .employee-info strong{font-size:15px;color:#1e293b}.confirmation-item .employee-id{color:#64748b;font-size:13px}.shift-change-info{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.current-shift,.new-shift{display:flex;flex-direction:column;gap:4px;flex:1;min-width:200px}.shift-label{font-size:12px;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.shift-name{font-size:15px;font-weight:600;color:#1e293b}.shift-date{font-size:13px;color:#64748b}.arrow{color:#94a3b8;font-size:24px;font-weight:700;flex-shrink:0}.confirmation-note{display:flex;align-items:flex-start;gap:12px;background-color:#eff6ff;border:1px solid #93c5fd;border-radius:8px;padding:12px 16px}.confirmation-note svg{color:#2563eb;flex-shrink:0;margin-top:2px}.confirmation-note p{margin:0;color:#1e40af;font-size:13px;line-height:1.5}.btn-confirm-replace{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease}.btn-confirm-replace:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #667eea4d}.btn-confirm-replace:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.confirmation-modal{max-width:95%}.shift-change-info{flex-direction:column;gap:12px}.arrow{transform:rotate(90deg)}.current-shift,.new-shift{width:100%}}.holidays{padding:24px;max-width:1400px;margin:0 auto}.holidays-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.holidays-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.holidays-header p{font-size:14px;color:#718096;margin:0}.btn-add-holiday{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-holiday:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.holidays-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.holidays-table-container{overflow-x:auto}.holidays-table{width:100%;border-collapse:collapse}.holidays-table thead{background:#f7fafc}.holidays-table th{padding:16px 20px;text-align:left;font-weight:600;font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.05em}.holidays-table td{padding:16px 20px;border-top:1px solid #e2e8f0;font-size:14px;color:#2d3748}.holidays-table tbody tr{transition:background-color .2s}.holidays-table tbody tr:hover{background:#f7fafc}.holidays-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}@media(max-width:768px){.holidays{padding:16px}.form-grid,.multi-select-grid{grid-template-columns:1fr}.modal-content{max-width:100%}}.holiday-overrides{padding:24px;max-width:1400px;margin:0 auto}.holiday-overrides-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.holiday-overrides-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.holiday-overrides-header p{font-size:14px;color:#718096;margin:0}.btn-add-override{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-override:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.holiday-overrides-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.search-stats{font-size:13px;color:#718096;padding:0 20px 10px}.holiday-overrides-table-container{overflow-x:auto}.holiday-overrides-table{width:100%;border-collapse:collapse}.holiday-overrides-table thead{background:#f7fafc}.holiday-overrides-table th{padding:16px 20px;text-align:left;font-weight:600;font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.05em}.holiday-overrides-table td{padding:16px 20px;border-top:1px solid #e2e8f0;font-size:14px;color:#2d3748}.holiday-overrides-table tbody tr{transition:background-color .2s}.holiday-overrides-table tbody tr:hover{background:#f7fafc}.calendar-name{display:flex;align-items:center;gap:8px;color:#1a202c;font-weight:600}.calendar-name svg{color:#667eea}.scope-info{display:flex;flex-direction:column;gap:6px}.scope-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#4a5568}.scope-item svg{color:#a0aec0;flex-shrink:0}.holiday-count{display:inline-flex;padding:4px 12px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:600;border-radius:6px}.btn-duplicate{background-color:#d1fae5;color:#065f46}.btn-duplicate:hover:not(:disabled){background-color:#a7f3d0}.btn-edit{background-color:#dbeafe;color:#1e40af}.btn-edit:hover:not(:disabled){background-color:#bfdbfe}.btn-delete{background-color:#fee2e2;color:#991b1b}.btn-delete:hover:not(:disabled){background-color:#fecaca}.override-name{font-weight:500;color:#1a202c}.type-badge{display:inline-flex;padding:4px 12px;font-size:12px;font-weight:600;border-radius:6px}.full-width{grid-column:1 / -1}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.btn-close-modal{padding:8px;background:transparent;border:none;cursor:pointer;color:#a0aec0;border-radius:6px;transition:all .2s}.form-section{margin-bottom:32px}.form-section:last-child{margin-bottom:0}.form-section h3{font-size:16px;font-weight:600;color:#1a202c;margin:0 0 16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.btn-add-item{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#f7fafc;color:#4a5568;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-add-item:hover{background-color:#edf2f7}.holiday-item{margin-bottom:20px;padding:20px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.item-header h4{margin:0;font-size:14px;font-weight:600;color:#4a5568}.btn-remove-item{padding:6px;background:#fee2e2;color:#dc2626;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-remove-item:hover{background:#fecaca}.multi-select-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:12px}.checkbox-label{position:relative;display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500;color:#475569;-webkit-user-select:none;user-select:none}.checkbox-label:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.checkbox-label input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;min-width:20px;border:2px solid #cbd5e1;border-radius:5px;cursor:pointer;position:relative;margin:0;transition:all .2s ease;background:#fff}.checkbox-label input[type=checkbox]:hover{border-color:#667eea}.checkbox-label input[type=checkbox]:checked{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea}.checkbox-label input[type=checkbox]:checked:after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-label input[type=checkbox]:checked+span{font-weight:600;color:#1e293b}.checkbox-label:has(input[type=checkbox]:checked){background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:#667eea}.nth-selector{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.nth-button{padding:8px 16px;background:#fff;border:2px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:600;color:#4a5568;cursor:pointer;transition:all .2s}.nth-button:hover{background:#f7fafc;border-color:#cbd5e1}.nth-button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.form-group label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#4a5568}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group textarea{padding:10px 14px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#2d3748;transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-footer{padding:20px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:12px;position:sticky;bottom:0;background:#fff}.btn-cancel,.btn-save{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background-color:#f7fafc;color:#4a5568}.btn-cancel:hover{background-color:#edf2f7}.holiday-overrides-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}@media(max-width:768px){.holiday-overrides{padding:16px}.form-grid,.multi-select-grid{grid-template-columns:1fr}.modal-content{max-width:100%}}.holiday-resolution{padding:24px;max-width:1400px;margin:0 auto}.holiday-resolution-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.holiday-resolution-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.holiday-resolution-header p{font-size:14px;color:#718096;margin:0}.holiday-resolution-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.resolution-form-section{padding:24px;border-bottom:1px solid #e2e8f0}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:center}.date-input{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#2d3748;transition:all .2s;background:#fff;width:100%}.date-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-resolve{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;width:100%;height:42px}.btn-resolve:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-resolve:disabled{opacity:.6;cursor:not-allowed}.resolution-result{padding:24px}.result-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.result-icon{color:#667eea}.result-header h2{font-size:20px;font-weight:700;color:#1a202c;margin:0}.result-content{display:flex;flex-direction:column;gap:24px}.result-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:20px;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.summary-item{display:flex;flex-direction:column;gap:8px}.summary-item label{font-size:12px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em}.summary-value{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#1a202c}.summary-value svg{color:#a0aec0}.result-details{padding:20px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.result-details h3{font-size:16px;font-weight:600;color:#1a202c;margin:0 0 16px}.detail-row{display:flex;align-items:flex-start;padding:12px 0;border-bottom:1px solid #f7fafc}.detail-label-hr{flex:0 0 160px;font-size:13px;font-weight:600;color:#718096}.detail-value{flex:1;font-size:14px;color:#2d3748}.scope-list{display:flex;flex-wrap:wrap;gap:8px}.scope-badge{display:inline-flex;padding:6px 12px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:600;border-radius:6px;border:1px solid #c7d2fe}.type-badge{display:inline-flex;padding:6px 14px;font-size:13px;font-weight:600;border-radius:6px}.type-full{background-color:#fee2e2;color:#991b1b}.type-half{background-color:#fef3c7;color:#92400e}.type-optional{background-color:#dbeafe;color:#1e40af}.type-working{background-color:#d1fae5;color:#065f46}.overtime-notice{display:flex;align-items:center;gap:12px;padding:14px 18px;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:8px;font-size:14px;font-weight:500;color:#92400e}.holiday-resolution-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}@media(max-width:1024px){.form-grid,.result-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.holiday-resolution{padding:16px}.form-grid{grid-template-columns:1fr}.btn-resolve{height:auto}.result-summary{grid-template-columns:1fr}.detail-row{flex-direction:column;gap:8px}.detail-label{flex:unset}}.attendance-marking{padding:24px;max-width:1400px;margin:0 auto}.attendance-marking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.attendance-marking-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.attendance-marking-header p{font-size:14px;color:#718096;margin:0}.btn-bulk-attendance{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px -1px #667eea4d}.btn-bulk-attendance:hover{transform:translateY(-2px);box-shadow:0 6px 14px -1px #667eea66}.attendance-marking-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px;margin-bottom:20px}.filter-date-input::-webkit-calendar-picker-indicator{cursor:pointer;color:#667eea}.form-row-1col{margin-bottom:20px}.checkbox-container{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding:12px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px}.checkbox-label{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s;font-size:13px}.checkbox-label:hover{background:#edf2f7;border-color:#cbd5e1}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer}.checkbox-label input[type=checkbox]:checked+span{font-weight:600;color:#1a202c}.no-options{text-align:center;padding:20px;color:#718096;font-size:13px;font-style:italic}.preview-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:32px}.summary-card{display:flex;align-items:center;gap:16px;padding:20px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s}.summary-card:hover{box-shadow:0 4px 12px #0000001a}.summary-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px}.summary-label{font-size:12px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:18px;font-weight:700;color:#1a202c}.preview-details{margin-bottom:24px}.preview-details h3{font-size:16px;font-weight:600;color:#1a202c;margin:0 0 16px}.preview-table-container{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px}.preview-table{width:100%;border-collapse:collapse}.preview-table thead{background:#f7fafc}.preview-table th{padding:15px;text-align:left;font-weight:600;font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.05em}.preview-table td{padding:16px 20px;border-top:1px solid #e2e8f0;font-size:14px;color:#2d3748}.employee-info strong{font-weight:600;color:#1a202c}.employee-info small,.employee-info .designation,.employee-info .employee-id{font-size:12px;color:#718096}.employee-info .employee-id{font-weight:500;color:#667eea}.shift-name{font-weight:600;color:#1a202c}.no-shift{font-size:13px;color:#a0aec0;font-style:italic}.disabled-input{font-size:13px;color:#cbd5e0}.toggle-button-container{display:flex;justify-content:center}.toggle-button{display:flex;align-items:center;background:#e2e8f0;border:2px solid #cbd5e1;border-radius:8px;padding:2px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.toggle-button.active-present{border-color:#10b981}.toggle-button.active-absent{border-color:#ef4444}.toggle-option{padding:6px 16px;font-size:12px;font-weight:600;border-radius:6px;transition:all .3s ease;z-index:1;position:relative;white-space:nowrap}.toggle-option.selected{color:#fff}.toggle-button.active-present .toggle-option:first-child{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.toggle-button.active-absent .toggle-option:last-child{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.toggle-button.active-present .toggle-option:last-child,.toggle-button.active-absent .toggle-option:first-child{color:#64748b;background:transparent}.toggle-button-container-3{display:flex;justify-content:center}.toggle-button-3{display:flex;align-items:center;background:#e2e8f0;border:2px solid #cbd5e1;border-radius:8px;padding:2px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.toggle-button-3.active-present{border-color:#10b981}.toggle-button-3.active-half-day{border-color:#f59e0b}.toggle-button-3.active-absent{border-color:#ef4444}.toggle-option-3{padding:6px 12px;font-size:11px;font-weight:600;border-radius:6px;transition:all .3s ease;z-index:1;position:relative;white-space:nowrap;color:#64748b;background:transparent;cursor:pointer}.toggle-option-3:hover{opacity:.8}.toggle-option-3.selected{color:#fff}.toggle-button-3.active-present .toggle-option-3:nth-child(1){background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.toggle-button-3.active-half-day .toggle-option-3:nth-child(2){background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.toggle-button-3.active-absent .toggle-option-3:nth-child(3){background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.time-input{padding:8px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:14px;color:#2d3748;transition:all .2s;width:120px}.time-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.remarks-input{padding:8px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:13px;color:#2d3748;transition:all .2s;width:100%;max-width:150px}.warning-text{font-size:12px;color:#dc2626;font-weight:500}.row-warning{background-color:#fef3c7!important}.row-error{background-color:#fee2e2!important}.preview-hint{font-size:13px;color:#718096;margin-top:-8px;margin-bottom:16px}.preview-table tbody tr{transition:background-color .2s}.preview-table tbody tr:hover{background:#f7fafc}.no-data p{margin:0;font-size:14px}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;border-radius:6px}.status-ready{background-color:#d1fae5;color:#065f46}.status-holiday{background-color:#fef3c7;color:#92400e}.status-weekly-off,.status-marked{background-color:#e0e7ff;color:#3730a3}.status-on-leave{background-color:#fef3c7;color:#92400e}.status-error{background-color:#fee2e2;color:#991b1b}.btn-save{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.warning-box{display:flex;align-items:center;gap:12px;padding:14px 18px;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:20px;font-size:14px;font-weight:500;color:#92400e}.attendance-marking-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:900px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.modal-header h2{font-size:24px;font-weight:700;margin:0 0 4px}.modal-close-btn{background:transparent;border:none;color:#fff;cursor:pointer;padding:4px;border-radius:6px;transition:background .2s}.modal-close-btn:hover{background:#fff3}.modal-body{padding:24px;max-height:calc(90vh - 200px);overflow-y:auto}.result-stat{display:flex;align-items:center;gap:16px;padding:20px;border-radius:10px;background:#f7fafc;border:2px solid #e2e8f0}.result-stat.success svg{color:#059669}.result-stat.failure svg{color:#dc2626}.result-stat.total{border-color:#667eea;background:#eef2ff}.result-stat.total svg{color:#667eea}.result-stat .stat-value{display:block;font-size:28px;font-weight:700;color:#1a202c;line-height:1}.result-stat .stat-label{display:block;font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-top:4px}.results-table-container{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.results-table thead{background:#f7fafc}.results-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.05em}.results-table td{padding:16px;border-top:1px solid #e2e8f0;font-size:14px;color:#2d3748}.results-table tbody tr.result-success{background:#f0fdf4}.results-table tbody tr.result-failure{background:#fef2f2}.results-table tbody tr:hover{background:#f7fafc}.message-success-text{color:#059669;font-weight:500}.message-error-text{color:#dc2626;font-weight:500}.modal-footer{padding:20px 24px;border-top:1px solid #e2e8f0;background:#f7fafc;display:flex;justify-content:flex-end}.btn-modal-close{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-modal-close:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}@media(max-width:1024px){.preview-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.attendance-marking,.attendance-marking-content{padding:16px}.form-row-2col{grid-template-columns:1fr;gap:16px}.preview-summary{grid-template-columns:1fr}.preview-actions{flex-direction:column}.btn-back,.btn-save{width:100%;justify-content:center}.preview-table-container{overflow-x:auto}.toggle-option{padding:6px 12px;font-size:11px}.employee-id-badge{font-family:Courier New,monospace;font-size:13px;font-weight:600;color:#667eea;background:#eef2ff;padding:6px 12px;border-radius:6px;display:inline-block;width:fit-content;border:1px solid #c7d2fe}.results-summary{grid-template-columns:1fr}.modal-content{width:95%;max-height:95vh}.modal-header{padding:16px}.modal-header h2{font-size:20px}.modal-body{padding:16px}.results-table-container{overflow-x:auto}.filters-section-inline{grid-template-columns:1fr;gap:12px}.filter-date-input{width:100%}}.shift-info{display:flex;flex-direction:column;gap:4px}.shift-name{font-weight:600;color:#2d3748;font-size:14px}.shift-code{font-size:12px;color:#718096}.no-shift{color:#cbd5e0;font-style:italic;font-size:13px}@keyframes skeleton-shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0,#e0e0e0 20%,#f0f0f0 40% 100%);background-size:1000px 100%;animation:skeleton-shimmer 1.5s infinite linear;border-radius:8px}.skeleton-row td{padding:16px!important}.skeleton-employee-info{height:60px;width:100%;border-radius:8px}.skeleton-shift{height:40px;width:90%;border-radius:6px}.skeleton-attendance-toggle{height:40px;width:95%;border-radius:6px}.skeleton-time-input{height:38px;width:85%;border-radius:6px}.skeleton-status{height:28px;width:70%;border-radius:14px}.skeleton-remarks{height:38px;width:100%;border-radius:6px}.skeleton-actions{height:36px;width:80%;border-radius:6px}.action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-cancel{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff}.btn-cancel:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f5656566}.action-btn svg{width:16px;height:16px}.bulk-attendance-marking{padding:24px;max-width:100%;margin:0 auto}.bulk-attendance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.btn-back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #e2e8f0;background:#fff;border-radius:8px;cursor:pointer;transition:all .2s}.btn-back:hover{background:#f7fafc;border-color:#667eea;color:#667eea}.bulk-attendance-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.bulk-attendance-header p{font-size:14px;color:#718096;margin:0}.warning-box{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;margin-bottom:24px;font-size:14px;font-weight:500}.attendance-marking-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px;margin-bottom:24px}.filters-section-inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.scroll-instruction{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1e40af;font-size:13px;font-weight:500;margin-bottom:16px}.scroll-instruction svg{flex-shrink:0;color:#3b82f6}.bulk-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;overflow-y:auto;max-height:460px;margin-bottom:24px;cursor:grab;position:relative;scroll-behavior:smooth}.bulk-table-container:active{cursor:grabbing}.bulk-table-container::-webkit-scrollbar{width:10px;height:10px}.bulk-table-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.bulk-table-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px;border:2px solid #f1f5f9}.bulk-table-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.bulk-table-container::-webkit-scrollbar-corner{background:#f1f5f9}.bulk-table-container select,.bulk-table-container input{cursor:pointer;-webkit-user-select:auto;user-select:auto}.bulk-table-container select:active,.bulk-table-container input:active{cursor:pointer}.bulk-attendance-table{width:100%;border-collapse:separate;border-spacing:0;min-width:max-content;position:relative}.bulk-attendance-table thead{background:#f8fafc}.bulk-attendance-table th{padding:16px 12px;text-align:left;font-weight:600;font-size:13px;color:#475569;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e2e8f0;white-space:nowrap;background:#f8fafc;position:-webkit-sticky;position:sticky;top:0;z-index:15}.bulk-attendance-table td{padding:12px;border-bottom:1px solid #e2e8f0;vertical-align:top}.bulk-attendance-table tbody{position:relative}.bulk-attendance-table tbody tr:hover{background:#f8fafc}.sticky-col{position:-webkit-sticky;position:sticky;left:0!important;background:#fff;z-index:20;box-shadow:2px 0 4px #0000000d;cursor:text!important;-webkit-user-select:text!important;user-select:text!important}.bulk-attendance-table tbody tr:hover .sticky-col{background:#f8fafc!important}.bulk-attendance-table thead th.sticky-col,.bulk-attendance-table th.sticky-col{position:-webkit-sticky;position:sticky;top:0!important;left:0!important;background:#f8fafc!important;z-index:40!important;box-shadow:2px 0 4px #0000000d,0 2px 4px #0000000d}.employee-name-col{min-width:200px!important;max-width:200px!important;width:200px!important}.employee-name-col:after{content:"";position:absolute;top:0;right:0;bottom:0;width:2px;background-color:#cbd5e0;z-index:30;pointer-events:none}.shift-select-dropdown{margin-top:6px;width:100%}.employee-info{display:flex;flex-direction:column;gap:6px}.employee-name{font-weight:600;color:#1e293b;font-size:14px}.day-header{display:flex;flex-direction:column;align-items:center;gap:4px}.day-number{font-size:16px;font-weight:700;color:#1a202c}.day-name{font-size:11px;font-weight:500;color:#718096;text-transform:uppercase}.employee-cell{font-weight:600;color:#1e293b}.employee-id-badge{display:inline-block;padding:3px 8px;background:linear-gradient(135deg,#667eea15,#764ba215);color:#667eea;font-size:11px;font-weight:700;border-radius:4px;border:1px solid #667eea30;font-family:Courier New,monospace;letter-spacing:.5px}.attendance-cell{min-width:120px;max-width:150px}.attendance-cell.weekend{background:#fef3c7}.attendance-controls{display:flex;flex-direction:column;gap:6px}.status-select{padding:6px 8px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.status-select:hover{border-color:#667eea}.status-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.status-select.PRESENT{background:#d1fae5;color:#065f46;border-color:#10b981}.status-select.HALF_DAY{background:#e0f2fe;color:#075985;border-color:#0284c7}.status-select.ABSENT{background:#fee2e2;color:#991b1b;border-color:#ef4444}.status-select.LEAVE{background:#fef3c7;color:#92400e;border-color:#f59e0b}.status-select.WEEK_OFF{background:#e0e7ff;color:#3730a3;border-color:#6366f1}.status-select.HOLIDAY{background:#fce7f3;color:#831843;border-color:#ec4899}.time-inputs{display:flex;flex-direction:column;gap:4px}.time-inputs input[type=time]{padding:4px 6px;border:1px solid #e2e8f0;border-radius:4px;font-size:11px;background:#fff}.time-inputs input[type=time]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.bulk-actions{display:flex;gap:12px;justify-content:flex-end;padding:20px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.btn-draft,.btn-submit{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-draft{background:#f1f5f9;color:#475569}.btn-draft:hover:not(:disabled){background:#e2e8f0;transform:translateY(-2px)}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px -1px #667eea4d}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 14px -1px #667eea66}.btn-draft:disabled,.btn-submit:disabled{opacity:.5;cursor:not-allowed}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border-top:1px solid #e2e8f0;border-radius:0 0 12px 12px;flex-wrap:wrap;gap:16px}.bulk-attendance-loading,.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;color:#64748b}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;gap:16px;color:#94a3b8;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.empty-state svg{opacity:.3}.empty-state p{font-size:16px;margin:0}@media(max-width:768px){.bulk-attendance-marking{padding:16px}.bulk-attendance-header{flex-direction:column;align-items:flex-start}.bulk-filters{grid-template-columns:1fr}.bulk-actions{flex-direction:column}.btn-draft,.btn-submit{width:100%;justify-content:center}.table-footer{flex-direction:column;align-items:stretch}.footer-info{flex-direction:column;align-items:flex-start}.pagination{justify-content:center;flex-wrap:wrap}.pagination-btn{padding:6px 10px;font-size:12px}.scroll-instruction{font-size:12px;padding:8px 12px}}.modal-content{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header h2{font-size:24px;font-weight:700;color:#1a202c;margin:0}.modal-close{background:none;border:none;cursor:pointer;color:#718096;padding:4px;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f7fafc;color:#1a202c}.results-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.summary-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:8px;border:2px solid}.summary-card.success{background:#d1fae5;border-color:#10b981;color:#065f46}.summary-card.failure{background:#fee2e2;border-color:#ef4444;color:#991b1b}.summary-card.total{background:#e0e7ff;border-color:#6366f1;color:#3730a3}.summary-count{font-size:32px;font-weight:700;line-height:1}.summary-label{font-size:14px;font-weight:500;margin-top:4px}.results-list{margin-top:24px}.results-list h3{font-size:18px;font-weight:600;color:#1a202c;margin:0 0 16px}.results-table-container{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px}.results-table thead{background:#f8fafc}.results-table th{padding:12px;text-align:left;font-weight:600;font-size:13px;color:#475569;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e2e8f0}.results-table td{padding:12px;border-bottom:1px solid #e2e8f0;font-size:14px}.results-table tbody tr:last-child td{border-bottom:none}.results-table .success-row{background:#f0fdf4}.results-table .failure-row{background:#fef2f2}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.success{background:#d1fae5;color:#065f46}.status-badge.failure{background:#fee2e2;color:#991b1b}.message-cell{color:#64748b;font-size:13px}.modal-footer{padding:20px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end}.btn-close-modal{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-close-modal:hover{transform:translateY(-2px);box-shadow:0 6px 14px -1px #667eea66}.attendance-ledger{padding:24px;max-width:1400px;margin:0 auto}.attendance-ledger-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.attendance-ledger-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.attendance-ledger-header p{font-size:14px;color:#718096;margin:0}.preview-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.btn-back{display:flex;align-items:center;gap:8px;padding:12px 24px;background-color:#f7fafc;color:#4a5568;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back:hover{background-color:#edf2f7}.btn-export{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-export:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.step-indicator{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px}.step-badge{color:#fff;font-size:14px;font-weight:600}.attendance-ledger-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:visible;margin-bottom:24px;position:relative;z-index:10}.form-field label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#4a5568}.form-field input[type=date]{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#2d3748;transition:all .2s;background:#fff}.form-field input[type=date]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions-center{display:flex;justify-content:center;margin-top:24px;padding-top:20px;border-top:1px solid #e2e8f0}.btn-preview{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;min-width:200px}.btn-preview:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-clear{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#f7fafc;color:#4a5568;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-clear:hover{background-color:#edf2f7}.filters-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.form-group input,.form-group select,.form-group textarea{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group select:disabled{background-color:#f7fafc;cursor:not-allowed;color:#a0aec0}.form-group .modern-dropdown{z-index:100}.form-group .modern-dropdown-trigger{border-radius:8px}.form-group .modern-dropdown-menu{z-index:1000}.btn-clear-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#a0aec0;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.filters-actions{display:flex;justify-content:center}.btn-search{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;min-width:200px}.btn-search:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-search:disabled{opacity:.6;cursor:not-allowed}.results-action-bar{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-bottom:1px solid #e5e7eb;margin-bottom:0}.btn-back{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#4b5563;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back:hover{background:#f9fafb;border-color:#667eea;color:#667eea;transform:translate(-4px)}.btn-export{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-export:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.ledger-results{padding:24px}.results-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:14px;font-weight:500;color:#4a5568}.ledger-table-container{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px}.ledger-table{width:100%;border-collapse:collapse}.ledger-table thead{background:#f7fafc}.ledger-table th{padding:16px 20px;text-align:left;font-weight:600;font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.ledger-table td{padding:16px 20px;border-top:1px solid #e2e8f0;font-size:14px;color:#2d3748;white-space:nowrap}.ledger-table tbody tr{transition:background-color .2s}.ledger-table tbody tr:hover{background:#f7fafc}.branch-cell,.dept-cell{display:flex;align-items:center;gap:6px;color:#4a5568}.branch-cell svg,.dept-cell svg{color:#a0aec0}.overtime-highlight{color:#9b59b6;font-weight:600}.status-badge{display:inline-flex;padding:4px 12px;font-size:12px;font-weight:600;border-radius:6px;white-space:nowrap}.status-present{background-color:#d1fae5;color:#065f46}.status-absent{background-color:#fee2e2;color:#991b1b}.status-half-day,.status-late{background-color:#fef3c7;color:#92400e}.status-leave{background-color:#dbeafe;color:#1e40af}.no-data-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#a0aec0;text-align:center}.no-data-state svg{margin-bottom:16px;opacity:.5}.no-data-state p{margin:0;font-size:14px;color:#718096}.attendance-ledger-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.spinner-small{width:16px;height:16px;border:2px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.action-buttons{display:flex;gap:8px;justify-content:center}.btn-icon.btn-edit{background:#eef2ff;color:#667eea}.btn-icon.btn-edit:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-icon.btn-delete{background:#fee2e2;color:#ef4444}.btn-icon.btn-delete:hover{background:#ef4444;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.employee-id-text{font-family:Courier New,monospace;font-weight:600;color:#667eea;background:#eef2ff;padding:4px 8px;border-radius:4px;font-size:12px}.time-display{font-weight:600;color:#374151}.remarks-text{color:#6b7280;font-size:13px;font-style:italic}.overtime-cell{display:flex;align-items:center;gap:8px;justify-content:space-between}.overtime-summary{display:flex;flex-direction:column;gap:2px}.ot-hours{font-weight:700;color:#9b59b6;font-size:15px}.ot-count{font-size:11px;color:#6b7280;font-weight:500}.btn-expand{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:#e8daef;color:#9b59b6;border-radius:4px;cursor:pointer;transition:all .2s}.btn-expand:hover{background:#d7bde2;transform:scale(1.1)}.overtime-details-row,.overtime-details-row:hover{background:#f4ecf7!important}.overtime-details-row td{padding:0!important;border-top:none!important}.overtime-entries-container{padding:20px 24px;background:#f4ecf7;border-left:4px solid #9b59b6}.overtime-entries-container h4{margin:0 0 16px;font-size:14px;font-weight:700;color:#92400e;text-transform:uppercase;letter-spacing:.05em}.overtime-entries-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.overtime-entry-card{background:#fff;border:1px solid #d7bde2;border-radius:8px;padding:12px;transition:all .2s}.overtime-entry-card:hover{border-color:#9b59b6;box-shadow:0 2px 8px #9b59b626}.ot-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #fef3c7}.ot-entry-number{font-size:12px;font-weight:700;color:#92400e}.ot-entry-type{font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}.ot-entry-type.type-holiday{background:#dbeafe;color:#1e40af}.ot-entry-type.type-weekly-off{background:#e0e7ff;color:#4338ca}.ot-entry-type.type-manual{background:#fef3c7;color:#92400e}.ot-entry-type.type-extra{background:#d1fae5;color:#065f46}.ot-entry-details{display:flex;flex-direction:column;gap:8px}.ot-detail-item{display:flex;align-items:center;gap:6px;font-size:13px}.ot-detail-item.full-width{flex-direction:column;align-items:flex-start;gap:4px;padding-top:4px;border-top:1px solid #fef3c7;margin-top:4px}.ot-detail-item svg{color:#9b59b6;flex-shrink:0}.ot-label{font-weight:600;color:#6b7280}.ot-value{color:#1f2937;font-weight:500}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;display:flex;flex-direction:column}.modal-content.modal-small{max-width:500px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-header h2{font-size:20px;font-weight:700;margin:0 0 4px}.modal-header p{font-size:14px;margin:0;opacity:.9}.modal-close-btn{background:#fff3;border:none;color:#fff;cursor:pointer;padding:4px;border-radius:6px;transition:background .2s;display:flex;align-items:center;justify-content:center}.day-detail-modal .modal-body{padding:24px;overflow-y:auto;flex:1;background:#f9fafb}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-grid .form-group.full-width{grid-column:1 / -1}.form-group label{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#374151;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s;font-family:inherit}.modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:12px;background:#f7fafc}.btn-cancel{padding:10px 20px;background:#fff;color:#4a5568;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f7fafc;border-color:#cbd5e1}.btn-save{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-delete-confirm{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-delete-confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.btn-delete-confirm:disabled{opacity:.6;cursor:not-allowed}.delete-confirmation{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.warning-icon{color:#f59e0b}.delete-details{width:100%;background:#f7fafc;padding:16px;border-radius:8px;text-align:left}.delete-details p{margin:8px 0;font-size:14px;color:#4a5568}.delete-details strong{color:#1a202c}.warning-text{color:#dc2626;font-weight:600;font-size:14px}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.attendance-ledger-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.month-year-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:0;box-shadow:0 1px 3px #0000001a}.month-year-selectors{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.selector-group{display:flex;flex-direction:column;gap:8px}.selector-group label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#4a5568}.selector-group select,.month-select,.year-select{padding:10px 14px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;font-weight:500;color:#2d3748;background:#fff;cursor:pointer;transition:all .2s;width:100%}.selector-group select:hover,.month-select:hover,.year-select:hover{border-color:#cbd5e0}.selector-group select:focus,.month-select:focus,.year-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-section{background:#fff;border-radius:0 0 12px 12px;padding:20px;border-top:1px solid #e2e8f0}.search-input-wrapper{position:relative;width:100%}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#a0aec0;z-index:1}.search-input,.search-input2{width:100%;padding:12px 44px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#2d3748;transition:all .2s;background:#fff}.search-input:focus,.search-input2:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-clear-btn{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#a0aec0;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;z-index:1}.search-clear-btn:hover{background:#f7fafc;color:#667eea}.employee-table-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px #00000012,0 1px 3px #0000000f}.table-container{overflow-x:auto;border-radius:8px;box-shadow:0 2px 8px #00000014}.table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.table-title{font-size:18px;font-weight:700;color:#1a202c}.employee-table{width:100%;border-collapse:separate;border-spacing:0}.employee-table thead{background:linear-gradient(135deg,#667eea,#764ba2)}.employee-table th{padding:18px 20px;text-align:left;font-weight:600;font-size:13px;color:#fff;text-transform:uppercase;letter-spacing:.05em;border:none}.employee-table th:first-child{border-radius:8px 0 0}.employee-table th:last-child{border-radius:0 8px 0 0}.employee-table td{padding:16px 20px;border-bottom:1px solid #e2e8f0;font-size:14px;color:#2d3748;background:#fff}.employee-table tbody tr{transition:all .2s}.employee-table tbody tr:hover{background:#f7fafc;box-shadow:0 2px 8px #0000000d}.employee-table tbody tr:hover td{background:#f7fafc}.employee-table tbody tr:last-child td:first-child{border-radius:0 0 0 8px}.employee-table tbody tr:last-child td:last-child{border-radius:0 0 8px}.employee-name-cell{display:flex;align-items:center;gap:12px}.employee-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.employee-name{font-weight:600;color:#1a202c;font-size:14px}.attendance-badge{display:inline-flex;align-items:center;justify-content:center;min-width:40px;padding:6px 12px;border-radius:8px;font-size:14px;font-weight:700;transition:all .2s}.attendance-badge:hover{transform:scale(1.05)}.badge-present{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:2px solid #10b981;box-shadow:0 2px 4px #10b98133}.badge-absent{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border:2px solid #ef4444;box-shadow:0 2px 4px #ef444433}.badge-leave{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:2px solid #f59e0b;box-shadow:0 2px 4px #f59e0b33}.badge-half-day{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#3730a3;border:2px solid #818cf8;box-shadow:0 2px 4px #818cf833}.badge-total{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#1f2937;border:2px solid #9ca3af;box-shadow:0 2px 4px #9ca3af33;font-weight:800}.badge-overtime{background:linear-gradient(135deg,#e8daef,#d7bde2);color:#6c3483;border:2px solid #9b59b6;box-shadow:0 2px 4px #9b59b633;font-weight:700}.attendance-counts{display:flex;gap:12px;flex-wrap:wrap}.count-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:600}.count-badge.present{background:#d1fae5;color:#065f46}.count-badge.absent{background:#fee2e2;color:#991b1b}.count-badge.leave{background:#dbeafe;color:#1e40af}.count-badge.half-day{background:#fef3c7;color:#92400e}.btn-view-details{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-view-details:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.modal-content.modal-large{max-width:1200px;width:95%;max-height:95vh}.modal-content.detail-modal{max-width:1200px;width:95%}.detail-modal .modal-body{padding:24px;overflow-y:auto;max-height:calc(95vh - 80px)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.loading-container p{color:#6b7280;font-size:14px;font-weight:500}.btn-close-modal{background:#fff3;border:none;color:#fff;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s;display:flex;align-items:center;justify-content:center}.btn-close-modal:hover{background:#ffffff4d}.detail-section{background:#f9fafb;padding:20px;border-radius:12px;margin-bottom:20px;border:1px solid #e5e7eb}.detail-section h3{margin:0 0 16px;font-size:18px;font-weight:700;color:#111827;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e5e7eb}.detail-row .label{font-weight:600;color:#6b7280;font-size:14px}.detail-row .value{color:#1f2937;font-weight:500;font-size:14px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.summary-card{background:#fff;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000001a;border:2px solid transparent;transition:all .2s}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.summary-card.present{border-color:#10b981;background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.summary-card.absent{border-color:#ef4444;background:linear-gradient(135deg,#fee2e2,#fecaca)}.summary-card.leave{border-color:#f59e0b;background:linear-gradient(135deg,#fef3c7,#fde68a)}.summary-card.half-day{border-color:#818cf8;background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}.summary-card.overtime{border-color:#9b59b6;background:linear-gradient(135deg,#e8daef,#d7bde2)}.summary-card.total{border-color:#34495e;background:linear-gradient(135deg,#ecf0f1,#bdc3c7)}.summary-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.summary-icon.present{background:linear-gradient(135deg,#10b981,#059669)}.summary-icon.absent{background:linear-gradient(135deg,#ef4444,#dc2626)}.summary-icon.leave{background:linear-gradient(135deg,#f59e0b,#d97706)}.summary-icon.half-day{background:linear-gradient(135deg,#818cf8,#6366f1)}.summary-icon.overtime{background:linear-gradient(135deg,#9b59b6,#8e44ad)}.summary-icon.total{background:linear-gradient(135deg,#34495e,#2c3e50)}.summary-details{flex:1}.summary-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.empty-state-icon{color:#cbd5e0;margin-bottom:16px}.empty-state h3{font-size:18px;font-weight:600;color:#4a5568;margin:0 0 8px}@media(max-width:1024px){.filters-grid{grid-template-columns:1fr 1fr}.filters-grid .form-group:last-child{grid-column:1 / -1}}@media(max-width:1200px){.month-year-section{flex-direction:column;align-items:stretch}.summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.attendance-ledger{padding:16px}.attendance-ledger-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-export{width:100%;justify-content:center}.filters-grid{grid-template-columns:1fr}.ledger-table-container{overflow-x:scroll}.calendar-filters{grid-template-columns:1fr}.calendar-day{min-height:60px;padding:8px}.day-number{font-size:14px}.day-status,.day-overtime{font-size:9px}.detail-grid{grid-template-columns:1fr}.month-year-controls{flex-direction:column;width:100%}.select-group select{width:100%}.search-input-wrapper{max-width:100%}.summary-grid{grid-template-columns:1fr}.attendance-counts{flex-direction:column}.details-modal-content{width:98%}.table-footer{flex-direction:column;align-items:stretch}.footer-info{flex-direction:column;align-items:flex-start}.pagination{justify-content:center;flex-wrap:wrap}.pagination-btn{padding:6px 10px;font-size:12px}.pagination-btn:not(.active):not(:first-child):not(:last-child):not(:nth-last-child(2)):not(:nth-child(2)){display:none}}.tabs-container{display:flex;gap:8px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.tab-button{display:flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-radius:8px;font-size:14px;font-weight:600;color:#4a5568;cursor:pointer;transition:all .2s}.tab-button:hover{background:#f7fafc}.tab-button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.employee-search-group,.employee-search-container{position:relative}.employee-search-input{width:100%;padding:12px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#2d3748;transition:all .2s;background:#fff}.employee-search-input::placeholder{color:#a0aec0;font-size:13px}.employee-search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:#fefefe}.employee-search-input:hover:not(:focus){border-color:#cbd5e0}.search-indicator{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;color:#667eea;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.employee-search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:4px;box-shadow:0 4px 12px #0000001a;max-height:300px;overflow-y:auto;z-index:10}.employee-search-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .2s;border-bottom:1px solid #f1f5f9}.employee-search-item:last-child{border-bottom:none}.employee-search-item:hover{background:#f7fafc}.employee-search-item .emp-id{font-weight:600;color:#667eea;font-size:13px;min-width:20px;flex-shrink:0}.employee-search-item .emp-name{color:#2d3748;font-size:14px;flex:1}.selected-employee-display{display:flex;align-items:center;gap:10px;padding:12px 16px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981;border-radius:8px;color:#065f46;font-size:14px;font-weight:600;box-shadow:0 2px 4px #10b9811a;transition:all .2s}.selected-employee-display:hover{box-shadow:0 4px 8px #10b98133}.btn-clear-employee{display:flex;align-items:center;justify-content:center;margin-left:auto;padding:4px;background:transparent;border:none;color:#065f46;cursor:pointer;border-radius:4px;transition:background .2s}.btn-clear-employee:hover{background:#0000001a}.calendar-filters{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;display:grid;grid-template-columns:2fr 2fr 1fr;gap:24px;align-items:end}.calendar-filters .filter-group{display:flex;flex-direction:column;gap:10px}.calendar-filters label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#4a5568;margin-bottom:2px}.filter-group2>*{display:flex;gap:12px;flex-wrap:wrap;flex:1;padding-bottom:5px;min-width:180px;max-width:300px}.month-selector{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid #e2e8f0;border-radius:8px;padding:10px 14px;transition:all .2s}.month-selector:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d}.btn-month-nav{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:#f7fafc;color:#667eea;border-radius:6px;cursor:pointer;transition:all .2s}.btn-month-nav:hover{background:#667eea;color:#fff;transform:scale(1.1)}.btn-month-nav:active{transform:scale(.95)}.month-display{flex:1;text-align:center;font-size:15px;font-weight:600;color:#2d3748;min-width:160px;padding:0 8px}.btn-load-calendar{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;white-space:nowrap;box-shadow:0 2px 8px #667eea4d;height:fit-content;align-self:end}.btn-load-calendar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea80}.btn-load-calendar:active:not(:disabled){transform:translateY(0)}.btn-load-calendar:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#a0aec0,#718096)}.calendar-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.summary-icon.info{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.summary-icon.holiday{background:linear-gradient(135deg,#06b6d4,#0891b2)}.employee-info-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border-radius:12px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #667eea4d}.employee-details h3{margin:0 0 8px;font-size:24px;font-weight:700}.employee-info-card .employee-id{margin:0;font-size:14px;opacity:.9}.employee-designation{margin:4px 0 0;font-size:14px;opacity:.85}.month-info{text-align:right}.month-label{margin:0 0 4px;font-size:12px;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.month-value{margin:0;font-size:20px;font-weight:700}.calendar-container{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000001a}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:12px}.calendar-weekday{padding:12px;text-align:center;font-size:12px;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;background:#f7fafc;border-radius:8px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-day{min-height:90px;padding:8px;border:2px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:4px;transition:all .2s;background:#fff;position:relative;overflow:hidden}.calendar-day.empty{background:#f9fafb;border-color:transparent;min-height:90px}.day-number{font-size:16px;font-weight:700;color:#1a202c;margin-bottom:4px}.day-info{display:flex;flex-direction:column;gap:3px;flex:1;font-size:11px}.day-status{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;padding:2px 6px;border-radius:4px;display:inline-block;width:fit-content}.day-time{font-size:10px;color:#4b5563;font-weight:500;margin-top:2px}.day-overtime{font-size:10px;font-weight:600;color:#6c3483;margin-top:2px;background:#e8daef;padding:2px 6px;border-radius:4px;display:inline-block;width:fit-content}.day-holiday-name{font-size:9px;color:#6b7280;font-weight:500;margin-top:2px;font-style:italic}.calendar-day.status-present{background:#d1fae5;border-color:#10b981}.calendar-day.status-present .day-status{background:#10b981;color:#fff}.calendar-day.status-absent{background:#fee2e2;border-color:#ef4444}.calendar-day.status-absent .day-status{background:#ef4444;color:#fff}.calendar-day.status-half-day{background:#fef3c7;border-color:#f59e0b}.calendar-day.status-half-day .day-status{background:#f59e0b;color:#fff}.calendar-day.status-leave{background:#fef3c7;border-color:#f59e0b}.calendar-day.status-leave .day-status{background:#f59e0b;color:#fff}.calendar-day.status-holiday{background:#dbeafe;border-color:#06b6d4}.calendar-day.status-holiday .day-status{background:#06b6d4;color:#fff}.calendar-day.status-weekly-off{background:#e0e7ff;border-color:#818cf8}.calendar-day.status-weekly-off .day-status{background:#818cf8;color:#fff}.calendar-day.status-not-marked{background:#f9fafb;border-color:#d1d5db}.calendar-day.status-not-marked .day-status{background:#9ca3af;color:#fff}.calendar-legend{background:#fff;border-radius:12px;padding:16px 20px;margin-top:20px;border:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:#4a5568}.legend-color{width:24px;height:24px;border-radius:6px;border:2px solid;flex-shrink:0}.legend-color.status-badge-present{background:#d1fae5;border-color:#10b981}.legend-color.status-badge-absent{background:#fee2e2;border-color:#ef4444}.legend-color.status-badge-leave{background:#fef3c7;border-color:#f59e0b}.legend-color.status-badge-holiday{background:#dbeafe;border-color:#06b6d4}.legend-color.status-badge-weekoff{background:#e0e7ff;border-color:#818cf8}.legend-color.status-present{background:#d1fae5;border-color:#10b981}.legend-color.status-absent{background:#fee2e2;border-color:#ef4444}.legend-color.status-half-day{background:#fef3c7;border-color:#f59e0b}.legend-color.status-holiday{background:#dbeafe;border-color:#06b6d4}.legend-color.status-weekly-off{background:#e0e7ff;border-color:#818cf8}.legend-color.status-not-marked{background:#f9fafb;border-color:#d1d5db}.modal-content.day-modal{max-width:700px}.day-detail-employee{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:12px;margin-bottom:24px}.day-detail-employee h3{margin:0 0 12px;font-size:22px;font-weight:700}.employee-detail-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.employee-detail-badge{padding:4px 12px;background:#fff3;border-radius:20px;font-size:13px;font-weight:600}.employee-detail-text{font-size:14px;color:#ffffffe6}.day-detail-status{display:flex;justify-content:center;margin-bottom:24px}.status-badge-large{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-badge-large.status-present{background:#d1fae5;color:#065f46}.status-badge-large.status-absent{background:#fee2e2;color:#991b1b}.status-badge-large.status-half-day{background:#fef3c7;color:#92400e}.status-badge-large.status-holiday{background:#dbeafe;color:#0c4a6e}.status-badge-large.status-weekly-off{background:#e0e7ff;color:#3730a3}.day-detail-modal{background:#fff;padding:24px;border-radius:12px;margin-bottom:20px;border:1px solid #e5e7eb}.day-detail-modal h4{margin:0 0 16px;font-size:17px;font-weight:700;color:#111827;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.detail-section2{background:#d2edcab6;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.holiday-section{background:#dbeafe}.holiday-name{margin:0;font-size:18px;font-weight:600;color:#0c4a6e}.weekly-off-section{background:#e0e7ff}.weekly-off-section p{margin:0;color:#3730a3;font-weight:500}.attendance-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:12px}.attendance-detail-item{display:flex;flex-direction:column;gap:6px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.attendance-detail-label{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px}.attendance-detail-value{font-size:18px;font-weight:700;color:#1f2937;line-height:1.2}.attendance-detail-value.overtime-value{color:#9b59b6}.detail-remarks{margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.detail-remarks p{margin:8px 0 0;font-size:14px;color:#4a5568;font-style:italic}.overtime-section{background:#f4ecf7}.overtime-entries-detail{display:flex;flex-direction:column;gap:12px}.overtime-entry-detail-card{background:#fff;border:1px solid #d7bde2;border-radius:8px;padding:12px}.ot-entry-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #fef3c7}.ot-entry-detail-number{font-size:13px;font-weight:700;color:#92400e}.ot-entry-detail-type{font-size:11px;font-weight:600;padding:4px 10px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.ot-entry-detail-type.type-holiday{background:#dbeafe;color:#1e40af}.ot-entry-detail-type.type-weekly-off{background:#e0e7ff;color:#4338ca}.ot-entry-detail-type.type-manual{background:#fef3c7;color:#92400e}.ot-entry-detail-type.type-extra{background:#d1fae5;color:#065f46}.ot-entry-detail-body{display:flex;flex-direction:column;gap:10px}.ot-detail-row{display:flex;align-items:center;gap:8px;font-size:13px}.ot-detail-row.full-width{flex-direction:column;align-items:flex-start;gap:4px;padding-top:8px;border-top:1px solid #fef3c7;margin-top:4px}.ot-detail-row svg{color:#9b59b6;flex-shrink:0}.ot-detail-row .ot-detail-label{font-weight:600;color:#6b7280}.ot-detail-row .ot-detail-value{color:#1f2937;font-weight:500}.ot-detail-row.full-width .ot-detail-value{margin:0}.btn-modal-close{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-modal-close:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.overtime-marking{width:100%;max-width:1400px;margin:0 auto;padding:24px}.overtime-marking-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.overtime-marking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.overtime-marking-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.overtime-marking-header p{font-size:14px;color:#718096;margin:0}.message{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;animation:slideIn .3s ease-in-out}.message-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.message-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.warning-box{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;color:#856404;margin-bottom:20px}.overtime-marking-content{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.filters-section-inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:0}.filter-date-input{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#2d3748;transition:all .2s;background:#fff;width:100%}.filter-date-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-row-2col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field label{display:flex;align-items:center;gap:8px;font-weight:500;font-size:14px;color:#374151}.form-field input,.form-field select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:all .2s}.form-field input:focus,.form-field select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions-center{display:flex;justify-content:center;gap:12px;margin-top:24px}.btn-preview,.btn-save,.btn-back{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-preview{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-preview:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-preview:disabled{opacity:.6;cursor:not-allowed}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.btn-back{background:#f3f4f6;color:#374151}.btn-back:hover{background:#e5e7eb}.preview-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.summary-card{display:flex;align-items:center;gap:16px;padding:20px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;transition:all .2s}.summary-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.summary-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.summary-icon.success{background:linear-gradient(135deg,#667eea,#764ba2)}.summary-icon.error{background:linear-gradient(135deg,#ef4444,#dc2626)}.summary-icon.warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.summary-info{display:flex;flex-direction:column;gap:4px}.summary-label{font-size:13px;color:#6b7280;font-weight:500}.summary-value{font-size:28px;font-weight:700;color:#111827}.preview-details{margin-top:24px}.preview-details h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#111827}.preview-hint{margin:0 0 16px;font-size:14px;color:#6b7280}.preview-table-container{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}.preview-table{width:100%;border-collapse:collapse;font-size:14px}.preview-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.preview-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;white-space:nowrap}.preview-table td{padding:12px 16px;border-top:1px solid #e5e7eb}.preview-table tbody tr:hover{background:#f9fafb}.row-warning{background:#fef3c7}.row-warning:hover{background:#fde68a!important}.employee-info strong{color:#111827;font-weight:600}.designation{font-size:12px;color:#6b7280}.shift-info{display:flex;flex-direction:column;gap:2px}.shift-name{font-weight:500;color:#111827}.shift-code{font-size:12px;color:#6b7280}.no-shift{color:#9ca3af;font-style:italic}.time-display{font-weight:600;color:#374151;font-size:14px}.hours-display{font-weight:600;color:#059669;font-size:14px;padding:4px 8px;background:#d1fae5;border-radius:6px;display:inline-block}.hours-display.existing-ot{color:#d97706;background:#fef3c7}.ot-input{width:100px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s}.ot-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.ot-input-with-button{display:flex;align-items:center;gap:8px}.ot-input{flex:1}.ot-input:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.7}.ot-input-editing{border-color:#f59e0b;background:#fffbeb}.ot-input-editing:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.ot-edit-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s;flex-shrink:0}.ot-edit-button:hover{border-color:#f59e0b;color:#f59e0b;background:#fffbeb;transform:scale(1.05)}.ot-edit-button.editing-active{border-color:#f59e0b;color:#f59e0b;background:#fffbeb}.ot-hours-display{font-weight:600;color:#059669;font-size:14px}.status-with-ot{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.ot-status-indicator{display:flex;align-items:center;gap:4px;padding:3px 8px;background:#d1fae5;border:1px solid #6ee7b7;border-radius:4px;font-size:11px;font-weight:600;color:#065f46}.ot-marked-icon{color:#059669;flex-shrink:0}.ot-marked-text{white-space:nowrap}.ot-edit-icon{color:#f59e0b;cursor:pointer;flex-shrink:0;transition:all .2s}.ot-edit-icon:hover{color:#d97706;transform:scale(1.15)}.remarks-input{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s}.remarks-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap}.status-badge.status-present{background:#d1fae5;color:#065f46}.status-badge.status-error{background:#fee2e2;color:#991b1b}.status-badge.status-on-leave{background:#fef3c7;color:#92400e}.status-badge.status-ready{background:#d1fae5;color:#065f46}.status-badge.status-ot-marked{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.preview-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.spinner-large{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a;animation:slideUp .3s ease-in-out}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.modal-header h2{margin:0;font-size:20px;font-weight:600}.modal-header p{margin:4px 0 0;opacity:.9;font-size:14px}.modal-close-btn{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.modal-close-btn:hover{background:#ffffff4d}.results-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.result-stat{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px;border:2px solid transparent}.result-stat.success{border-color:#10b981;background:#d1fae5}.result-stat.failure{border-color:#ef4444;background:#fee2e2}.result-stat.total{border-color:#667eea;background:#e0e7ff}.stat-value{display:block;font-size:24px;font-weight:700;color:#111827}.stat-label{display:block;font-size:13px;color:#6b7280;font-weight:500}.results-table-container{border-radius:8px;border:1px solid #e5e7eb;overflow:hidden}.results-table{width:100%;border-collapse:collapse}.results-table thead{background:#f9fafb}.results-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;font-size:13px}.results-table td{padding:12px 16px;border-top:1px solid #e5e7eb;font-size:14px}.result-success{background:#f0fdf4}.result-failure{background:#fef2f2}.message-success-text{color:#065f46}.message-error-text{color:#991b1b;font-weight:500}.no-data{text-align:center;padding:48px 24px!important;color:#9ca3af}.no-data svg{margin-bottom:12px;opacity:.5}.empty-state-container{display:flex;align-items:center;justify-content:center;min-height:400px;padding:40px 20px}.empty-state-card{background:#fff;border-radius:12px;padding:48px 40px;text-align:center;max-width:500px;box-shadow:0 1px 3px #0000001a}.empty-icon{color:#9ca3af;margin-bottom:24px;opacity:.6}.empty-state-card h3{font-size:24px;font-weight:700;color:#1a202c;margin:0 0 12px}.empty-state-card p{font-size:14px;color:#718096;margin:0 0 32px;line-height:1.6}.empty-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn-reset{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-reset:hover{background:#667eea;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.modal-footer{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px}.btn-modal-close{padding:10px 20px;background:#f3f4f6;color:#374151;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-modal-close:hover{background:#e5e7eb}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.overtime-cell-compact{display:flex;align-items:center;gap:6px}.ot-summary-compact{display:flex;align-items:baseline;gap:4px}.ot-hours-compact{font-weight:700;color:#f59e0b;font-size:14px}.ot-count-compact{font-size:11px;color:#6b7280;font-weight:500}.no-overtime{color:#9ca3af;font-style:italic}.btn-expand-compact{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:#fef3c7;color:#f59e0b;border-radius:4px;cursor:pointer;transition:all .2s;padding:0}.btn-expand-compact:hover{background:#fde68a;transform:scale(1.1)}.overtime-history-row,.overtime-history-row:hover{background:#fffbeb!important}.overtime-history-row td{padding:0!important;border-top:none!important}.overtime-history-container{padding:16px 20px;background:#fffbeb;border-left:4px solid #f59e0b}.overtime-history-container h4{margin:0 0 12px;font-size:13px;font-weight:700;color:#92400e;text-transform:uppercase;letter-spacing:.05em}.overtime-history-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.overtime-history-card{background:#fff;border:1px solid #fde68a;border-radius:6px;padding:10px;transition:all .2s}.overtime-history-card:hover{border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b26}.ot-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #fef3c7}.ot-history-number{font-size:11px;font-weight:700;color:#92400e}.ot-history-type{font-size:10px;font-weight:600;padding:2px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.03em}.ot-history-type.type-holiday{background:#dbeafe;color:#1e40af}.ot-history-type.type-manual{background:#fef3c7;color:#92400e}.ot-history-details{display:flex;flex-direction:column;gap:6px}.ot-history-item{display:flex;align-items:center;gap:4px;font-size:12px}.ot-history-item.full-width{flex-direction:column;align-items:flex-start;gap:3px;padding-top:4px;border-top:1px solid #fef3c7;margin-top:4px}.ot-history-item svg{color:#f59e0b;flex-shrink:0}.ot-history-label{font-weight:600;color:#6b7280}.ot-history-value{color:#1f2937;font-weight:500}@media(max-width:768px){.form-row-2col,.filters-section-inline,.preview-summary,.results-summary{grid-template-columns:1fr}.preview-table-container{overflow-x:scroll}.overtime-history-list{grid-template-columns:1fr}}.leave-groups{padding:24px;max-width:1600px;margin:0 auto}.leave-groups-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.leave-groups-header{margin-bottom:24px}.leave-groups-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.leave-groups-header p{font-size:14px;color:#718096;margin:0}.warning-box{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#fef3c7;border:1px solid #fbbf24;border-radius:8px;color:#92400e;font-size:14px;margin-bottom:20px}.main-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e2e8f0}.main-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#718096;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:-2px}.main-tab:hover{color:#667eea;background-color:#f7fafc}.main-tab.active{color:#667eea;border-bottom-color:#667eea;background-color:#f7fafc}.tab-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.employees-header,.leave-types-header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.employees-header h2,.leave-types-header h2{font-size:20px;font-weight:600;color:#1a202c;margin:0 0 4px}.employees-header p,.leave-types-header p{font-size:14px;color:#718096;margin:0}.emp-id-badge{display:inline-block;padding:6px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:6px;font-size:13px;font-weight:700;font-family:Courier New,monospace}.name-cell{display:flex;flex-direction:column;gap:4px}.emp-name-text{font-size:15px;font-weight:600;color:#1a202c}.emp-details-text{font-size:12px;color:#718096;font-weight:400}.contact-cell{display:flex;flex-direction:column;gap:6px}.contact-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#4a5568}.contact-row svg{color:#718096;flex-shrink:0}.table-container{overflow-x:auto;margin-bottom:20px}.employees-table,.leave-groups-table{width:100%;border-collapse:collapse}.employees-table thead,.leave-groups-table thead{background:#f7fafc}.employees-table th,.leave-groups-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.employees-table tbody tr,.leave-groups-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.employees-table tbody tr:hover,.leave-groups-table tbody tr:hover{background-color:#f7fafc}.employees-table td,.leave-groups-table td{padding:14px 16px;font-size:14px;color:#2d3748}.emp-id{font-weight:700;color:#667eea;font-family:Courier New,monospace}.emp-name,.name-cell{font-weight:600;color:#1a202c}.leave-group-badge{display:inline-block;padding:4px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;font-size:12px;font-weight:600}.no-assignment{color:#ef4444;font-weight:500;font-size:13px}.leave-types-badges{display:flex;flex-wrap:wrap;gap:6px}.leave-type-badge{display:inline-block;padding:4px 10px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);color:#4c51bf;border-radius:12px;font-size:12px;font-weight:500}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.status-active{background-color:#d1fae5;color:#065f46}.status-badge.status-inactive{background-color:#fee2e2;color:#991b1b}.employees-table td:last-child{text-align:center;vertical-align:middle}.employees-table th.actions-header{text-align:center}.btn-action{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-action:disabled{opacity:.5;cursor:not-allowed}.btn-assign{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-assign:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-change{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-change:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-unassign{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-unassign:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-view{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-view:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #667eea4d}.btn-edit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-edit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #667eea4d}.btn-delete{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-delete:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #667eea4d}.btn-add-leave-group{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-leave-group:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.no-data{text-align:center;padding:60px 20px;color:#a0aec0}.no-data svg{margin-bottom:16px;opacity:.5}.no-data p{font-size:16px;margin:0}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px}.btn-page{padding:8px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-page:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #667eea4d}.btn-page:disabled{opacity:.5;cursor:not-allowed}.page-info{font-size:14px;font-weight:500;color:#4a5568;min-width:120px;text-align:center}.filters-section{background:#f7fafc;border-radius:12px;padding:20px;margin-bottom:24px}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.filters-title{display:flex;align-items:center;gap:12px}.filters-title h3{margin:0;font-size:16px;font-weight:600;color:#1a202c}.search-stats{font-size:14px;color:#718096;font-weight:500;padding:0 20px 10px}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-content.large{max-width:900px}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1a202c}.modal-tabs{display:flex;border-bottom:1px solid #e2e8f0;padding:0 24px}.modal-tabs .tab{padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;color:#718096;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.modal-tabs .tab.active{color:#667eea;border-bottom-color:#667eea}.form-group label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:#4a5568}.form-group textarea{resize:vertical}.employee-info-card{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:12px;padding:20px;margin-bottom:20px;border:2px solid #c7d2fe}.employee-info-card h4{margin:0 0 8px;font-size:18px;font-weight:600;color:#1a202c}.employee-info-card p{margin:4px 0;font-size:14px;color:#4a5568}.current-assignment{margin-top:12px;padding-top:12px;border-top:1px solid #c7d2fe;font-size:14px;color:#667eea}.current-assignment strong{color:#4c51bf}.leave-types-section{display:flex;flex-direction:column;gap:20px}.section-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.section-header h3{margin:0;font-size:16px;font-weight:600;color:#1a202c}.btn-add-type{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-add-type:hover{transform:translateY(-1px);box-shadow:0 2px 8px #667eea4d}.leave-type-config{padding:16px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px}.config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.config-header h4{margin:0;font-size:14px;font-weight:600;color:#4a5568}.btn-remove-type{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fee2e2;color:#dc2626;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.btn-remove-type:hover{background:#fecaca;transform:scale(1.05)}.config-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.empty-state{text-align:center;padding:40px;color:#a0aec0}.empty-state svg{margin-bottom:12px;opacity:.5}.empty-state p{font-size:14px;margin:0}.btn-cancel,.btn-save{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel{background:#e2e8f0;color:#4a5568}.btn-save{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.detail-section{margin-bottom:24px;background:#f7fafc;border-radius:8px;padding:16px}.detail-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#1a202c}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e2e8f0}.detail-row:last-child{border-bottom:none}.detail-row .label{font-size:14px;font-weight:500;color:#4a5568}.detail-row .value{font-size:14px;font-weight:600;color:#1a202c;text-align:right}.leave-types-detail-list{display:flex;flex-direction:column;gap:12px}.leave-type-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.form-group select{padding:11px 40px 11px 16px;border:2px solid #e2e8f0;border-radius:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px}.leave-ledger{padding:24px;max-width:1400px;margin:0 auto}.leave-ledger-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.leave-ledger-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.leave-ledger-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.leave-ledger-header p{font-size:14px;color:#718096;margin:0}.leave-ledger-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:visible;margin-bottom:24px;position:relative;z-index:10}.filters-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.filters-header svg{color:#667eea}.filters-header h3{font-size:16px;font-weight:600;color:#1a202c;margin:0}.filters-title{display:flex;align-items:center;gap:10px;color:#1a202c}.filters-title h3{font-size:16px;font-weight:600;color:#1a202c;margin:0}.filters-title svg{color:#667eea}.filters-grid{display:grid;grid-template-columns:1fr;gap:16px}.form-group label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#4a5568}.form-group label svg{color:#a0aec0}.form-group input,.form-group select{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit;background:#fff}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input::placeholder{color:#a0aec0}.btn-clear-search:hover{background:#f7fafc;color:#667eea}.search-loading{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center}.search-section{margin-bottom:24px}.search-input-wrapper{position:relative;display:flex;align-items:center;max-width:600px}.search-input2:focus{outline:none;border-color:#667eea}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;gap:16px}.employee-table{width:100%;border-collapse:collapse}.employee-table thead{background:#f7fafc}.employee-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.employee-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.employee-table tbody tr:hover{background-color:#f7fafc}.employee-table td{padding:14px 16px;font-size:14px;color:#2d3748}.employee-id{font-family:Courier New,monospace;font-weight:600;color:#667eea}.leave-count{display:inline-block;padding:4px 10px;border-radius:12px;font-size:13px;font-weight:600}.leave-count.available{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.leave-count.used{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.btn-view-details{display:flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-view-details:hover{transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.empty-state-small{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;gap:12px;color:#718096}.empty-state-small p{margin:0;font-size:14px}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;display:flex;flex-direction:column}.modal-content.modal-large{max-width:1000px}.modal-header h2{margin:0;font-size:18px;font-weight:600;color:#1a202c}.detail-section{margin-bottom:32px}.detail-section:last-child{margin-bottom:0}.detail-section h3{font-size:16px;font-weight:600;color:#1a202c;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.balance-grid-detail{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.balance-card-small{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:8px;padding:16px}.balance-type{font-size:14px;font-weight:600;color:#4c51bf;margin-bottom:12px}.balance-stats-small{display:flex;flex-direction:column;gap:8px}.stat-item{display:flex;justify-content:space-between;align-items:center}.stat-label{font-size:12px;color:#718096;font-weight:500}.stat-value{font-size:16px;font-weight:700}.stat-value.available{color:#059669}.stat-value.used{color:#dc2626}.stat-value.pending{color:#d97706}.history-table{width:100%;border-collapse:collapse;margin-top:12px}.history-table thead{background:#f7fafc}.history-table th{padding:12px 14px;text-align:left;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.history-table tbody tr{border-bottom:1px solid #e2e8f0}.history-table tbody tr:hover{background-color:#f7fafc}.history-table td{padding:12px 14px;font-size:13px;color:#2d3748}.leave-type-badge{display:inline-block;padding:4px 10px;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.half-day-badge{display:inline-block;padding:2px 8px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border-radius:10px;font-size:11px;font-weight:600;margin-left:4px}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge-approved{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.status-badge-rejected{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.status-badge-pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.reason-cell{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spinner-small{width:16px;height:16px;border:2px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.leave-ledger{padding:16px}.leave-ledger-header{flex-direction:column;align-items:flex-start;gap:16px}.search-input-wrapper{max-width:100%}.table-footer{flex-direction:column;align-items:stretch}.footer-info{flex-direction:column;align-items:flex-start}.pagination{justify-content:center;flex-wrap:wrap}.pagination-btn{padding:6px 10px;font-size:12px}.pagination-btn:not(.active):not(:first-child):not(:last-child):not(:nth-last-child(2)):not(:nth-child(2)){display:none}.modal-content.modal-large{max-width:95%}.balance-grid-detail{grid-template-columns:1fr}.employee-table,.history-table{font-size:12px}.employee-table th,.employee-table td,.history-table th,.history-table td{padding:10px 12px}}.loan-request-page{padding:24px;max-width:1400px;margin:0 auto}.loan-request-filters{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.search-box-wrapper{position:relative}.search-results-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#d8daf4;border-radius:12px;box-shadow:0 10px 40px #00000026;max-height:400px;overflow-y:auto;z-index:100;border:2px solid #e2e8f0}.search-result-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:all .2s}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:#f7fafc}.result-left{display:flex;align-items:center;gap:12px;flex:1}.result-icon{color:#667eea;flex-shrink:0}.result-info{display:flex;flex-direction:column;gap:4px}.result-name{font-size:15px;font-weight:600;color:#1a202c}.result-meta{display:flex;align-items:center;gap:8px;font-size:13px}.result-id{color:#667eea;font-weight:600}.result-separator{color:#cbd5e0}.result-dept{color:#718096}.result-right{display:flex;align-items:center}.result-mobile{font-size:13px;color:#718096;font-weight:500}.no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#a0aec0}.no-results svg{margin-bottom:12px}.no-results p{margin:0;font-size:14px;color:#718096}.search-hint-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;text-align:center}.search-hint-card svg{color:#cbd5e0;margin-bottom:16px}.search-hint-card h3{font-size:18px;font-weight:600;color:#2d3748;margin:0 0 8px}.search-hint-card p{font-size:14px;color:#718096;margin:0}.section-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:24px}.employees-table{width:100%;border-collapse:collapse}.employees-table thead{background:#f9fafb;border-bottom:2px solid #e2e8f0}.employees-table th{padding:14px 16px;text-align:left;font-size:12px;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.employees-table tbody tr{border-bottom:1px solid #e2e8f0;transition:all .2s;cursor:pointer}.employees-table tbody tr:hover{background:#f7fafc}.employees-table tbody tr.selected{background:#ede9fe;border-left:4px solid #667eea}.employees-table td{padding:16px;font-size:14px;color:#1a202c;vertical-align:middle}.btn-icon{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-icon:hover{transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.selected-employee-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.selected-employee-section h3{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;color:#1a202c;margin:0}.selected-employee-section h3 svg{color:#667eea}.btn-change-employee{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-change-employee:hover{background:#9bcef0;transform:translateY(-1px);box-shadow:0 2px 4px #667eea33}.employee-details-card{display:flex;flex-direction:column;gap:24px}.employee-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-item{display:flex;flex-direction:column;gap:6px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e2e8f0}.info-label{font-size:11px;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:.8px}.info-value{font-size:15px;font-weight:600;color:#1a202c}.employee-actions{display:flex;gap:16px;padding-top:8px;border-top:2px solid #e2e8f0}.btn-view-history{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;flex:1;justify-content:center}.btn-view-history:hover{background:#f7fafc;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.btn-new-request{display:flex;align-items:center;gap:10px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;flex:1;justify-content:center}.btn-new-request:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-new-request:disabled{opacity:.5;cursor:not-allowed}.loading-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;gap:16px}.loan-history-list{display:flex;flex-direction:column;gap:16px}.loan-history-item{padding:20px;background:#f9fafb;border:2px solid #e2e8f0;border-left:4px solid #667eea;border-radius:10px;transition:all .2s}.loan-history-item:hover{background:#fff;box-shadow:0 2px 8px #0000000d;transform:translate(2px)}.loan-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.loan-type-info{display:flex;gap:8px;align-items:center}.loan-amount{font-size:20px;font-weight:700;color:#059669}.loan-history-details{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.detail-row{display:flex;flex-direction:column;gap:4px}.detail-label4{font-size:11px;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:.8px}.detail-value4{font-size:14px;font-weight:600;color:#1a202c}.detail-value4.highlight{color:#dc2626;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group input,.form-group textarea{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit;box-sizing:border-box}.emi-estimate-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px;padding:20px;margin-top:8px}.emi-estimate-header{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;margin-bottom:12px}.emi-estimate-value{font-size:32px;font-weight:700;margin-bottom:8px}.emi-estimate-note{font-size:12px;opacity:.9;margin:0;font-style:italic}.btn-submit{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}@media(max-width:768px){.loan-request-page{padding:16px}.employee-info-grid{grid-template-columns:repeat(2,1fr)}.employee-actions{flex-direction:column}.btn-view-history,.btn-new-request{width:100%}.table-container{overflow-x:scroll}.employees-table{min-width:700px}.form-grid,.loan-history-details{grid-template-columns:1fr}.modal-content{max-width:100%;margin:0;border-radius:12px 12px 0 0;max-height:95vh}.modal-body{padding:20px}.modal-footer{flex-direction:column;padding:16px 20px}.btn-cancel,.btn-submit{width:100%;justify-content:center}}@media(max-width:480px){.page-header h2{font-size:24px}.employee-info-grid{grid-template-columns:1fr}}.loan-approval{padding:24px;max-width:1400px;margin:0 auto}.loan-approval-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.loan-approval-header{margin-bottom:24px}.loan-approval-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.loan-approval-header p{color:#718096;font-size:14px;margin:0}.tabs-container{display:flex;gap:12px;margin-bottom:24px;border-bottom:2px solid #e2e8f0;padding-bottom:4px}.tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;color:#718096;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;position:relative}.tab:hover{color:#667eea;background:#f7fafc;border-radius:8px 8px 0 0}.tab.active{color:#667eea;border-bottom-color:#667eea}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#667eea;color:#fff;font-size:11px;font-weight:700;border-radius:10px}.filter-group3{display:flex;gap:12px;flex-wrap:wrap;align-items:center}*/ .filter-group3 > *{min-width:200px;max-width:220px}.loans-table{width:100%;border-collapse:collapse}.loans-table thead{background:#f9fafb;border-bottom:2px solid #e2e8f0}.loans-table th{padding:14px 16px;text-align:left;font-size:12px;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.loans-table th:last-child{text-align:center}.loans-table tbody tr{border-bottom:1px solid #e2e8f0;transition:all .2s}.loans-table tbody tr:hover{background:#f9fafb}.loans-table td{padding:16px;font-size:14px;color:#1a202c;vertical-align:middle}.loans-table td:last-child{text-align:center}.employee-cell{display:flex;align-items:center;gap:10px}.employee-cell svg{color:#667eea;flex-shrink:0}.employee-id{font-size:12px;color:#718096;margin-top:2px}.loan-type-badge{display:inline-flex;align-items:center;padding:4px 12px;font-size:12px;font-weight:700;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.loan-type-badge.loan{background:#dbeafe;color:#1e40af}.loan-type-badge.recovery{background:#fce7f3;color:#9f1239}.amount{font-weight:700;color:#059669}.repayment-cell{display:flex;flex-direction:column;gap:4px}.repayment-type{font-weight:600;color:#1a202c}.emi-months{font-size:12px;color:#718096}.status-badge{display:inline-flex;align-items:center;padding:4px 12px;font-size:11px;font-weight:700;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.status-completed{background:#dbeafe;color:#1e40af}.loan-approval .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.loan-approval .modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column}.loan-approval .modal-content.modal-large{max-width:800px}.loan-approval .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-bottom:2px solid #e2e8f0;flex-shrink:0}.loan-approval .modal-header h2{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:#1a202c;margin:0}.loan-approval .modal-header h2 svg{color:#667eea;width:20px;height:20px}.loan-approval .btn-close-modal{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;color:#718096;cursor:pointer;border-radius:6px;transition:all .2s;flex-shrink:0}.loan-approval .btn-close-modal:hover{background:#f7fafc;color:#1a202c}.loan-approval .modal-body{padding:28px;overflow-y:auto;flex:1;background:#fff}.loan-approval .employee-info-card{display:flex;align-items:flex-start;gap:16px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;margin-bottom:24px}.loan-approval .employee-info-card svg{width:24px;height:24px;flex-shrink:0;margin-top:2px}.loan-approval .info-label{font-size:12px;font-weight:600;opacity:.85;text-transform:uppercase;letter-spacing:.8px;margin:0 0 6px}.loan-approval .info-value{font-size:18px;font-weight:700;margin:0 0 4px;line-height:1.4}.loan-approval .info-subtext{font-size:14px;opacity:.85;margin:0;font-weight:500}.loan-approval .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.loan-approval .form-group{display:flex;flex-direction:column;gap:8px}.loan-approval .form-group.full-width{grid-column:1 / -1}.loan-approval .form-group label{font-size:13px;font-weight:600;color:#4a5568}.loan-approval .form-group input,.loan-approval .form-group textarea{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit;box-sizing:border-box}.loan-approval .form-group input:focus,.loan-approval .form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.loan-approval .field-hint{font-size:12px;color:#718096;font-style:italic}.loan-approval .char-count{align-self:flex-end;font-size:12px;color:#718096}.emi-calculation-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px;padding:16px;margin-top:8px}.calc-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px}.calc-row:not(:last-child){border-bottom:1px solid rgba(255,255,255,.2)}.calc-row strong{font-size:18px;font-weight:700}.loan-request-details{background:transparent;border:none;border-radius:0;padding:0;margin-top:24px}.loan-request-details h4{font-size:14px;font-weight:700;color:#1a202c;margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid #e2e8f0;text-transform:uppercase;letter-spacing:.8px}.details-section h4{font-size:14px;font-weight:700;color:#1a202c;margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid #e2e8f0;text-transform:uppercase;letter-spacing:.8px;display:flex;align-items:center;gap:8px}.detail-label3{font-size:11px;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:1px;margin-bottom:2px}.detail-value3{font-size:15px;font-weight:600;color:#1a202c;line-height:1.5;word-break:break-word}.rejection-textarea{width:100%;padding:14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;font-family:inherit;resize:vertical;min-height:120px;outline:none;transition:all .2s;background:#f9fafb;margin-top:12px}.rejection-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:#fff}.action-logs{display:flex;flex-direction:column;gap:12px;padding:0}.action-log-item{padding:16px;background:#fff;border:2px solid #e2e8f0;border-left:4px solid #667eea;border-radius:8px;transition:all .2s}.action-log-item:hover{border-left-color:#764ba2;box-shadow:0 2px 8px #0000000d;transform:translate(2px)}.log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.log-action{display:inline-flex;align-items:center;padding:4px 10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;border-radius:12px}.log-date{font-size:12px;font-weight:500;color:#718096}.log-details{display:flex;flex-direction:column;gap:6px}.log-user{font-size:14px;font-weight:600;color:#1a202c;display:flex;align-items:center;gap:6px}.log-user:before{content:"👤";font-size:14px}.log-remarks{font-size:13px;color:#4a5568;line-height:1.5;padding:8px 12px;background:#f9fafb;border-radius:6px;border-left:3px solid #cbd5e0}.btn-approve-confirm{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-approve-confirm:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-reject-confirm{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-reject-confirm:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}@media(max-width:768px){.loan-approval{padding:16px}.tabs-container{flex-wrap:wrap}.filter-row{flex-direction:column}.filter-group3>*{min-width:100%;max-width:100%}.table-container{overflow-x:scroll}.loans-table{min-width:800px}.action-buttons{flex-direction:column;width:100%}.btn-approve,.btn-reject,.btn-view{width:100%;justify-content:center}.form-grid,.details-grid{grid-template-columns:1fr}.modal-content{max-width:100%;margin:0;border-radius:12px 12px 0 0;max-height:95vh}.modal-body{max-height:calc(95vh - 160px)}.modal-header h2{font-size:18px}.details-section{padding:0}.detail-item{padding:14px}.modal-footer{flex-direction:column;gap:10px}.btn-cancel,.btn-approve-confirm,.btn-reject-confirm{width:100%;justify-content:center}.employee-info-card{padding:18px;gap:14px}.employee-info-card svg{width:22px;height:22px}.info-value{font-size:17px}.modal-body{padding:20px}.modal-footer{padding:16px 20px}}@media(max-width:480px){.loan-approval-header h1{font-size:24px}.tab{padding:10px 12px;font-size:13px}}.bonus-request-page{padding:24px;max-width:1600px;margin:0 auto}.filters-section{margin-bottom:20px}.filters-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.filters-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.loading-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-section p{margin-top:16px;font-size:14px;color:#718096}.spinner-large{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.bonus-filters{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.summary-card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 1px 3px #0000001a;border-left:4px solid #667eea}.summary-label{font-size:12px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.summary-value{font-size:28px;font-weight:700;color:#1a202c}.summary-value.highlight{color:#667eea}.summary-value.amount{color:#059669}.bonus-table{width:100%;border-collapse:collapse}.bonus-table thead{background:#f9fafb;border-bottom:2px solid #e2e8f0}.bonus-table th{padding:14px 16px;text-align:left;font-size:12px;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.bonus-table tbody tr{border-bottom:1px solid #e2e8f0;transition:all .2s}.bonus-table tbody tr:hover{background:#f7fafc}.bonus-table td{padding:16px;font-size:14px;color:#1a202c;vertical-align:middle}.employee-id-badge{font-family:Courier New,monospace;font-size:13px;font-weight:600;color:#667eea;background:#eef2ff;padding:6px 12px;border-radius:6px;display:inline-block;width:fit-content;border:1px solid #c7d2fe}.amount-input-wrapper{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f9fafb;border:2px solid #e2e8f0;border-radius:6px;width:fit-content;min-width:140px}.amount-input-wrapper:focus-within{border-color:#667eea;background:#fff}.amount-input-wrapper svg{color:#059669;flex-shrink:0}.amount-input{border:none;background:transparent;outline:none;font-size:14px;font-weight:600;color:#1a202c;width:100%}.amount-input::placeholder{color:#9ca3af}.remarks-input{width:100%;padding:8px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:13px;color:#1a202c;transition:all .2s;outline:none}.remarks-input:focus{border-color:#667eea;background:#f7fafc}.remarks-input::placeholder{color:#9ca3af}.submit-section{padding:20px;border-top:2px solid #e2e8f0;background:#f9fafb;display:flex;justify-content:flex-end}.btn-submit-all{display:flex;align-items:center;gap:10px;padding:12px 28px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit-all:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-submit-all:disabled{opacity:.5;cursor:not-allowed}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:24px;border-bottom:2px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.modal-header h2{font-size:20px;font-weight:700;color:#1a202c;margin:0;display:flex;align-items:center;gap:10px}.btn-close-modal{background:none;border:none;color:#718096;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.bonus-summary-info{background:#f7fafc;border-radius:8px;padding:16px;margin-bottom:24px;border-left:4px solid #667eea}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.summary-row:not(:last-child){border-bottom:1px solid #e2e8f0}.summary-label{font-size:13px;font-weight:600;color:#4a5568}.summary-value-text{font-size:15px;font-weight:700;color:#1a202c}.summary-value-text.highlight{color:#667eea}.form-group label{display:block;font-size:13px;font-weight:600;color:#4a5568;margin-bottom:8px}.form-group input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.date-range-group{display:grid;grid-template-columns:1fr 1fr;gap:16px}.period-preview{margin-top:16px;padding:16px;background:linear-gradient(135deg,#667eea10,#764ba210);border-radius:8px;border:2px solid #667eea}.period-preview label{display:block;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.preview-text{font-size:16px;font-weight:700;color:#667eea}.modal-footer{padding:20px 24px;border-top:2px solid #e2e8f0;background:#f9fafb;display:flex;justify-content:flex-end;gap:12px}.btn-cancel{padding:10px 24px;background:#fff;color:#4a5568;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-submit{display:flex;align-items:center;gap:8px;padding:10px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1024px){.summary-cards{grid-template-columns:repeat(2,1fr)}.filters-grid{grid-template-columns:1fr}}@media(max-width:768px){.bonus-request-page{padding:16px}.summary-cards{grid-template-columns:1fr}.table-container{overflow-x:scroll}.bonus-table{min-width:900px}.submit-section{padding:16px}.btn-submit-all{width:100%;justify-content:center}.date-range-group{grid-template-columns:1fr}.modal-content{max-width:100%}.modal-header,.modal-body,.modal-footer{padding:16px}}.bonus-ledger-page{padding:24px;max-width:1600px;margin:0 auto}.bonus-ledger-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.bonuses-table{width:100%;border-collapse:collapse}.bonuses-table thead{background:#f9fafb;border-bottom:2px solid #e2e8f0}.bonuses-table th{padding:14px 16px;text-align:left;font-size:12px;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.bonuses-table tbody tr{border-bottom:1px solid #e2e8f0;transition:all .2s}.bonuses-table td{padding:16px;font-size:14px;color:#1a202c;vertical-align:middle}.leave-application{padding:24px;max-width:1400px;margin:0 auto}.leave-application-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.leave-application-header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.btn-apply-leave{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-apply-leave:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.leave-application-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.leave-application-header p{font-size:14px;color:#718096;margin:0}.section-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.section-header{padding:20px 24px;border-bottom:1px solid #e2e8f0}.section-header h2{display:flex;align-items:center;gap:12px;margin:0;font-size:18px;font-weight:600;color:#1a202c}.leave-form{padding:24px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:24px}.form-group label{font-size:14px;font-weight:500;color:#4a5568}.form-group input,.form-group textarea,.form-group select{padding:10px 14px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group select{padding:11px 40px 11px 16px;border:2px solid #e2e8f0;border-radius:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#667eea}.form-group input:disabled,.form-group select:disabled{background-color:#f7fafc;cursor:not-allowed}.checkbox-group{flex-direction:row;align-items:center}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.balance-info{grid-column:1 / -1;padding:16px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:8px}.balance-info h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#4c51bf}.balance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.balance-item{display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:#fff;border-radius:6px}.balance-label{font-size:12px;color:#718096;font-weight:500}.balance-value{font-size:18px;color:#4c51bf;font-weight:700}.form-actions{display:flex;justify-content:flex-end}.btn-submit{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.pending-table{width:100%;border-collapse:collapse}.pending-table thead{background:#f7fafc}.pending-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.pending-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.pending-table tbody tr:hover{background-color:#f7fafc}.pending-table td{padding:14px 16px;font-size:14px;color:#2d3748}.employee-cell{display:flex;align-items:center;gap:8px}.leave-type-badge{display:inline-block;padding:4px 10px;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-radius:12px;font-size:12px;font-weight:600}.btn-approve,.btn-reject{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-approve{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-approve:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.btn-reject{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-approve:disabled,.btn-reject:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;display:flex;flex-direction:column}.modal-content.modal-large{max-width:800px}.modal-header h2{margin:0;font-size:18px;font-weight:600;color:#1a202c;display:flex;align-items:center;gap:12px}.btn-close-modal{background:none;border:none;color:#718096;cursor:pointer;padding:4px;transition:color .2s}.btn-close-modal:hover{color:#1a202c}.modal-body p{margin:0 0 12px;color:#4a5568;font-size:14px}.rejection-textarea{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;resize:vertical;font-family:inherit}.rejection-textarea:focus{outline:none;border-color:#667eea}.btn-cancel{padding:10px 20px;background:#e2e8f0;color:#4a5568;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#cbd5e0}.btn-reject-confirm{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-reject-confirm:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;gap:16px;color:#718096}.empty-state p{margin:0;font-size:16px;font-weight:500}.employee-search-section{margin-bottom:20px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#718096;pointer-events:none;z-index:1}.search-input2{width:100%;padding:12px 44px!important;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .2s;position:relative;z-index:0}.search-input:focus{outline:none;border-color:#667eea}.search-clear-btn{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:none;color:#718096;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.search-clear-btn:hover{background:#f7fafc;color:#1a202c}.search-loading{position:absolute;right:14px;top:50%;transform:translateY(-50%);display:flex;align-items:center}.employee-list{margin-top:12px;max-height:300px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.employee-item{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background-color .2s;border-bottom:1px solid #e2e8f0}.employee-item:last-child{border-bottom:none}.employee-item:hover{background-color:#f7fafc}.employee-name{font-size:14px;font-weight:600;color:#1a202c}.no-results{display:flex;align-items:center;gap:10px;padding:20px;justify-content:center;color:#718096;font-size:14px}.selected-employee{display:flex;justify-content:space-between;align-items:center;padding:16px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:8px;margin-bottom:20px}.selected-employee-info{display:flex;align-items:center;gap:12px}.selected-employee-info>div{display:flex;flex-direction:column;gap:4px}.selected-employee .employee-name{font-size:16px;font-weight:600;color:#1a202c}.selected-employee .employee-id{font-size:13px;color:#4c51bf;font-weight:500}.btn-change-employee{padding:8px 16px;background:#fff;color:#667eea;border:1px solid #667eea;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-change-employee:hover{background:#667eea;color:#fff}@media(max-width:768px){.leave-application-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-apply-leave{width:100%;justify-content:center}.form-grid{grid-template-columns:1fr}.modal-content.modal-large{max-width:95%}.action-buttons{flex-direction:column;width:100%}.action-buttons button{width:100%;justify-content:center}}.amount-display{font-weight:700;color:#059669;font-size:15px}.description-cell{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-edit-small{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit-small:hover:not(:disabled){background:#5568d3;transform:translateY(-1px)}.btn-edit-small:disabled{opacity:.5;cursor:not-allowed}.amount-input-group{position:relative;display:flex;align-items:center}.amount-input-group .rupee-icon{position:absolute;left:14px;color:#059669;pointer-events:none;z-index:1}.amount-input-group input{width:100%;padding:12px 16px 12px 40px!important;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:all .2s}.amount-input-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-body .leave-form{padding:0;display:flex;flex-direction:column;gap:0}.modal-body .form-grid{margin-bottom:0}.modal-body .modal-footer{margin-top:24px;flex-shrink:0}.modal-content{display:flex;flex-direction:column;max-height:90vh}.modal-body{flex:1;overflow-y:auto;padding:24px}.modal-footer{flex-shrink:0;padding:16px 24px;border-top:1px solid #e2e8f0;background:#f9fafb}.reimbursement-ledger-page{padding:24px;max-width:1600px;margin:0 auto}.reimbursement-ledger-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h2{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.page-subtitle{color:#718096;font-size:14px;margin:0}.bonus-ledger-filters{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.filter-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.filter-group{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.filter-group>*{min-width:200px;max-width:220px}.section-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.reimbursements-table{width:100%;border-collapse:collapse}.reimbursements-table thead{background:#f9fafb;border-bottom:2px solid #e2e8f0}.reimbursements-table th{padding:14px 16px;text-align:left;font-size:12px;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.bonuses-table th:last-child{text-align:center}.reimbursements-table tbody tr{border-bottom:1px solid #e2e8f0;transition:all .2s}.bonuses-table tbody tr:hover{background:#f7fafc}.reimbursements-table td{padding:16px;font-size:14px;color:#1a202c;vertical-align:middle}.employee-info{display:flex;gap:4px}.employee-name{font-weight:600;color:#1a202c}.employee-id{font-size:12px;color:#718096}.period-cell{display:flex;align-items:center;gap:8px;color:#667eea;font-weight:600}.period-cell svg{flex-shrink:0}.amount-requested{font-weight:600;color:#1a202c}.amount-approved{font-weight:700;color:#059669}.status-paid{background:#dbeafe;color:#1e40af}.status-cancelled{background:#f3f4f6;color:#374151}.action-buttons{display:flex;gap:8px;align-items:center;justify-content:center}.btn-approve,.btn-reject,.btn-view{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-approve{background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important}.btn-approve:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-approve:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-reject{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important}.btn-reject:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #ef44444d}.btn-reject:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-view{background:#fff;color:#667eea;border:2px solid #667eea}.btn-view:hover{background:#f7fafc;transform:translateY(-1px);box-shadow:0 2px 4px #667eea33}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-state svg{color:#cbd5e0;margin-bottom:16px}.empty-state h3{font-size:18px;font-weight:600;color:#2d3748;margin:0 0 8px}.empty-state p{font-size:14px;color:#718096;margin:0}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-bottom:2px solid #e2e8f0;flex-shrink:0}.modal-header h2{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:#1a202c;margin:0}.modal-header h2 svg{color:#667eea;width:20px;height:20px}.btn-close-modal{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;color:#718096;cursor:pointer;border-radius:6px;transition:all .2s;flex-shrink:0}.btn-close-modal:hover{background:#f7fafc;color:#1a202c}.modal-body{padding:28px;overflow-y:auto;flex:1;background:#fff}.employee-info-card{display:flex;align-items:center;gap:16px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;margin-bottom:24px}.info-content{flex:1;display:flex;flex-direction:column;gap:4px}.info-label{font-size:12px;font-weight:600;opacity:.85;text-transform:uppercase;letter-spacing:.8px}.info-value{font-size:18px;font-weight:700}.info-subtext{font-size:14px;opacity:.85;font-weight:500}.details-section{margin-bottom:24px;padding:0;background:transparent;border-radius:0;border:none}.details-section:last-child{margin-bottom:0}.details-section h4{font-size:14px;font-weight:700;color:#1a202c;margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid #e2e8f0;text-transform:uppercase;letter-spacing:.8px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;row-gap:16px}.detail-item{display:flex;flex-direction:column;gap:8px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s}.detail-item:hover{background:#fff;border-color:#cbd5e0}.detail-item.full-width{grid-column:1 / -1}.detail-label{font-size:11px;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:1px;margin-bottom:2px}.detail-value{font-size:15px;font-weight:600;color:#1a202c;line-height:1.5;word-break:break-word}.detail-value.highlight{color:#059669;font-weight:700}.activity-log{display:flex;flex-direction:column;gap:12px}.activity-item{padding:16px;background:#f9fafb;border-left:4px solid #667eea;border-radius:8px}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.activity-action{font-size:13px;font-weight:700;color:#667eea;text-transform:uppercase;letter-spacing:.5px}.activity-date{font-size:12px;color:#718096}.activity-details{display:flex;flex-direction:column;gap:4px;font-size:13px}.activity-user{font-weight:600;color:#1a202c}.activity-remarks{color:#4a5568;font-style:italic}.activity-change{color:#059669;font-weight:600}.approval-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-size:13px;font-weight:600;color:#4a5568}.form-group input,.form-group textarea{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s;outline:none;font-family:inherit}.form-group input:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.readonly-value{padding:12px 14px;background:#f9fafb;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;font-weight:700;color:#1a202c}.form-hint{font-size:12px;color:#718096}.char-count{align-self:flex-end;font-size:12px;color:#718096}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 28px;border-top:2px solid #e2e8f0;background:#f9fafb;flex-shrink:0}.btn-approve-submit{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-approve-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-reject-submit{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-reject-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-approve-submit:disabled,.btn-reject-submit:disabled{opacity:.6;cursor:not-allowed}.spinner-small{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.bonus-ledger-page{padding:16px}.filter-row{flex-direction:column}.filter-group>*{min-width:100%;max-width:100%}.table-container{overflow-x:scroll}.bonuses-table{min-width:900px}.details-grid{grid-template-columns:1fr}.modal-body{padding:20px}.modal-footer{flex-direction:column;padding:16px 20px}.btn-cancel,.btn-approve-submit,.btn-reject-submit,.btn-approve,.btn-reject,.btn-view{width:100%;justify-content:center}}.type-badge{display:inline-block;padding:4px 12px;background:#eef2ff;color:#667eea;border-radius:6px;font-size:12px;font-weight:600;border:1px solid #c7d2fe}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-cell{display:flex;align-items:center;gap:6px;color:#4a5568}.date-cell svg{color:#667eea}.asset-application{padding:2rem;max-width:1400px;margin:0 auto}.asset-application-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.asset-application-header h1{margin:0;font-size:2rem;font-weight:700;color:#1e293b}.asset-application-header p{margin:.25rem 0 0;color:#64748b;font-size:.95rem}.btn-add-request{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-request:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.asset-application-content{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.emp-details{display:flex;flex-direction:column;gap:.375rem}.emp-name-text{font-weight:500;color:#1e293b;font-size:.9rem}.approver-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border-radius:999px;font-size:.8rem;font-weight:600;background:#eef2ff;color:#3730a3;border:1px solid #e2e8f0}.shifts-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem;color:#64748b;padding:2rem}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.modal-content{background:#fff;border-radius:1rem;width:100%;max-width:900px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040}.modal-header{padding:1.5rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#1e293b}.modal-body{padding:1.5rem 1.5rem 5.5rem;overflow-y:auto;flex:1}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:1rem;position:sticky;bottom:0;background:#fff;box-shadow:0 -4px 10px #0000000a}.btn-cancel,.btn-save{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-save{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px -1px #3b82f633}.btn-save:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 8px 12px -1px #3b82f64d;transform:translateY(-2px)}.btn-save:disabled{opacity:.6;cursor:not-allowed}.emp-search-stack{display:flex;flex-direction:column;gap:.75rem}.search-input-wrapper{position:relative}.search-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input{width:100%;padding:.625rem .75rem .625rem 2.75rem;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.95rem;color:#1e293b;transition:all .2s ease}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.employee-list-inline{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;max-height:280px;overflow:auto}.employee-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9}.employee-item:last-child{border-bottom:0}.employee-item:hover{background:#f8fafc;cursor:pointer}.employee-item svg{color:#3b82f6;flex-shrink:0}.employee-info{display:flex;flex-direction:column;gap:.25rem}.employee-name{font-size:.875rem;font-weight:500;color:#1e293b}.employee-item.muted{color:#64748b}.selected-employee-display{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8fafc;border-radius:.5rem;margin-bottom:1.5rem;border:1px solid #e2e8f0}.selected-employee-info{display:flex;align-items:center;gap:.75rem}.selected-employee-info svg{color:#3b82f6}.selected-employee-info h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1e293b}.btn-change{padding:.5rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#3b82f6;cursor:pointer;transition:all .2s ease}.btn-change:hover{background:#f8fafc;border-color:#3b82f6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group.full-width{grid-column:1 / -1}.form-group input,.form-group select,.form-group textarea{padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.95rem;font-family:inherit;color:#1e293b;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}@media(max-width:768px){.asset-application{padding:1rem}.asset-application-header{flex-direction:column;align-items:stretch}.header-content{flex-direction:column;align-items:flex-start}.btn-add-request{width:100%;justify-content:center}.form-row{grid-template-columns:1fr}.modal-content{max-width:100%;margin:1rem}}.asset-ledger{padding:2rem;max-width:1400px;margin:0 auto}.asset-ledger-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.asset-ledger-header h1{margin:0;font-size:2rem;font-weight:700;color:#1e293b}.asset-ledger-header p{margin:.25rem 0 0;color:#64748b;font-size:.95rem}.asset-ledger-content{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:1.5rem}.table-search-row{display:flex;align-items:center;gap:1rem;margin-left:auto;flex:1;max-width:700px;justify-content:flex-end}.search-box{display:flex;align-items:center;gap:.75rem;background:#f8fafc;padding:.75rem 1rem;border-radius:.5rem;border:1px solid #e2e8f0;min-width:260px;flex:1}.search-box input{border:none;background:transparent;outline:none;flex:1;font-size:.95rem;color:#1e293b}.btn-clear-search{display:flex;align-items:center;justify-content:center;padding:.25rem;background:transparent;border:none;color:#64748b;cursor:pointer;border-radius:.25rem;transition:all .2s ease}.btn-clear-search:hover{background:#e2e8f0;color:#1e293b}.emp-avatar{width:40px;height:40px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;background:#eef2ff;color:#3730a3}.employee-id-badge{font-family:Courier New,monospace;font-size:.8125rem;font-weight:600;color:#475569;background:#f1f5f9;padding:.25rem .625rem;border-radius:.375rem;display:inline-block}.shift-cell{display:flex;align-items:center;gap:.75rem}.shift-icon{width:40px;height:40px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.shift-name{font-weight:600;color:#1e293b}.priority-badge{padding:.375rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.priority-red{background:#fee2e2;color:#991b1b}.priority-orange{background:#fef3c7;color:#92400e}.priority-blue{background:#dbeafe;color:#1e40af}.priority-gray{background:#f1f5f9;color:#64748b}.status-blue{background:#dbeafe;color:#1e40af}.asset-id-highlight{font-family:Courier New,monospace;font-weight:600;color:#3b82f6;background:#eff6ff;padding:.375rem .75rem;border-radius:.375rem;display:inline-block}.muted{color:#64748b}.expand-block.full{grid-column:1 / -1}.logs-list{display:flex;flex-direction:column;gap:.5rem}.log-entry{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;padding:.75rem;background:#fff;border-radius:.5rem;font-size:.8125rem;align-items:center;border:1px solid #e2e8f0}.log-action{font-weight:600;color:#3b82f6;background:#eff6ff;padding:.25rem .5rem;border-radius:.375rem;text-transform:uppercase;font-size:.6875rem;letter-spacing:.05em}.log-user{color:#1e293b;font-size:.8125rem;font-weight:500}.log-time{color:#64748b;font-size:.75rem;text-align:right}.log-remarks{grid-column:1 / -1;color:#64748b;font-size:.8125rem;font-style:italic;padding-left:.75rem;border-left:2px solid #cbd5e1;margin-top:.25rem}.action-buttons{display:flex;gap:.5rem}.btn-assign{border-color:#6366f1;color:#3730a3}.btn-assign:hover{background:#eef2ff}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:0 20px 20px}.pagination.inline{padding:0}.pagination button{padding:.5rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#475569;cursor:pointer;transition:all .2s ease}.pagination button:hover:not(:disabled){background:#f8fafc;border-color:#3b82f6;color:#3b82f6}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{font-size:.875rem;color:#64748b}.modal-form{display:flex;flex-direction:column;height:100%}.modal-body{padding:1.25rem 1.5rem 5.5rem;overflow-y:auto;flex:1}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:.75rem;position:sticky;bottom:0;background:#fff;box-shadow:0 -4px 10px #0000000a}@media(max-width:768px){.asset-ledger{padding:1rem}.asset-ledger-header{flex-direction:column;align-items:stretch}.header-content{flex-direction:column;align-items:flex-start}.section-header{flex-direction:column;align-items:stretch}.table-search-row{width:100%;justify-content:stretch}.modal-content{max-width:100%;margin:1rem}}.salary-configuration-page{padding:24px;max-width:1600px;margin:0 auto}.salary-header{margin-bottom:24px}.salary-header .header-content{display:flex;justify-content:space-between;align-items:center}.salary-header .header-title{display:flex;align-items:center;gap:16px}.salary-header .header-icon{color:#667eea;width:40px;height:40px}.salary-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.salary-header .header-subtitle{color:#718096;font-size:14px;margin:0}.header-actions{display:flex;gap:12px;align-items:center}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;width:100%}.btn-clear-all-filters{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:500;color:#4a5568;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-clear-all-filters:hover{background:#edf2f7;border-color:#cbd5e0;color:#2d3748}.btn-clear-all-filters:active{transform:scale(.98)}.message-banner{padding:14px 18px;border-radius:8px;margin-bottom:20px;font-size:14px;font-weight:500}.salary-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.salary-table-container{padding:20px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;color:#718096;text-align:center}.empty-state svg{color:#cbd5e0}.empty-state h3{color:#2d3748;font-size:20px;margin:0}.empty-state p{color:#718096;font-size:14px;margin:0 0 16px}.salary-table{width:100%;border-collapse:collapse;font-size:14px}.salary-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.salary-table th{padding:12px 16px;text-align:left;font-weight:600;color:#4a5568;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.salary-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.salary-table tbody tr:hover{background-color:#f7fafc}.salary-table td{padding:16px;color:#2d3748}.salary-table .emp-id{font-weight:600;color:#667eea}.salary-table .emp-name{font-weight:500}.salary-table .version-badge{display:inline-block;padding:4px 8px;background:#e2e8f0;border-radius:4px;font-size:12px;font-weight:600;margin-right:8px}.salary-table .active-indicator{display:inline-block;padding:2px 8px;background:#c6f6d5;color:#22543d;border-radius:4px;font-size:11px;font-weight:600}.salary-table .amount-cell{font-weight:600;font-family:Courier New,monospace;color:#2d3748}.salary-table .net-salary{color:#38a169;font-size:15px}.salary-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-approved{background:#c6f6d5;color:#22543d}.status-draft{background:#fed7d7;color:#742a2a}.status-pending{background:#feebc8;color:#7c2d12}.status-rejected{background:#feb2b2;color:#742a2a}.action-buttons{display:flex;gap:8px}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e2e8f0;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;color:#4a5568}.btn-icon:hover{background:#667eea;color:#fff;border-color:#667eea;transform:translateY(-2px)}.btn-increment{color:#38a169}.btn-increment:hover{background:#38a169;border-color:#38a169;color:#fff}.btn-primary{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;color:#4a5568;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f7fafc;border-color:#cbd5e0}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:20px 0;margin-top:20px;border-top:1px solid #e2e8f0}.pagination-info{color:#718096;font-size:14px}.pagination-controls{display:flex;align-items:center;gap:16px}.page-size-select{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#4a5568;background:#fff;cursor:pointer}.page-navigation{display:flex;align-items:center;gap:8px}.page-nav-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;font-weight:500;color:#4a5568;cursor:pointer;transition:all .2s}.page-nav-btn:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea}.page-nav-btn:disabled{opacity:.4;cursor:not-allowed}.page-numbers{display:flex;gap:4px}.page-number{padding:8px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#4a5568;cursor:pointer;transition:all .2s}.page-number:hover{background:#f7fafc;border-color:#cbd5e0}.page-number.active{background:#667eea;color:#fff;border-color:#667eea;font-weight:600}.page-ellipsis{padding:8px 12px;color:#a0aec0}.salary-form-page{padding:24px;max-width:1400px;margin:0 auto}.salary-form-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.salary-form-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 8px}.salary-form-header .employee-info{color:#718096;font-size:16px;margin:0}.salary-form-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:32px}.form-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #e2e8f0}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{font-size:18px;font-weight:600;color:#2d3748;margin:0 0 20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3{margin:0}.btn-add{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#48bb78;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add:hover{background:#38a169;transform:translateY(-1px)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#4a5568}.form-group input,.form-group select,.form-group textarea{padding:10px 14px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#2d3748;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;font-family:inherit}.components-table{overflow-x:auto;overflow-y:visible}.components-table table{width:100%;border-collapse:collapse;font-size:14px;overflow:visible}.components-table thead{background:#f7fafc}.components-table th{padding:12px;text-align:left;font-weight:600;color:#4a5568;font-size:13px;border-bottom:2px solid #e2e8f0}.components-table td{padding:12px;border-bottom:1px solid #e2e8f0;overflow:visible;position:relative}.components-table tbody tr:hover{background:#f7fafc}.components-table input,.components-table select{width:100%;padding:8px 12px;border:1px solid #e2e8f0;border-radius:4px;font-size:14px}.components-table input:focus,.components-table select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.components-table .calculated-amount{font-weight:600;font-family:Courier New,monospace;color:#38a169;font-size:15px}.components-table input[placeholder*=AUTO_GENERATED],.components-table input[title*="Component ID"]{background:#f0f4ff;border-color:#bfdbfe;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.components-table input[placeholder*=AUTO_GENERATED]:focus,.components-table input[title*="Component ID"]:focus{background:#dbeafe;border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}.components-table input[placeholder*=AUTO_GENERATED]::placeholder{color:#94a3b8;font-size:11px;font-style:italic}.components-table tfoot{background:#edf2f7;font-weight:600}.btn-add-component{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;color:#667eea;background:#fff;border:1.5px dashed #667eea;border-radius:8px;cursor:pointer;transition:all .2s}.btn-add-component:hover{background:#f0f4ff;border-color:#5568d3;color:#5568d3;transform:translateY(-1px);box-shadow:0 2px 6px #667eea26}.btn-add-component:active{transform:translateY(0)}.components-table .add-row{background:#fafbfc}.components-table .add-row td{padding:12px;text-align:center;border-bottom:2px solid #e2e8f0}.components-table .add-row:hover{background:#f7fafc}.no-deductions-wrapper{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px}.no-deductions-wrapper .no-data-message{margin:0}.formula-help-section{background:linear-gradient(135deg,#e0f2fe,#dbeafe);border:2px solid #60a5fa;border-radius:12px;padding:20px;margin-bottom:24px}.formula-help-section .help-header{display:flex;align-items:center;gap:12px;margin-bottom:0;color:#1e40af;justify-content:space-between;padding:4px 8px;border-radius:6px;transition:background .2s}.formula-help-section .help-header:hover{background:#3b82f61a}.formula-help-section .help-header svg:first-child{color:#3b82f6}.formula-help-section .help-header svg:last-child{color:#3b82f6;transition:transform .3s}.formula-help-section h4{margin:0;font-size:18px;font-weight:600;color:#1e40af}.formula-help-section .help-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:16px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.formula-help-section .help-item{background:#fff;padding:16px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.formula-help-section .help-item strong{display:block;margin-bottom:8px;color:#1e40af;font-size:14px}.formula-help-section .help-item ul{margin:0;padding-left:20px;font-size:13px;color:#475569;line-height:1.8}.formula-help-section .help-item code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:12px;color:#dc2626;border:1px solid #e2e8f0}.formula-help-section .formula-examples{display:flex;flex-direction:column;gap:8px}.formula-help-section .example-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:#f8fafc;border-radius:6px;border-left:3px solid #3b82f6}.formula-help-section .example-row code{flex:1;background:#1e293b;color:#10b981;padding:4px 8px;font-weight:500;min-width:200px}.formula-help-section .example-row span{flex:1;color:#64748b;font-size:13px;font-style:italic}.components-table tfoot td{padding:16px 12px;border-top:2px solid #cbd5e0}.components-table .total-label{text-align:right;font-weight:600;color:#2d3748;font-size:15px}.components-table .total-amount{font-weight:700;font-family:Courier New,monospace;color:#2d3748;font-size:16px}.btn-icon-danger{display:flex;align-items:center;justify-content:center;padding:6px;background:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#e53e3e;cursor:pointer;transition:all .2s}.btn-icon-danger:hover{background:#e53e3e;color:#fff;border-color:#e53e3e}.no-data-message{padding:40px;text-align:center;color:#718096;font-size:14px}.salary-summary{background:linear-gradient(135deg,#667eea,#764ba2);padding:28px;border-radius:12px;color:#fff;margin-bottom:32px}.salary-summary h3{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:600;margin:0 0 20px;color:#fff}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.summary-item{background:#ffffff26;padding:16px 20px;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.summary-item.highlight{background:#ffffff40;border:2px solid rgba(255,255,255,.5)}.summary-label{display:block;font-size:13px;opacity:.9;margin-bottom:8px}.summary-value{display:block;font-size:24px;font-weight:700;font-family:Courier New,monospace}.summary-value.deduction{color:#fed7d7}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e2e8f0;margin-top:32px}.btn-success{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-success:hover{transform:translateY(-2px);box-shadow:0 4px 12px #48bb784d}.btn-success:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:768px){.salary-configuration-page,.salary-form-page{padding:16px}.salary-table{font-size:12px}.salary-table th,.salary-table td{padding:10px 8px}.components-table{overflow-x:scroll}.formula-help-section .help-content{grid-template-columns:1fr}.formula-help-section{padding:16px}.formula-help-section .example-row{flex-direction:column;align-items:flex-start}.formula-help-section .example-row code{width:100%;min-width:auto}.summary-grid,.form-row{grid-template-columns:1fr}.pagination-container{flex-direction:column;gap:16px}.form-actions{flex-direction:column}.form-actions button{width:100%}}.formula-builder{display:flex;flex-direction:column;gap:8px}.formula-extra{display:flex;gap:5px;margin-top:5px;align-items:flex-start}.formula-extra input{flex:1;padding:8px 12px;font-size:13px;border:1px solid #cbd5e0;border-radius:6px;transition:all .2s;min-width:0}.formula-extra input:hover{border-color:#a0aec0}.formula-extra input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.components-table td{vertical-align:top;padding:12px}.formula-extra .modern-dropdown{min-width:160px}.salary-content-card{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:1.5rem}.section-header-modern{padding:20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.section-title-modern{display:flex;align-items:center;gap:.75rem}.section-title-modern svg{color:#3b82f6}.section-title-modern h2{margin:0;font-size:1.25rem;font-weight:700;color:#1e293b}.table-filters-row{display:flex;align-items:center;gap:1rem;margin-left:auto;flex:1;max-width:800px;justify-content:flex-end}.salary-table-modern{width:100%;border-collapse:collapse}.salary-table-modern thead{background:#f8fafc}.salary-table-modern th{padding:1rem 1.5rem;text-align:left;font-weight:600;font-size:.85rem;color:#475569;text-transform:uppercase;letter-spacing:.05em}.salary-table-modern td{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;color:#334155;font-size:.9rem}.salary-table-modern tbody tr{transition:background-color .2s ease}.salary-table-modern tbody tr:hover{background:#f8fafc}.emp-meta-modern{display:flex;flex-direction:column;gap:.25rem}.emp-name-modern{font-weight:600;color:#1e293b;font-size:.95rem}.version-cell{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.version-badge-modern{display:inline-block;padding:.375rem .75rem;background:#f1f5f9;color:#475569;font-size:.85rem;font-weight:600;border-radius:.375rem;font-family:Courier New,monospace}.amount-cell-modern{font-family:Courier New,monospace;font-weight:600;color:#1e293b;font-size:.95rem}.salary-status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600;white-space:nowrap;text-transform:capitalize}.status-approved{background:#d1fae5;color:#065f46}.status-draft{background:#f1f5f9;color:#64748b}.status-pending{background:#fef3c7;color:#92400e}.status-rejected{background:#fee2e2;color:#991b1b}.salary-table-modern .action-buttons{display:flex;gap:.375rem;flex-wrap:nowrap;justify-content:flex-start}.salary-table-modern .btn-icon{padding:.5rem;border:none;background:transparent;color:#64748b;cursor:pointer;border-radius:.375rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.salary-table-modern .btn-icon:hover{background:#f1f5f9;color:#1e293b}.salary-table-modern .btn-increment:hover{background:#d1fae5;color:#065f46}.salary-table-modern th:last-child,.salary-table-modern td:last-child{width:140px;min-width:140px}@media(max-width:768px){.section-header-modern{flex-direction:column;align-items:stretch}.table-filters-row{width:100%;max-width:100%}.salary-table-modern th,.salary-table-modern td{padding:.75rem 1rem}.emp-avatar-modern{width:36px;height:36px}}.history-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.history-modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:1200px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.history-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e2e8f0}.history-modal-title{display:flex;align-items:flex-start;gap:16px}.history-modal-title svg{color:#667eea;flex-shrink:0;margin-top:4px}.history-modal-title h2{margin:0 0 8px;font-size:24px;font-weight:700;color:#1a202c}.history-employee-info{margin:0;font-size:14px;color:#718096;font-weight:500}.history-modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:8px;cursor:pointer;color:#4a5568;transition:all .2s}.history-modal-close:hover{background:#f7fafc;color:#1a202c}.history-modal-body{flex:1;overflow-y:auto;padding:24px}.history-table-container{overflow-x:auto}.history-table{width:100%;border-collapse:collapse;font-size:14px}.history-table thead{background:#f8fafc;position:sticky;top:0;z-index:10}.history-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:.85rem;color:#475569;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e2e8f0}.history-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.history-table tbody tr:hover,.history-table tbody tr.expanded{background:#f8fafc}.history-table td{padding:16px;color:#2d3748}.history-expanded-row,.history-expanded-row:hover{background:#f8fafc!important}.history-breakdown{padding:20px;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.breakdown-section{margin-bottom:24px}.breakdown-section:last-child{margin-bottom:0}.breakdown-section h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:8px}.breakdown-table{width:100%;border-collapse:collapse;font-size:13px}.breakdown-table thead{background:#f1f5f9}.breakdown-table th{padding:10px 12px;text-align:left;font-weight:600;font-size:12px;color:#475569;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #cbd5e0}.breakdown-table td{padding:10px 12px;border-bottom:1px solid #e2e8f0;color:#334155}.breakdown-table tbody tr:hover{background:#f8fafc}.calc-type-badge{display:inline-block;padding:3px 8px;background:#e0e7ff;color:#4338ca;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.formula-cell{font-family:Courier New,monospace;font-size:12px;color:#059669;background:#f0fdf4;padding:4px 8px;border-radius:4px}.breakdown-remarks{margin-top:16px;padding:12px;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px;font-size:13px;color:#78350f}.breakdown-remarks strong{color:#92400e}@media(max-width:768px){.history-modal-overlay{padding:10px}.history-modal-content{max-height:95vh}.history-modal-header{padding:16px}.history-modal-title{gap:12px}.history-modal-title h2{font-size:20px}.history-modal-body{padding:16px}.history-table th,.history-table td{padding:10px 8px;font-size:12px}.breakdown-table{font-size:12px}.breakdown-table th,.breakdown-table td{padding:8px}}.salary-section{margin-bottom:32px}.section-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;margin-bottom:0}.section-title{font-size:18px;font-weight:600;color:#fff;margin:0}.section-count{font-size:14px;color:#ffffffe6;background:#fff3;padding:4px 12px;border-radius:12px;font-weight:500}.salary-section .salary-table-modern{border-radius:0 0 12px 12px;margin-top:0}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in-out}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:20px;font-weight:600;color:#1a202c}.modal-close-btn{background:none;border:none;color:#718096;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s}.modal-close-btn:hover{color:#2d3748}.modal-body{padding:24px}.modal-body p{margin:0 0 16px;color:#4a5568;font-size:15px}.modal-details{background:#f7fafc;border-left:3px solid #667eea;padding:16px;border-radius:6px;margin-top:16px}.modal-details p{margin:8px 0;font-size:14px;color:#2d3748}.modal-details p:first-child{margin-top:0}.modal-details p:last-child{margin-bottom:0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.salary-approval{padding:2rem;max-width:1400px;margin:0 auto}.salary-approval-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.header-content{display:flex;align-items:center;gap:1rem}.header-icon{color:#3b82f6}.salary-approval-header h1{margin:0;font-size:2rem;font-weight:700;color:#1e293b}.salary-approval-header p{margin:.25rem 0 0;color:#64748b;font-size:.95rem}.salary-approval-content{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:1.5rem}.message{margin-bottom:1rem;padding:1rem 1.5rem;border-radius:.5rem;display:flex;align-items:center;gap:.75rem;font-size:.95rem;font-weight:500}.message-success{background:#d1fae5;color:#065f46;border-left:4px solid #10b981}.message-error{background:#fee2e2;color:#991b1b;border-left:4px solid #ef4444}.section-header{padding:20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.section-title{display:flex;align-items:center;gap:.75rem}.section-title svg{color:#3b82f6}.section-title h2{margin:0;font-size:1.25rem;font-weight:700;color:#1e293b}.section-count{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 .75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:1rem;font-size:.875rem;font-weight:600}.employee-search-box{min-width:300px;max-width:400px}.shifts-table-container{overflow-x:auto}.shifts-table{width:100%;border-collapse:collapse}.shifts-table thead{background:#f8fafc}.shifts-table th{padding:1rem 1.5rem;text-align:left;font-weight:600;font-size:.85rem;color:#475569;text-transform:uppercase;letter-spacing:.05em}.shifts-table td{padding:1rem 1.5rem;border-top:1px solid #e2e8f0}.shifts-table tbody tr{transition:background-color .2s ease}.shifts-table tbody tr:hover{background:#f8fafc}.emp-cell{display:flex;align-items:center;gap:.75rem}.emp-meta{display:flex;flex-direction:column;gap:.25rem}.emp-name{font-weight:600;color:#1e293b}.employee-id-badge{font-family:Courier New,monospace;font-size:.8125rem;font-weight:600;color:#475569;background:#f1f5f9;padding:.25rem .625rem;border-radius:.375rem;display:inline-block;width:fit-content}.version-cell{display:flex;align-items:center;gap:.5rem}.code-badge{display:inline-block;padding:.375rem .75rem;background:#f1f5f9;color:#475569;font-size:.85rem;font-weight:600;border-radius:.375rem;font-family:Courier New,monospace}.active-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;background:#d1fae5;color:#065f46;font-size:.75rem;font-weight:600;border-radius:.375rem;text-transform:uppercase;letter-spacing:.025em}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:.375rem;font-size:.85rem;font-weight:600;white-space:nowrap}.status-orange{background:#fef3c7;color:#92400e}.status-green{background:#d1fae5;color:#065f46}.status-red{background:#fee2e2;color:#991b1b}.status-gray{background:#f1f5f9;color:#64748b}.btn-icon{padding:.5rem;border:none;background:transparent;color:#64748b;cursor:pointer;border-radius:.375rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#f1f5f9;color:#1e293b}.expand-row td{background:#f8fafc;border-top:none;padding-top:0}.expand-content{padding:1rem .5rem}.expand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.expand-block{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;padding:1rem}.expand-block h4{margin:0 0 .5rem;font-size:.9rem;font-weight:700;color:#1e293b}.expand-block p{margin:0;color:#334155;font-size:.9rem}.action-buttons{display:flex;gap:.375rem;flex-wrap:nowrap}.btn-pill{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;transition:all .2s ease;font-size:.85rem;font-weight:600}.btn-pill:hover{background:#f1f5f9}.btn-approve{border-color:#10b981;color:#065f46}.btn-approve:hover{background:#d1fae5}.btn-reject{border-color:#ef4444;color:#991b1b}.btn-reject:hover{background:#fee2e2}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border-top:1px solid #e2e8f0;flex-wrap:wrap;gap:16px}.footer-info{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.footer-info p{color:#718096;font-size:14px;margin:0}.page-size-selector{display:flex;align-items:center;gap:8px}.page-size-selector label{font-size:14px;color:#718096;font-weight:500}.page-size-selector select{padding:6px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#1a202c;font-size:14px;cursor:pointer;outline:none;transition:all .2s}.page-size-selector select:hover{border-color:#667eea}.pagination{display:flex;gap:6px;align-items:center}.pagination-btn{display:flex;align-items:center;gap:4px;padding:8px 12px;border:1px solid #e2e8f0;background:#fff;color:#4a5568;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;font-weight:500}.pagination-btn:hover:not(:disabled){background-color:#f7fafc;border-color:#667eea;color:#667eea}.pagination-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-ellipsis{padding:8px 4px;color:#a0aec0;font-size:14px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem;color:#64748b;padding:2rem}.spinner-large{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.no-data{text-align:center;padding:3rem 1rem!important;color:#94a3b8}.no-data svg{opacity:.3;margin-bottom:1rem}.no-data p{margin:0;font-size:1rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:1rem;width:100%;max-width:560px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040}.modal-content.modal-md{max-width:560px}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.25rem;font-weight:700;color:#1e293b}.btn-close-modal{background:transparent;border:none;color:#64748b;cursor:pointer;padding:.5rem;border-radius:.375rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-close-modal:hover{background:#f1f5f9;color:#1e293b}.modal-body{padding:1.25rem 1.5rem;overflow-y:auto;flex:1}.modal-body p{margin:0 0 1rem;color:#64748b;font-size:.95rem}.modal-body p strong{color:#1e293b;font-weight:600}.modal-body h3{margin:0 0 .75rem;font-size:1.1rem;font-weight:600;color:#1e293b}.modal-body h4{margin:0 0 .5rem;font-size:.95rem;font-weight:600;color:#1e293b}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:.75rem;background:#fff}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.form-group label{font-size:.875rem;font-weight:600;color:#475569}.form-group input,.form-group textarea{padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.95rem;color:#1e293b}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:100px}.btn-cancel,.btn-danger,.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:.5rem;border:none;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel{background:#f1f5f9;color:#475569}.btn-cancel:hover{background:#e2e8f0}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 6px -1px #ef444433}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 14px -1px #ef44444d}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px -1px #3b82f633}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 12px -1px #3b82f64d}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:1rem;background:#f8fafc;border-radius:.5rem;margin-bottom:1.5rem}.detail-item{font-size:.9rem}.detail-item strong{display:block;color:#64748b;font-weight:500;margin-bottom:.25rem;font-size:.8rem}.details-table{width:100%;border-collapse:collapse;margin-top:.5rem}.details-table th{background:#f8fafc;padding:.75rem;text-align:left;font-weight:600;font-size:.85rem;color:#475569;border-bottom:1px solid #e2e8f0}.details-table td{padding:.75rem;border-bottom:1px solid #e2e8f0;font-size:.9rem}.details-table .total-row{background:#f8fafc;font-weight:600}.summary-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.95rem}@media(max-width:768px){.salary-approval{padding:1rem}.salary-approval-header{flex-direction:column;align-items:stretch}.header-content{flex-direction:column;align-items:flex-start}.section-header{flex-direction:column;align-items:stretch}.employee-search-box{max-width:100%}.modal-content{max-width:100%;margin:1rem}.details-grid{grid-template-columns:1fr}.table-footer{flex-direction:column;align-items:stretch}.footer-info{flex-direction:column;align-items:flex-start}.pagination{justify-content:center;flex-wrap:wrap}.pagination-btn{padding:6px 10px;font-size:12px}.pagination-btn:not(.active):not(:first-child):not(:last-child):not(:nth-last-child(2)):not(:nth-child(2)){display:none}}.employee-search-section{position:relative;width:100%}.employee-search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:4px;max-height:300px;overflow-y:auto;box-shadow:0 4px 6px #0000001a;z-index:100}.employee-search-result-item{padding:12px 16px;cursor:pointer;transition:background-color .2s;border-bottom:1px solid #f7fafc}.employee-search-result-item:last-child{border-bottom:none}.employee-search-result-item:hover{background-color:#f7fafc}.employee-result-info{display:flex;flex-direction:column;gap:4px}.employee-result-name{font-weight:600;color:#2d3748;font-size:14px}.employee-result-meta{font-size:12px;color:#718096}.selected-employee-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#e0f2fe;border:1px solid #7dd3fc;border-radius:8px;font-size:14px;color:#0369a1;font-weight:500;margin-top:12px}.selected-employee-badge svg{color:#0369a1;flex-shrink:0}.clear-employee-btn{display:flex;align-items:center;justify-content:center;padding:2px;background:transparent;border:none;border-radius:4px;cursor:pointer;color:#0369a1;transition:all .2s}.clear-employee-btn:hover{background:#bae6fd;color:#075985}.breakdown-compact{padding:1rem;background:#f8fafc;border-radius:8px}.breakdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.breakdown-column{background:#fff;border-radius:6px;padding:.75rem;border:1px solid #e2e8f0}.breakdown-title-compact{display:flex;align-items:center;gap:6px;margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#1e293b;text-transform:uppercase;letter-spacing:.05em}.breakdown-title-compact svg{color:#3b82f6}.breakdown-list{display:flex;flex-direction:column;gap:.5rem}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-bottom:1px solid #f1f5f9;font-size:.875rem}.breakdown-item:last-child{border-bottom:none}.breakdown-component{color:#475569;flex:1}.breakdown-amount{color:#1e293b;font-weight:500;white-space:nowrap}.breakdown-item.breakdown-total{background:#f1f5f9;border-radius:4px;padding-top:.75rem;padding-bottom:.75rem;margin-top:.5rem}.breakdown-item.breakdown-total .breakdown-component,.breakdown-item.breakdown-total .breakdown-amount{color:#1e293b}.breakdown-bottom{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.net-salary-compact{display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,#10b981,#059669);padding:.75rem 1.25rem;border-radius:8px;color:#fff;font-size:1rem;box-shadow:0 2px 4px #10b98133}.net-salary-label-compact{font-weight:500;opacity:.9}.net-salary-amount-compact{font-weight:700;font-size:1.25rem}.remarks-compact{flex:1;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:6px;padding:.75rem 1rem;font-size:.875rem;color:#78350f}.remarks-compact strong{color:#92400e}@media(max-width:768px){.breakdown-grid{grid-template-columns:1fr}.breakdown-bottom{flex-direction:column;align-items:stretch}.net-salary-compact{justify-content:space-between}}.spinner-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.salary-processing{padding:24px;max-width:1400px;margin:0 auto}.salary-processing-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;color:#718096}.salary-processing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.salary-processing-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.salary-processing-header p{font-size:14px;color:#718096;margin:0}.btn-calculate-main{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-calculate-main:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-calculate-main:disabled{opacity:.6;cursor:not-allowed;transform:none}.salary-processing-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.salary-processing-table{width:100%;border-collapse:collapse}.salary-processing-table thead{background:#f7fafc}.salary-processing-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.salary-processing-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.salary-processing-table tbody tr:hover{background-color:#f7fafc}.salary-processing-table tbody tr.row-on-hold{background:linear-gradient(135deg,#fef3c7,#fde68a)}.salary-processing-table tbody tr.row-on-hold:hover{background:linear-gradient(135deg,#fde68a,#fcd34d)}.salary-processing-table td{padding:16px 20px;font-size:14px;color:#2d3748}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.status-info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.status-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.status-success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.status-danger{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.status-secondary{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4c51bf}.btn-recalculate{background-color:#fef3c7;color:#92400e}.btn-recalculate:hover:not(:disabled){background-color:#fde68a}.btn-icon.btn-success{background-color:#d1fae5;color:#065f46}.btn-icon.btn-success:hover:not(:disabled){background-color:#a7f3d0}.btn-icon.btn-warning{background-color:#fef3c7;color:#92400e}.btn-icon.btn-warning:hover:not(:disabled){background-color:#fde68a}.modal-header h2{font-size:20px;font-weight:700;color:#1a202c;margin:0}.result-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.result-stat{padding:20px;border-radius:8px;background:#f7fafc;text-align:center;border:1px solid #e2e8f0}.result-stat.success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#6ee7b7}.result-stat.warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fbbf24}.result-stat.danger{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#fca5a5}.stat-label{display:block;font-size:13px;color:#718096;margin-bottom:8px;font-weight:500}.stat-value{display:block;font-size:28px;font-weight:700;color:#1a202c}.result-details{margin-top:24px}.result-details h4{margin:0 0 16px;font-size:16px;font-weight:600;color:#4a5568}.result-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.result-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:8px;background:#f7fafc;border-left:3px solid #e2e8f0}.result-item.status-success{background:#f0fdf4;border-left-color:#10b981}.result-item.status-failed{background:#fef2f2;border-left-color:#ef4444}.result-item.status-skipped{background:#fffbeb;border-left-color:#f59e0b}.result-employee{display:flex;flex-direction:column;gap:4px}.result-employee strong{font-size:14px;font-weight:600;color:#1a202c}.result-employee span{font-size:12px;color:#718096;font-family:Courier New,monospace}.result-status{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.badge-failed{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.badge-skipped{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.result-message{font-size:12px;color:#718096}@media(max-width:768px){.salary-processing{padding:16px}.salary-processing-header{flex-direction:column;align-items:flex-start;gap:16px}.header-content{flex-direction:column;align-items:flex-start}.btn-calculate-main{width:100%;justify-content:center}.table-actions{flex-direction:column;align-items:stretch;gap:12px}.btn-apply-filters{width:100%;justify-content:center}.salary-processing-table th,.salary-processing-table td{padding:12px 16px;font-size:13px}.action-buttons{flex-direction:column;width:100%}.action-buttons button{width:100%;justify-content:center}.result-summary{grid-template-columns:repeat(2,1fr)}.salary-details-grid{grid-template-columns:1fr}.modal-content,.modal-content.modal-large{max-width:95%;margin:10px}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;justify-content:center}}.salary-approval{padding:24px;max-width:1400px;margin:0 auto}.salary-approval-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;color:#718096}.spinner-large{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}.spinning{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.salary-approval-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.header-content{display:flex;align-items:center;gap:16px}.header-icon{color:#667eea}.salary-approval-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 4px}.salary-approval-header p{font-size:14px;color:#718096;margin:0}.message{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:8px;margin-bottom:20px;font-size:14px;font-weight:500}.message-success{background-color:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.message-error{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.salary-approval-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.table-actions{display:flex;justify-content:space-between;align-items:center;padding:0 20px 10px;border-bottom:1px solid #e2e8f0}.search-stats{font-size:13px;color:#718096;font-weight:500}.btn-apply-filters{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#f7fafc;color:#667eea;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-apply-filters:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea}.btn-apply-filters:disabled{opacity:.5;cursor:not-allowed}.table-container{overflow-x:auto}.salary-approval-table{width:100%;border-collapse:collapse}.salary-approval-table thead{background:#f7fafc}.salary-approval-table th{text-align:left;padding:14px 20px;font-size:12px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.salary-approval-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.salary-approval-table tbody tr:hover{background-color:#f7fafc}.salary-approval-table td{padding:16px 20px;font-size:14px;color:#2d3748}.checkbox-btn{padding:4px;background:transparent;border:none;cursor:pointer;color:#a0aec0;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.checkbox-btn:hover{background-color:#f7fafc;color:#667eea}.checkbox-btn .checked{color:#667eea}.employee-info{display:flex;flex-direction:column;gap:4px}.employee-info strong{color:#1a202c;font-weight:600}.employee-number{font-size:12px;color:#718096;font-family:Courier New,monospace}.amount-cell{font-family:Courier New,monospace;font-weight:500}.text-success{color:#10b981}.text-danger{color:#ef4444}.attendance-badge{display:inline-flex;flex-direction:column;font-size:14px;font-weight:500}.attendance-percent{font-size:12px;color:#718096;font-weight:400}.ot-badge{display:inline-block;padding:4px 12px;background:linear-gradient(135deg,#e8daef,#d7bde2);color:#6c3483;border:2px solid #9b59b6;border-radius:12px;font-size:13px;font-weight:700;box-shadow:0 2px 4px #9b59b633}.action-buttons{display:flex;gap:8px;align-items:center}.btn-icon{padding:8px;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-icon:hover:not(:disabled){transform:translateY(-1px)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-view{background-color:#dbeafe;color:#1e40af}.btn-view:hover:not(:disabled){background-color:#bfdbfe}.btn-approve{background-color:#d1fae5;color:#065f46}.btn-approve:hover:not(:disabled){background-color:#a7f3d0}.btn-reject{background-color:#fee2e2;color:#991b1b}.btn-reject:hover:not(:disabled){background-color:#fecaca}.no-data{text-align:center;padding:60px 20px!important;color:#a0aec0}.no-data svg{margin-bottom:12px;opacity:.5;color:#667eea}.no-data p{margin:0 0 4px;font-size:16px;font-weight:600;color:#4a5568}.no-data .hint{font-size:13px;color:#9ca3af;font-weight:400}.action-footer{padding:20px 24px;border-top:1px solid #e2e8f0;background:#f7fafc;display:flex;justify-content:flex-end;gap:12px;position:sticky;bottom:0}.btn-bulk-approve{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-bulk-approve:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-bulk-approve:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-bulk-reject{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-bulk-reject:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-bulk-reject:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content.modal-large{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e2e8f0}.modal-header h2{font-size:20px;font-weight:700;color:#1a202c;margin:0;display:flex;align-items:center;gap:12px}.btn-close-modal{padding:8px;background:transparent;border:none;cursor:pointer;color:#a0aec0;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-close-modal:hover{background-color:#f7fafc;color:#2d3748}.modal-body{padding:24px;overflow-y:auto;flex:1}.confirmation-text{margin:0 0 20px;font-size:15px;color:#374151;line-height:1.6}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#374151}.form-group label .required{color:#ef4444;margin-left:4px}.form-control{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s;outline:none}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-control::placeholder{color:#9ca3af}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e2e8f0;background:#fff}.btn-cancel{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;color:#4a5568;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f7fafc;border-color:#cbd5e0}.btn-save{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-save:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-save.btn-success{background:linear-gradient(135deg,#10b981,#059669)}.btn-save.btn-success:hover:not(:disabled){box-shadow:0 4px 12px #10b9814d}.btn-save.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.btn-save.btn-danger:hover:not(:disabled){box-shadow:0 4px 12px #ef44444d}.salary-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.details-section{padding:20px;border-radius:8px;background:#f7fafc;border:1px solid #e2e8f0}.details-section.full-width{grid-column:1 / -1}.details-section h4{margin:0 0 16px;font-size:16px;font-weight:600;color:#4a5568;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.details-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e2e8f0}.details-row:last-child{border-bottom:none}.details-row span{color:#718096;font-size:14px}.details-row strong{color:#1a202c;font-size:14px}.details-row.total-row{margin-top:8px;padding-top:16px;border-top:2px solid #e2e8f0;border-bottom:none}.net-salary-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border:none}.net-salary-section h4{color:#fff;border-bottom-color:#ffffff4d}.net-salary-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0}.net-salary-row span{font-size:18px;font-weight:500;color:#ffffffe6}.net-salary-amount{font-size:32px;font-weight:700;color:#fff!important}@media(max-width:768px){.salary-approval{padding:16px}.salary-approval-header{flex-direction:column;align-items:flex-start;gap:16px}.header-content{flex-direction:column;align-items:flex-start}.table-actions{flex-direction:column;align-items:stretch;gap:12px}.btn-apply-filters{width:100%;justify-content:center}.salary-approval-table th,.salary-approval-table td{padding:12px 16px;font-size:13px}.action-buttons{flex-direction:column;width:100%}.action-buttons button{width:100%;justify-content:center}.action-footer{flex-direction:column;gap:12px}.btn-bulk-approve,.btn-bulk-reject{width:100%;justify-content:center}.salary-details-grid{grid-template-columns:1fr}.modal-content,.modal-content.modal-large{max-width:95%;margin:10px}.modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;justify-content:center}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f3f4f6;color:#1f2937}#root{min-height:100vh;width:100%}.avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.btn-primary{background-color:#4f46e5;color:#fff;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s}.btn-primary:hover{background-color:#4338ca}.btn-icon{background:transparent;border:none;padding:8px;cursor:pointer;border-radius:6px;color:#6b7280;transition:all .2s}.btn-icon:hover{background-color:#f3f4f6;color:#1f2937}.btn-icon-danger:hover{background-color:#fee2e2;color:#dc2626}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.active{background-color:#d1fae5;color:#065f46}.status-badge.on-leave{background-color:#fef3c7;color:#92400e}.status-badge.present{background-color:#d1fae5;color:#065f46}.status-badge.absent{background-color:#fee2e2;color:#991b1b}.status-badge.late{background-color:#fef3c7;color:#92400e}.status-badge.leave{background-color:#e0e7ff;color:#3730a3}.status-badge.pending{background-color:#fef3c7;color:#92400e}.status-badge.approved{background-color:#d1fae5;color:#065f46}.status-badge.rejected{background-color:#fee2e2;color:#991b1b}.page-placeholder{padding:40px;text-align:center}.page-placeholder h2{font-size:24px;margin-bottom:10px;color:#1f2937}.page-placeholder p{color:#6b7280;font-size:16px}input[type=checkbox]{flex-shrink:0;margin:0;vertical-align:middle}label.checkbox-label,.checkbox-label{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px}.checkbox-label input[type=checkbox]{order:-1}.checkbox-group{display:flex;flex-wrap:wrap;gap:12px}.checkbox-group .checkbox-label{flex:0 0 auto!important;min-width:120px}select,.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:18px!important;padding-right:40px!important}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:11px 40px 11px 16px;font-size:14px;font-weight:500;line-height:1.5;color:#1e293b;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px;border:2px solid #e2e8f0;border-radius:10px;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;box-shadow:0 1px 3px #0000000d}select:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-1px)}select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea33;transform:translateY(-1px)}select:active{transform:translateY(0);box-shadow:0 2px 6px #667eea26}select:disabled{background-color:#f1f5f9;color:#94a3b8;cursor:not-allowed;border-color:#e2e8f0;box-shadow:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}select:disabled:hover{transform:none}select.select-sm{padding:8px 36px 8px 12px;font-size:13px;border-radius:8px;background-size:16px;background-position:right 10px center}select.select-lg{padding:14px 44px 14px 18px;font-size:16px;border-radius:12px;background-size:20px;background-position:right 14px center}select.select-success{border-color:#10b981}select.select-success:focus{border-color:#10b981;box-shadow:0 0 0 4px #10b9811a,0 4px 12px #10b98133}select.select-error{border-color:#ef4444}select.select-error:focus{border-color:#ef4444;box-shadow:0 0 0 4px #ef44441a,0 4px 12px #ef444433}select.select-warning{border-color:#f59e0b}select.select-warning:focus{border-color:#f59e0b;box-shadow:0 0 0 4px #f59e0b1a,0 4px 12px #f59e0b33}select option{padding:10px;font-size:14px;color:#1e293b;background-color:#fff}select option:hover,select option:focus,select option:checked{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}@media(prefers-color-scheme:dark){select{background-color:#1e293b;color:#f1f5f9;border-color:#334155;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23818cf8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}select:hover{border-color:#818cf8;box-shadow:0 4px 12px #818cf840}select:focus{border-color:#818cf8;box-shadow:0 0 0 4px #818cf826,0 4px 12px #818cf84d}select:disabled{background-color:#0f172a;color:#64748b;border-color:#1e293b}select option{background-color:#1e293b;color:#f1f5f9}}@keyframes dropdownOpen{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}select:focus+*{animation:dropdownOpen .2s cubic-bezier(.4,0,.2,1)}.status-filter,select[class*=status],select[class*=filter]{min-width:140px}.form-group select{width:100%}@media(max-width:768px){select{font-size:16px;padding:12px 40px 12px 16px}}
