@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";body{margin:0}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f226;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-success:#10b981;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.home-page{font-family:var(--hrms-font-body);background:var(--hrms-bg);min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 24px}.hero-section{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));padding:80px 0 60px;position:relative;overflow:hidden}.hero-section:before{content:"";background:#ffffff0d;border-radius:50%;width:600px;height:600px;position:absolute;top:-50%;right:-20%}.hero-section:after{content:"";background:#ffffff08;border-radius:50%;width:400px;height:400px;position:absolute;bottom:-30%;left:-10%}.hero-container{z-index:1;max-width:1200px;margin:0 auto;padding:0 24px;position:relative}.hero-content{max-width:700px}.hero-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#ffffff1f;border-radius:100px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 16px;font-size:.75rem;font-weight:600;display:inline-flex}.hero-badge svg{font-size:.7rem}.hero-title{font-family:var(--hrms-font-head);color:#fff;margin-bottom:20px;font-size:3rem;font-weight:800;line-height:1.1}.hero-title .hero-title-highlight{opacity:.9;font-size:1.8rem;font-weight:500;display:block}.hero-description{color:#ffffffd9;max-width:560px;margin-bottom:32px;font-size:1.05rem;line-height:1.6}.hero-buttons{flex-wrap:wrap;gap:16px;margin-bottom:40px;display:flex}.hero-btn-primary{color:var(--hrms-primary);font-family:var(--hrms-font-head);cursor:pointer;background:#fff;border:none;border-radius:12px;align-items:center;gap:10px;padding:14px 28px;font-size:.9rem;font-weight:700;transition:all .3s;display:inline-flex;box-shadow:0 4px 20px #00000026}.hero-btn-primary svg{font-size:.85rem;transition:transform .3s}.hero-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px #00000040}.hero-btn-primary:hover svg{transform:translate(4px)}.hero-stats{gap:40px;display:flex}.hero-stat .hero-stat-number{font-family:var(--hrms-font-head);color:#fff;font-size:1.4rem;font-weight:700;display:block}.hero-stat .hero-stat-label{color:#ffffffb3;font-size:.75rem}.section-header{text-align:center;margin-bottom:48px}.section-header .section-badge{color:var(--hrms-primary);text-transform:uppercase;letter-spacing:.08em;background:#5a67f21a;border-radius:100px;margin-bottom:12px;padding:4px 14px;font-size:.7rem;font-weight:700;display:inline-block}.section-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:2rem;font-weight:700}.section-header p{color:var(--hrms-text-secondary);font-size:.95rem}.features-section{background:var(--hrms-card);padding:80px 0}.features-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.feature-card{border:1px solid var(--hrms-border);background:#fafbff;border-radius:16px;padding:32px 24px;transition:all .3s}.feature-card:hover{border-color:#5a67f233;transform:translateY(-4px);box-shadow:0 8px 32px #0d0f1a14}.feature-card .feature-icon{width:56px;height:56px;color:var(--hrms-primary);background:#5a67f21a;border-radius:14px;justify-content:center;align-items:center;margin-bottom:16px;font-size:1.4rem;display:flex}.feature-card h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1rem;font-weight:700}.feature-card p{color:var(--hrms-text-secondary);font-size:.85rem;line-height:1.5}.about-section{background:var(--hrms-bg);padding:80px 0}.about-content{justify-content:center;display:flex}.about-text{text-align:center;max-width:700px}.about-text .section-badge{color:var(--hrms-primary);text-transform:uppercase;letter-spacing:.08em;background:#5a67f21a;border-radius:100px;margin-bottom:12px;padding:4px 14px;font-size:.7rem;font-weight:700;display:inline-block}.about-text h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:16px;font-size:2rem;font-weight:700}.about-text p{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.95rem;line-height:1.7}.about-features{flex-wrap:wrap;justify-content:center;gap:32px;margin-top:24px;display:flex}.about-feature-item{color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:.85rem;display:flex}.about-feature-item svg{color:var(--hrms-success);font-size:.9rem}.contact-section{background:var(--hrms-card);padding:80px 0}.contact-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.contact-card{text-align:center;border:1px solid var(--hrms-border);background:#fafbff;border-radius:16px;padding:32px 24px;transition:all .3s}.contact-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0d0f1a0f}.contact-card .contact-icon{width:56px;height:56px;color:var(--hrms-primary);background:#5a67f21a;border-radius:14px;justify-content:center;align-items:center;margin:0 auto 12px;font-size:1.4rem;display:flex}.contact-card h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:.95rem;font-weight:600}.contact-card p{color:var(--hrms-text-secondary);font-size:.85rem}.cta-section{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));padding:60px 0}.cta-content{text-align:center;color:#fff}.cta-content h2{font-family:var(--hrms-font-head);margin-bottom:8px;font-size:2rem;font-weight:700}.cta-content p{opacity:.85;margin-bottom:24px;font-size:.95rem}.cta-btn{color:var(--hrms-primary);font-family:var(--hrms-font-head);cursor:pointer;background:#fff;border:none;border-radius:12px;align-items:center;gap:10px;padding:14px 32px;font-size:.9rem;font-weight:700;transition:all .3s;display:inline-flex;box-shadow:0 4px 20px #00000026}.cta-btn svg{font-size:.85rem;transition:transform .3s}.cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 32px #00000040}.cta-btn:hover svg{transform:translate(4px)}.footer{color:#ffffffb3;background:#0d0f1a;padding:40px 0 20px}.footer-content{border-bottom:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-bottom:20px;display:flex}.footer-brand h3{font-family:var(--hrms-font-head);color:#fff;margin-bottom:4px;font-size:1.2rem;font-weight:700}.footer-brand p{opacity:.6;font-size:.8rem}.footer-links{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.footer-links a{color:#ffffffb3;font-size:.85rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-login-btn{color:#fff;font-family:var(--hrms-font-head);cursor:pointer;background:#ffffff1a;border:none;border-radius:8px;padding:8px 20px;font-size:.8rem;font-weight:600;transition:all .2s}.footer-login-btn:hover{background:#fff3}.footer-bottom{text-align:center;opacity:.5;padding-top:20px;font-size:.75rem}@media (width<=1024px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.hero-section{padding:60px 0 40px}.hero-title{font-size:2.2rem}.hero-title .hero-title-highlight{font-size:1.3rem}.hero-description{font-size:.9rem}.hero-stats{gap:24px}.hero-stat .hero-stat-number{font-size:1.1rem}.features-grid,.contact-grid{grid-template-columns:1fr}.about-features{gap:16px}.footer-content{text-align:center;flex-direction:column}.footer-links{justify-content:center}.section-header h2,.cta-content h2{font-size:1.6rem}}@media (width<=480px){.hero-title{font-size:1.8rem}.hero-buttons{flex-direction:column}.hero-btn-primary{justify-content:center}.hero-stats{flex-direction:column;gap:12px}.hero-stat{border-bottom:1px solid #ffffff1a;justify-content:space-between;padding-bottom:8px;display:flex}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f22e;--hrms-accent:#00d2c8;--hrms-dark:#0d0f1a;--hrms-dark-2:#13162b;--hrms-dark-3:#1c2040;--hrms-text-white:#fff;--hrms-text-muted-light:#ffffff73;--hrms-text-soft:#ffffffb3;--hrms-border-dark:#ffffff12;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif;--sb-width-open:260px;--sb-width-closed:72px;--sb-transition:.3s cubic-bezier(.4, 0, .2, 1)}.as-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99;background:#0d0f1a8c;display:none;position:fixed;inset:0}.as-sidebar{z-index:100;border-right:1px solid var(--hrms-border-dark);height:100vh;font-family:var(--hrms-font-body);transition:width var(--sb-transition);background:linear-gradient(#13162b 0%,#0d0f1a 100%);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden;box-shadow:4px 0 24px #00000040}.as-sidebar--open{width:var(--sb-width-open)}.as-sidebar--closed{width:var(--sb-width-closed)}.as-header{border-bottom:1px solid var(--hrms-border-dark);flex-shrink:0;justify-content:space-between;align-items:center;min-height:72px;padding:20px 16px;display:flex}.as-brand{align-items:center;gap:12px;display:flex;overflow:hidden}.as-brand__icon{border-radius:10px;flex-shrink:0;width:38px;height:38px;overflow:hidden}.as-brand__icon svg{width:100%;height:100%;display:block}.as-brand__text{flex-direction:column;animation:.2s both fade-in;display:flex;overflow:hidden}.as-brand__name{font-family:var(--hrms-font-head);color:var(--hrms-text-white);letter-spacing:-.01em;white-space:nowrap;font-size:1rem;font-weight:700}.as-brand__sub{color:var(--hrms-text-muted-light);letter-spacing:.04em;white-space:nowrap;font-size:.68rem;font-weight:400}.as-toggle{border:1px solid var(--hrms-border-dark);width:32px;height:32px;color:var(--hrms-text-soft);cursor:pointer;background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;transition:background .2s,color .2s,border-color .2s;display:flex}.as-toggle:hover{background:var(--hrms-primary-glow);color:var(--hrms-text-white);border-color:#5a67f24d}.as-sidebar--closed .as-header{justify-content:center;padding:20px 0}.as-sidebar--closed .as-nav-label{display:none}.as-sidebar--closed .as-nav__item{border-radius:12px;justify-content:center;height:48px;margin:2px 10px;padding:0}.as-sidebar--closed .as-footer{border-top:1px solid var(--hrms-border-dark);flex-direction:column;align-items:center;gap:0;padding:16px 0}.as-sidebar--closed .as-logout{border-radius:12px;justify-content:center;width:44px;height:44px;padding:0}.as-nav-label{letter-spacing:.1em;text-transform:uppercase;color:var(--hrms-text-muted-light);white-space:nowrap;padding:20px 20px 8px;font-size:.65rem;font-weight:600;animation:.2s both fade-in}.as-nav{flex-direction:column;flex:1;padding:8px 0;display:flex;overflow:hidden auto}.as-nav::-webkit-scrollbar{width:3px}.as-nav::-webkit-scrollbar-track{background:0 0}.as-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.as-nav__item{height:48px;color:var(--hrms-text-soft);white-space:nowrap;border-radius:12px;align-items:center;gap:12px;margin:2px 10px;padding:0 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:flex;position:relative;overflow:hidden}.as-nav__item:hover:not(.as-nav__item--active){color:var(--hrms-text-white);background:#ffffff0f}.as-nav__item:hover:not(.as-nav__item--active) .as-nav__icon{color:var(--hrms-text-white)}.as-nav__item:hover:not(.as-nav__item--active) .as-nav__arrow{opacity:.5;transform:translate(2px)}.as-nav__item--active{color:var(--hrms-text-white);background:linear-gradient(135deg,#5a67f238 0%,#5a67f21a 100%)}.as-nav__item--active .as-nav__icon{color:var(--hrms-primary);filter:drop-shadow(0 0 6px #5a67f299)}.as-nav__item--active .as-nav__text{font-weight:600}.as-nav__item--active .as-nav__arrow{opacity:1;color:var(--hrms-primary);transform:translate(0)}.as-nav__item--active .as-nav__active-bar{opacity:1;transform:scaleY(1)}.as-nav__icon{color:var(--hrms-text-muted-light);flex-shrink:0;align-items:center;font-size:1rem;transition:color .2s,filter .2s;display:flex}.as-nav__text{flex:1;animation:.15s both fade-in}.as-nav__arrow{color:#0000;opacity:0;flex-shrink:0;font-size:.6rem;transition:opacity .2s,transform .2s,color .2s}.as-nav__active-bar{background:linear-gradient(180deg, var(--hrms-primary), var(--hrms-accent));opacity:0;border-radius:0 4px 4px 0;width:3px;height:60%;transition:opacity .2s,transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:50%;left:-10px;transform:translateY(-50%)scaleY(0)}.as-footer{border-top:1px solid var(--hrms-border-dark);flex-shrink:0;align-items:center;gap:10px;padding:16px 12px;display:flex}.as-footer__profile{flex:1;align-items:center;gap:10px;animation:.2s both fade-in;display:flex;overflow:hidden}.as-footer__avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:34px;height:34px;font-family:var(--hrms-font-head);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.as-footer__info{flex-direction:column;display:flex;overflow:hidden}.as-footer__name{color:var(--hrms-text-white);white-space:nowrap;font-size:.825rem;font-weight:600}.as-footer__role{color:var(--hrms-text-muted-light);white-space:nowrap;font-size:.68rem}.as-logout{color:#ef4444bf;font-family:var(--hrms-font-body);cursor:pointer;white-space:nowrap;background:#ef44440f;border:1px solid #ef444433;border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;font-size:.825rem;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:flex}.as-logout:hover{color:#ef4444;background:#ef444426;border-color:#ef444466}.as-logout svg{flex-shrink:0;font-size:.85rem}.as-logout span{animation:.2s both fade-in}@keyframes fade-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media (width<=1024px){:root{--sb-width-open:240px}}@media (width<=768px){.as-overlay{display:block}.as-sidebar--closed{width:0;box-shadow:none;border-right:none}.as-sidebar--open{width:260px;box-shadow:8px 0 40px #0006}.as-sidebar--closed .as-header{justify-content:space-between;padding:20px 16px}.as-sidebar--closed .as-nav__item{justify-content:flex-start;margin:2px 10px;padding:0 16px}.as-sidebar--closed .as-footer{flex-direction:row;align-items:center;padding:16px 12px}.as-sidebar--closed .as-logout{border-radius:10px;width:auto;height:auto;padding:8px 12px}}.as-nav__group{flex-direction:column;display:flex}.as-nav__item--parent{cursor:pointer;width:80%;font-family:var(--hrms-font-body);text-align:left;background:0 0;border:none}.as-nav__item--parent .as-nav__arrow{display:none}.as-nav__chevron{color:var(--hrms-text-muted-light);flex-shrink:0;margin-left:auto;font-size:.65rem;transition:transform .3s cubic-bezier(.4,0,.2,1),color .2s}.as-nav__chevron--open{color:var(--hrms-primary);transform:rotate(180deg)}.as-submenu{opacity:0;flex-direction:column;max-height:0;transition:max-height .35s cubic-bezier(.4,0,.2,1),opacity .25s;display:flex;overflow:hidden}.as-submenu--open{opacity:1;max-height:200px}.as-submenu__item{color:var(--hrms-text-muted-light);border-radius:10px;align-items:center;gap:10px;margin:1px 10px;padding:9px 16px 9px 48px;font-size:.825rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:flex;position:relative}.as-submenu__item:before{content:"";background:#fff3;border-radius:50%;width:6px;height:6px;transition:background .2s;position:absolute;top:50%;left:28px;transform:translateY(-50%)}.as-submenu__item:hover:not(.as-submenu__item--active){color:var(--hrms-text-white);background:#ffffff0f}.as-submenu__item:hover:not(.as-submenu__item--active):before{background:#ffffff80}.as-submenu__item--active{color:var(--hrms-text-white);background:#5a67f226;font-weight:600}.as-submenu__item--active:before{background:var(--hrms-primary);box-shadow:0 0 6px #5a67f299}.as-submenu__icon{color:inherit;opacity:.75;align-items:center;font-size:.75rem;display:flex}.as-submenu__text{font-size:.825rem}.admin-layout{background:#f1f5f9;min-height:100vh;display:flex}.admin-layout .admin-main{flex:1;transition:margin-left .3s}.admin-layout .admin-main.shifted{margin-left:280px}.admin-layout .admin-main.full{margin-left:80px}.admin-layout .admin-main .main-header{z-index:99;background:#fff;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #0000001a}.admin-layout .admin-main .main-header .header-left{align-items:center;gap:1rem;display:flex}.admin-layout .admin-main .main-header .header-left .mobile-toggle{cursor:pointer;color:#64748b;background:0 0;border:none;font-size:1.3rem;display:none}.admin-layout .admin-main .main-header .header-left h1{color:#1e293b;margin:0;font-size:1.5rem;font-weight:600}.admin-layout .admin-main .main-header .header-right{align-items:center;gap:1.5rem;display:flex}.admin-layout .admin-main .main-header .header-right .notification-btn{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:10px;align-items:center;padding:8px;font-size:1.2rem;transition:background .2s,color .2s;display:flex;position:relative}.admin-layout .admin-main .main-header .header-right .notification-btn:hover{color:#5a67f2;background:#5a67f214}.admin-layout .admin-main .main-header .header-right .notification-btn .notification-badge{color:#fff;background:#ef4444;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.6rem;font-weight:700;animation:1.5s ease-in-out infinite bell-pulse;display:flex;position:absolute;top:-5px;right:-5px}.admin-layout .admin-main .main-header .header-right .admin-profile{cursor:pointer;background:#f8f9ff;border:1px solid #e4e8f5;border-radius:30px;align-items:center;gap:.75rem;padding:6px 12px 6px 6px;transition:all .2s;display:flex}.admin-layout .admin-main .main-header .header-right .admin-profile:hover{background:#f0f2ff;border-color:#5a67f2}.admin-layout .admin-main .main-header .header-right .admin-profile .profile-avatar{color:#fff;background:linear-gradient(135deg,#5a67f2,#00d2c8);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:600;display:flex}.admin-layout .admin-main .main-header .header-right .admin-profile .profile-name{color:#334155;font-size:.85rem;font-weight:500}.admin-layout .admin-main .main-content{padding:2rem}@keyframes bell-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@media (width<=768px){.admin-layout .admin-main .main-header{padding:1rem}.admin-layout .admin-main .main-header .header-left .mobile-toggle{display:block}.admin-layout .admin-main .main-header .header-right .admin-profile .profile-name{display:none}.admin-layout .admin-main.shifted,.admin-layout .admin-main.full{margin-left:0}}@media (width<=480px){.admin-layout .admin-main .main-header .header-right{gap:.75rem}}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:.2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0, 0, var(--toastify-z-index));width:var(--toastify-container-width);box-sizing:border-box;color:#fff;flex-direction:column;display:flex;position:fixed}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);align-items:center;left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);align-items:center;left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y:0px;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;word-break:break-word;flex:auto;align-items:center;margin-bottom:1rem;display:flex;position:relative}@media only screen and (width<=480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}@media only screen and (width<=480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{width:100%;transform:translate3d(0, var(--y), 0) scale(var(--s));transition:transform .3s;position:absolute}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";height:calc(var(--g) * 1px);position:absolute;bottom:100%;left:0;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";z-index:-1;height:100%;position:absolute;bottom:0;left:0;right:0;transform:scaleY(3)}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{flex-shrink:0;width:22px;margin-inline-end:10px;display:flex}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;cursor:pointer;opacity:.7;z-index:1;background:0 0;border:none;outline:none;padding:0;transition:all .3s;position:absolute;top:6px;right:6px}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;width:14px;height:16px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{z-index:1;opacity:.7;transform-origin:0;width:100%;height:100%;position:absolute;bottom:0;left:0}.Toastify__progress-bar--animated{animation:linear forwards Toastify__trackProgress}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:100%;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius);width:100%;height:5px;position:absolute;bottom:0;left:0;overflow:hidden}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{box-sizing:border-box;border:2px solid;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);border-radius:100%;width:20px;height:20px;animation:.65s linear infinite Toastify__spin}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(3000px)}60%{opacity:1;transform:translate(-25px)}75%{transform:translate(10px)}90%{transform:translate(-5px)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px, var(--y), 0)}to{opacity:0;transform:translate3d(2000px, var(--y), 0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(-3000px)}60%{opacity:1;transform:translate(25px)}75%{transform:translate(-10px)}90%{transform:translate(5px)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px, var(--y), 0)}to{opacity:0;transform:translate3d(-2000px, var(--y), 0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(3000px)}60%{opacity:1;transform:translateY(-20px)}75%{transform:translateY(10px)}90%{transform:translateY(-5px)}to{transform:translate(0,0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(-2000px)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(-3000px)}60%{opacity:1;transform:translateY(25px)}75%{transform:translateY(-10px)}90%{transform:translateY(5px)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(2000px)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0, var(--y), 0) scale3d(.3, .3, .3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{opacity:0;animation-timing-function:ease-in;transform:perspective(400px)rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px)rotateX(-20deg)}60%{opacity:1;transform:perspective(400px)rotateX(10deg)}80%{transform:perspective(400px)rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0, var(--y), 0) perspective(400px)}30%{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, -20deg);opacity:1}to{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, 90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{visibility:visible;transform:translate(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInLeft{0%{visibility:visible;transform:translate(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInUp{0%{visibility:visible;transform:translateY(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInDown{0%{visibility:visible;transform:translateY(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(110%, var(--y), 0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(-110%, var(--y), 0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(500px)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(-500px)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-duration:.3s;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f240;--hrms-accent:#00d2c8;--hrms-dark:#0d0f1a;--hrms-dark-2:#13162b;--hrms-dark-3:#1c2040;--hrms-card-bg:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e8ecf4;--hrms-success:#10b981;--hrms-danger:#ef4444;--hrms-warning:#f59e0b;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.aa-container{width:100%;min-height:100vh;font-family:var(--hrms-font-body);background:var(--hrms-dark);display:flex;overflow:hidden}.aa-left{background:linear-gradient(145deg,#1a1f4e 0%,#0d0f1a 50%,#0f1628 100%);justify-content:center;align-items:center;width:45%;padding:60px 50px;display:flex;position:relative;overflow:hidden}.aa-left__overlay{z-index:1;background:radial-gradient(at 20% 20%,#5a67f24d 0%,#0000 55%),radial-gradient(at 80% 80%,#00d2c826 0%,#0000 55%);position:absolute;inset:0}.aa-left__shapes{z-index:2;position:absolute;inset:0}.aa-left__shapes .shape{border:1px solid #ffffff0f;border-radius:50%;position:absolute}.aa-left__shapes .shape-1{width:350px;height:350px;animation:25s linear infinite rotate-slow;top:-100px;left:-100px}.aa-left__shapes .shape-2{border-color:#5a67f226;width:250px;height:250px;animation:18s linear infinite reverse rotate-slow;bottom:-60px;right:-60px}.aa-left__shapes .shape-3{border-color:#00d2c81f;width:150px;height:150px;animation:6s ease-in-out infinite float;top:40%;left:70%}.aa-left__shapes .shape-4{background:#5a67f214;width:80px;height:80px;animation:8s ease-in-out 2s infinite float;top:20%;right:20%}.aa-left__content{z-index:3;color:#fff;flex-direction:column;gap:48px;width:100%;max-width:420px;display:flex;position:relative}.aa-left__tagline h1{font-family:var(--hrms-font-head);letter-spacing:-.02em;color:#fff;font-size:2.6rem;font-weight:800;line-height:1.2}.aa-left__tagline h1 span{background:linear-gradient(90deg, var(--hrms-primary) 0%, var(--hrms-accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.aa-left__tagline p{color:#ffffff8c;margin-top:16px;font-size:.95rem;font-weight:300;line-height:1.7}.aa-brand{align-items:center;gap:14px;display:flex}.aa-brand__icon{flex-shrink:0;width:44px;height:44px}.aa-brand__icon svg{width:100%;height:100%}.aa-brand__name{font-family:var(--hrms-font-head);color:#fff;letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.aa-stats{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;gap:0;display:flex;overflow:hidden}.aa-stat{text-align:center;border-right:1px solid #ffffff14;flex:1;padding:20px 16px}.aa-stat:last-child{border-right:none}.aa-stat strong{font-family:var(--hrms-font-head);color:#fff;letter-spacing:-.02em;font-size:1.4rem;font-weight:700;display:block}.aa-stat span{color:#ffffff73;text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:.75rem;font-weight:400;display:block}.aa-right{background:#f5f7ff;flex:1;justify-content:center;align-items:center;padding:40px 24px;display:flex;overflow-y:auto}.aa-card{background:var(--hrms-card-bg);border-radius:24px;width:100%;max-width:460px;padding:48px 44px;transition:all .35s;animation:.5s cubic-bezier(.22,1,.36,1) both card-in;box-shadow:0 0 0 1px #5a67f20f,0 20px 60px #0d0f1a1a,0 4px 16px #0d0f1a0f}.aa-card--register{padding-bottom:40px}.aa-card__header{margin-bottom:36px}.aa-card__header .aa-card__badge{color:var(--hrms-primary);letter-spacing:.08em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:6px;margin-bottom:16px;padding:5px 12px;font-size:.72rem;font-weight:600;display:inline-flex}.aa-card__header .aa-card__badge:before{content:"";background:var(--hrms-primary);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot}.aa-card__header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:8px;font-size:1.75rem;font-weight:700}.aa-card__header p{color:var(--hrms-text-secondary);font-size:.9rem;font-weight:400}.aa-card__footer{text-align:center;margin-top:28px}.aa-card__footer p{color:var(--hrms-text-secondary);font-size:.875rem}.aa-form{flex-direction:column;gap:20px;display:flex}.aa-field{flex-direction:column;gap:7px;display:flex}.aa-field label{color:var(--hrms-text-primary);letter-spacing:.01em;font-size:.8rem;font-weight:600}.aa-field__input-wrap{align-items:center;display:flex;position:relative}.aa-field__input-wrap input{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:#fafbff;border-radius:12px;outline:none;padding:13px 16px 13px 44px;font-size:.9rem;transition:border-color .2s,box-shadow .2s,background .2s}.aa-field__input-wrap input::placeholder{color:var(--hrms-text-muted)}.aa-field__input-wrap input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.aa-field__icon{color:var(--hrms-text-muted);pointer-events:none;font-size:.85rem;transition:color .2s;position:absolute;left:15px}.aa-field:focus-within .aa-field__icon{color:var(--hrms-primary)}.aa-field__eye{cursor:pointer;color:var(--hrms-text-muted);background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;font-size:.9rem;transition:color .2s;display:flex;position:absolute;right:14px}.aa-field__eye:hover{color:var(--hrms-primary)}.aa-field__error{color:var(--hrms-danger);padding-left:2px;font-size:.775rem;font-weight:500}.aa-field--error .aa-field__input-wrap input{border-color:var(--hrms-danger);background:#fff8f8;box-shadow:0 0 0 4px #ef444414}.aa-field--error .aa-field__icon{color:var(--hrms-danger)}.aa-forgot{text-align:right;margin-top:-8px}.aa-forgot a{color:var(--hrms-primary);font-size:.825rem;font-weight:500;text-decoration:none;transition:opacity .2s}.aa-forgot a:hover{opacity:.75;text-decoration:underline}.aa-submit-btn{background:linear-gradient(135deg, var(--hrms-primary) 0%, var(--hrms-primary-dark) 100%);color:#fff;width:100%;font-family:var(--hrms-font-head);letter-spacing:.01em;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:14px;font-size:.95rem;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s;display:flex;box-shadow:0 4px 20px #5a67f259}.aa-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #5a67f273}.aa-submit-btn:active:not(:disabled){transform:translateY(0)}.aa-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.aa-toggle-btn{color:var(--hrms-primary);font-family:var(--hrms-font-body);cursor:pointer;background:0 0;border:none;padding:0;font-size:.875rem;font-weight:600;transition:opacity .2s}.aa-toggle-btn:hover{opacity:.75;text-decoration:underline}.aa-spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin;display:inline-block}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(20px,-20px)scale(1.05)}50%{transform:translate(-10px,30px)scale(.95)}75%{transform:translate(15px,-10px)scale(1.02)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes card-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}@media (width<=1024px){.aa-left{width:40%;padding:48px 36px}.aa-left__tagline h1{font-size:2rem}.aa-card{padding:40px 32px}}@media (width<=768px){.aa-container{flex-direction:column}.aa-left{width:100%;min-height:auto;padding:40px 24px 36px}.aa-left__tagline h1{font-size:1.75rem}.aa-left__content{gap:28px}.aa-left__shapes .shape-1,.aa-left__shapes .shape-3{display:none}.aa-stats .aa-stat{padding:16px 10px}.aa-stats .aa-stat strong{font-size:1.15rem}.aa-stats .aa-stat span{font-size:.68rem}.aa-right{background:#f5f7ff;padding:32px 16px 40px}.aa-card{border-radius:20px;max-width:100%;padding:32px 24px;box-shadow:0 0 0 1px #5a67f20f,0 8px 32px #0d0f1a14}.aa-card__header{margin-bottom:28px}.aa-card__header h2{font-size:1.45rem}.aa-submit-btn{padding:13px;font-size:.9rem}}@media (width<=400px){.aa-left{padding:32px 20px 28px}.aa-card{padding:28px 20px}.aa-left__tagline h1{font-size:1.5rem}}.cu-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:32px 36px}.cu-page-header{margin-bottom:28px}.cu-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:6px;margin-bottom:12px;padding:5px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.cu-page-header__badge:before{content:"";background:var(--hrms-primary);border-radius:50%;width:6px;height:6px}.cu-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:1.8rem;font-weight:700}.cu-page-header p{color:var(--hrms-text-secondary);font-size:.9rem}.cu-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.4s cubic-bezier(.22,1,.36,1) both cu-slide-in;overflow:hidden;box-shadow:0 0 0 1px #5a67f20a,0 8px 40px #0d0f1a12}.cu-section{flex-direction:column;gap:24px;padding:32px 36px;display:flex}.cu-section__label{align-items:flex-start;gap:16px;display:flex}.cu-section__label h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:3px;font-size:1rem;font-weight:600}.cu-section__label p{color:var(--hrms-text-muted);font-size:.8rem}.cu-section__num{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;width:36px;height:36px;font-family:var(--hrms-font-head);letter-spacing:.02em;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.cu-divider{background:var(--hrms-border);height:1px;margin:0 36px}.cu-grid{gap:20px;display:grid}.cu-grid--3{grid-template-columns:repeat(3,1fr)}.cu-grid--2{grid-template-columns:repeat(2,1fr)}.cu-field{flex-direction:column;gap:7px;display:flex}.cu-field label{color:var(--hrms-text-primary);letter-spacing:.01em;font-size:.8rem;font-weight:600}.cu-field label span{color:var(--hrms-danger);margin-left:2px}.cu-field__wrap{align-items:center;display:flex;position:relative}.cu-field__wrap input,.cu-field__wrap select,.cu-field__wrap textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);appearance:none;background:#fafbff;border-radius:11px;outline:none;padding:12px 14px 12px 42px;font-size:.875rem;transition:border-color .2s,box-shadow .2s,background .2s}.cu-field__wrap input::placeholder,.cu-field__wrap select::placeholder,.cu-field__wrap textarea::placeholder{color:var(--hrms-text-muted)}.cu-field__wrap input:focus,.cu-field__wrap select:focus,.cu-field__wrap textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.cu-field__wrap input:disabled,.cu-field__wrap select:disabled,.cu-field__wrap textarea:disabled{opacity:.55;cursor:not-allowed}.cu-field__wrap select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394A3B8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.cu-field__wrap textarea{resize:vertical;min-height:86px;padding-top:12px;line-height:1.5}.cu-field__wrap--textarea{align-items:flex-start}.cu-field__icon{color:var(--hrms-text-muted);pointer-events:none;flex-shrink:0;font-size:.82rem;transition:color .2s;position:absolute;left:14px}.cu-field__icon--top{top:14px}.cu-field:focus-within .cu-field__icon{color:var(--hrms-primary)}.cu-field__err{color:var(--hrms-danger);font-size:.75rem;font-weight:500}.cu-field__warn{color:var(--hrms-warning);font-size:.75rem;font-weight:500}.cu-field--error .cu-field__wrap input,.cu-field--error .cu-field__wrap select,.cu-field--error .cu-field__wrap textarea{border-color:var(--hrms-danger);background:#fff8f8;box-shadow:0 0 0 4px #ef444414}.cu-field--error .cu-field__icon{color:var(--hrms-danger)}.cu-actions{border-top:1px solid var(--hrms-border);background:#fafbff;justify-content:flex-end;align-items:center;gap:12px;padding:24px 36px;display:flex}.cu-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:11px;align-items:center;gap:8px;padding:12px 24px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s,opacity .2s;display:inline-flex}.cu-btn svg{font-size:.8rem}.cu-btn--reset{color:var(--hrms-text-secondary);border:1.5px solid var(--hrms-border);background:#fff}.cu-btn--reset:hover{color:var(--hrms-primary);background:#f0f2ff;border-color:#5a67f24d}.cu-btn--submit{background:linear-gradient(135deg, var(--hrms-primary) 0%, var(--hrms-primary-dark) 100%);color:#fff;justify-content:center;min-width:148px;box-shadow:0 4px 16px #5a67f259}.cu-btn--submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #5a67f273}.cu-btn--submit:active:not(:disabled){transform:translateY(0)}.cu-btn--submit:disabled{opacity:.65;cursor:not-allowed;transform:none}.cu-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite cu-spin;display:inline-block}@keyframes cu-slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes cu-spin{to{transform:rotate(360deg)}}@media (width<=1024px){.cu-container{padding:24px}.cu-grid--3,.cu-grid--2{grid-template-columns:repeat(2,1fr)}.cu-section{padding:28px}.cu-divider{margin:0 28px}.cu-actions{padding:20px 28px}}@media (width<=768px){.cu-container{padding:20px 16px}.cu-page-header h1{font-size:1.4rem}.cu-section{gap:20px;padding:24px 20px}.cu-section__label{gap:12px}.cu-section__num{width:30px;height:30px;font-size:.7rem}.cu-divider{margin:0 20px}.cu-grid--3,.cu-grid--2{grid-template-columns:1fr}.cu-actions{flex-direction:column-reverse;padding:20px}.cu-actions .cu-btn{justify-content:center;width:100%}.cu-card{border-radius:16px}}@media (width<=400px){.cu-container{padding:16px 12px}.cu-section{padding:20px 16px}.cu-divider{margin:0 16px}.cu-actions{padding:16px}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f226;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-warning:#f59e0b;--hrms-success:#10b981;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.au-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:32px 36px}.au-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.au-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:6px;margin-bottom:10px;padding:5px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.au-page-header__badge:before{content:"";background:var(--hrms-primary);border-radius:50%;width:6px;height:6px}.au-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:1.8rem;font-weight:700}.au-page-header p{color:var(--hrms-text-secondary);font-size:.875rem}.au-page-header__meta{align-items:center;padding-top:6px;display:flex}.au-stat-pill{background:var(--hrms-card);border:1px solid var(--hrms-border);color:var(--hrms-text-primary);border-radius:100px;align-items:center;gap:8px;padding:8px 18px;font-size:.85rem;font-weight:600;display:flex;box-shadow:0 2px 8px #0d0f1a0d}.au-stat-pill svg{color:var(--hrms-primary);font-size:.9rem}.au-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.4s cubic-bezier(.22,1,.36,1) both au-fade-in;overflow:hidden;box-shadow:0 4px 32px #0d0f1a0f}.au-toolbar{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.au-toolbar__count{color:var(--hrms-text-muted);white-space:nowrap;font-size:.8rem;font-weight:500}.au-search{flex:1;align-items:center;max-width:380px;display:flex;position:relative}.au-search__icon{color:var(--hrms-text-muted);pointer-events:none;font-size:.8rem;position:absolute;left:14px}.au-search input{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:#fafbff;border-radius:10px;outline:none;padding:10px 36px 10px 40px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.au-search input::placeholder{color:var(--hrms-text-muted)}.au-search input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.au-search__clear{cursor:pointer;color:var(--hrms-text-muted);background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;font-size:.75rem;transition:color .2s;display:flex;position:absolute;right:10px}.au-search__clear:hover{color:var(--hrms-danger)}.au-table-wrap{overflow:auto visible}.au-table-wrap::-webkit-scrollbar{height:4px}.au-table-wrap::-webkit-scrollbar-track{background:0 0}.au-table-wrap::-webkit-scrollbar-thumb{background:var(--hrms-border);border-radius:4px}.au-table{border-collapse:collapse;width:100%;min-width:860px}.au-table thead tr{border-bottom:1px solid var(--hrms-border);background:#f8f9ff}.au-table th{text-align:left;font-family:var(--hrms-font-head);color:var(--hrms-text-muted);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;padding:14px 20px;font-size:.72rem;font-weight:600}.au-table tbody tr{border-bottom:1px solid #f1f4fd;transition:background .15s}.au-table tbody tr:hover{background:#f8f9ff}.au-table tbody tr:last-child{border-bottom:none}.au-table td{color:var(--hrms-text-primary);vertical-align:middle;padding:14px 20px;font-size:.875rem}.au-emp-id{font-family:var(--hrms-font-head);color:var(--hrms-primary);white-space:nowrap;background:#5a67f214;border-radius:6px;padding:4px 10px;font-size:.78rem;font-weight:600}.au-user-cell{align-items:center;gap:12px;display:flex}.au-user-cell__info{flex-direction:column;display:flex}.au-user-cell__name{color:var(--hrms-text-primary);font-size:.875rem;font-weight:600}.au-user-cell__desg{color:var(--hrms-text-muted);margin-top:1px;font-size:.75rem}.au-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:34px;height:34px;font-family:var(--hrms-font-head);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.au-email{color:var(--hrms-text-secondary)!important;font-size:.82rem!important}.au-salary{font-family:var(--hrms-font-head);font-weight:600;color:var(--hrms-text-primary)!important}.au-manager-id{color:var(--hrms-text-secondary);background:#f1f4fd;border-radius:6px;padding:3px 9px;font-size:.8rem}.au-dash{color:var(--hrms-text-muted)}.au-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:100px;align-items:center;padding:4px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.au-badge--hr{color:#7c3aed;background:#8b5cf61f}.au-badge--manager{color:var(--hrms-primary-dark);background:#5a67f21f}.au-badge--employee{color:#059669;background:#10b9811f}.au-status{white-space:nowrap;border-radius:100px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.au-status--active{color:#059669;background:#10b9811a}.au-status--active .au-status__dot{background:#10b981}.au-status--inactive{color:#dc2626;background:#ef44441a}.au-status--inactive .au-status__dot{background:var(--hrms-danger)}.au-status__dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite au-pulse}.au-actions{align-items:center;gap:8px;display:flex}.au-btn-edit,.au-btn-delete{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;transition:transform .2s,box-shadow .2s,background .2s;display:flex}.au-btn-edit:hover,.au-btn-delete:hover{transform:translateY(-1px)}.au-btn-edit:active,.au-btn-delete:active{transform:translateY(0)}.au-btn-edit{color:var(--hrms-primary);background:#5a67f21a}.au-btn-edit:hover{background:var(--hrms-primary);color:#fff;box-shadow:0 4px 12px #5a67f259}.au-btn-delete{color:var(--hrms-danger);background:#ef44441a}.au-btn-delete:hover{background:var(--hrms-danger);color:#fff;box-shadow:0 4px 12px #ef444459}.au-state{color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:72px 24px;display:flex}.au-state__icon{width:56px;height:56px;color:var(--hrms-primary);background:#f0f2ff;border-radius:16px;justify-content:center;align-items:center;font-size:1.4rem;display:flex}.au-state p{color:var(--hrms-text-secondary);font-size:.9rem}.au-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite au-spin;display:inline-block}.au-spinner--sm{border-width:2px;border-color:#fff #ffffff4d #ffffff4d;width:15px;height:15px}.au-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1a8c;justify-content:center;align-items:center;padding:20px;animation:.2s both au-fade-overlay;display:flex;position:fixed;inset:0}.au-modal{background:var(--hrms-card);border-radius:20px;width:100%;max-width:560px;max-height:90vh;animation:.3s cubic-bezier(.22,1,.36,1) both au-modal-in;overflow-y:auto;box-shadow:0 24px 64px #0d0f1a2e}.au-modal::-webkit-scrollbar{width:4px}.au-modal::-webkit-scrollbar-thumb{background:var(--hrms-border);border-radius:4px}.au-modal__header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:24px 28px;display:flex;position:sticky;top:0}.au-modal__title{align-items:center;gap:14px;display:flex}.au-modal__title h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:2px;font-size:1.05rem;font-weight:700}.au-modal__title p{color:var(--hrms-text-muted);font-size:.75rem}.au-modal__avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:42px;height:42px;font-family:var(--hrms-font-head);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.au-modal__close{border:1px solid var(--hrms-border);width:34px;height:34px;color:var(--hrms-text-muted);cursor:pointer;background:#fafbff;border-radius:9px;justify-content:center;align-items:center;font-size:.8rem;transition:background .2s,color .2s;display:flex}.au-modal__close:hover{color:var(--hrms-danger);background:#ef44441a;border-color:#ef444433}.au-modal__form{padding:24px 28px}.au-modal__grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.au-modal__footer{border-top:1px solid var(--hrms-border);gap:12px;margin-top:24px;padding-top:20px;display:flex}.au-modal__cancel{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);font-family:var(--hrms-font-head);cursor:pointer;background:#fff;border-radius:10px;flex:1;padding:11px 20px;font-size:.875rem;font-weight:600;transition:background .2s,border-color .2s}.au-modal__cancel:hover{color:var(--hrms-primary);background:#f0f2ff;border-color:#5a67f24d}.au-modal__save{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s;display:flex;box-shadow:0 4px 16px #5a67f259}.au-modal__save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #5a67f273}.au-modal__save:disabled{opacity:.65;cursor:not-allowed}.au-modal__save svg{font-size:.8rem}.au-mfield{flex-direction:column;gap:7px;display:flex}.au-mfield--full{grid-column:1/-1}.au-mfield label{color:var(--hrms-text-primary);font-size:.78rem;font-weight:600}.au-mfield__wrap{align-items:center;display:flex;position:relative}.au-mfield__wrap input,.au-mfield__wrap select,.au-mfield__wrap textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);appearance:none;background:#fafbff;border-radius:10px;outline:none;padding:10px 12px 10px 40px;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.au-mfield__wrap input::placeholder,.au-mfield__wrap select::placeholder,.au-mfield__wrap textarea::placeholder{color:var(--hrms-text-muted)}.au-mfield__wrap input:focus,.au-mfield__wrap select:focus,.au-mfield__wrap textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.au-mfield__wrap select{cursor:pointer;background-color:#fafbff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394A3B8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.au-mfield__wrap textarea{resize:vertical;min-height:68px;padding-top:10px}.au-mfield__wrap--textarea{align-items:flex-start}.au-mfield__icon{color:var(--hrms-text-muted);pointer-events:none;font-size:.78rem;transition:color .2s;position:absolute;left:13px}.au-mfield__icon--top{top:12px}.au-mfield:focus-within .au-mfield__icon{color:var(--hrms-primary)}@keyframes au-fade-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes au-fade-overlay{0%{opacity:0}to{opacity:1}}@keyframes au-modal-in{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes au-spin{to{transform:rotate(360deg)}}@keyframes au-pulse{0%,to{opacity:1}50%{opacity:.4}}@media (width<=1024px){.au-container{padding:24px}.au-modal__grid{grid-template-columns:1fr}}@media (width<=768px){.au-container{padding:20px 16px}.au-page-header{flex-direction:column;gap:12px}.au-page-header h1{font-size:1.4rem}.au-toolbar{gap:12px;padding:16px}.au-search{max-width:100%}.au-card{border-radius:16px}.au-modal{border-radius:16px;max-width:100%}.au-modal__header,.au-modal__form{padding:20px}.au-modal__grid{grid-template-columns:1fr}.au-modal__footer{flex-direction:column}}.au-modal--confirm{max-width:420px}.au-modal--confirm .au-modal__header--confirm{border-bottom:none;justify-content:space-between;align-items:center;padding:24px 24px 0;display:flex}.au-modal--confirm .au-modal__body{text-align:center;padding:16px 28px 8px}.au-modal--confirm .au-modal__body h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:10px;font-size:1.1rem;font-weight:700}.au-modal--confirm .au-modal__body p{color:var(--hrms-text-secondary);font-size:.875rem;line-height:1.6}.au-modal--confirm .au-modal__body p strong{color:var(--hrms-text-primary);font-weight:600}.au-modal--confirm .au-modal__warning{text-align:left;background:#ef44440f;border:1px solid #ef444426;border-radius:8px;margin-top:10px;padding:10px 14px;color:var(--hrms-text-muted)!important;font-size:.775rem!important}.au-modal--confirm .au-modal__footer--confirm{border-top:none;margin-top:0;padding:20px 28px 28px}.au-modal__icon-warning{width:52px;height:52px;color:var(--hrms-danger);background:#ef44441a;border:1px solid #ef444433;border-radius:14px;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.au-modal__delete{color:#fff;font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s;display:flex;box-shadow:0 4px 16px #ef44444d}.au-modal__delete:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #ef444473}.au-modal__delete:disabled{opacity:.65;cursor:not-allowed;transform:none}.ps-loading{min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.ps-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:32px 36px}.ps-page-header{margin-bottom:28px}.ps-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:7px;margin-bottom:12px;padding:5px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.ps-page-header__badge svg{font-size:.65rem}.ps-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:1.8rem;font-weight:700}.ps-page-header p{color:var(--hrms-text-secondary);font-size:.875rem}.ps-tabs{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:14px;gap:6px;width:fit-content;margin-bottom:24px;padding:6px;display:flex}.ps-tab{font-family:var(--hrms-font-body);color:var(--hrms-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:background .2s,color .2s;display:flex}.ps-tab svg{font-size:.85rem}.ps-tab:hover:not(.ps-tab--active){color:var(--hrms-text-primary);background:#5a67f20f}.ps-tab--active{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-weight:600;box-shadow:0 4px 12px #5a67f24d}.ps-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.35s cubic-bezier(.22,1,.36,1) both ps-in;overflow:hidden;box-shadow:0 4px 32px #0d0f1a0f}.ps-card__header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 28px;display:flex}.ps-card__title-wrap{align-items:center;gap:14px;display:flex}.ps-card__title-wrap h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:3px;font-size:1rem;font-weight:700}.ps-card__title-wrap p{color:var(--hrms-text-muted);font-size:.8rem}.ps-card__icon{width:40px;height:40px;color:var(--hrms-primary);background:#5a67f21a;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;display:flex}.ps-card__icon--green{color:var(--hrms-success);background:#10b9811a}.ps-card__icon--purple{color:#7c3aed;background:#8b5cf61a}.ps-card__footer{border-top:1px solid var(--hrms-border);background:#fafbff;justify-content:flex-end;padding:20px 28px;display:flex}.ps-form-grid{grid-template-columns:repeat(4,1fr);gap:20px;padding:28px;display:grid}.ps-field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.ps-field{flex-direction:column;gap:7px;display:flex}.ps-field label{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.ps-field label span{color:var(--hrms-text-muted);font-weight:400}.ps-field input,.ps-field select,.ps-field textarea{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-body);color:var(--hrms-text-primary);appearance:none;background:#fafbff;border-radius:10px;outline:none;padding:11px 14px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.ps-field input::placeholder,.ps-field select::placeholder,.ps-field textarea::placeholder{color:var(--hrms-text-muted)}.ps-field input:focus,.ps-field select:focus,.ps-field textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.ps-field input:disabled,.ps-field select:disabled,.ps-field textarea:disabled{opacity:.55;cursor:not-allowed}.ps-field select{cursor:pointer;background-color:#fafbff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394A3B8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.ps-field textarea{resize:vertical;min-height:72px;line-height:1.5}.ps-field small{color:var(--hrms-text-muted);font-size:.72rem}.ps-req{margin-left:2px;color:var(--hrms-danger)!important}.ps-optional{font-size:.72rem;color:var(--hrms-text-muted)!important}.ps-checkbox-toggle{margin:4px 0 8px}.ps-checkbox-label{color:var(--hrms-text-primary);cursor:pointer;align-items:center;gap:10px;font-size:.875rem;font-weight:500;display:inline-flex}.ps-checkbox-label input[type=checkbox]{display:none}.ps-checkbox-label:has(input:checked) .ps-checkbox-custom{background:var(--hrms-primary);border-color:var(--hrms-primary)}.ps-checkbox-label:has(input:checked) .ps-checkbox-custom:after{opacity:1}.ps-checkbox-custom{border:2px solid var(--hrms-border);background:#fff;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:background .2s,border-color .2s;display:flex;position:relative}.ps-checkbox-custom:after{content:"";opacity:0;border:2px solid #fff;border-top:none;border-left:none;width:4px;height:8px;transition:opacity .15s;transform:rotate(45deg)translateY(-1px)}.ps-role-toggles{flex-wrap:wrap;gap:10px;display:flex}.ps-role-chip{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);cursor:pointer;background:#fafbff;border-radius:10px;align-items:center;gap:7px;padding:8px 16px;font-size:.82rem;font-weight:600;transition:all .2s;display:inline-flex}.ps-role-chip input{display:none}.ps-role-chip--active{color:var(--hrms-primary);background:#5a67f21a;border-color:#5a67f266}.ps-role-chip:hover:not(.ps-role-chip--active){background:#5a67f20a;border-color:#5a67f233}.ps-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s,background .2s;display:inline-flex}.ps-btn svg{font-size:.8rem}.ps-btn--primary{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;box-shadow:0 4px 14px #5a67f24d}.ps-btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 22px #5a67f266}.ps-btn--ghost{color:var(--hrms-text-secondary);border:1.5px solid var(--hrms-border);background:#fff}.ps-btn--ghost:hover{color:var(--hrms-primary);background:#f0f2ff;border-color:#5a67f24d}.ps-btn--danger{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 14px #ef44444d}.ps-btn--danger:hover{transform:translateY(-2px);box-shadow:0 8px 22px #ef444466}.ps-btn-icon{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;transition:transform .2s,background .2s,color .2s,box-shadow .2s;display:flex}.ps-btn-icon:hover{transform:translateY(-1px)}.ps-btn-icon--edit{color:var(--hrms-primary);background:#5a67f21a}.ps-btn-icon--edit:hover{background:var(--hrms-primary);color:#fff;box-shadow:0 4px 12px #5a67f24d}.ps-btn-icon--delete{color:var(--hrms-danger);background:#ef44441a}.ps-btn-icon--delete:hover{background:var(--hrms-danger);color:#fff;box-shadow:0 4px 12px #ef44444d}.ps-row-actions{align-items:center;gap:8px;display:flex}.ps-table-wrap{overflow-x:auto}.ps-table-wrap::-webkit-scrollbar{height:4px}.ps-table-wrap::-webkit-scrollbar-thumb{background:var(--hrms-border);border-radius:4px}.ps-table{border-collapse:collapse;width:100%;min-width:600px}.ps-table thead tr{border-bottom:1px solid var(--hrms-border);background:#f8f9ff}.ps-table th{text-align:left;font-family:var(--hrms-font-head);color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;padding:13px 20px;font-size:.7rem;font-weight:600}.ps-table tbody tr{border-bottom:1px solid #f1f4fd;transition:background .15s}.ps-table tbody tr:hover{background:#f8f9ff}.ps-table tbody tr:last-child{border-bottom:none}.ps-table td{color:var(--hrms-text-primary);vertical-align:middle;padding:14px 20px;font-size:.875rem}.ps-name-cell{flex-direction:column;gap:3px;display:flex}.ps-name-cell__name{font-weight:600}.ps-name-cell__sub{color:var(--hrms-text-muted);font-size:.75rem}.ps-date-cell,.ps-roles-cell{color:var(--hrms-text-secondary);font-size:.82rem}.ps-limit-cell{font-weight:600}.ps-limit-cell span{color:var(--hrms-text-muted);margin-left:3px;font-size:.78rem;font-weight:400}.ps-badge{text-transform:capitalize;letter-spacing:.03em;border-radius:100px;align-items:center;padding:4px 11px;font-size:.72rem;font-weight:700;display:inline-flex}.ps-badge--public{color:var(--hrms-primary-dark);background:#5a67f21a}.ps-badge--festival{color:#b45309;background:#f59e0b1f}.ps-badge--company{color:#047857;background:#10b9811a}.ps-badge--optional{color:#374151;background:#6b72801a}.ps-code-badge{color:var(--hrms-primary);font-family:var(--hrms-font-head);letter-spacing:.06em;background:#5a67f214;border-radius:7px;align-items:center;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.ps-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:64px 24px;display:flex}.ps-empty__icon{width:56px;height:56px;color:var(--hrms-primary);background:#f0f2ff;border-radius:16px;justify-content:center;align-items:center;font-size:1.4rem;display:flex}.ps-empty p{color:var(--hrms-text-primary);font-size:.9rem;font-weight:600}.ps-empty span{color:var(--hrms-text-muted);font-size:.8rem}.ps-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:38px;height:38px;animation:.75s linear infinite ps-spin}.ps-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1a8c;justify-content:center;align-items:center;padding:20px;animation:.2s both ps-fade;display:flex;position:fixed;inset:0}.ps-modal{background:var(--hrms-card);border-radius:20px;width:100%;max-width:480px;max-height:90vh;animation:.3s cubic-bezier(.22,1,.36,1) both ps-modal-in;overflow-y:auto;box-shadow:0 24px 64px #0d0f1a2e}.ps-modal::-webkit-scrollbar{width:4px}.ps-modal::-webkit-scrollbar-thumb{background:var(--hrms-border);border-radius:4px}.ps-modal--lg{max-width:560px}.ps-modal--confirm{max-width:420px}.ps-modal__header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:22px 24px;display:flex;position:sticky;top:0}.ps-modal__header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.ps-modal__header--borderless{border-bottom:none;justify-content:flex-end;padding-bottom:0}.ps-modal__close{border:1px solid var(--hrms-border);width:32px;height:32px;color:var(--hrms-text-muted);cursor:pointer;background:#fafbff;border-radius:8px;justify-content:center;align-items:center;font-size:.78rem;transition:background .2s,color .2s;display:flex}.ps-modal__close:hover{color:var(--hrms-danger);background:#ef44441a;border-color:#ef444433}.ps-modal__body{flex-direction:column;gap:16px;padding:24px;display:flex}.ps-modal__body--center{text-align:center;align-items:center;padding-top:8px}.ps-modal__body--center h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.1rem;font-weight:700}.ps-modal__body--center p{color:var(--hrms-text-secondary);font-size:.875rem;line-height:1.6}.ps-modal__footer{border-top:1px solid var(--hrms-border);gap:10px;padding:20px 24px 24px;display:flex}.ps-modal__footer .ps-btn{flex:1;justify-content:center}.ps-confirm__icon{width:54px;height:54px;color:var(--hrms-danger);background:#ef44441a;border:1px solid #ef444433;border-radius:14px;justify-content:center;align-items:center;margin-bottom:4px;font-size:1.25rem;display:flex}.ps-confirm__warn{color:var(--hrms-text-muted);text-align:left;background:#ef44440f;border:1px solid #ef444426;border-radius:8px;width:100%;margin-top:4px;padding:9px 14px;font-size:.775rem;display:block}@keyframes ps-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes ps-fade{0%{opacity:0}to{opacity:1}}@keyframes ps-modal-in{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ps-spin{to{transform:rotate(360deg)}}@media (width<=1024px){.ps-container{padding:24px}.ps-form-grid{grid-template-columns:repeat(2,1fr)}.ps-tabs{width:100%;overflow-x:auto}}@media (width<=768px){.ps-container{padding:20px 16px}.ps-page-header h1{font-size:1.4rem}.ps-tabs{border-radius:12px}.ps-tabs .ps-tab{padding:9px 14px;font-size:.8rem}.ps-form-grid{grid-template-columns:1fr;gap:16px;padding:20px}.ps-field-row{grid-template-columns:1fr}.ps-card{border-radius:16px}.ps-card__header{flex-direction:column;align-items:flex-start;gap:12px;padding:20px}.ps-card__footer{padding:16px 20px}.ps-modal{border-radius:16px}.ps-modal--lg{max-width:100%}.ps-modal__header{padding:18px 20px}.ps-modal__body{padding:20px}.ps-modal__footer{flex-direction:column;padding:16px 20px 20px}.ps-role-toggles{gap:8px}}@media (width<=400px){.ps-container{padding:16px 12px}}.ps-card__icon--gold{color:#d97706;background:#f59e0b1a}.ps-table--salary{min-width:800px}.ps-order-cell{text-align:center;width:50px;color:var(--hrms-text-muted);font-weight:600}.ps-calc-cell{color:var(--hrms-text-secondary);font-size:.8rem}.ps-value-cell{font-weight:600}.ps-badge--addition{color:#059669;background:#10b9811a}.ps-badge--deduction{color:#dc2626;background:#ef44441a}.ps-calc-badge{background:#5a67f214;border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.ps-calc-badge svg{font-size:.7rem}.ps-card__footer--info{background:#f8f9ff;justify-content:flex-start}.ps-card__footer--info .ps-info-text{color:var(--hrms-text-secondary);align-items:center;gap:8px;font-size:.8rem;display:flex}.ps-card__footer--info .ps-info-text svg{color:var(--hrms-success);font-size:.9rem}.ps-role-chip svg{font-size:.75rem}@media (width<=768px){.ps-table--salary{min-width:700px}.ps-calc-cell,.ps-value-cell{font-size:.75rem}.ps-calc-badge{padding:2px 8px;font-size:.7rem}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f22e;--hrms-accent:#00d2c8;--hrms-danger:#ef4444;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.el-container{min-height:100vh;font-family:var(--hrms-font-body);background:#f0f2ff;justify-content:center;align-items:center;padding:24px 16px;display:flex;position:relative;overflow:hidden}.el-bg{pointer-events:none;z-index:0;position:absolute;inset:0}.el-bg__blob{filter:blur(70px);border-radius:50%;position:absolute}.el-bg__blob--1{background:#5a67f21f;width:420px;height:420px;animation:10s ease-in-out infinite el-float;top:-120px;left:-100px}.el-bg__blob--2{background:#00d2c817;width:300px;height:300px;animation:13s ease-in-out 2s infinite reverse el-float;bottom:-80px;right:-60px}.el-bg__blob--3{background:#5a67f212;width:200px;height:200px;animation:9s ease-in-out 1s infinite el-float;top:50%;left:60%}.el-card{z-index:1;background:#fff;border-radius:24px;width:100%;max-width:440px;padding:44px 44px 36px;animation:.5s cubic-bezier(.22,1,.36,1) both el-card-in;position:relative;box-shadow:0 0 0 1px #5a67f212,0 20px 60px #0d0f1a1a,0 4px 16px #0d0f1a0d}.el-brand{align-items:center;gap:14px;margin-bottom:28px;display:flex}.el-brand__logo{flex-shrink:0;width:42px;height:42px}.el-brand__logo svg{width:100%;height:100%;display:block}.el-brand__text{flex-direction:column;display:flex}.el-brand__text h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.el-brand__text span{color:var(--hrms-text-muted);font-size:.7rem;font-weight:400}.el-roles{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.el-role{letter-spacing:.02em;border-radius:100px;align-items:center;gap:6px;padding:6px 12px;font-size:.72rem;font-weight:600;display:inline-flex}.el-role svg{font-size:.68rem}.el-role--hr{color:#7c3aed;background:#8b5cf61a}.el-role--manager{color:var(--hrms-primary-dark);background:#5a67f21a}.el-role--employee{color:#059669;background:#10b9811a}.el-header{margin-bottom:28px}.el-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:1.6rem;font-weight:700}.el-header p{color:var(--hrms-text-secondary);font-size:.875rem}.el-form{flex-direction:column;gap:18px;display:flex}.el-field{flex-direction:column;gap:7px;display:flex}.el-field label{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.el-field__wrap{align-items:center;display:flex;position:relative}.el-field__wrap input{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:#fafbff;border-radius:12px;outline:none;padding:13px 16px 13px 44px;font-size:.9rem;transition:border-color .2s,box-shadow .2s,background .2s}.el-field__wrap input::placeholder{color:var(--hrms-text-muted)}.el-field__wrap input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.el-field__icon{color:var(--hrms-text-muted);pointer-events:none;font-size:.82rem;transition:color .2s;position:absolute;left:15px}.el-field:focus-within .el-field__icon{color:var(--hrms-primary)}.el-field__eye{cursor:pointer;color:var(--hrms-text-muted);background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;font-size:.88rem;transition:color .2s;display:flex;position:absolute;right:14px}.el-field__eye:hover{color:var(--hrms-primary)}.el-field__err{color:var(--hrms-danger);font-size:.775rem;font-weight:500}.el-field--error .el-field__wrap input{border-color:var(--hrms-danger);background:#fff8f8;box-shadow:0 0 0 4px #ef444414}.el-field--error .el-field__icon{color:var(--hrms-danger)}.el-forgot{text-align:right;margin-top:-6px}.el-forgot a{color:var(--hrms-primary);font-size:.82rem;font-weight:500;text-decoration:none;transition:opacity .2s}.el-forgot a:hover{opacity:.7;text-decoration:underline}.el-submit{background:linear-gradient(135deg, var(--hrms-primary) 0%, var(--hrms-primary-dark) 100%);color:#fff;width:100%;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;margin-top:4px;padding:14px;font-size:.95rem;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s;display:flex;box-shadow:0 4px 20px #5a67f259}.el-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #5a67f273}.el-submit:active:not(:disabled){transform:translateY(0)}.el-submit:disabled{opacity:.65;cursor:not-allowed;transform:none}.el-spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite el-spin;display:inline-block}.el-footer{border-top:1px solid var(--hrms-border);text-align:center;flex-direction:column;gap:8px;margin-top:28px;padding-top:20px;display:flex}.el-footer p{color:var(--hrms-text-secondary);font-size:.85rem}.el-footer p strong{color:var(--hrms-primary);font-weight:600}.el-footer span{color:var(--hrms-text-muted);font-size:.72rem}@keyframes el-card-in{0%{opacity:0;transform:translateY(28px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes el-float{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-20px)scale(1.03)}}@keyframes el-spin{to{transform:rotate(360deg)}}@media (width<=480px){.el-card{border-radius:20px;padding:32px 24px 28px}.el-header h1{font-size:1.35rem}.el-roles{gap:6px}.el-roles .el-role{padding:5px 10px;font-size:.68rem}}@media (width<=360px){.el-card{padding:28px 18px 24px}}:root{--es-primary:#10b981;--es-primary-dark:#059669;--es-primary-glow:#10b9812e;--es-accent:#34d399;--es-dark:#0d1a14;--es-dark-2:#13261d;--es-dark-3:#1c3328;--es-text-white:#fff;--es-text-muted:#ffffff73;--es-text-soft:#ffffffb3;--es-border-dark:#ffffff12;--es-font-head:"Sora", sans-serif;--es-font-body:"DM Sans", sans-serif;--es-width-open:260px;--es-width-closed:72px;--es-transition:.3s cubic-bezier(.4, 0, .2, 1)}.es-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99;background:#0d1a148c;display:none;position:fixed;inset:0}.es-sidebar{z-index:100;border-right:1px solid var(--es-border-dark);height:100vh;font-family:var(--es-font-body);transition:width var(--es-transition);background:linear-gradient(#13261d 0%,#0d1a14 100%);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden;box-shadow:4px 0 24px #00000040}.es-sidebar--open{width:var(--es-width-open)}.es-sidebar--closed{width:var(--es-width-closed)}.es-header{border-bottom:1px solid var(--es-border-dark);flex-shrink:0;justify-content:space-between;align-items:center;min-height:72px;padding:20px 16px;display:flex}.es-brand{align-items:center;gap:12px;display:flex;overflow:hidden}.es-brand__icon{border-radius:10px;flex-shrink:0;width:38px;height:38px;overflow:hidden}.es-brand__icon svg{width:100%;height:100%;display:block}.es-brand__text{flex-direction:column;animation:.2s both es-fade-in;display:flex;overflow:hidden}.es-brand__name{font-family:var(--es-font-head);color:var(--es-text-white);letter-spacing:-.01em;white-space:nowrap;font-size:1rem;font-weight:700}.es-brand__sub{color:var(--es-text-muted);letter-spacing:.04em;white-space:nowrap;font-size:.68rem;font-weight:400}.es-toggle{border:1px solid var(--es-border-dark);width:32px;height:32px;color:var(--es-text-soft);cursor:pointer;background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;transition:background .2s,color .2s,border-color .2s;display:flex}.es-toggle:hover{background:var(--es-primary-glow);color:var(--es-text-white);border-color:#10b9814d}.es-sidebar--closed .es-header{justify-content:center;padding:20px 0}.es-sidebar--closed .es-nav-label{display:none}.es-sidebar--closed .es-nav__item{border-radius:12px;justify-content:center;height:48px;margin:2px 10px;padding:0}.es-sidebar--closed .es-footer{border-top:1px solid var(--es-border-dark);flex-direction:column;align-items:center;gap:0;padding:16px 0}.es-sidebar--closed .es-logout{border-radius:12px;justify-content:center;width:44px;height:44px;padding:0}.es-nav-label{letter-spacing:.1em;text-transform:uppercase;color:var(--es-text-muted);white-space:nowrap;padding:20px 20px 8px;font-size:.65rem;font-weight:600;animation:.2s both es-fade-in}.es-nav{flex-direction:column;flex:1;padding:8px 0;display:flex;overflow:hidden auto}.es-nav::-webkit-scrollbar{width:3px}.es-nav::-webkit-scrollbar-track{background:0 0}.es-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.es-nav__item{height:48px;color:var(--es-text-soft);white-space:nowrap;border-radius:12px;align-items:center;gap:12px;margin:2px 10px;padding:0 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:flex;position:relative;overflow:hidden}.es-nav__item:hover:not(.es-nav__item--active){color:var(--es-text-white);background:#ffffff0f}.es-nav__item:hover:not(.es-nav__item--active) .es-nav__icon{color:var(--es-text-white)}.es-nav__item:hover:not(.es-nav__item--active) .es-nav__arrow{opacity:.5;transform:translate(2px)}.es-nav__item--active{color:var(--es-text-white);background:linear-gradient(135deg,#10b98138 0%,#10b9811a 100%)}.es-nav__item--active .es-nav__icon{color:var(--es-primary);filter:drop-shadow(0 0 6px #10b98199)}.es-nav__item--active .es-nav__text{font-weight:600}.es-nav__item--active .es-nav__arrow{opacity:1;color:var(--es-primary);transform:translate(0)}.es-nav__item--active .es-nav__active-bar{opacity:1;transform:translateY(-50%)scaleY(1)}.es-nav__icon{color:var(--es-text-muted);flex-shrink:0;align-items:center;font-size:1rem;transition:color .2s,filter .2s;display:flex}.es-nav__text{flex:1;animation:.15s both es-fade-in}.es-nav__arrow{color:#0000;opacity:0;flex-shrink:0;font-size:.6rem;transition:opacity .2s,transform .2s,color .2s}.es-nav__active-bar{background:linear-gradient(180deg, var(--es-primary), var(--es-accent));opacity:0;border-radius:0 4px 4px 0;width:3px;height:60%;transition:opacity .2s,transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:50%;left:-10px;transform:translateY(-50%)scaleY(0)}.es-footer{border-top:1px solid var(--es-border-dark);flex-shrink:0;align-items:center;gap:10px;padding:16px 12px;display:flex}.es-footer__profile{flex:1;align-items:center;gap:10px;animation:.2s both es-fade-in;display:flex;overflow:hidden}.es-footer__avatar{background:linear-gradient(135deg, var(--es-primary), var(--es-accent));color:#fff;width:34px;height:34px;font-family:var(--es-font-head);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.es-footer__info{flex-direction:column;display:flex;overflow:hidden}.es-footer__name{color:var(--es-text-white);white-space:nowrap;font-size:.825rem;font-weight:600}.es-footer__role{color:var(--es-text-muted);white-space:nowrap;font-size:.68rem}.es-logout{color:#ef4444bf;font-family:var(--es-font-body);cursor:pointer;white-space:nowrap;background:#ef44440f;border:1px solid #ef444433;border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;font-size:.825rem;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:flex}.es-logout:hover{color:#ef4444;background:#ef444426;border-color:#ef444466}.es-logout svg{flex-shrink:0;font-size:.85rem}.es-logout span{animation:.2s both es-fade-in}@keyframes es-fade-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media (width<=1024px){:root{--es-width-open:240px}}@media (width<=768px){.es-overlay{display:block}.es-sidebar--closed{width:0;box-shadow:none;border-right:none}.es-sidebar--open{width:260px;box-shadow:8px 0 40px #0006}.es-sidebar--closed .es-header{justify-content:space-between;padding:20px 16px}.es-sidebar--closed .es-nav__item{justify-content:flex-start;margin:2px 10px;padding:0 16px}.es-sidebar--closed .es-footer{flex-direction:row;align-items:center;padding:16px 12px}.es-sidebar--closed .es-logout{border-radius:10px;width:auto;height:auto;padding:8px 12px}}.employee-layout{background:#f0fdf8;min-height:100vh;display:flex}.employee-main{flex-direction:column;flex:1;min-width:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1);display:flex}.employee-main.shifted{margin-left:260px}.employee-main.full{margin-left:72px}.employee-header{z-index:98;background:#fff;border-bottom:1px solid #10b98114;justify-content:space-between;align-items:center;height:68px;padding:0 2rem;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #00000014,0 1px 12px #10b9810f}.employee-header .header-left{align-items:center;gap:1rem;display:flex}.employee-header .header-left .mobile-toggle{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:8px;padding:6px;font-size:1.2rem;transition:background .2s,color .2s;display:none}.employee-header .header-left .mobile-toggle:hover{color:#10b981;background:#10b98114}.employee-header .header-left h1{color:#0f172a;letter-spacing:-.02em;margin:0;font-family:Sora,sans-serif;font-size:1.2rem;font-weight:700}.employee-header .header-right{align-items:center;gap:1.25rem;display:flex}.employee-header .header-right .notification-btn{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:10px;align-items:center;padding:8px;font-size:1.2rem;transition:background .2s,color .2s;display:flex;position:relative}.employee-header .header-right .notification-btn:hover{color:#10b981;background:#10b98114}.employee-header .header-right .notification-btn .notification-badge{color:#fff;background:#ef4444;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.6rem;font-weight:700;animation:1.5s ease-in-out infinite bell-pulse;display:flex;position:absolute;top:-5px;right:-5px}.employee-header .header-right .employee-profile{cursor:pointer;background:#f8f9ff;border:1px solid #10b98126;border-radius:30px;align-items:center;gap:.75rem;padding:6px 12px 6px 6px;transition:all .2s;display:flex}.employee-header .header-right .employee-profile:hover{background:#10b9810f;border-color:#10b981}.employee-header .header-right .employee-profile .profile-avatar{color:#fff;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:600;display:flex}.employee-header .header-right .employee-profile .profile-name{color:#334155;white-space:nowrap;font-family:DM Sans,sans-serif;font-size:.85rem;font-weight:500}.main-content{flex:1;padding:2rem;overflow-y:auto}.employee-loading{background:#f0fdf8;flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:100vh;display:flex}.employee-loading p{color:#64748b;font-family:DM Sans,sans-serif;font-size:.9rem}@media (width<=1024px){.employee-main.shifted{margin-left:240px}.employee-main.full{margin-left:72px}}@media (width<=768px){.employee-main.shifted,.employee-main.full{margin-left:0}.employee-header{padding:0 1rem}.employee-header .header-left .mobile-toggle{justify-content:center;align-items:center;display:flex}.employee-header .header-right .employee-profile .profile-name{display:none}.main-content{padding:1rem}}@media (width<=480px){.employee-header .header-right{gap:.75rem}}.emp-dashboard-loading{background:var(--hrms-bg);min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.emp-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite emp-spin}@keyframes emp-spin{to{transform:rotate(360deg)}}.emp-dashboard-error{background:var(--hrms-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60vh;display:flex}.emp-dashboard-error .error-icon{color:var(--hrms-danger);font-size:3rem}.emp-dashboard-error h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary)}.emp-dashboard-error p{color:var(--hrms-text-secondary)}.emp-retry-btn{background:var(--hrms-primary);color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;padding:10px 24px;font-weight:600;transition:all .2s}.emp-retry-btn:hover{background:var(--hrms-primary-dark);transform:translateY(-2px)}.emp-dashboard{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.emp-welcome{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:24px;display:flex}.emp-welcome__greeting{opacity:.9;letter-spacing:.05em;font-size:.85rem}.emp-welcome h1{font-family:var(--hrms-font-head);margin-top:4px;font-size:1.8rem;font-weight:700}.emp-welcome p{opacity:.9;align-items:center;gap:8px;margin-top:8px;font-size:.85rem;display:flex}.emp-welcome p svg{font-size:.75rem}.emp-welcome__date{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:16px;align-items:center;gap:12px;padding:12px 20px;display:flex}.emp-welcome__date svg{font-size:1.2rem}.emp-welcome__date div{flex-direction:column;display:flex}.emp-welcome__date span{font-size:.9rem;font-weight:600}.emp-welcome__date small{opacity:.8;font-size:.7rem}.emp-stats-grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px;display:grid}.emp-stat-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;align-items:center;gap:16px;padding:20px;transition:transform .2s,box-shadow .2s;display:flex}.emp-stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0d0f1a1a}.emp-stat-card__icon{width:50px;height:50px;color:var(--hrms-primary);background:#5a67f21a;border-radius:16px;justify-content:center;align-items:center;font-size:1.3rem;display:flex}.emp-stat-card__info{flex:1}.emp-stat-card__label{text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);margin-bottom:4px;font-size:.7rem;font-weight:600;display:block}.emp-stat-card__value{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.6rem;font-weight:700}.emp-stat-card__value span{color:var(--hrms-text-muted);font-size:.9rem;font-weight:500}.emp-stat-card__warning{color:var(--hrms-danger);margin-top:4px;font-size:.7rem;display:block}.emp-today-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;margin-bottom:28px;padding:24px}.emp-today-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;margin-bottom:20px;font-size:1.1rem;font-weight:600;display:flex}.emp-today-card h2 svg{color:var(--hrms-primary)}.emp-status-badge{border-radius:40px;align-items:center;gap:8px;padding:8px 20px;font-size:.85rem;font-weight:600;display:inline-flex}.emp-status-badge.status-on-time{color:var(--hrms-success);background:#10b9811a}.emp-status-badge.status-late{color:var(--hrms-warning);background:#f59e0b1a}.emp-status-badge.status-absent{color:var(--hrms-danger);background:#ef44441a}.emp-status-badge.status-half-day{color:var(--hrms-info);background:#3b82f61a}.emp-status-badge.status-not-started{color:var(--hrms-text-muted);background:#94a3b81a}.emp-today-time{border-top:1px solid var(--hrms-border);gap:32px;margin-top:20px;padding-top:20px;display:flex}.emp-time-item label{text-transform:uppercase;color:var(--hrms-text-muted);margin-bottom:4px;font-size:.7rem;font-weight:600;display:block}.emp-time-item span{color:var(--hrms-text-primary);font-size:1rem;font-weight:600}.emp-today-message{text-align:center;padding:20px}.emp-today-message p{color:var(--hrms-text-secondary);font-size:1rem}.emp-today-message small{color:var(--hrms-text-muted);font-size:.75rem}.emp-two-column{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px;display:grid}.emp-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;margin-bottom:20px;padding:24px}.emp-card:last-child{margin-bottom:0}.emp-card__header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.emp-card__header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.emp-card__header h3 svg{color:var(--hrms-primary)}.emp-badge{background:var(--hrms-primary);color:#fff;border-radius:20px;padding:4px 10px;font-size:.7rem;font-weight:600}.emp-attendance-summary{text-align:center;margin-bottom:24px}.emp-summary-item{margin-bottom:16px}.emp-summary-item span{color:var(--hrms-text-muted);font-size:.8rem}.emp-summary-item strong{font-family:var(--hrms-font-head);color:var(--hrms-primary);font-size:2rem;font-weight:700;display:block}.emp-summary-item small{color:var(--hrms-text-muted);font-size:.7rem}.emp-summary-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px;display:grid}.emp-stat-badge{text-align:center;border-radius:12px;padding:8px}.emp-stat-badge span{text-transform:uppercase;margin-bottom:4px;font-size:.65rem;font-weight:600;display:block}.emp-stat-badge strong{font-size:1.1rem;font-weight:700}.emp-stat-badge.emp-on-time{color:var(--hrms-success);background:#10b9811a}.emp-stat-badge.emp-late{color:var(--hrms-warning);background:#f59e0b1a}.emp-stat-badge.emp-half-day{color:var(--hrms-info);background:#3b82f61a}.emp-stat-badge.emp-absent{color:var(--hrms-danger);background:#ef44441a}.emp-trend{border-top:1px solid var(--hrms-border);margin-top:20px;padding-top:20px}.emp-trend h4{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.85rem;font-weight:600}.emp-trend-bars{justify-content:space-around;align-items:flex-end;gap:8px;display:flex}.emp-trend-item{text-align:center;flex:1}.emp-trend-item .emp-trend-bar{background:linear-gradient(180deg, var(--hrms-primary), var(--hrms-accent));border-radius:8px 8px 4px 4px;height:60px;margin-bottom:8px;transition:height .3s}.emp-trend-item span{color:var(--hrms-text-secondary);font-size:.7rem;font-weight:600;display:block}.emp-trend-item small{color:var(--hrms-text-muted);font-size:.6rem}.emp-task-list{flex-direction:column;gap:12px;display:flex}.emp-task-item{background:#fafbff;border-radius:12px;justify-content:space-between;align-items:center;padding:12px;display:flex}.emp-task-item .emp-task-info strong{color:var(--hrms-text-primary);margin-bottom:4px;font-size:.85rem;display:block}.emp-task-item .emp-task-info small{color:var(--hrms-text-muted);align-items:center;gap:4px;font-size:.65rem;display:flex}.emp-task-item .emp-task-status{color:var(--hrms-warning);background:#f59e0b1a;border-radius:20px;padding:4px 10px;font-size:.7rem;font-weight:600}.emp-task-item .emp-task-status.emp-overdue{color:var(--hrms-danger);background:#ef44441a}.emp-empty-state{text-align:center;padding:40px 20px}.emp-empty-state svg{color:var(--hrms-success);margin-bottom:12px;font-size:2.5rem}.emp-empty-state p{color:var(--hrms-text-secondary)}.emp-task-footer{border-top:1px solid var(--hrms-border);color:var(--hrms-text-muted);justify-content:space-between;margin-top:16px;padding-top:16px;font-size:.75rem;display:flex}.emp-leave-balance{flex-direction:column;gap:16px;display:flex}.emp-leave-item .emp-leave-info{justify-content:space-between;margin-bottom:6px;display:flex}.emp-leave-item .emp-leave-type{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.emp-leave-item .emp-leave-progress{background:var(--hrms-border);border-radius:3px;height:6px;overflow:hidden}.emp-leave-item .emp-leave-progress-bar{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));border-radius:3px;height:100%;transition:width .3s}.emp-leave-item .emp-leave-numbers{color:var(--hrms-text-muted);gap:12px;margin-top:6px;font-size:.65rem;display:flex}.emp-upcoming-leaves{border-top:1px solid var(--hrms-border);margin-top:20px;padding-top:20px}.emp-upcoming-leaves h4{color:var(--hrms-text-secondary);margin-bottom:12px;font-size:.8rem;font-weight:600}.emp-upcoming-item{border-bottom:1px dashed var(--hrms-border);padding:8px 0}.emp-upcoming-item span{color:var(--hrms-text-primary);font-size:.8rem;font-weight:500;display:block}.emp-upcoming-item small{color:var(--hrms-text-muted);font-size:.65rem}.emp-upcoming-item:last-child{border-bottom:none}.emp-salary-info .emp-salary-item{border-bottom:1px solid var(--hrms-border);justify-content:space-between;padding:10px 0;display:flex}.emp-salary-info .emp-salary-item label{color:var(--hrms-text-secondary);font-size:.8rem}.emp-salary-info .emp-salary-item span{color:var(--hrms-text-primary);font-weight:600}.emp-salary-info .emp-salary-item.emp-net-salary{border-bottom:none;padding-top:12px}.emp-salary-info .emp-salary-item.emp-net-salary span{color:var(--hrms-primary);font-size:1.1rem}.emp-salary-info .emp-deduction{color:var(--hrms-danger)!important}.emp-salary-status{border-top:1px solid var(--hrms-border);justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;display:flex}.emp-salary-status .emp-status{border-radius:20px;padding:4px 12px;font-size:.75rem;font-weight:600}.emp-salary-status .emp-status.emp-paid{color:var(--hrms-success);background:#10b9811a}.emp-salary-status .emp-status.emp-unpaid{color:var(--hrms-warning);background:#f59e0b1a}.emp-salary-status small{color:var(--hrms-text-muted);font-size:.65rem}.emp-performance{text-align:center}.emp-rating{justify-content:center;align-items:center;gap:12px;margin-bottom:12px;display:flex}.emp-rating-stars{gap:4px;display:flex}.emp-rating-stars svg{font-size:1.2rem}.emp-star-filled{color:#fbbf24}.emp-star-empty{color:var(--hrms-border)}.emp-rating-value{color:var(--hrms-text-primary);font-weight:700}.emp-review-comment{color:var(--hrms-text-secondary);background:#fafbff;border-radius:12px;margin:12px 0;padding:12px;font-size:.85rem;font-style:italic}.emp-holidays{flex-direction:column;gap:10px;display:flex}.emp-holiday-item{background:#fafbff;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.emp-holiday-item .emp-holiday-name{color:var(--hrms-text-primary);font-size:.85rem;font-weight:500}.emp-holiday-item .emp-holiday-date{color:var(--hrms-primary);font-size:.7rem;font-weight:600}.emp-info-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:24px}.emp-info-card h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;margin-bottom:20px;font-size:1rem;font-weight:600;display:flex}.emp-info-card h3 svg{color:var(--hrms-primary)}.emp-info-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;display:grid}.emp-info-item{background:#fafbff;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.emp-info-item svg{color:var(--hrms-primary);font-size:1rem}.emp-info-item div{flex:1}.emp-info-item label{text-transform:uppercase;color:var(--hrms-text-muted);margin-bottom:2px;font-size:.65rem;font-weight:600;display:block}.emp-info-item p{color:var(--hrms-text-primary);font-size:.85rem;font-weight:500}@media (width<=1024px){.emp-dashboard{padding:20px}.emp-stats-grid{gap:15px}.emp-stat-card__value{font-size:1.3rem}.emp-two-column{gap:15px}}@media (width<=768px){.emp-dashboard{padding:16px}.emp-welcome{text-align:center;flex-direction:column}.emp-welcome h1{font-size:1.4rem}.emp-welcome__date{justify-content:center;width:100%}.emp-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.emp-two-column{grid-template-columns:1fr}.emp-summary-stats{grid-template-columns:repeat(2,1fr)}.emp-today-time{flex-direction:column;gap:12px}.emp-info-grid{grid-template-columns:1fr}}@media (width<=480px){.emp-dashboard{padding:12px}.emp-stats-grid{grid-template-columns:1fr}.emp-welcome h1{font-size:1.2rem}.emp-card{padding:16px}.emp-summary-stats{grid-template-columns:1fr}}.emp-today-banner{border-radius:16px;align-items:center;gap:16px;margin-bottom:24px;padding:16px 24px;display:flex}.emp-today-banner.emp-banner-holiday{border-left:4px solid var(--hrms-success);background:linear-gradient(135deg,#10b9811a,#0596690d)}.emp-today-banner.emp-banner-weekend{border-left:4px solid var(--hrms-warning);background:linear-gradient(135deg,#f59e0b1a,#d977060d)}.emp-today-banner.emp-banner-leave{border-left:4px solid var(--hrms-danger);background:linear-gradient(135deg,#ef44441a,#dc26260d)}.emp-today-banner .emp-banner-icon{font-size:2rem}.emp-banner-holiday .emp-today-banner .emp-banner-icon{color:var(--hrms-success)}.emp-banner-weekend .emp-today-banner .emp-banner-icon{color:var(--hrms-warning)}.emp-banner-leave .emp-today-banner .emp-banner-icon{color:var(--hrms-danger)}.emp-today-banner .emp-banner-content{flex:1}.emp-today-banner .emp-banner-content h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:1rem}.emp-today-banner .emp-banner-content p{color:var(--hrms-text-secondary);font-size:.8rem}.emp-attendance-rate{border-top:1px solid var(--hrms-border);margin-top:20px;padding-top:16px}.emp-rate-label{justify-content:space-between;margin-bottom:8px;display:flex}.emp-rate-label span{color:var(--hrms-text-muted);font-size:.7rem}.emp-rate-label strong{color:var(--hrms-primary);font-size:.85rem;font-weight:700}.emp-rate-bar-wrapper{background:var(--hrms-border);border-radius:4px;height:8px;overflow:hidden}.emp-rate-bar{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));border-radius:4px;height:100%;transition:width .3s}.status-holiday{color:var(--hrms-success);background:#10b9811a}.status-weekend{color:var(--hrms-warning);background:#f59e0b1a}.status-on-leave{color:var(--hrms-danger);background:#ef44441a}.emp-recent-leaves{border-top:1px solid var(--hrms-border);margin-top:16px;padding-top:16px}.emp-recent-leaves h4{color:var(--hrms-text-secondary);margin-bottom:12px;font-size:.75rem;font-weight:600}.emp-recent-item{border-bottom:1px dashed var(--hrms-border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.emp-recent-item span:first-child{color:var(--hrms-text-primary);font-size:.75rem}.emp-recent-status{border-radius:10px;padding:2px 8px;font-size:.65rem;font-weight:600}.emp-recent-status.pending{color:var(--hrms-warning);background:#f59e0b1a}.emp-recent-status.approved{color:var(--hrms-success);background:#10b9811a}.emp-recent-status.rejected{color:var(--hrms-danger);background:#ef44441a}.emp-performance-trend{border-top:1px solid var(--hrms-border);margin-top:20px;padding-top:16px}.emp-performance-trend h4{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.75rem;font-weight:600}.emp-trend-bar-rating{background:linear-gradient(#fbbf24,#f59e0b)}@media (width<=768px){.emp-today-banner{text-align:center;flex-direction:column}.emp-attendance-summary .emp-summary-item{margin-bottom:16px}}.ep-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.ep-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:38px;height:38px;animation:.75s linear infinite ep-spin}.ep-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.ep-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.ep-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:7px;margin-bottom:10px;padding:5px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.ep-page-header__badge svg{font-size:.65rem}.ep-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:5px;font-size:1.8rem;font-weight:700}.ep-page-header p{color:var(--hrms-text-secondary);font-size:.875rem}.ep-edit-trigger{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;white-space:nowrap;border:none;border-radius:11px;flex-shrink:0;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 16px #5a67f24d}.ep-edit-trigger svg{font-size:.8rem}.ep-edit-trigger:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5a67f266}.ep-layout{grid-template-columns:280px 1fr;align-items:start;gap:20px;display:grid}.ep-avatar-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;flex-direction:column;align-items:center;gap:10px;padding:32px 24px 24px;animation:.4s cubic-bezier(.22,1,.36,1) both ep-fade-in;display:flex;box-shadow:0 2px 16px #0d0f1a0d}.ep-avatar-card__circle{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:80px;height:80px;font-family:var(--hrms-font-head);border-radius:22px;justify-content:center;align-items:center;margin-bottom:4px;font-size:2rem;font-weight:700;display:flex;box-shadow:0 8px 24px #5a67f24d}.ep-avatar-card__name{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);text-align:center;letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.ep-avatar-card__meta{border:1px solid var(--hrms-border);border-radius:12px;width:100%;margin-top:8px;overflow:hidden}.ep-avatar-card__meta-item{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;gap:8px;padding:11px 14px;display:flex}.ep-avatar-card__meta-item:last-child{border-bottom:none}.ep-avatar-card__meta-item span{color:var(--hrms-text-muted);font-size:.72rem;font-weight:500}.ep-avatar-card__meta-item strong{color:var(--hrms-text-primary);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:130px;font-size:.8rem;font-weight:600;overflow:hidden}.ep-avatar-card__salary{background:linear-gradient(135deg,#5a67f214,#00d2c80f);border:1px solid #5a67f226;border-radius:12px;align-items:center;gap:12px;width:100%;margin-top:4px;padding:14px;display:flex}.ep-avatar-card__salary svg{color:var(--hrms-primary);flex-shrink:0;font-size:1rem}.ep-avatar-card__salary div{flex-direction:column;gap:2px;display:flex}.ep-avatar-card__salary span{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:500}.ep-avatar-card__salary strong{font-family:var(--hrms-font-head);color:var(--hrms-primary);font-size:1rem;font-weight:700}.ep-role{letter-spacing:.06em;text-transform:uppercase;border-radius:100px;align-items:center;padding:4px 12px;font-size:.68rem;font-weight:700;display:inline-flex}.ep-role--hr{color:#7c3aed;background:#8b5cf61a}.ep-role--manager{color:var(--hrms-primary-dark);background:#5a67f21a}.ep-role--employee{color:#059669;background:#10b9811a}.ep-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.45s cubic-bezier(.22,1,.36,1) both ep-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.ep-card__header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.ep-card__title-wrap{align-items:center;gap:13px;display:flex}.ep-card__title-wrap h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:3px;font-size:.95rem;font-weight:700}.ep-card__title-wrap p{color:var(--hrms-text-muted);font-size:.775rem}.ep-card__icon{width:38px;height:38px;color:var(--hrms-primary);background:#5a67f21a;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.ep-card__icon--edit{color:#d97706;background:#f59e0b1a}.ep-details-section{border-bottom:1px solid var(--hrms-border);margin-bottom:28px;padding-bottom:20px}.ep-details-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.ep-details-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);align-items:center;gap:8px;margin:16px;font-size:.85rem;font-weight:600;display:flex}.ep-details-section h4:before{content:"";background:var(--hrms-primary);border-radius:2px;width:3px;height:16px}.ep-details-grid{grid-template-columns:1fr 1fr;display:grid}.ep-detail-item{border-bottom:1px solid #f1f4fd;border-right:1px solid #f1f4fd;align-items:flex-start;gap:13px;padding:20px 28px;transition:background .15s;display:flex}.ep-detail-item:nth-child(2n){border-right:none}.ep-detail-item:nth-last-child(-n+2){border-bottom:none}.ep-detail-item:hover{background:#fafbff}.ep-detail-item__icon{width:34px;height:34px;color:var(--hrms-primary);background:#f0f2ff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.8rem;display:flex}.ep-detail-item__content{flex-direction:column;gap:5px;min-width:0;display:flex}.ep-detail-item__content label{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:7px;font-size:.68rem;font-weight:600;display:flex}.ep-detail-item__content p{color:var(--hrms-text-primary);word-break:break-word;font-size:.9rem;font-weight:500}.ep-file-link{color:var(--hrms-primary);font-size:.8rem;font-weight:500;text-decoration:none}.ep-file-link:hover{text-decoration:underline}.ep-locked-badge{color:var(--hrms-text-muted);letter-spacing:.05em;text-transform:uppercase;background:#94a3b81f;border-radius:5px;align-items:center;padding:2px 7px;font-size:.6rem;font-weight:600;display:inline-flex}.ep-notice{background:#f59e0b12;border:1px solid #f59e0b33;border-radius:12px;align-items:flex-start;gap:12px;margin:24px 28px 0;padding:14px 16px;display:flex}.ep-notice svg{color:#d97706;flex-shrink:0;margin-top:1px;font-size:.95rem}.ep-notice p{color:var(--hrms-text-secondary);font-size:.825rem;line-height:1.5}.ep-notice p strong{color:var(--hrms-text-primary);font-weight:600}.ep-edit-section{border-top:1px solid var(--hrms-border);margin-top:24px;padding-top:20px}.ep-card__footer{border-top:1px solid var(--hrms-border);text-align:right;margin:24px;padding-top:20px}.ep-edit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.ep-edit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #5a67f24d}.ep-form{flex-direction:column;gap:20px;padding:24px 28px;display:flex}.ep-form__actions{border-top:1px solid var(--hrms-border);gap:12px;margin-top:4px;padding-top:8px;display:flex}.ep-field{flex-direction:column;gap:8px;display:flex}.ep-field label{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.ep-field__wrap{align-items:center;display:flex;position:relative}.ep-field__wrap input,.ep-field__wrap textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:#fafbff;border-radius:11px;outline:none;padding:12px 14px 12px 44px;font-size:.875rem;transition:border-color .2s,box-shadow .2s,background .2s}.ep-field__wrap input::placeholder,.ep-field__wrap textarea::placeholder{color:var(--hrms-text-muted)}.ep-field__wrap input:focus,.ep-field__wrap textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.ep-field__wrap textarea{resize:vertical;min-height:100px;padding-top:12px;line-height:1.55}.ep-field__wrap--textarea{align-items:flex-start}.ep-field__icon{color:var(--hrms-text-muted);pointer-events:none;font-size:.82rem;transition:color .2s;position:absolute;left:14px}.ep-field__icon--top{top:13px}.ep-field:focus-within .ep-field__icon{color:var(--hrms-primary)}.ep-field__err{color:var(--hrms-danger);font-size:.775rem;font-weight:500}.ep-field--error .ep-field__wrap input,.ep-field--error .ep-field__wrap textarea{border-color:var(--hrms-danger);background:#fff8f8;box-shadow:0 0 0 4px #ef444414}.ep-field--error .ep-field__icon{color:var(--hrms-danger)}.ep-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:11px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s,opacity .2s;display:inline-flex}.ep-btn svg{font-size:.8rem}.ep-btn--primary{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;flex:1;justify-content:center;box-shadow:0 4px 16px #5a67f24d}.ep-btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5a67f266}.ep-btn--ghost{color:var(--hrms-text-secondary);border:1.5px solid var(--hrms-border);background:#fff;flex:1;justify-content:center}.ep-btn--ghost:hover{color:var(--hrms-primary);background:#f0f2ff;border-color:#5a67f24d}@keyframes ep-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes ep-spin{to{transform:rotate(360deg)}}@media (width<=1024px){.ep-layout{grid-template-columns:240px 1fr}}@media (width<=860px){.ep-layout{grid-template-columns:1fr}.ep-avatar-card{flex-flow:wrap;gap:14px;padding:20px}.ep-avatar-card__circle{border-radius:16px;width:60px;height:60px;font-size:1.5rem}.ep-avatar-card__meta,.ep-avatar-card__salary{width:100%}}@media (width<=768px){.ep-container{padding:20px 16px}.ep-page-header h1{font-size:1.4rem}.ep-details-grid{grid-template-columns:1fr}.ep-detail-item{padding:16px 20px;border-right:none!important}.ep-detail-item:nth-last-child(-n+2){border-bottom:1px solid #f1f4fd}.ep-detail-item:last-child{border-bottom:none}.ep-card__header{padding:18px 20px}.ep-notice{margin:20px 20px 0}.ep-form{padding:20px}.ep-form__actions{flex-direction:column}.ep-details-section{margin-bottom:20px;padding-bottom:16px}.ep-card__footer{text-align:center}.ep-edit-btn{justify-content:center;width:100%}}@media (width<=400px){.ep-container{padding:14px 12px}}.ep-page-header .ep-header-actions{flex-wrap:wrap;gap:12px;display:flex}.ep-password-trigger{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);font-family:var(--hrms-font-head);cursor:pointer;white-space:nowrap;background:#fff;border-radius:11px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.ep-password-trigger svg{font-size:.8rem}.ep-password-trigger:hover{border-color:var(--hrms-primary);color:var(--hrms-primary);background:#f8f9ff}.ep-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.ep-password-modal{background:var(--hrms-card);border-radius:20px;width:100%;max-width:450px;max-height:90vh;animation:.3s ep-modal-in;overflow:auto}.ep-password-modal .ep-modal-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.ep-password-modal .ep-modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.ep-password-modal .ep-modal-header .ep-modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.ep-password-modal .ep-modal-header .ep-modal-close:hover{color:var(--hrms-danger)}.ep-password-modal .ep-modal-body{padding:24px}.ep-password-modal .ep-modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.ep-password-modal .ep-modal-footer .ep-modal-cancel{font-family:var(--hrms-font-head);cursor:pointer;border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.ep-password-modal .ep-modal-footer .ep-modal-cancel:hover{background:#f8f9ff}.ep-password-modal .ep-modal-footer .ep-modal-save{font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.ep-password-modal .ep-modal-footer .ep-modal-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.ep-password-modal .ep-modal-footer .ep-modal-save:disabled{opacity:.6;cursor:not-allowed}.ep-modal-info{border-left:3px solid var(--hrms-info);background:#3b82f614;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.ep-modal-info svg{color:var(--hrms-info);margin-top:2px;font-size:.9rem}.ep-modal-info p{color:var(--hrms-text-secondary);font-size:.75rem;line-height:1.4}.ep-password-field{margin-bottom:16px}.ep-password-field label{color:var(--hrms-text-primary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.ep-password-field .ep-password-input-wrap{align-items:center;display:flex;position:relative}.ep-password-field .ep-password-input-wrap input{border:1.5px solid var(--hrms-border);width:100%;font-size:.85rem;font-family:var(--hrms-font-body);background:#fafbff;border-radius:10px;padding:10px 40px 10px 14px;transition:all .2s}.ep-password-field .ep-password-input-wrap input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);background:#fff;outline:none}.ep-password-field .ep-password-input-wrap input.error{border-color:var(--hrms-danger);box-shadow:0 0 0 3px #ef44441a}.ep-password-field .ep-password-input-wrap .ep-password-toggle{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:.9rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.ep-password-field .ep-password-input-wrap .ep-password-toggle:hover{color:var(--hrms-text-primary)}.ep-password-field .ep-password-error{color:var(--hrms-danger);margin-top:4px;font-size:.7rem;display:block}.ep-password-requirements{background:#f8f9ff;border-radius:10px;margin-top:16px;padding:12px}.ep-password-requirements p{color:var(--hrms-text-secondary);margin-bottom:6px;font-size:.75rem;font-weight:600}.ep-password-requirements ul{margin:0;padding:0;list-style:none}.ep-password-requirements ul li{color:var(--hrms-text-muted);padding:2px 0 2px 16px;font-size:.7rem;position:relative}.ep-password-requirements ul li:before{content:"•";color:var(--hrms-primary);position:absolute;left:0}@keyframes ep-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.ep-page-header{flex-direction:column;align-items:flex-start}.ep-page-header .ep-header-actions{flex-direction:column;width:100%}.ep-page-header .ep-edit-trigger,.ep-page-header .ep-password-trigger{justify-content:center;width:100%}.ep-password-modal{width:95%;margin:16px}.ep-modal-footer{flex-direction:column}}.attendance-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.attendance-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite at-spin}@keyframes at-spin{to{transform:rotate(360deg)}}.employee-attendance{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.history-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:16px 20px;font-size:.75rem;font-weight:700}.history-table td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:16px 20px;font-size:.85rem}.history-table tr:hover td{background:#fafbff}.status-badge-small.status-late,.status-badge-small.status-half-day{color:#d97706;background:#f59e0b1a}@keyframes at-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.employee-attendance{padding:24px}.attendance-header .header-left h1{font-size:1.5rem}}@media (width<=768px){.employee-attendance{padding:16px}.attendance-header{flex-direction:column;align-items:flex-start}.today-card{padding:18px 20px}.status-section{text-align:center;flex-direction:column}.status-section .status-icon{margin:0 auto}.action-buttons{flex-direction:column}.checkin-btn,.checkout-btn{justify-content:center;width:100%}.history-card .history-header{flex-direction:column;align-items:flex-start;gap:10px;padding:16px 20px}.history-table th,.history-table td{padding:12px 16px}.pagination{flex-wrap:wrap;gap:10px}.pagination button{padding:6px 14px}}@media (width<=480px){.employee-attendance{padding:12px}.history-table th,.history-table td{padding:10px 12px;font-size:.75rem}.status-badge-small{padding:2px 6px;font-size:.6rem}.pagination button span{display:none}.pagination button{padding:8px 12px}}.manager-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99;background:#0d0f1a8c;display:none;position:fixed;inset:0}.manager-sidebar{z-index:100;border-right:1px solid var(--hrms-border-dark);height:100vh;font-family:var(--hrms-font-body);transition:width var(--sb-transition);background:linear-gradient(#13162b 0%,#0d0f1a 100%);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden;box-shadow:4px 0 24px #00000040}.manager-sidebar--open{width:var(--sb-width-open)}.manager-sidebar--closed{width:var(--sb-width-closed)}.manager-header{border-bottom:1px solid var(--hrms-border-dark);flex-shrink:0;justify-content:space-between;align-items:center;min-height:72px;padding:20px 16px;display:flex}.manager-sidebar--closed .manager-header{justify-content:center;padding:20px 0}.manager-brand{align-items:center;gap:12px;display:flex;overflow:hidden}.manager-brand__icon{border-radius:10px;flex-shrink:0;width:38px;height:38px;overflow:hidden}.manager-brand__icon svg{width:100%;height:100%;display:block}.manager-brand__text{flex-direction:column;animation:.2s both mgr-fade-in;display:flex;overflow:hidden}.manager-brand__name{font-family:var(--hrms-font-head);color:var(--hrms-text-white);letter-spacing:-.01em;white-space:nowrap;font-size:1rem;font-weight:700}.manager-brand__sub{color:var(--hrms-text-muted-light);letter-spacing:.04em;white-space:nowrap;font-size:.68rem;font-weight:400}.manager-toggle{border:1px solid var(--hrms-border-dark);width:32px;height:32px;color:var(--hrms-text-soft);cursor:pointer;background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;transition:background .2s,color .2s,border-color .2s;display:flex}.manager-toggle:hover{background:var(--hrms-primary-glow);color:var(--hrms-text-white);border-color:#5a67f24d}.manager-toggle--alone{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;width:36px;height:36px;font-size:.9rem}.manager-nav-label{letter-spacing:.1em;text-transform:uppercase;color:var(--hrms-text-muted-light);white-space:nowrap;flex-shrink:0;padding:20px 20px 8px;font-size:.65rem;font-weight:600;animation:.2s both mgr-fade-in}.manager-nav{flex-direction:column;flex:1;padding:8px 0;display:flex;overflow:hidden auto}.manager-nav::-webkit-scrollbar{width:3px}.manager-nav::-webkit-scrollbar-track{background:0 0}.manager-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.manager-nav__item{height:48px;color:var(--hrms-text-soft);white-space:nowrap;border-radius:12px;align-items:center;gap:12px;margin:2px 10px;padding:0 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:flex;position:relative;overflow:hidden}.manager-sidebar--closed .manager-nav__item{justify-content:center;margin:2px 10px;padding:0}.manager-nav__item:hover:not(.manager-nav__item--active):not(.manager-nav__item--parent){color:var(--hrms-text-white);background:#ffffff0f}.manager-nav__item:hover:not(.manager-nav__item--active):not(.manager-nav__item--parent) .manager-nav__icon{color:var(--hrms-text-white)}.manager-nav__item:hover:not(.manager-nav__item--active):not(.manager-nav__item--parent) .manager-nav__arrow{opacity:.5;transform:translate(2px)}.manager-nav__item--active{color:var(--hrms-text-white);background:linear-gradient(135deg,#5a67f238 0%,#5a67f21a 100%)}.manager-nav__item--active .manager-nav__icon{color:var(--hrms-primary);filter:drop-shadow(0 0 6px #5a67f299)}.manager-nav__item--active .manager-nav__text{font-weight:600}.manager-nav__item--active .manager-nav__arrow{opacity:1;color:var(--hrms-primary);transform:translate(0)}.manager-nav__item--active .manager-nav__active-bar{opacity:1;transform:translateY(-50%)scaleY(1)}.manager-nav__item--parent{cursor:pointer;text-align:left;width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-soft);background:0 0;border:none;font-size:.875rem;font-weight:500}.manager-nav__item--parent.manager-nav__item--active-parent{color:var(--hrms-text-white);background:linear-gradient(135deg,#5a67f238 0%,#5a67f21a 100%)}.manager-nav__item--parent.manager-nav__item--active-parent .manager-nav__icon{color:var(--hrms-primary);filter:drop-shadow(0 0 6px #5a67f299)}.manager-nav__item--parent:hover{color:var(--hrms-text-white);background:#ffffff0f}.manager-nav__chevron{color:var(--hrms-text-muted-light);flex-shrink:0;margin-left:auto;font-size:.65rem;transition:transform .25s}.manager-nav__chevron--open{transform:rotate(180deg)}.manager-submenu{background:#ffffff05;border-radius:10px;max-height:0;margin:0 10px 0 40px;transition:max-height .3s;overflow:hidden}.manager-submenu--open{max-height:300px}.manager-submenu__item{color:var(--hrms-text-soft);border-radius:8px;align-items:center;gap:10px;margin:4px 0;padding:10px 12px;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.manager-submenu__item:hover{color:var(--hrms-text-white);background:#ffffff0f}.manager-submenu__item--active{color:var(--hrms-primary);background:#5a67f226}.manager-submenu__icon{align-items:center;width:20px;font-size:.75rem;display:flex}.manager-submenu__text{flex:1}.manager-nav__icon{color:var(--hrms-text-muted-light);flex-shrink:0;align-items:center;font-size:1rem;transition:color .2s,filter .2s;display:flex}.manager-nav__text{flex:1;animation:.15s both mgr-fade-in}.manager-nav__arrow{color:#0000;opacity:0;flex-shrink:0;font-size:.6rem;transition:opacity .2s,transform .2s,color .2s}.manager-nav__active-bar{background:linear-gradient(180deg, var(--hrms-primary), var(--hrms-accent));opacity:0;border-radius:0 4px 4px 0;width:3px;height:60%;transition:opacity .2s,transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:50%;left:-10px;transform:translateY(-50%)scaleY(0)}.manager-footer{border-top:1px solid var(--hrms-border-dark);flex-shrink:0;align-items:center;gap:10px;padding:16px 12px;display:flex}.manager-sidebar--closed .manager-footer{flex-direction:column;justify-content:center;padding:16px 0}.manager-footer__profile{flex:1;align-items:center;gap:10px;animation:.2s both mgr-fade-in;display:flex;overflow:hidden}.manager-footer__avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:34px;height:34px;font-family:var(--hrms-font-head);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.manager-footer__info{flex-direction:column;display:flex;overflow:hidden}.manager-footer__name{color:var(--hrms-text-white);white-space:nowrap;text-overflow:ellipsis;font-size:.825rem;font-weight:600;overflow:hidden}.manager-footer__role{color:var(--hrms-text-muted-light);white-space:nowrap;font-size:.68rem}.manager-logout{color:#ef4444bf;font-family:var(--hrms-font-body);cursor:pointer;white-space:nowrap;background:#ef44440f;border:1px solid #ef444433;border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;font-size:.825rem;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:flex}.manager-logout svg{flex-shrink:0;font-size:.85rem}.manager-logout span{animation:.2s both mgr-fade-in}.manager-logout:hover{color:#ef4444;background:#ef444426;border-color:#ef444466}.manager-sidebar--closed .manager-logout{border-radius:12px;justify-content:center;width:44px;height:44px;padding:0}.manager-sidebar--closed .manager-nav__group{position:relative}.manager-sidebar--closed .manager-nav__item--parent{justify-content:center;padding:0}.manager-sidebar--closed .manager-nav__group:hover .manager-nav__item--parent{background:#ffffff14}@keyframes mgr-fade-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media (width<=1024px){:root{--sb-width-open:240px}}@media (width<=768px){.manager-overlay{display:block}.manager-sidebar--closed{width:0;box-shadow:none;border-right:none}.manager-sidebar--open{width:260px;box-shadow:8px 0 40px #0006}.manager-sidebar--open .manager-header{justify-content:space-between;padding:20px 16px}.manager-sidebar--open .manager-nav__item{justify-content:flex-start;padding:0 16px}.manager-sidebar--open .manager-footer{flex-direction:row;padding:16px 12px}.manager-sidebar--open .manager-logout{width:auto;height:auto;padding:8px 12px}}.mgr-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}@keyframes mgr-spin{to{transform:rotate(360deg)}}.mgr-layout{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);display:flex}.mgr-main{min-height:100vh;transition:margin-left var(--sb-transition);flex-direction:column;flex:1;min-width:0;display:flex}.mgr-main--shifted{margin-left:var(--sb-width-open)}.mgr-main--full{margin-left:var(--sb-width-closed)}.mgr-topbar{z-index:50;height:var(--topbar-height);background:var(--hrms-card);border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;gap:16px;padding:0 28px;display:flex;position:sticky;top:0;box-shadow:0 1px 12px #0d0f1a0d}.mgr-topbar__left{align-items:center;gap:16px;display:flex}.mgr-topbar__title{align-items:center;gap:10px;display:flex}.mgr-topbar__badge{color:var(--hrms-primary);font-family:var(--hrms-font-head);letter-spacing:.08em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:6px;padding:5px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.mgr-topbar__badge:before{content:"";background:var(--hrms-primary);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite mgr-pulse}.mgr-topbar__right{align-items:center;gap:12px;display:flex}.mgr-mobile-toggle{border:1.5px solid var(--hrms-border);width:36px;height:36px;color:var(--hrms-text-secondary);cursor:pointer;background:#fafbff;border-radius:10px;justify-content:center;align-items:center;font-size:.9rem;transition:background .2s,color .2s,border-color .2s;display:none}.mgr-mobile-toggle:hover{color:var(--hrms-primary);background:#5a67f214;border-color:#5a67f240}.mgr-profile{border:1.5px solid var(--hrms-border);cursor:pointer;background:#fafbff;border-radius:100px;align-items:center;gap:10px;padding:6px 12px 6px 6px;transition:background .2s,border-color .2s;display:flex}.mgr-profile:hover{background:#5a67f20f;border-color:#5a67f240}.mgr-profile__avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:30px;height:30px;font-family:var(--hrms-font-head);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.mgr-profile__info{flex-direction:column;gap:1px;display:flex}.mgr-profile__name{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.8rem;font-weight:600;overflow:hidden}.mgr-profile__role{color:var(--hrms-text-muted);font-size:.65rem;font-weight:500}.mgr-content{flex:1;overflow:hidden auto}@keyframes mgr-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}@media (width<=1024px){:root{--sb-width-open:240px}}@media (width<=768px){.mgr-main--shifted,.mgr-main--full{margin-left:0}.mgr-mobile-toggle{display:flex}.mgr-topbar{height:60px;padding:0 16px}.mgr-profile__info{display:none}.mgr-profile{border-radius:50%;padding:5px}}@media (width<=400px){.mgr-topbar{gap:10px;padding:0 12px}}.mgr-notif{border:1.5px solid var(--hrms-border);width:38px;height:38px;color:var(--hrms-text-secondary);cursor:pointer;background:#fafbff;border-radius:11px;justify-content:center;align-items:center;font-size:.9rem;transition:background .2s,color .2s,border-color .2s;display:flex;position:relative}.mgr-notif:hover{color:var(--hrms-primary);background:#5a67f214;border-color:#5a67f240}.mgr-notif__dot{background:var(--hrms-danger);color:#fff;min-width:18px;height:18px;font-family:var(--hrms-font-head);border:2px solid var(--hrms-card);border-radius:100px;justify-content:center;align-items:center;padding:0 4px;font-size:.6rem;font-weight:700;animation:1.5s ease-in-out infinite mgr-bell-pulse;display:flex;position:absolute;top:-5px;right:-5px}@keyframes mgr-bell-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.mgr-dashboard-loading{background:var(--hrms-bg);min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.mgr-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite mgr-spin}.mgr-dashboard-error{background:var(--hrms-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60vh;display:flex}.mgr-dashboard-error .error-icon{color:var(--hrms-danger);font-size:3rem}.mgr-dashboard-error h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary)}.mgr-dashboard-error p{color:var(--hrms-text-secondary)}.mgr-retry-btn{background:var(--hrms-primary);color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;padding:10px 24px;font-weight:600;transition:all .2s}.mgr-retry-btn:hover{background:var(--hrms-primary-dark);transform:translateY(-2px)}.mgr-dashboard{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.mgr-welcome{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:24px;display:flex}.mgr-welcome__greeting{opacity:.9;letter-spacing:.05em;font-size:.85rem}.mgr-welcome h1{font-family:var(--hrms-font-head);margin-top:4px;font-size:1.8rem;font-weight:700}.mgr-welcome p{opacity:.9;margin-top:8px;font-size:.85rem}.mgr-welcome__date{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:16px;align-items:center;gap:12px;padding:12px 20px;display:flex}.mgr-welcome__date svg{font-size:1.2rem}.mgr-welcome__date div{flex-direction:column;display:flex}.mgr-welcome__date span{font-size:.9rem;font-weight:600}.mgr-welcome__date small{opacity:.8;font-size:.7rem}.mgr-today-banner{border-radius:16px;align-items:center;gap:16px;margin-bottom:24px;padding:16px 24px;display:flex}.mgr-today-banner.mgr-banner-holiday{border-left:4px solid var(--hrms-success);background:linear-gradient(135deg,#10b9811a,#0596690d)}.mgr-today-banner.mgr-banner-weekend{border-left:4px solid var(--hrms-warning);background:linear-gradient(135deg,#f59e0b1a,#d977060d)}.mgr-today-banner .mgr-banner-icon{font-size:2rem}.mgr-banner-holiday .mgr-today-banner .mgr-banner-icon{color:var(--hrms-success)}.mgr-banner-weekend .mgr-today-banner .mgr-banner-icon{color:var(--hrms-warning)}.mgr-today-banner .mgr-banner-content h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:1rem}.mgr-today-banner .mgr-banner-content p{color:var(--hrms-text-secondary);font-size:.8rem}.mgr-stats-grid{grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:28px;display:grid}.mgr-stat-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;align-items:center;gap:12px;padding:16px;transition:transform .2s,box-shadow .2s;display:flex}.mgr-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0d0f1a14}.mgr-stat-card__icon{border-radius:14px;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.2rem;display:flex}.mgr-stat-card__icon.mgr-icon-team{color:var(--hrms-primary);background:#5a67f21a}.mgr-stat-card__icon.mgr-icon-present{color:var(--hrms-success);background:#10b9811a}.mgr-stat-card__icon.mgr-icon-attendance{color:var(--hrms-info);background:#3b82f61a}.mgr-stat-card__icon.mgr-icon-task{color:var(--hrms-warning);background:#f59e0b1a}.mgr-stat-card__icon.mgr-icon-leave{color:var(--hrms-danger);background:#ef44441a}.mgr-stat-card__icon.mgr-icon-rating{color:#fbbf24;background:#f59e0b1a}.mgr-stat-card__info{flex:1}.mgr-stat-card__label{text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);margin-bottom:4px;font-size:.65rem;font-weight:600;display:block}.mgr-stat-card__value{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.4rem;font-weight:700}.mgr-stat-card small{color:var(--hrms-text-muted);font-size:.65rem;display:block}.mgr-stat-card .mgr-warning{color:var(--hrms-danger)}.mgr-stat-card .mgr-holiday-text{color:var(--hrms-success)}.mgr-tabs{border-bottom:1px solid var(--hrms-border);gap:8px;margin-bottom:24px;padding-bottom:12px;display:flex}.mgr-tab{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 24px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.mgr-tab:hover{color:var(--hrms-primary);background:#5a67f20d}.mgr-tab.active{color:var(--hrms-primary);background:#5a67f21a}.mgr-tab-content{min-height:400px}.mgr-two-column{grid-template-columns:1fr 1fr;gap:24px;display:grid}.mgr-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;margin-bottom:24px;padding:24px}.mgr-card:last-child{margin-bottom:0}.mgr-card__header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.mgr-card__header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.mgr-card__header h3 svg{color:var(--hrms-primary)}.mgr-card.mgr-card-full{grid-column:span 2}.mgr-card-badge{color:var(--hrms-primary);background:#5a67f21a;border-radius:20px;padding:4px 12px;font-size:.7rem;font-weight:600}.mgr-card-badge.mgr-badge-warning{color:var(--hrms-warning);background:#f59e0b1a}.mgr-attendance-header{color:var(--hrms-text-muted);text-transform:uppercase;background:#fafbff;border-radius:12px;grid-template-columns:1fr .8fr .5fr;margin-bottom:12px;padding:10px 12px;font-size:.7rem;font-weight:600;display:grid}.mgr-attendance-list{flex-direction:column;gap:12px;display:flex}.mgr-attendance-item{background:#fafbff;border-radius:14px;justify-content:space-between;align-items:center;padding:12px;transition:all .2s;display:flex}.mgr-attendance-item:hover{background:#f5f7ff}.mgr-attendance-info{flex:1;align-items:center;gap:12px;display:flex}.mgr-attendance-info div{flex-direction:column;display:flex}.mgr-attendance-info div strong{color:var(--hrms-text-primary);font-size:.85rem}.mgr-attendance-info div .mgr-attendance-id{color:var(--hrms-text-muted);font-size:.65rem}.mgr-attendance-info div small{color:var(--hrms-text-muted);margin-top:2px;font-size:.6rem}.mgr-attendance-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:42px;height:42px;font-family:var(--hrms-font-head);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex;position:relative}.mgr-role-badge{color:var(--hrms-primary);border:1px solid var(--hrms-border);background:#fff;border-radius:6px;padding:2px 4px;font-size:.5rem;font-weight:700;position:absolute;bottom:-4px;right:-4px}.mgr-attendance-status{border-radius:20px;align-items:center;gap:6px;min-width:110px;padding:4px 10px;font-size:.7rem;font-weight:600;display:flex}.mgr-attendance-status svg{font-size:.7rem}.mgr-attendance-status.status-on-time{color:var(--hrms-success);background:#10b9811a}.mgr-attendance-status.status-late{color:var(--hrms-warning);background:#f59e0b1a}.mgr-attendance-status.status-absent{color:var(--hrms-danger);background:#ef44441a}.mgr-attendance-status.status-half-day{color:var(--hrms-info);background:#3b82f61a}.mgr-attendance-status.status-holiday{color:var(--hrms-success);background:#10b9811a}.mgr-attendance-status.status-weekend{color:var(--hrms-warning);background:#f59e0b1a}.mgr-attendance-status.status-on-leave{color:var(--hrms-danger);background:#ef44441a}.mgr-view-btn{border:1px solid var(--hrms-border);color:var(--hrms-text-secondary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:4px;padding:6px 14px;font-size:.7rem;font-weight:600;transition:all .2s;display:flex}.mgr-view-btn:hover:not(:disabled){background:var(--hrms-primary);border-color:var(--hrms-primary);color:#fff}.mgr-view-btn:disabled{opacity:.5;cursor:not-allowed}.mgr-rates-list{flex-direction:column;gap:16px;display:flex}.mgr-rate-item .mgr-rate-info{justify-content:space-between;margin-bottom:6px;display:flex}.mgr-rate-item .mgr-rate-info .mgr-rate-name-wrap{align-items:center;gap:8px;display:flex}.mgr-rate-item .mgr-rate-info .mgr-rate-name-wrap svg{color:var(--hrms-primary);font-size:.7rem}.mgr-rate-item .mgr-rate-info .mgr-rate-name{color:var(--hrms-text-primary);font-size:.8rem;font-weight:500}.mgr-rate-item .mgr-rate-info .mgr-role-tag{color:var(--hrms-primary);background:#5a67f21a;border-radius:10px;padding:2px 6px;font-size:.6rem}.mgr-rate-item .mgr-rate-info .mgr-rate-days{color:var(--hrms-text-muted);font-size:.7rem}.mgr-rate-item .mgr-rate-bar-wrapper{background:var(--hrms-border);border-radius:14px;height:28px;position:relative;overflow:hidden}.mgr-rate-item .mgr-rate-bar{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));border-radius:14px;height:100%;transition:width .3s}.mgr-rate-item .mgr-rate-percent{color:#fff;text-shadow:0 0 2px #0000004d;font-size:.7rem;font-weight:600;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.mgr-leave-list{flex-direction:column;gap:12px;display:flex}.mgr-leave-item{background:#fafbff;border-radius:14px;align-items:flex-start;gap:12px;padding:12px;display:flex}.mgr-leave-avatar{width:40px;height:40px;color:var(--hrms-danger);background:#ef44441a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.mgr-leave-info{flex:1}.mgr-leave-info strong{color:var(--hrms-text-primary);font-size:.85rem;display:block}.mgr-leave-info small{color:var(--hrms-text-muted);font-size:.65rem}.mgr-leave-info .mgr-leave-reason{color:var(--hrms-text-secondary);margin-top:4px;font-size:.7rem}.mgr-leave-status{border-radius:20px;padding:4px 10px;font-size:.65rem;font-weight:600}.mgr-leave-status.pending{color:var(--hrms-warning);background:#f59e0b1a}.mgr-upcoming-list{flex-direction:column;gap:10px;display:flex}.mgr-upcoming-item{border-bottom:1px dashed var(--hrms-border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.mgr-upcoming-item .mgr-upcoming-name{color:var(--hrms-text-primary);font-size:.8rem;font-weight:500}.mgr-upcoming-item .mgr-upcoming-date{color:var(--hrms-text-muted);font-size:.7rem}.mgr-upcoming-item:last-child{border-bottom:none}.mgr-task-stats{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.mgr-task-stat{text-align:center}.mgr-task-stat span{color:var(--hrms-text-muted);margin-bottom:4px;font-size:.65rem;display:block}.mgr-task-stat strong{font-size:1.1rem;font-weight:700}.mgr-task-stat strong.text-success{color:var(--hrms-success)}.mgr-task-stat strong.text-warning{color:var(--hrms-warning)}.mgr-task-stat strong.text-danger{color:var(--hrms-danger)}.mgr-recent-tasks{flex-direction:column;gap:12px;display:flex}.mgr-recent-task{background:#fafbff;border-radius:12px;justify-content:space-between;align-items:center;padding:12px;display:flex}.mgr-recent-task .mgr-recent-task-info strong{color:var(--hrms-text-primary);font-size:.8rem;display:block}.mgr-recent-task .mgr-recent-task-info small{color:var(--hrms-text-muted);font-size:.65rem}.mgr-task-badge{border-radius:20px;padding:4px 10px;font-size:.65rem;font-weight:600}.mgr-task-badge.badge-complete{color:var(--hrms-success);background:#10b9811a}.mgr-task-badge.badge-pending{color:var(--hrms-warning);background:#f59e0b1a}.mgr-performance-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:16px;display:grid}.mgr-performance-card{background:#fafbff;border-radius:16px;align-items:center;gap:16px;padding:16px;transition:all .2s;display:flex}.mgr-performance-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0d0f1a14}.mgr-performance-avatar{color:#fff;width:55px;height:55px;font-family:var(--hrms-font-head);background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.3rem;font-weight:700;display:flex}.mgr-performance-details{flex:1}.mgr-performance-details h4{color:var(--hrms-text-primary);margin-bottom:2px;font-size:.9rem;font-weight:600}.mgr-performance-details .mgr-role-tag{color:var(--hrms-primary);background:#5a67f21a;border-radius:10px;margin-bottom:6px;padding:2px 8px;font-size:.6rem;display:inline-block}.mgr-performance-details small{color:var(--hrms-text-muted);margin-top:4px;font-size:.6rem;display:block}.mgr-performance-stars{align-items:center;gap:3px;margin-top:6px;display:flex}.mgr-performance-stars svg{font-size:.7rem}.mgr-performance-stars .star-filled{color:#fbbf24}.mgr-performance-stars .star-empty{color:var(--hrms-border)}.mgr-performance-stars span{color:var(--hrms-text-muted);margin-left:6px;font-size:.7rem}.mgr-top-performer{background:linear-gradient(135deg,#fbbf2426,#f59e0b14);border-radius:16px;align-items:center;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.mgr-top-performer .mgr-trophy-icon{color:#fbbf24;font-size:2rem}.mgr-top-performer div{flex:1}.mgr-top-performer span{color:var(--hrms-warning);margin-bottom:4px;font-size:.7rem;display:block}.mgr-top-performer strong{color:var(--hrms-text-primary);font-size:1rem;display:block}.mgr-top-performer small{color:var(--hrms-text-muted);font-size:.65rem}.mgr-empty-state{text-align:center;padding:40px 20px}.mgr-empty-state svg{color:var(--hrms-text-muted);margin-bottom:12px;font-size:2rem}.mgr-empty-state p{color:var(--hrms-text-secondary)}.mgr-empty-state.mgr-empty-small{padding:20px}.mgr-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.mgr-modal{background:var(--hrms-card);border-radius:24px;width:100%;max-width:400px;animation:.3s slideUp;overflow:hidden}.mgr-modal__header{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));justify-content:space-between;align-items:flex-start;padding:24px;display:flex;position:relative}.mgr-modal__avatar{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;width:60px;height:60px;font-family:var(--hrms-font-head);background:#fff3;border-radius:16px;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.mgr-modal__close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.mgr-modal__close:hover{background:#ffffff4d}.mgr-modal__close svg{font-size:1rem}.mgr-modal__body{padding:24px}.mgr-modal h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:1.3rem;font-weight:700}.mgr-modal__id{color:var(--hrms-text-muted);margin-bottom:8px;font-size:.7rem}.mgr-modal__info{flex-direction:column;gap:12px;margin-top:16px;display:flex}.mgr-modal__info-item{background:#fafbff;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.mgr-modal__info-item svg{color:var(--hrms-primary);font-size:.9rem}.mgr-modal__info-item div{flex:1}.mgr-modal__info-item label{text-transform:uppercase;color:var(--hrms-text-muted);margin-bottom:2px;font-size:.6rem;font-weight:600;display:block}.mgr-modal__info-item p{color:var(--hrms-text-primary);font-size:.8rem;font-weight:500}.mgr-modal-role{color:var(--hrms-primary);background:#5a67f21a;border-radius:12px;padding:3px 10px;font-size:.65rem;display:inline-block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1200px){.mgr-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=1024px){.mgr-dashboard{padding:20px}.mgr-two-column{gap:20px}.mgr-performance-grid{grid-template-columns:1fr}}@media (width<=768px){.mgr-dashboard{padding:16px}.mgr-welcome{text-align:center;flex-direction:column}.mgr-welcome h1{font-size:1.4rem}.mgr-welcome__date{justify-content:center;width:100%}.mgr-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.mgr-two-column{grid-template-columns:1fr}.mgr-tabs{white-space:nowrap;overflow-x:auto}.mgr-attendance-header{display:none}.mgr-attendance-item{flex-wrap:wrap;gap:12px}.mgr-attendance-item .mgr-view-btn{justify-content:center;width:100%}.mgr-task-stats{grid-template-columns:repeat(2,1fr)}.mgr-performance-card{text-align:center;flex-direction:column}}@media (width<=480px){.mgr-dashboard{padding:12px}.mgr-stats-grid{grid-template-columns:1fr}.mgr-stat-card__value{font-size:1.2rem}.mgr-card{padding:16px}.mgr-attendance-status{min-width:auto;font-size:.65rem}}.mp-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.mp-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:38px;height:38px;animation:.75s linear infinite mp-spin}.mp-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.mp-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.mp-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:7px;margin-bottom:10px;padding:5px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.mp-page-header__badge svg{font-size:.65rem}.mp-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:5px;font-size:1.8rem;font-weight:700}.mp-page-header p{color:var(--hrms-text-secondary);font-size:.875rem}.mp-edit-trigger{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;white-space:nowrap;border:none;border-radius:11px;flex-shrink:0;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 16px #5a67f24d}.mp-edit-trigger svg{font-size:.8rem}.mp-edit-trigger:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5a67f266}.mp-layout{grid-template-columns:280px 1fr;align-items:start;gap:20px;display:grid}.mp-avatar-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;flex-direction:column;align-items:center;gap:10px;padding:32px 24px 24px;animation:.4s cubic-bezier(.22,1,.36,1) both mp-fade-in;display:flex;box-shadow:0 2px 16px #0d0f1a0d}.mp-avatar-card__circle{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:80px;height:80px;font-family:var(--hrms-font-head);border-radius:22px;justify-content:center;align-items:center;margin-bottom:4px;font-size:2rem;font-weight:700;display:flex;box-shadow:0 8px 24px #5a67f24d}.mp-avatar-card__name{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);text-align:center;letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.mp-avatar-card__meta{border:1px solid var(--hrms-border);border-radius:12px;width:100%;margin-top:8px;overflow:hidden}.mp-avatar-card__meta-item{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;gap:8px;padding:11px 14px;display:flex}.mp-avatar-card__meta-item:last-child{border-bottom:none}.mp-avatar-card__meta-item span{color:var(--hrms-text-muted);font-size:.72rem;font-weight:500}.mp-avatar-card__meta-item strong{color:var(--hrms-text-primary);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:130px;font-size:.8rem;font-weight:600;overflow:hidden}.mp-avatar-card__salary{background:linear-gradient(135deg,#5a67f214,#00d2c80f);border:1px solid #5a67f226;border-radius:12px;align-items:center;gap:12px;width:100%;margin-top:4px;padding:14px;display:flex}.mp-avatar-card__salary svg{color:var(--hrms-primary);flex-shrink:0;font-size:1rem}.mp-avatar-card__salary div{flex-direction:column;gap:2px;display:flex}.mp-avatar-card__salary span{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:500}.mp-avatar-card__salary strong{font-family:var(--hrms-font-head);color:var(--hrms-primary);font-size:1rem;font-weight:700}.mp-role{letter-spacing:.06em;text-transform:uppercase;border-radius:100px;align-items:center;padding:4px 12px;font-size:.68rem;font-weight:700;display:inline-flex}.mp-role--hr{color:#7c3aed;background:#8b5cf61a}.mp-role--manager{color:var(--hrms-primary-dark);background:#5a67f21a}.mp-role--employee{color:#059669;background:#10b9811a}.mp-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.45s cubic-bezier(.22,1,.36,1) both mp-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.mp-card__header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.mp-card__title-wrap{align-items:center;gap:13px;display:flex}.mp-card__title-wrap h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:3px;font-size:.95rem;font-weight:700}.mp-card__title-wrap p{color:var(--hrms-text-muted);font-size:.775rem}.mp-card__icon{width:38px;height:38px;color:var(--hrms-primary);background:#5a67f21a;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.mp-card__icon--edit{color:#d97706;background:#f59e0b1a}.mp-details-grid{grid-template-columns:1fr 1fr;display:grid}.mp-detail-item{border-bottom:1px solid #f1f4fd;border-right:1px solid #f1f4fd;align-items:flex-start;gap:13px;padding:20px 28px;transition:background .15s;display:flex}.mp-detail-item:nth-child(2n){border-right:none}.mp-detail-item:nth-last-child(-n+2){border-bottom:none}.mp-detail-item:hover{background:#fafbff}.mp-detail-item__icon{width:34px;height:34px;color:var(--hrms-primary);background:#f0f2ff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.8rem;display:flex}.mp-detail-item__content{flex-direction:column;gap:5px;min-width:0;display:flex}.mp-detail-item__content label{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:7px;font-size:.68rem;font-weight:600;display:flex}.mp-detail-item__content p{color:var(--hrms-text-primary);word-break:break-word;font-size:.9rem;font-weight:500}.mp-locked-badge{color:var(--hrms-text-muted);letter-spacing:.05em;text-transform:uppercase;background:#94a3b81f;border-radius:5px;align-items:center;padding:2px 7px;font-size:.6rem;font-weight:600;display:inline-flex}.mp-notice{background:#f59e0b12;border:1px solid #f59e0b33;border-radius:12px;align-items:flex-start;gap:12px;margin:24px 28px 0;padding:14px 16px;display:flex}.mp-notice svg{color:#d97706;flex-shrink:0;margin-top:1px;font-size:.95rem}.mp-notice p{color:var(--hrms-text-secondary);font-size:.825rem;line-height:1.5}.mp-notice p strong{color:var(--hrms-text-primary);font-weight:600}.mp-form{flex-direction:column;gap:20px;padding:24px 28px;display:flex}.mp-form__actions{border-top:1px solid var(--hrms-border);gap:12px;margin-top:4px;padding-top:8px;display:flex}.mp-field{flex-direction:column;gap:8px;display:flex}.mp-field label{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.mp-field__wrap{align-items:center;display:flex;position:relative}.mp-field__wrap input,.mp-field__wrap textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:#fafbff;border-radius:11px;outline:none;padding:12px 14px 12px 44px;font-size:.875rem;transition:border-color .2s,box-shadow .2s,background .2s}.mp-field__wrap input::placeholder,.mp-field__wrap textarea::placeholder{color:var(--hrms-text-muted)}.mp-field__wrap input:focus,.mp-field__wrap textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.mp-field__wrap textarea{resize:vertical;min-height:100px;padding-top:12px;line-height:1.55}.mp-field__wrap--textarea{align-items:flex-start}.mp-field__icon{color:var(--hrms-text-muted);pointer-events:none;font-size:.82rem;transition:color .2s;position:absolute;left:14px}.mp-field__icon--top{top:13px}.mp-field:focus-within .mp-field__icon{color:var(--hrms-primary)}.mp-field__err{color:var(--hrms-danger);font-size:.775rem;font-weight:500}.mp-field--error .mp-field__wrap input,.mp-field--error .mp-field__wrap textarea{border-color:var(--hrms-danger);background:#fff8f8;box-shadow:0 0 0 4px #ef444414}.mp-field--error .mp-field__icon{color:var(--hrms-danger)}.mp-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:11px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s,opacity .2s;display:inline-flex}.mp-btn svg{font-size:.8rem}.mp-btn--primary{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;flex:1;justify-content:center;box-shadow:0 4px 16px #5a67f24d}.mp-btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5a67f266}.mp-btn--ghost{color:var(--hrms-text-secondary);border:1.5px solid var(--hrms-border);background:#fff;flex:1;justify-content:center}.mp-btn--ghost:hover{color:var(--hrms-primary);background:#f0f2ff;border-color:#5a67f24d}@keyframes mp-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes mp-spin{to{transform:rotate(360deg)}}@media (width<=1024px){.mp-layout{grid-template-columns:240px 1fr}}@media (width<=860px){.mp-layout{grid-template-columns:1fr}.mp-avatar-card{flex-flow:wrap;gap:14px;padding:20px}.mp-avatar-card__circle{border-radius:16px;width:60px;height:60px;font-size:1.5rem}.mp-avatar-card__meta,.mp-avatar-card__salary{width:100%}}@media (width<=768px){.mp-container{padding:20px 16px}.mp-page-header h1{font-size:1.4rem}.mp-details-grid{grid-template-columns:1fr}.mp-detail-item{padding:16px 20px;border-right:none!important}.mp-detail-item:nth-last-child(-n+2){border-bottom:1px solid #f1f4fd}.mp-detail-item:last-child{border-bottom:none}.mp-card__header{padding:18px 20px}.mp-notice{margin:20px 20px 0}.mp-form{padding:20px}.mp-form__actions{flex-direction:column}}@media (width<=400px){.mp-container{padding:14px 12px}}.mp-details-section{border-bottom:1px solid var(--hrms-border);margin-bottom:28px;padding-bottom:20px;padding-left:20px}.mp-details-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.mp-details-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);align-items:center;gap:8px;margin-bottom:16px;font-size:.85rem;font-weight:600;display:flex}.mp-details-section h4:before{content:"";background:var(--hrms-primary);border-radius:2px;width:3px;height:16px}.mp-file-link{color:var(--hrms-primary);font-size:.8rem;font-weight:500;text-decoration:none}.mp-file-link:hover{text-decoration:underline}.mp-edit-section{border-top:1px solid var(--hrms-border);margin-top:24px;padding-top:20px}.mp-card__footer{border-top:1px solid var(--hrms-border);text-align:right;margin-top:24px;padding-top:20px;padding-bottom:20px;padding-right:20px}.mp-edit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.mp-edit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #5a67f24d}@media (width<=768px){.mp-details-section{margin-bottom:20px;padding-bottom:16px}.mp-card__footer{text-align:center}.mp-edit-btn{justify-content:center;width:100%}}.mp-page-header .mp-header-actions{flex-wrap:wrap;gap:12px;display:flex}.mp-password-trigger{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);font-family:var(--hrms-font-head);cursor:pointer;white-space:nowrap;background:#fff;border-radius:11px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.mp-password-trigger svg{font-size:.8rem}.mp-password-trigger:hover{border-color:var(--hrms-primary);color:var(--hrms-primary);background:#f8f9ff}.mp-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.mp-password-modal{background:var(--hrms-card);border-radius:20px;width:100%;max-width:450px;max-height:90vh;animation:.3s mp-modal-in;overflow:auto}.mp-password-modal .mp-modal-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.mp-password-modal .mp-modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.mp-password-modal .mp-modal-header .mp-modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.mp-password-modal .mp-modal-header .mp-modal-close:hover{color:var(--hrms-danger)}.mp-password-modal .mp-modal-body{padding:24px}.mp-password-modal .mp-modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.mp-password-modal .mp-modal-footer .mp-modal-cancel{font-family:var(--hrms-font-head);cursor:pointer;border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.mp-password-modal .mp-modal-footer .mp-modal-cancel:hover{background:#f8f9ff}.mp-password-modal .mp-modal-footer .mp-modal-save{font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.mp-password-modal .mp-modal-footer .mp-modal-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.mp-password-modal .mp-modal-footer .mp-modal-save:disabled{opacity:.6;cursor:not-allowed}.mp-modal-info{border-left:3px solid var(--hrms-info);background:#3b82f614;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.mp-modal-info svg{color:var(--hrms-info);margin-top:2px;font-size:.9rem}.mp-modal-info p{color:var(--hrms-text-secondary);font-size:.75rem;line-height:1.4}.mp-password-field{margin-bottom:16px}.mp-password-field label{color:var(--hrms-text-primary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.mp-password-field .mp-password-input-wrap{align-items:center;display:flex;position:relative}.mp-password-field .mp-password-input-wrap input{border:1.5px solid var(--hrms-border);width:100%;font-size:.85rem;font-family:var(--hrms-font-body);background:#fafbff;border-radius:10px;padding:10px 40px 10px 14px;transition:all .2s}.mp-password-field .mp-password-input-wrap input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);background:#fff;outline:none}.mp-password-field .mp-password-input-wrap input.error{border-color:var(--hrms-danger);box-shadow:0 0 0 3px #ef44441a}.mp-password-field .mp-password-input-wrap .mp-password-toggle{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:.9rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.mp-password-field .mp-password-input-wrap .mp-password-toggle:hover{color:var(--hrms-text-primary)}.mp-password-field .mp-password-error{color:var(--hrms-danger);margin-top:4px;font-size:.7rem;display:block}.mp-password-requirements{background:#f8f9ff;border-radius:10px;margin-top:16px;padding:12px}.mp-password-requirements p{color:var(--hrms-text-secondary);margin-bottom:6px;font-size:.75rem;font-weight:600}.mp-password-requirements ul{margin:0;padding:0;list-style:none}.mp-password-requirements ul li{color:var(--hrms-text-muted);padding:2px 0 2px 16px;font-size:.7rem;position:relative}.mp-password-requirements ul li:before{content:"•";color:var(--hrms-primary);position:absolute;left:0}@keyframes mp-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.mp-page-header{flex-direction:column;align-items:flex-start}.mp-page-header .mp-header-actions{flex-direction:column;width:100%}.mp-page-header .mp-edit-trigger,.mp-page-header .mp-password-trigger{justify-content:center;width:100%}.mp-password-modal{width:95%;margin:16px}.mp-modal-footer{flex-direction:column}}.manager-attendance-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.manager-attendance-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite ma-spin}@keyframes ma-spin{to{transform:rotate(360deg)}}.manager-attendance{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.team-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.45s cubic-bezier(.22,1,.36,1) both ma-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.team-card .team-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.team-card .team-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.team-card .team-header h2 svg{color:var(--hrms-primary);font-size:1rem}.team-card .team-header .team-filters{flex-wrap:wrap;gap:12px;display:flex}.team-card .team-header .search-box{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.team-card .team-header .search-box svg{color:var(--hrms-text-muted);font-size:.85rem}.team-card .team-header .search-box input{background:0 0;border:none;outline:none;min-width:200px;font-size:.85rem}.team-card .team-header .date-filter input{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;outline:none;padding:8px 14px;font-size:.85rem}.history-table,.team-table{border-collapse:collapse;width:100%}.history-table thead,.team-table thead{background:#f8f9ff}.history-table th,.team-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:16px 20px;font-size:.75rem;font-weight:700}.history-table td,.team-table td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:16px 20px;font-size:.85rem}.history-table tr:hover td,.team-table tr:hover td{background:#fafbff}.status-badge-small.status-late,.status-badge-small.status-half-day{color:#d97706;background:#f59e0b1a}.view-btn{color:var(--hrms-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;transition:all .2s}.view-btn:hover{background:#5a67f21a}.team-summary{border-top:1px solid var(--hrms-border);background:#f8f9ff;gap:24px;padding:20px 28px;display:flex}.team-summary .summary-item{color:var(--hrms-text-secondary);align-items:center;gap:8px;font-size:.85rem;display:flex}.team-summary .summary-item strong{color:var(--hrms-text-primary);font-size:1rem}@keyframes ma-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.manager-attendance{padding:24px}.attendance-header .header-left h1{font-size:1.5rem}.team-header{flex-direction:column;align-items:flex-start!important}}@media (width<=768px){.manager-attendance{padding:16px}.attendance-header{flex-direction:column;align-items:flex-start}.attendance-tabs{flex-direction:column;gap:8px}.attendance-tabs .tab-btn{justify-content:center}.today-card{padding:18px 20px}.status-section{text-align:center;flex-direction:column}.status-section .status-icon{margin:0 auto}.action-buttons{flex-direction:column}.checkin-btn,.checkout-btn{justify-content:center;width:100%}.team-filters{flex-direction:column;width:100%}.search-box,.search-box input,.date-filter input{width:100%}.history-table th,.history-table td,.team-table th,.team-table td{padding:12px 16px}.team-summary{flex-direction:column;gap:12px}.pagination{flex-wrap:wrap;gap:10px}.pagination button{padding:6px 14px}}@media (width<=480px){.manager-attendance{padding:12px}.history-table th,.history-table td,.team-table th,.team-table td{padding:10px 12px;font-size:.75rem}.status-badge-small{padding:2px 6px;font-size:.6rem}.pagination button span{display:none}.pagination button{padding:8px 12px}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f22e;--hrms-accent:#00d2c8;--hrms-dark:#0d0f1a;--hrms-dark-2:#13162b;--hrms-border-dark:#ffffff12;--hrms-text-white:#fff;--hrms-text-muted-light:#ffffff73;--hrms-text-soft:#ffffffb3;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif;--sb-width-open:260px;--sb-width-closed:72px;--sb-transition:.3s cubic-bezier(.4, 0, .2, 1)}.hrs-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99;background:#0d0f1a8c;display:none;position:fixed;inset:0}.hrs-sidebar{z-index:100;border-right:1px solid var(--hrms-border-dark);height:100vh;font-family:var(--hrms-font-body);transition:width var(--sb-transition);background:linear-gradient(#13162b 0%,#0d0f1a 100%);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden;box-shadow:4px 0 24px #00000040}.hrs-sidebar--open{width:var(--sb-width-open)}.hrs-sidebar--closed{width:var(--sb-width-closed)}.hrs-header{border-bottom:1px solid var(--hrms-border-dark);flex-shrink:0;justify-content:space-between;align-items:center;min-height:72px;padding:20px 16px;display:flex}.hrs-sidebar--closed .hrs-header{justify-content:center;padding:20px 0}.hrs-brand{align-items:center;gap:12px;display:flex;overflow:hidden}.hrs-brand__icon{border-radius:10px;flex-shrink:0;width:38px;height:38px;overflow:hidden}.hrs-brand__icon svg{width:100%;height:100%;display:block}.hrs-brand__text{flex-direction:column;animation:.2s both hrs-fade-in;display:flex;overflow:hidden}.hrs-brand__name{font-family:var(--hrms-font-head);color:var(--hrms-text-white);letter-spacing:-.01em;white-space:nowrap;font-size:1rem;font-weight:700}.hrs-brand__sub{color:var(--hrms-text-muted-light);letter-spacing:.04em;white-space:nowrap;font-size:.68rem;font-weight:400}.hrs-toggle{border:1px solid var(--hrms-border-dark);width:32px;height:32px;color:var(--hrms-text-soft);cursor:pointer;background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;transition:background .2s,color .2s,border-color .2s;display:flex}.hrs-toggle:hover{background:var(--hrms-primary-glow);color:var(--hrms-text-white);border-color:#5a67f24d}.hrs-toggle--alone{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;width:36px;height:36px;font-size:.9rem}.hrs-nav-label{letter-spacing:.1em;text-transform:uppercase;color:var(--hrms-text-muted-light);white-space:nowrap;flex-shrink:0;padding:20px 20px 8px;font-size:.65rem;font-weight:600;animation:.2s both hrs-fade-in}.hrs-nav{flex-direction:column;flex:1;padding:8px 0;display:flex;overflow:hidden auto}.hrs-nav::-webkit-scrollbar{width:3px}.hrs-nav::-webkit-scrollbar-track{background:0 0}.hrs-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.hrs-nav__item{height:48px;color:var(--hrms-text-soft);white-space:nowrap;border-radius:12px;align-items:center;gap:12px;margin:2px 10px;padding:0 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:flex;position:relative;overflow:hidden}.hrs-sidebar--closed .hrs-nav__item{justify-content:center;margin:2px 10px;padding:0}.hrs-nav__item:hover:not(.hrs-nav__item--active){color:var(--hrms-text-white);background:#ffffff0f}.hrs-nav__item:hover:not(.hrs-nav__item--active) .hrs-nav__icon{color:var(--hrms-text-white)}.hrs-nav__item:hover:not(.hrs-nav__item--active) .hrs-nav__arrow{opacity:.5;transform:translate(2px)}.hrs-nav__item--active{color:var(--hrms-text-white);background:linear-gradient(135deg,#5a67f238 0%,#5a67f21a 100%)}.hrs-nav__item--active .hrs-nav__icon{color:var(--hrms-primary);filter:drop-shadow(0 0 6px #5a67f299)}.hrs-nav__item--active .hrs-nav__text{font-weight:600}.hrs-nav__item--active .hrs-nav__arrow{opacity:1;color:var(--hrms-primary);transform:translate(0)}.hrs-nav__item--active .hrs-nav__active-bar{opacity:1;transform:translateY(-50%)scaleY(1)}.hrs-nav__icon{color:var(--hrms-text-muted-light);flex-shrink:0;align-items:center;font-size:1rem;transition:color .2s,filter .2s;display:flex}.hrs-nav__text{flex:1;animation:.15s both hrs-fade-in}.hrs-nav__arrow{color:#0000;opacity:0;flex-shrink:0;font-size:.6rem;transition:opacity .2s,transform .2s,color .2s}.hrs-nav__active-bar{background:linear-gradient(180deg, var(--hrms-primary), var(--hrms-accent));opacity:0;border-radius:0 4px 4px 0;width:3px;height:60%;transition:opacity .2s,transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:50%;left:-10px;transform:translateY(-50%)scaleY(0)}.hrs-footer{border-top:1px solid var(--hrms-border-dark);flex-shrink:0;align-items:center;gap:10px;padding:16px 12px;display:flex}.hrs-sidebar--closed .hrs-footer{flex-direction:column;justify-content:center;padding:16px 0}.hrs-footer__profile{flex:1;align-items:center;gap:10px;animation:.2s both hrs-fade-in;display:flex;overflow:hidden}.hrs-footer__avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:34px;height:34px;font-family:var(--hrms-font-head);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.hrs-footer__info{flex-direction:column;display:flex;overflow:hidden}.hrs-footer__name{color:var(--hrms-text-white);white-space:nowrap;text-overflow:ellipsis;font-size:.825rem;font-weight:600;overflow:hidden}.hrs-footer__role{color:var(--hrms-text-muted-light);white-space:nowrap;font-size:.68rem}.hrs-logout{color:#ef4444bf;font-family:var(--hrms-font-body);cursor:pointer;white-space:nowrap;background:#ef44440f;border:1px solid #ef444433;border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;font-size:.825rem;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:flex}.hrs-logout svg{flex-shrink:0;font-size:.85rem}.hrs-logout span{animation:.2s both hrs-fade-in}.hrs-logout:hover{color:#ef4444;background:#ef444426;border-color:#ef444466}.hrs-sidebar--closed .hrs-logout{border-radius:12px;justify-content:center;width:44px;height:44px;padding:0}@keyframes hrs-fade-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media (width<=1024px){:root{--sb-width-open:240px}}@media (width<=768px){.hrs-overlay{display:block}.hrs-sidebar--closed{width:0;box-shadow:none;border-right:none}.hrs-sidebar--open{width:260px;box-shadow:8px 0 40px #0006}.hrs-sidebar--open .hrs-header{justify-content:space-between;padding:20px 16px}.hrs-sidebar--open .hrs-nav__item{justify-content:flex-start;padding:0 16px}.hrs-sidebar--open .hrs-footer{flex-direction:row;padding:16px 12px}.hrs-sidebar--open .hrs-logout{width:auto;height:auto;padding:8px 12px}}.hrs-nav__item--parent{cursor:pointer;text-align:left;width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-soft);background:0 0;border:none;font-size:.875rem;font-weight:500}.hrs-nav__item--parent.hrs-nav__item--active-parent{color:var(--hrms-text-white);background:linear-gradient(135deg,#5a67f238 0%,#5a67f21a 100%)}.hrs-nav__item--parent.hrs-nav__item--active-parent .hrs-nav__icon{color:var(--hrms-primary);filter:drop-shadow(0 0 6px #5a67f299)}.hrs-nav__chevron{color:var(--hrms-text-muted-light);flex-shrink:0;margin-left:auto;font-size:.65rem;transition:transform .25s}.hrs-nav__chevron--open{transform:rotate(180deg)}.hrs-submenu{background:#ffffff05;border-radius:10px;max-height:0;margin:0 10px 0 40px;transition:max-height .3s;overflow:hidden}.hrs-submenu--open{max-height:300px}.hrs-submenu__item{color:var(--hrms-text-soft);border-radius:8px;align-items:center;gap:10px;margin:4px 0;padding:10px 12px;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.hrs-submenu__item:hover{color:var(--hrms-text-white);background:#ffffff0f}.hrs-submenu__item--active{color:var(--hrms-primary);background:#5a67f226}.hrs-submenu__icon{align-items:center;width:20px;font-size:.75rem;display:flex}.hrs-submenu__text{flex:1}.hrs-sidebar--closed .hrs-nav__group{position:relative}.hrs-sidebar--closed .hrs-nav__item--parent{justify-content:center;padding:0}.hrs-sidebar--closed .hrs-nav__group:hover .hrs-nav__item--parent{background:#ffffff14}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f226;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif;--sb-width-open:260px;--sb-width-closed:72px;--sb-transition:.3s cubic-bezier(.4, 0, .2, 1);--topbar-height:68px}.hrl-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.hrl-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite hrl-spin}.hrl-layout{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);display:flex}.hrl-main{min-height:100vh;transition:margin-left var(--sb-transition);flex-direction:column;flex:1;min-width:0;display:flex}.hrl-main--shifted{margin-left:var(--sb-width-open)}.hrl-main--full{margin-left:var(--sb-width-closed)}.hrl-topbar{z-index:50;height:var(--topbar-height);background:var(--hrms-card);border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;gap:16px;padding:0 28px;display:flex;position:sticky;top:0;box-shadow:0 1px 12px #0d0f1a0d}.hrl-topbar__left{align-items:center;gap:16px;display:flex}.hrl-topbar__title{align-items:center;gap:10px;display:flex}.hrl-topbar__badge{color:var(--hrms-primary);font-family:var(--hrms-font-head);letter-spacing:.08em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:6px;padding:5px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.hrl-topbar__badge:before{content:"";background:var(--hrms-primary);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite hrl-pulse}.hrl-topbar__right{align-items:center;gap:12px;display:flex}.hrl-mobile-toggle{border:1.5px solid var(--hrms-border);width:36px;height:36px;color:var(--hrms-text-secondary);cursor:pointer;background:#fafbff;border-radius:10px;justify-content:center;align-items:center;font-size:.9rem;transition:background .2s,color .2s,border-color .2s;display:none}.hrl-mobile-toggle:hover{color:var(--hrms-primary);background:#5a67f214;border-color:#5a67f240}.hrl-profile{border:1.5px solid var(--hrms-border);cursor:pointer;background:#fafbff;border-radius:100px;align-items:center;gap:10px;padding:6px 12px 6px 6px;transition:background .2s,border-color .2s;display:flex}.hrl-profile:hover{background:#5a67f20f;border-color:#5a67f240}.hrl-profile__avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:30px;height:30px;font-family:var(--hrms-font-head);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.hrl-profile__info{flex-direction:column;gap:1px;display:flex}.hrl-profile__name{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.8rem;font-weight:600;overflow:hidden}.hrl-profile__role{color:var(--hrms-text-muted);font-size:.65rem;font-weight:500}.hrl-content{flex:1;overflow:hidden auto}@keyframes hrl-spin{to{transform:rotate(360deg)}}@keyframes hrl-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}@media (width<=1024px){:root{--sb-width-open:240px}}@media (width<=768px){.hrl-main--shifted,.hrl-main--full{margin-left:0}.hrl-mobile-toggle{display:flex}.hrl-topbar{height:60px;padding:0 16px}.hrl-profile__info{display:none}.hrl-profile{border-radius:50%;padding:5px}}@media (width<=400px){.hrl-topbar{gap:10px;padding:0 12px}}.hrl-notif{border:1.5px solid var(--hrms-border);width:38px;height:38px;color:var(--hrms-text-secondary);cursor:pointer;background:#fafbff;border-radius:11px;justify-content:center;align-items:center;font-size:.9rem;transition:background .2s,color .2s,border-color .2s;display:flex;position:relative}.hrl-notif:hover{color:var(--hrms-primary);background:#5a67f214;border-color:#5a67f240}.hrl-notif__dot{background:var(--hrms-danger);color:#fff;min-width:18px;height:18px;font-family:var(--hrms-font-head);border:2px solid var(--hrms-card);border-radius:100px;justify-content:center;align-items:center;padding:0 4px;font-size:.6rem;font-weight:700;animation:1.5s ease-in-out infinite hrl-bell-pulse;display:flex;position:absolute;top:-5px;right:-5px}@keyframes hrl-bell-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.hr-dashboard-loading{background:var(--hrms-bg);min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.hr-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite hr-spin}@keyframes hr-spin{to{transform:rotate(360deg)}}.hr-dashboard-error{background:var(--hrms-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60vh;display:flex}.hr-dashboard-error .error-icon{color:var(--hrms-danger);font-size:3rem}.hr-dashboard-error h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary)}.hr-dashboard-error p{color:var(--hrms-text-secondary)}.hr-retry-btn{background:var(--hrms-primary);color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;padding:10px 24px;font-weight:600;transition:all .2s}.hr-retry-btn:hover{background:var(--hrms-primary-dark);transform:translateY(-2px)}.hr-dashboard{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.hr-welcome{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:24px;display:flex}.hr-welcome__greeting{opacity:.9;letter-spacing:.05em;font-size:.85rem}.hr-welcome h1{font-family:var(--hrms-font-head);margin-top:4px;font-size:1.8rem;font-weight:700}.hr-welcome p{opacity:.9;margin-top:8px;font-size:.85rem}.hr-welcome__date{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:16px;align-items:center;gap:12px;padding:12px 20px;display:flex}.hr-welcome__date svg{font-size:1.2rem}.hr-welcome__date div{flex-direction:column;display:flex}.hr-welcome__date span{font-size:.9rem;font-weight:600}.hr-welcome__date small{opacity:.8;font-size:.7rem}.hr-stat-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;align-items:center;gap:12px;padding:16px;transition:transform .2s,box-shadow .2s;display:flex}.hr-stat-card__icon{border-radius:14px;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.2rem;display:flex}.hr-stat-card__icon.hr-icon-total{color:var(--hrms-primary);background:#5a67f21a}.hr-stat-card__icon.hr-icon-new{color:var(--hrms-success);background:#10b9811a}.hr-stat-card__icon.hr-icon-pending{color:var(--hrms-warning);background:#f59e0b1a}.hr-stat-card__icon.hr-icon-absent{color:var(--hrms-danger);background:#ef44441a}.hr-stat-card__icon.hr-icon-salary{color:var(--hrms-info);background:#3b82f61a}.hr-stat-card__icon.hr-icon-review{color:#fbbf24;background:#f59e0b1a}.hr-stat-card__info{flex:1}.hr-stat-card__label{text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);margin-bottom:4px;font-size:.65rem;font-weight:600;display:block}.hr-stat-card__value{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.4rem;font-weight:700}.hr-stat-card small{color:var(--hrms-text-muted);font-size:.65rem;display:block}.hr-tabs{border-bottom:1px solid var(--hrms-border);gap:8px;margin-bottom:24px;padding-bottom:12px;display:flex}.hr-tab{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 24px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.hr-tab:hover{color:var(--hrms-primary);background:#5a67f20d}.hr-tab.active{color:var(--hrms-primary);background:#5a67f21a}.hr-two-column{grid-template-columns:1fr 1fr;gap:24px;display:grid}.hr-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;margin-bottom:24px;padding:24px}.hr-card:last-child{margin-bottom:0}.hr-card__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.hr-card__header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.hr-card__header h3 svg{color:var(--hrms-primary)}.hr-card-badge{color:var(--hrms-primary);background:#5a67f21a;border-radius:20px;padding:4px 12px;font-size:.7rem;font-weight:600}.hr-badge-warning{color:var(--hrms-warning);background:#f59e0b1a;border-radius:20px;padding:4px 12px;font-size:.7rem;font-weight:600}.hr-department-list{flex-direction:column;gap:16px;display:flex}.hr-department-item{align-items:center;gap:12px;display:flex}.hr-department-item .hr-dept-name{width:100px;color:var(--hrms-text-primary);font-size:.8rem;font-weight:500}.hr-department-item .hr-dept-bar-wrapper{background:var(--hrms-border);border-radius:14px;flex:1;height:28px;position:relative;overflow:hidden}.hr-department-item .hr-dept-bar{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));border-radius:14px;height:100%;transition:width .3s}.hr-department-item .hr-dept-count{color:#fff;text-shadow:0 0 2px #0000004d;font-size:.7rem;font-weight:600;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.hr-salary-trend{flex-direction:column;gap:12px;display:flex}.hr-trend-item{align-items:center;gap:12px;display:flex}.hr-trend-item .hr-trend-month{width:40px;color:var(--hrms-text-secondary);font-size:.75rem;font-weight:500}.hr-trend-item .hr-trend-bar-wrapper{background:var(--hrms-border);border-radius:12px;flex:1;height:24px;overflow:hidden}.hr-trend-item .hr-trend-bar{background:linear-gradient(90deg, var(--hrms-info), var(--hrms-accent));border-radius:12px;height:100%;transition:width .3s}.hr-trend-item .hr-trend-amount{width:70px;color:var(--hrms-text-primary);font-size:.7rem;font-weight:600}.hr-leave-summary{flex-direction:column;gap:12px;display:flex}.hr-leave-summary-item{background:#fafbff;border-radius:12px;justify-content:space-between;align-items:center;padding:10px;display:flex}.hr-leave-summary-item .hr-leave-summary-info strong{color:var(--hrms-text-primary);font-size:.8rem;display:block}.hr-leave-summary-item .hr-leave-summary-info small{color:var(--hrms-text-muted);font-size:.65rem}.hr-alert-card{border-left:3px solid var(--hrms-warning);background:#f59e0b0d}.hr-alerts-list{flex-direction:column;gap:8px;display:flex}.hr-alert-item{border-bottom:1px dashed var(--hrms-border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.hr-alert-item .hr-alert-name{color:var(--hrms-text-primary);font-size:.8rem;font-weight:500}.hr-alert-item .hr-alert-balance{color:var(--hrms-warning);font-size:.7rem;font-weight:600}.hr-performance-summary{flex-direction:column;gap:12px;display:flex}.hr-performance-item{background:#fafbff;border-radius:12px;justify-content:space-between;align-items:center;padding:10px;display:flex}.hr-performance-item .hr-performance-info strong{color:var(--hrms-text-primary);font-size:.8rem;display:block}.hr-performance-item .hr-performance-stars{gap:2px;margin-top:4px;display:flex}.hr-performance-item .hr-performance-stars svg{font-size:.6rem}.hr-performance-item .hr-performance-stars .star-filled{color:#fbbf24}.hr-performance-item .hr-performance-stars .star-empty{color:var(--hrms-border)}.hr-performance-item .hr-performance-rating{color:var(--hrms-primary);font-size:.75rem;font-weight:600}.hr-filters{align-items:center;gap:12px;display:flex}.hr-search{position:relative}.hr-search svg{color:var(--hrms-text-muted);font-size:.8rem;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.hr-search input{border:1px solid var(--hrms-border);width:200px;font-size:.75rem;font-family:var(--hrms-font-body);border-radius:10px;padding:8px 12px 8px 32px}.hr-search input:focus{border-color:var(--hrms-primary);outline:none}.hr-filter-select{border:1px solid var(--hrms-border);font-size:.75rem;font-family:var(--hrms-font-body);background:#fff;border-radius:10px;padding:8px 12px}.hr-filter-select:focus{border-color:var(--hrms-primary);outline:none}.hr-employees-list{overflow-x:auto}.hr-employees-header{color:var(--hrms-text-muted);text-transform:uppercase;background:#fafbff;border-radius:12px;grid-template-columns:2fr 1fr .8fr 1.2fr 1fr .8fr;margin-bottom:12px;padding:12px;font-size:.7rem;font-weight:600;display:grid}.hr-employee-item{background:#fafbff;border-radius:12px;grid-template-columns:2fr 1fr .8fr 1.2fr 1fr .8fr;align-items:center;margin-bottom:8px;padding:12px;display:grid}.hr-employee-item:hover{background:#f5f7ff}.hr-employee-info{align-items:center;gap:10px;display:flex}.hr-employee-info div{flex-direction:column;display:flex}.hr-employee-info div strong{color:var(--hrms-text-primary);font-size:.8rem}.hr-employee-info div small{color:var(--hrms-text-muted);font-size:.65rem}.hr-employee-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:36px;height:36px;font-family:var(--hrms-font-head);border-radius:10px;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.hr-employee-dept,.hr-employee-role{color:var(--hrms-text-secondary);font-size:.75rem}.hr-attendance-rate-cell{align-items:center;gap:8px;display:flex}.hr-attendance-rate-cell .hr-rate-bar-small{background:var(--hrms-border);border-radius:3px;width:60px;height:6px;overflow:hidden}.hr-attendance-rate-cell .hr-rate-fill{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));border-radius:3px;height:100%}.hr-attendance-rate-cell .hr-rate-value{color:var(--hrms-text-primary);font-size:.7rem;font-weight:600}.hr-working-days{color:var(--hrms-text-muted);font-size:.7rem}.hr-view-btn{border:1px solid var(--hrms-border);color:var(--hrms-text-secondary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:4px;width:fit-content;padding:6px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.hr-view-btn:hover{background:var(--hrms-primary);border-color:var(--hrms-primary);color:#fff}.hr-employees-footer{border-top:1px solid var(--hrms-border);color:var(--hrms-text-muted);justify-content:space-between;margin-top:8px;padding:16px 12px 0;font-size:.7rem;display:flex}.hr-pending-leaves{flex-direction:column;gap:16px;display:flex}.hr-pending-leave-item{background:#fafbff;border-radius:12px;padding:16px}.hr-pending-leave-item .hr-pending-leave-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.hr-pending-leave-item .hr-pending-leave-header strong{color:var(--hrms-text-primary);font-size:.9rem}.hr-pending-leave-item .hr-pending-leave-dates{color:var(--hrms-text-muted);align-items:center;gap:6px;margin-bottom:8px;font-size:.7rem;display:flex}.hr-pending-leave-item .hr-pending-leave-reason{color:var(--hrms-text-secondary);margin-bottom:12px;font-size:.75rem}.hr-pending-leave-item .hr-pending-leave-actions{gap:12px;display:flex}.hr-approve-btn{background:var(--hrms-success);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 16px;font-size:.7rem;font-weight:600}.hr-approve-btn:hover{opacity:.9}.hr-reject-btn{background:var(--hrms-danger);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 16px;font-size:.7rem;font-weight:600}.hr-reject-btn:hover{opacity:.9}.hr-absent-list{flex-direction:column;gap:10px;display:flex}.hr-absent-item{background:#ef44440d;border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.hr-absent-item .hr-absent-avatar{width:36px;height:36px;color:var(--hrms-danger);background:#ef444433;border-radius:10px;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.hr-absent-item .hr-absent-info{flex:1}.hr-absent-item .hr-absent-info strong{color:var(--hrms-text-primary);font-size:.8rem;display:block}.hr-absent-item .hr-absent-info small{color:var(--hrms-text-muted);font-size:.65rem}.hr-absent-item .hr-absent-badge{color:var(--hrms-danger);background:#ef44441a;border-radius:20px;padding:3px 10px;font-size:.65rem;font-weight:600}.hr-salary-stats{text-align:center;grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.hr-salary-stat-item label{color:var(--hrms-text-muted);margin-bottom:4px;font-size:.7rem;display:block}.hr-salary-stat-item strong{font-size:1.1rem;font-weight:700;display:block}.hr-salary-stat-item strong.text-success{color:var(--hrms-success)}.hr-salary-stat-item strong.text-warning{color:var(--hrms-warning)}.hr-salary-stat-item small{color:var(--hrms-text-muted);font-size:.6rem}.hr-salary-chart{justify-content:space-around;align-items:flex-end;height:200px;padding:20px 0;display:flex}.hr-chart-bar{flex-direction:column;flex:1;align-items:center;gap:8px;display:flex}.hr-chart-bar .hr-chart-fill{background:linear-gradient(180deg, var(--hrms-primary), var(--hrms-accent));border-radius:8px 8px 4px 4px;width:40px;min-height:4px;transition:height .3s}.hr-chart-bar span{color:var(--hrms-text-muted);font-size:.7rem}.hr-status-badge{border-radius:20px;padding:3px 10px;font-size:.65rem;font-weight:600}.hr-status-badge.pending{color:var(--hrms-warning);background:#f59e0b1a}.hr-status-badge.approved{color:var(--hrms-success);background:#10b9811a}.hr-status-badge.rejected{color:var(--hrms-danger);background:#ef44441a}.hr-empty-state{text-align:center;padding:40px 20px}.hr-empty-state svg{color:var(--hrms-text-muted);margin-bottom:12px;font-size:2rem}.hr-empty-state p{color:var(--hrms-text-secondary)}.hr-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.hr-modal{background:var(--hrms-card);border-radius:24px;width:100%;max-width:400px;animation:.3s slideUp;overflow:hidden}.hr-modal__header{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));justify-content:space-between;align-items:flex-start;padding:24px;display:flex}.hr-modal__avatar{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;width:60px;height:60px;font-family:var(--hrms-font-head);background:#fff3;border-radius:16px;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.hr-modal__close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.hr-modal__close:hover{background:#ffffff4d}.hr-modal__body{padding:24px}.hr-modal h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:1.3rem;font-weight:700}.hr-modal__id{color:var(--hrms-text-muted);margin-bottom:20px;font-size:.7rem}.hr-modal__info{flex-direction:column;gap:12px;display:flex}.hr-modal__info-item{background:#fafbff;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.hr-modal__info-item svg{color:var(--hrms-primary);font-size:.9rem}.hr-modal__info-item div{flex:1}.hr-modal__info-item label{text-transform:uppercase;color:var(--hrms-text-muted);margin-bottom:2px;font-size:.6rem;font-weight:600;display:block}.hr-modal__info-item p{color:var(--hrms-text-primary);font-size:.8rem;font-weight:500}@media (width<=1200px){.hr-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=1024px){.hr-dashboard{padding:20px}.hr-two-column{grid-template-columns:1fr;gap:20px}}@media (width<=768px){.hr-dashboard{padding:16px}.hr-welcome{text-align:center;flex-direction:column}.hr-welcome h1{font-size:1.4rem}.hr-welcome__date{justify-content:center;width:100%}.hr-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.hr-tabs{white-space:nowrap;overflow-x:auto}.hr-employees-header{display:none}.hr-employee-item{grid-template-columns:1fr;gap:10px}.hr-filters{flex-direction:column;width:100%}.hr-search,.hr-search input,.hr-filter-select{width:100%}}@media (width<=480px){.hr-dashboard{padding:12px}.hr-stats-grid{grid-template-columns:1fr}.hr-stat-card__value{font-size:1.2rem}.hr-card{padding:16px}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f226;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-success:#10b981;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.hp-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.hp-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:38px;height:38px;animation:.75s linear infinite hp-spin}.hp-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.hp-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.hp-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:7px;margin-bottom:10px;padding:5px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.hp-page-header__badge svg{font-size:.65rem}.hp-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:5px;font-size:1.8rem;font-weight:700}.hp-page-header p{color:var(--hrms-text-secondary);font-size:.875rem}.hp-edit-trigger{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;white-space:nowrap;border:none;border-radius:11px;flex-shrink:0;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 16px #5a67f24d}.hp-edit-trigger svg{font-size:.8rem}.hp-edit-trigger:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5a67f266}.hp-layout{grid-template-columns:280px 1fr;align-items:start;gap:20px;display:grid}.hp-avatar-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;flex-direction:column;align-items:center;gap:10px;padding:32px 24px 24px;animation:.4s cubic-bezier(.22,1,.36,1) both hp-fade-in;display:flex;box-shadow:0 2px 16px #0d0f1a0d}.hp-avatar-card__circle{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:80px;height:80px;font-family:var(--hrms-font-head);border-radius:22px;justify-content:center;align-items:center;margin-bottom:4px;font-size:2rem;font-weight:700;display:flex;box-shadow:0 8px 24px #5a67f24d}.hp-avatar-card__name{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);text-align:center;letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.hp-avatar-card__meta{border:1px solid var(--hrms-border);border-radius:12px;width:100%;margin-top:8px;overflow:hidden}.hp-avatar-card__meta-item{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;gap:8px;padding:11px 14px;display:flex}.hp-avatar-card__meta-item:last-child{border-bottom:none}.hp-avatar-card__meta-item span{color:var(--hrms-text-muted);font-size:.72rem;font-weight:500}.hp-avatar-card__meta-item strong{color:var(--hrms-text-primary);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:130px;font-size:.8rem;font-weight:600;overflow:hidden}.hp-avatar-card__salary{background:linear-gradient(135deg,#5a67f214,#00d2c80f);border:1px solid #5a67f226;border-radius:12px;align-items:center;gap:12px;width:100%;margin-top:4px;padding:14px;display:flex}.hp-avatar-card__salary svg{color:var(--hrms-primary);flex-shrink:0;font-size:1rem}.hp-avatar-card__salary div{flex-direction:column;gap:2px;display:flex}.hp-avatar-card__salary span{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:500}.hp-avatar-card__salary strong{font-family:var(--hrms-font-head);color:var(--hrms-primary);font-size:1rem;font-weight:700}.hp-role{letter-spacing:.06em;text-transform:uppercase;border-radius:100px;align-items:center;padding:4px 12px;font-size:.68rem;font-weight:700;display:inline-flex}.hp-role--hr{color:#7c3aed;background:#8b5cf61a}.hp-role--manager{color:var(--hrms-primary-dark);background:#5a67f21a}.hp-role--employee{color:#059669;background:#10b9811a}.hp-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.45s cubic-bezier(.22,1,.36,1) both hp-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.hp-card__header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.hp-card__title-wrap{align-items:center;gap:13px;display:flex}.hp-card__title-wrap h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:3px;font-size:.95rem;font-weight:700}.hp-card__title-wrap p{color:var(--hrms-text-muted);font-size:.775rem}.hp-card__icon{width:38px;height:38px;color:var(--hrms-primary);background:#5a67f21a;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.hp-card__icon--edit{color:#d97706;background:#f59e0b1a}.hp-details-grid{grid-template-columns:1fr 1fr;display:grid}.hp-detail-item{border-bottom:1px solid #f1f4fd;border-right:1px solid #f1f4fd;align-items:flex-start;gap:13px;padding:20px 28px;transition:background .15s;display:flex}.hp-detail-item:nth-child(2n){border-right:none}.hp-detail-item:nth-last-child(-n+2){border-bottom:none}.hp-detail-item:hover{background:#fafbff}.hp-detail-item__icon{width:34px;height:34px;color:var(--hrms-primary);background:#f0f2ff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.8rem;display:flex}.hp-detail-item__content{flex-direction:column;gap:5px;min-width:0;display:flex}.hp-detail-item__content label{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:7px;font-size:.68rem;font-weight:600;display:flex}.hp-detail-item__content p{color:var(--hrms-text-primary);word-break:break-word;font-size:.9rem;font-weight:500}.hp-locked-badge{color:var(--hrms-text-muted);letter-spacing:.05em;text-transform:uppercase;background:#94a3b81f;border-radius:5px;align-items:center;padding:2px 7px;font-size:.6rem;font-weight:600;display:inline-flex}.hp-notice{background:#f59e0b12;border:1px solid #f59e0b33;border-radius:12px;align-items:flex-start;gap:12px;margin:24px 28px 0;padding:14px 16px;display:flex}.hp-notice svg{color:#d97706;flex-shrink:0;margin-top:1px;font-size:.95rem}.hp-notice p{color:var(--hrms-text-secondary);font-size:.825rem;line-height:1.5}.hp-notice p strong{color:var(--hrms-text-primary);font-weight:600}.hp-form{flex-direction:column;gap:20px;padding:24px 28px;display:flex}.hp-form__actions{border-top:1px solid var(--hrms-border);gap:12px;margin-top:4px;padding-top:8px;display:flex}.hp-field{flex-direction:column;gap:8px;display:flex}.hp-field label{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.hp-field__wrap{align-items:center;display:flex;position:relative}.hp-field__wrap input,.hp-field__wrap textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:#fafbff;border-radius:11px;outline:none;padding:12px 14px 12px 44px;font-size:.875rem;transition:border-color .2s,box-shadow .2s,background .2s}.hp-field__wrap input::placeholder,.hp-field__wrap textarea::placeholder{color:var(--hrms-text-muted)}.hp-field__wrap input:focus,.hp-field__wrap textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.hp-field__wrap textarea{resize:vertical;min-height:100px;padding-top:12px;line-height:1.55}.hp-field__wrap--textarea{align-items:flex-start}.hp-field__icon{color:var(--hrms-text-muted);pointer-events:none;font-size:.82rem;transition:color .2s;position:absolute;left:14px}.hp-field__icon--top{top:13px}.hp-field:focus-within .hp-field__icon{color:var(--hrms-primary)}.hp-field__err{color:var(--hrms-danger);font-size:.775rem;font-weight:500}.hp-field--error .hp-field__wrap input,.hp-field--error .hp-field__wrap textarea{border-color:var(--hrms-danger);background:#fff8f8;box-shadow:0 0 0 4px #ef444414}.hp-field--error .hp-field__icon{color:var(--hrms-danger)}.hp-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:11px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s,opacity .2s;display:inline-flex}.hp-btn svg{font-size:.8rem}.hp-btn--primary{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;flex:1;justify-content:center;box-shadow:0 4px 16px #5a67f24d}.hp-btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5a67f266}.hp-btn--ghost{color:var(--hrms-text-secondary);border:1.5px solid var(--hrms-border);background:#fff;flex:1;justify-content:center}.hp-btn--ghost:hover{color:var(--hrms-primary);background:#f0f2ff;border-color:#5a67f24d}@keyframes hp-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes hp-spin{to{transform:rotate(360deg)}}@media (width<=1024px){.hp-layout{grid-template-columns:240px 1fr}}@media (width<=860px){.hp-layout{grid-template-columns:1fr}.hp-avatar-card{flex-flow:wrap;gap:14px;padding:20px}.hp-avatar-card__circle{border-radius:16px;width:60px;height:60px;font-size:1.5rem}.hp-avatar-card__meta,.hp-avatar-card__salary{width:100%}}@media (width<=768px){.hp-container{padding:20px 16px}.hp-page-header h1{font-size:1.4rem}.hp-details-grid{grid-template-columns:1fr}.hp-detail-item{padding:16px 20px;border-right:none!important}.hp-detail-item:nth-last-child(-n+2){border-bottom:1px solid #f1f4fd}.hp-detail-item:last-child{border-bottom:none}.hp-card__header{padding:18px 20px}.hp-notice{margin:20px 20px 0}.hp-form{padding:20px}.hp-form__actions{flex-direction:column}}@media (width<=400px){.hp-container{padding:14px 12px}}.hp-details-section{border-bottom:1px solid var(--hrms-border);margin-bottom:28px;padding-bottom:20px}.hp-details-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.hp-details-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);align-items:center;gap:8px;margin:16px;font-size:.85rem;font-weight:600;display:flex}.hp-details-section h4:before{content:"";background:var(--hrms-primary);border-radius:2px;width:3px;height:16px}.hp-file-link{color:var(--hrms-primary);font-size:.8rem;font-weight:500;text-decoration:none}.hp-file-link:hover{text-decoration:underline}.hp-edit-section{border-top:1px solid var(--hrms-border);margin-top:24px;padding-top:20px}.hp-card__footer{border-top:1px solid var(--hrms-border);text-align:right;margin:24px;padding-top:20px}.hp-edit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.hp-edit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #5a67f24d}@media (width<=768px){.hp-details-section{margin-bottom:20px;padding-bottom:16px}.hp-card__footer{text-align:center}.hp-edit-btn{justify-content:center;width:100%}}.hp-page-header .hp-header-actions{flex-wrap:wrap;gap:12px;display:flex}.hp-password-trigger{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);font-family:var(--hrms-font-head);cursor:pointer;white-space:nowrap;background:#fff;border-radius:11px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.hp-password-trigger svg{font-size:.8rem}.hp-password-trigger:hover{border-color:var(--hrms-primary);color:var(--hrms-primary);background:#f8f9ff}.hp-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.hp-password-modal{background:var(--hrms-card);border-radius:20px;width:100%;max-width:450px;max-height:90vh;animation:.3s hp-modal-in;overflow:auto}.hp-password-modal .hp-modal-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.hp-password-modal .hp-modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.hp-password-modal .hp-modal-header .hp-modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.hp-password-modal .hp-modal-header .hp-modal-close:hover{color:var(--hrms-danger)}.hp-password-modal .hp-modal-body{padding:24px}.hp-password-modal .hp-modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.hp-password-modal .hp-modal-footer .hp-modal-cancel{font-family:var(--hrms-font-head);cursor:pointer;border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.hp-password-modal .hp-modal-footer .hp-modal-cancel:hover{background:#f8f9ff}.hp-password-modal .hp-modal-footer .hp-modal-save{font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.hp-password-modal .hp-modal-footer .hp-modal-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.hp-password-modal .hp-modal-footer .hp-modal-save:disabled{opacity:.6;cursor:not-allowed}.hp-modal-info{border-left:3px solid var(--hrms-info);background:#3b82f614;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.hp-modal-info svg{color:var(--hrms-info);margin-top:2px;font-size:.9rem}.hp-modal-info p{color:var(--hrms-text-secondary);font-size:.75rem;line-height:1.4}.hp-password-field{margin-bottom:16px}.hp-password-field label{color:var(--hrms-text-primary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.hp-password-field .hp-password-input-wrap{align-items:center;display:flex;position:relative}.hp-password-field .hp-password-input-wrap input{border:1.5px solid var(--hrms-border);width:100%;font-size:.85rem;font-family:var(--hrms-font-body);background:#fafbff;border-radius:10px;padding:10px 40px 10px 14px;transition:all .2s}.hp-password-field .hp-password-input-wrap input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);background:#fff;outline:none}.hp-password-field .hp-password-input-wrap input.error{border-color:var(--hrms-danger);box-shadow:0 0 0 3px #ef44441a}.hp-password-field .hp-password-input-wrap .hp-password-toggle{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:.9rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.hp-password-field .hp-password-input-wrap .hp-password-toggle:hover{color:var(--hrms-text-primary)}.hp-password-field .hp-password-error{color:var(--hrms-danger);margin-top:4px;font-size:.7rem;display:block}.hp-password-requirements{background:#f8f9ff;border-radius:10px;margin-top:16px;padding:12px}.hp-password-requirements p{color:var(--hrms-text-secondary);margin-bottom:6px;font-size:.75rem;font-weight:600}.hp-password-requirements ul{margin:0;padding:0;list-style:none}.hp-password-requirements ul li{color:var(--hrms-text-muted);padding:2px 0 2px 16px;font-size:.7rem;position:relative}.hp-password-requirements ul li:before{content:"•";color:var(--hrms-primary);position:absolute;left:0}@keyframes hp-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.hp-page-header{flex-direction:column;align-items:flex-start}.hp-page-header .hp-header-actions{flex-direction:column;width:100%}.hp-page-header .hp-edit-trigger,.hp-page-header .hp-password-trigger{justify-content:center;width:100%}.hp-password-modal{width:95%;margin:16px}.hp-modal-footer{flex-direction:column}}.hr-attendance-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.hr-attendance-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite hr-spin}.hr-attendance{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.attendance-header .header-left h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:5px;font-size:1.8rem;font-weight:700}.hr-stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;display:grid}.hr-stat-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:18px;align-items:center;gap:16px;padding:20px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 12px #0d0f1a0a}.hr-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0d0f1a1a}.hr-stat-card .hr-stat-icon{width:52px;height:52px;color:var(--hrms-primary);background:#5a67f21a;border-radius:14px;justify-content:center;align-items:center;font-size:1.4rem;display:flex}.hr-stat-card .hr-stat-info h3{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.75rem;font-weight:600}.hr-stat-card .hr-stat-info p{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.5rem;font-weight:700}.attendance-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.attendance-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.attendance-tabs .tab-btn svg{font-size:.85rem}.attendance-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.attendance-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.today-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;margin-bottom:28px;padding:24px 28px;animation:.4s cubic-bezier(.22,1,.36,1) both hr-fade-in;box-shadow:0 2px 16px #0d0f1a0d}.today-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;margin-bottom:18px;font-size:1rem;font-weight:700;display:flex}.today-card h2:before{content:"";background:var(--hrms-primary);border-radius:4px;width:4px;height:18px}.today-status{margin-bottom:24px}.status-section{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.status-section .status-icon{width:64px;height:64px;color:var(--hrms-primary);background:#5a67f21a;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.8rem;display:flex}.status-section .status-info{flex:1}.status-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:100px;align-items:center;gap:6px;margin-bottom:12px;padding:6px 14px;font-size:.75rem;font-weight:700;display:inline-flex}.status-badge.status-on-time{color:#059669;background:#10b9811a}.status-badge.status-on-time:before{content:"✓";margin-right:4px}.status-badge.status-late{color:#d97706;background:#f59e0b1a}.status-badge.status-late:before{content:"⚠";margin-right:4px}.status-badge.status-half-day{color:#d97706;background:#f59e0b1a}.status-badge.status-half-day:before{content:"⏤";margin-right:4px}.status-badge.status-absent{color:#dc2626;background:#ef44441a}.status-badge.status-absent:before{content:"✗";margin-right:4px}.time-info{flex-wrap:wrap;gap:20px;display:flex}.time-info span{color:var(--hrms-text-secondary);background:#f8f9ff;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.85rem;display:inline-flex}.time-info span:before{content:"🕐";font-size:.7rem}.no-status{text-align:center;background:#f8f9ff;border-radius:16px;margin-bottom:0;padding:32px}.no-status .no-status-icon{color:var(--hrms-text-muted);opacity:.5;margin-bottom:12px;font-size:3rem}.no-status p{color:var(--hrms-text-secondary);margin-bottom:6px;font-size:.9rem}.no-status small{color:var(--hrms-text-muted);font-size:.75rem}.action-buttons{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.checkin-btn,.checkout-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:12px 28px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s;display:inline-flex}.checkin-btn svg,.checkout-btn svg{font-size:.9rem}.checkin-btn:hover:not(:disabled),.checkout-btn:hover:not(:disabled){transform:translateY(-2px)}.checkin-btn:disabled,.checkout-btn:disabled{opacity:.5;cursor:not-allowed}.checkin-btn{color:#fff;background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 16px #10b9814d}.checkin-btn:hover:not(:disabled){box-shadow:0 8px 24px #10b98166}.checkout-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;box-shadow:0 4px 16px #5a67f24d}.checkout-btn:hover:not(:disabled){box-shadow:0 8px 24px #5a67f266}.policy-info{background:#5a67f20a;border:1px solid #5a67f21a;border-radius:14px;margin-top:8px;padding:16px 20px}.policy-info h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);align-items:center;gap:8px;margin-bottom:12px;font-size:.8rem;font-weight:600;display:flex}.policy-info h4:before{content:"⚡";font-size:.7rem}.policy-info .policy-details span{color:var(--hrms-text-muted);background:#5a67f20f;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;display:inline-flex}.policy-info .policy-details span:before{content:"•";color:var(--hrms-primary);font-size:.8rem}.history-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.45s cubic-bezier(.22,1,.36,1) both hr-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.history-card .history-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.history-card .history-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.history-card .history-header h2 svg{color:var(--hrms-primary);font-size:1rem}.all-employees-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.45s cubic-bezier(.22,1,.36,1) both hr-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.all-employees-card .all-header{border-bottom:1px solid var(--hrms-border);padding:20px 28px}.all-employees-card .all-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;margin-bottom:16px;font-size:1rem;font-weight:700;display:flex}.all-employees-card .all-header h2 svg{color:var(--hrms-primary);font-size:1rem}.all-employees-card .all-header .filters-section{flex-wrap:wrap;gap:12px;display:flex}.all-employees-card .all-header .search-box{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:200px;padding:8px 14px;display:flex}.all-employees-card .all-header .search-box svg{color:var(--hrms-text-muted);font-size:.85rem}.all-employees-card .all-header .search-box input{background:0 0;border:none;outline:none;width:100%;font-size:.85rem}.all-employees-card .all-header .filter-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.all-employees-card .all-header .filter-group .filter-icon{color:var(--hrms-text-muted);font-size:.85rem}.all-employees-card .all-header .filter-group select,.all-employees-card .all-header .filter-group input{cursor:pointer;background:0 0;border:none;outline:none;font-size:.85rem}.history-table,.all-table{border-collapse:collapse;width:100%}.history-table thead,.all-table thead{background:#f8f9ff}.history-table th,.all-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:16px 20px;font-size:.75rem;font-weight:700}.history-table td,.all-table td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:16px 20px;font-size:.85rem}.history-table tr:hover td,.all-table tr:hover td{background:#fafbff}.status-badge-small.status-late,.status-badge-small.status-half-day{color:#d97706;background:#f59e0b1a}.all-summary{border-top:1px solid var(--hrms-border);background:#f8f9ff;gap:24px;padding:20px 28px;display:flex}.all-summary .summary-item{color:var(--hrms-text-secondary);align-items:center;gap:8px;font-size:.85rem;display:flex}.all-summary .summary-item strong{color:var(--hrms-text-primary);font-size:1rem}.empty-history{text-align:center;padding:48px 24px}.empty-history svg{color:var(--hrms-text-muted);opacity:.4;margin-bottom:12px;font-size:3rem}.empty-history p{color:var(--hrms-text-secondary);font-size:.9rem}.pagination button{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:8px;padding:8px 18px;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.pagination button svg{font-size:.7rem}.pagination span{color:var(--hrms-text-secondary);font-size:.85rem;font-weight:500}@keyframes hr-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes hr-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.hr-attendance{padding:24px}.attendance-header .header-left h1{font-size:1.5rem}.hr-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.hr-attendance{padding:16px}.attendance-header{flex-direction:column;align-items:flex-start}.hr-stats-grid{grid-template-columns:1fr;gap:12px}.attendance-tabs{flex-direction:column;gap:8px}.attendance-tabs .tab-btn{justify-content:center}.today-card{padding:18px 20px}.status-section{text-align:center;flex-direction:column}.status-section .status-icon{margin:0 auto}.action-buttons{flex-direction:column}.checkin-btn,.checkout-btn{justify-content:center;width:100%}.all-header .filters-section{flex-direction:column}.search-box,.filter-group{width:100%}.history-table th,.history-table td,.all-table th,.all-table td{padding:12px 16px}.all-summary{flex-direction:column;gap:12px}.pagination{flex-wrap:wrap;gap:10px}.pagination button{padding:6px 14px}.edit-modal{width:95%;margin:16px}}@media (width<=480px){.hr-attendance{padding:12px}.history-table th,.history-table td,.all-table th,.all-table td{padding:10px 12px;font-size:.75rem}.status-badge-small{padding:2px 6px;font-size:.6rem}.pagination button span{display:none}.pagination button{padding:8px 12px}.hr-stat-card .hr-stat-info p{font-size:1.2rem}}.employee-leave-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.employee-leave-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite el-spin}.employee-leave{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.leave-header .header-left h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:5px;font-size:1.8rem;font-weight:700}.apply-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s el-fade-in;box-shadow:0 2px 16px #0d0f1a0d}.apply-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;margin-bottom:20px;font-size:1rem;font-weight:700;display:flex}.apply-card h2:before{content:"";background:var(--hrms-primary);border-radius:4px;width:4px;height:18px}.form-group .input-wrapper input,.form-group .input-wrapper select{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);border-radius:10px;padding:10px 12px 10px 36px;font-size:.85rem;transition:all .2s}.info-box svg{color:var(--hrms-info);font-size:1.1rem}.warning-box svg{color:var(--hrms-danger);font-size:1rem}.leave-days-section .section-header .add-day-btn{color:var(--hrms-primary);cursor:pointer;background:#5a67f21a;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:500;transition:all .2s;display:flex}.leave-day-item .remove-day-btn{color:var(--hrms-danger);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;transition:all .2s}.history-card,.balance-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s el-fade-in;box-shadow:0 2px 16px #0d0f1a0d}.history-card h2,.balance-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;margin-bottom:20px;font-size:1rem;font-weight:700;display:flex}.history-card h2 svg,.balance-card h2 svg{color:var(--hrms-primary)}.history-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:14px 16px;font-size:.7rem;font-weight:700}.history-table tbody td{color:var(--hrms-text-secondary);vertical-align:middle;border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.approved-by{color:var(--hrms-text-muted);font-size:.75rem}.cancel-btn{color:var(--hrms-danger);cursor:pointer;background:#ef44441a;border:none;border-radius:6px;padding:4px 12px;font-size:.7rem;font-weight:600;transition:all .2s}.pagination button{border:1px solid var(--hrms-border);font-family:var(--hrms-font-head);cursor:pointer;background:#fff;border-radius:8px;padding:6px 16px;font-size:.75rem;font-weight:500;transition:all .2s}.balance-item{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:16px;padding:20px;transition:all .2s}.balance-item .balance-header .balance-title h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1rem;font-weight:700}@keyframes el-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.employee-leave{padding:24px}.leave-header .header-left h1{font-size:1.5rem}}@media (width<=768px){.employee-leave{padding:16px}.leave-tabs{flex-direction:column;gap:8px}.leave-tabs .tab-btn{justify-content:center}.form-row{grid-template-columns:1fr;gap:16px}.form-group.full-width{grid-column:span 1}.leave-day-item{flex-wrap:wrap}.leave-day-item>div{flex:100%}.action-buttons{flex-direction:column}.balance-grid{grid-template-columns:1fr}.history-table th,.history-table td{padding:10px 12px;font-size:.7rem}.reason-cell{max-width:120px}}@media (width<=480px){.employee-leave{padding:12px}.apply-card,.history-card,.balance-card{padding:16px}}.manager-self-leave-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.manager-self-leave-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite msl-spin}@keyframes msl-spin{to{transform:rotate(360deg)}}.manager-self-leave{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.leave-header .header-left p{color:var(--hrms-text-secondary);font-size:.875rem}.leave-tabs .tab-btn svg{font-size:.85rem}.apply-card,.history-card,.balance-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s msl-fade-in;box-shadow:0 2px 16px #0d0f1a0d}.form-group .input-wrapper .input-icon{color:var(--hrms-text-muted);font-size:.85rem;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.form-group .input-wrapper input,.form-group .input-wrapper select{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);border-radius:10px;padding:10px 12px 10px 36px;font-size:.85rem}.form-group .input-wrapper textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);resize:vertical;border-radius:10px;padding:10px 14px;font-size:.85rem}.leave-day-item .day-date input:disabled{color:var(--hrms-text-secondary);background:#f0f2ff}.leave-day-item .day-type select{border:1px solid var(--hrms-border);background:#fff;border-radius:8px;width:100%;padding:8px 10px;font-size:.8rem}.leave-day-item .day-halfday select{border:1px solid var(--hrms-border);background:#fff;border-radius:6px;padding:6px 8px;font-size:.7rem}.action-buttons .submit-btn,.action-buttons .reset-btn{font-family:var(--hrms-font-head);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:12px 24px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.action-buttons .reset-btn:hover{border-color:var(--hrms-text-muted);background:#f8f9ff}.history-table tbody tr:hover td{background:#fafbff}.balance-item .balance-header .balance-title .balance-code{color:var(--hrms-text-muted);background:var(--hrms-border);border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:600}.balance-item .balance-header .unpaid-badge{color:#d97706;background:#f59e0b1a;border-radius:20px;padding:2px 8px;font-size:.65rem;font-weight:600}.balance-item .balance-numbers .balance-stat strong{color:var(--hrms-text-primary);font-size:1.2rem;font-weight:700}.balance-item .progress-bar .progress-fill{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));border-radius:3px;height:100%;transition:width .3s}@keyframes msl-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.manager-self-leave{padding:24px}.leave-header .header-left h1{font-size:1.5rem}}@media (width<=768px){.manager-self-leave{padding:16px}.leave-tabs{flex-direction:column}.leave-tabs .tab-btn{justify-content:center}.form-row{grid-template-columns:1fr;gap:16px}.form-group.full-width{grid-column:span 1}.leave-day-item{flex-wrap:wrap}.leave-day-item>div{flex:100%}.action-buttons{flex-direction:column}.balance-grid{grid-template-columns:1fr}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-success:#10b981;--hrms-warning:#f59e0b;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.manager-team-leave-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.manager-team-leave-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite mtl-spin}@keyframes mtl-spin{to{transform:rotate(360deg)}}.manager-team-leave{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.team-leave-header{margin-bottom:28px}.team-leave-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.team-leave-header h1 svg{color:var(--hrms-primary)}.team-leave-header p{color:var(--hrms-text-secondary);font-size:.875rem}.team-leave-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.team-leave-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.team-leave-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.team-leave-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.employee-cell span{color:var(--hrms-text-primary);font-weight:500}.employee-cell small{color:var(--hrms-text-muted);font-size:.65rem;display:block}.status-badge{border-radius:20px;align-items:center;padding:4px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.action-buttons{gap:8px;display:flex}.action-buttons .approve-btn,.action-buttons .reject-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.7rem;font-weight:600;transition:all .2s;display:flex}.action-buttons .approve-btn:hover:not(:disabled){background:#10b98133}.action-buttons .reject-btn:hover:not(:disabled){background:#ef444433}.pagination button{border:1px solid var(--hrms-border);font-family:var(--hrms-font-head);cursor:pointer;background:#fff;border-radius:8px;padding:6px 16px;font-size:.75rem;font-weight:500}.pagination button:hover:not(:disabled){background:var(--hrms-primary);border-color:var(--hrms-primary);color:#fff}@keyframes mtl-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.manager-team-leave{padding:24px}.team-leave-header h1{font-size:1.5rem}}@media (width<=768px){.manager-team-leave{padding:16px}.team-leave-tabs{flex-direction:column}.team-leave-tabs .tab-btn{justify-content:center}.filters{flex-direction:column}.pending-table th,.pending-table td,.history-table th,.history-table td{padding:10px 12px;font-size:.7rem}}.mtl-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;animation:.2s mtl-fade-in;display:flex;position:fixed;inset:0}.mtl-modal{background:var(--hrms-card);border-radius:24px;width:90%;max-width:450px;animation:.3s cubic-bezier(.34,1.56,.64,1) mtl-modal-in;overflow:hidden;box-shadow:0 20px 40px #0003}.mtl-modal__header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex;position:relative}.mtl-modal__icon-warning{background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto;display:flex}.mtl-modal__icon-warning svg{color:var(--hrms-danger);font-size:28px}.mtl-modal__close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;padding:6px;font-size:1.1rem;transition:color .2s;position:absolute;top:16px;right:16px}.mtl-modal__close:hover{color:var(--hrms-danger)}.mtl-modal__body{text-align:center;padding:20px 24px}.mtl-modal__body h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:700}.mtl-modal__body p{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.85rem}.mtl-modal__textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);resize:vertical;border-radius:12px;padding:12px 14px;font-size:.85rem;transition:all .2s}.mtl-modal__textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.mtl-modal__textarea::placeholder{color:var(--hrms-text-muted)}.mtl-modal__footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.mtl-modal__cancel{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);cursor:pointer;background:#fff;border-radius:10px;flex:1;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s}.mtl-modal__cancel:hover{border-color:var(--hrms-text-muted);background:#f8f9ff}.mtl-modal__confirm{background:linear-gradient(135deg, var(--hrms-danger), #dc2626);color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.mtl-modal__confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.mtl-modal__confirm:disabled{opacity:.6;cursor:not-allowed}@keyframes mtl-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.hr-self-leave-loading{background:var(--hrms-bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.hr-self-leave-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite hsl-spin}@keyframes hsl-spin{to{transform:rotate(360deg)}}.hr-self-leave{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.leave-header{margin-bottom:28px}.leave-header .header-left h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:5px;font-size:1.8rem;font-weight:700}.leave-header .role-badge{color:var(--hrms-primary);background:#5a67f21a;border-radius:20px;align-items:center;gap:6px;width:fit-content;margin-top:8px;padding:4px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.leave-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.leave-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.leave-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.leave-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.apply-card,.history-card,.balance-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s hsl-fade-in}.apply-card h2,.history-card h2,.balance-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;margin-bottom:20px;font-size:1rem;font-weight:700;display:flex}.apply-card h2:before,.history-card h2:before,.balance-card h2:before{content:"";background:var(--hrms-primary);border-radius:4px;width:4px;height:18px}.apply-card h2 svg,.history-card h2 svg,.balance-card h2 svg{color:var(--hrms-primary)}.form-row{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.form-group .input-wrapper{position:relative}.form-group .input-wrapper .input-icon{color:var(--hrms-text-muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.form-group .input-wrapper input,.form-group .input-wrapper select{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);border-radius:10px;padding:10px 12px 10px 36px}.form-group .input-wrapper input:focus,.form-group .input-wrapper select:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.form-group .input-wrapper textarea{border:1.5px solid var(--hrms-border);resize:vertical;border-radius:10px;width:100%;padding:10px 14px}.form-group .input-wrapper textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.form-group.full-width{grid-column:span 2}.info-box{background:#3b82f614;border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;display:flex}.info-box svg{color:var(--hrms-info)}.info-box strong{color:var(--hrms-text-primary);font-size:.85rem}.info-box small{color:var(--hrms-text-muted);font-size:.7rem;display:block}.error-message{color:var(--hrms-danger);margin-top:-12px;margin-bottom:16px;font-size:.75rem}.warning-box{background:#ef444414;border-radius:12px;align-items:center;gap:10px;margin:16px 0;padding:12px 16px;display:flex}.leave-days-section{margin:24px 0}.leave-days-section .section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.leave-days-section .section-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:.9rem;font-weight:600}.leave-days-section .section-header .add-day-btn{color:var(--hrms-primary);cursor:pointer;background:#5a67f21a;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;display:flex}.leave-days-section .section-header .add-day-btn:hover{background:#5a67f233}.leave-days-list{flex-direction:column;gap:12px;max-height:400px;padding-right:8px;display:flex;overflow-y:auto}.leave-day-item{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.leave-day-item .day-date{flex:1.5}.leave-day-item .day-date input{border:1px solid var(--hrms-border);background:#fff;border-radius:8px;width:100%;padding:8px 10px;font-size:.8rem}.leave-day-item .day-date input:disabled{background:#f0f2ff}.leave-day-item .day-type{flex:1.5}.leave-day-item .day-type select{border:1px solid var(--hrms-border);border-radius:8px;width:100%;padding:8px 10px;font-size:.8rem}.leave-day-item .day-halfday{flex:1.5;align-items:center;gap:8px;display:flex}.leave-day-item .day-halfday .checkbox-label{cursor:pointer;white-space:nowrap;align-items:center;gap:5px;font-size:.75rem;display:flex}.leave-day-item .day-halfday .checkbox-label input{cursor:pointer;width:14px;height:14px}.leave-day-item .day-halfday select{border:1px solid var(--hrms-border);border-radius:6px;padding:6px 8px;font-size:.7rem}.leave-day-item .remove-day-btn{color:var(--hrms-danger);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px}.leave-day-item .remove-day-btn:hover{background:#ef44441a}.action-buttons{gap:16px;margin-top:24px;display:flex}.action-buttons .submit-btn,.action-buttons .reset-btn{font-family:var(--hrms-font-head);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:12px 24px;font-size:.85rem;font-weight:600;display:flex}.action-buttons .submit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;flex:1;justify-content:center}.action-buttons .submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #5a67f24d}.action-buttons .submit-btn:disabled{opacity:.5;cursor:not-allowed}.action-buttons .reset-btn{color:var(--hrms-text-secondary);border:1.5px solid var(--hrms-border);background:#fff}.action-buttons .reset-btn:hover{background:#f8f9ff}.history-table{border-collapse:collapse;width:100%}.history-table thead{background:#f8f9ff}.history-table thead th{text-align:left;text-transform:uppercase;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:14px 16px;font-size:.7rem;font-weight:700}.history-table tbody td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.history-table tbody td small{color:var(--hrms-text-muted);margin-top:2px;font-size:.65rem;display:block}.cancel-btn{color:var(--hrms-danger);cursor:pointer;background:#ef44441a;border:none;border-radius:6px;padding:4px 12px;font-size:.7rem;font-weight:600}.cancel-btn:hover{background:#ef444433}.pagination button:disabled{opacity:.4}.year-info{color:var(--hrms-text-muted);margin-bottom:24px;font-size:.8rem}.balance-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.balance-item{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:16px;padding:20px}.balance-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0d0f1a1a}.balance-item .balance-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.balance-item .balance-header .balance-title{align-items:baseline;gap:8px;display:flex}.balance-item .balance-header .balance-title h3{color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.balance-item .balance-header .balance-title .balance-code{background:var(--hrms-border);border-radius:4px;padding:2px 6px;font-size:.7rem}.balance-item .balance-header .unpaid-badge{color:#d97706;background:#f59e0b1a;border-radius:20px;padding:2px 8px;font-size:.65rem}.balance-item .balance-numbers{justify-content:space-between;margin-bottom:12px;display:flex}.balance-item .balance-numbers .balance-stat{text-align:center;flex:1}.balance-item .balance-numbers .balance-stat .stat-label{color:var(--hrms-text-muted);margin-bottom:4px;font-size:.65rem;display:block}.balance-item .balance-numbers .balance-stat strong{font-size:1.2rem;font-weight:700}.balance-item .balance-numbers .balance-stat strong.warning{color:var(--hrms-warning)}.balance-item .progress-bar{background:var(--hrms-border);border-radius:3px;height:6px;overflow:hidden}.balance-item .progress-bar .progress-fill{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));height:100%;transition:width .3s}.balance-footer{border-top:1px solid var(--hrms-border);flex-direction:column;gap:4px;margin-top:24px;padding-top:16px;display:flex}.balance-footer small{color:var(--hrms-text-muted);font-size:.7rem}.policy-info{background:#5a67f20a;border-radius:12px;margin-top:24px;padding:16px}.policy-info h4{color:var(--hrms-text-secondary);margin-bottom:8px;font-size:.75rem;font-weight:600}.policy-info .policy-details{flex-wrap:wrap;gap:16px;display:flex}.policy-info .policy-details span{color:var(--hrms-text-muted);background:#5a67f20f;border-radius:12px;padding:2px 8px;font-size:.7rem}@keyframes hsl-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.hr-self-leave{padding:24px}.leave-header .header-left h1{font-size:1.5rem}}@media (width<=768px){.hr-self-leave{padding:16px}.leave-tabs{flex-direction:column}.leave-tabs .tab-btn{justify-content:center}.form-row{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}.leave-day-item{flex-wrap:wrap}.leave-day-item>div{flex:100%}.action-buttons{flex-direction:column}.balance-grid{grid-template-columns:1fr}}.hr-all-leave-loading{background:var(--hrms-bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.hr-all-leave-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite hal-spin}@keyframes hal-spin{to{transform:rotate(360deg)}}.hr-all-leave{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.all-leave-header{margin-bottom:28px}.all-leave-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.all-leave-header h1 svg{color:var(--hrms-primary)}.all-leave-header p{color:var(--hrms-text-secondary);font-size:.875rem}.all-leave-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.all-leave-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;display:flex}.all-leave-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.all-leave-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.pending-card,.history-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s hal-fade-in}.pending-card h2,.history-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:20px;font-size:1rem;font-weight:700}.pending-card h2:before,.history-card h2:before{content:"";background:var(--hrms-primary);vertical-align:middle;border-radius:4px;width:4px;height:18px;margin-right:10px;display:inline-block}.pending-table,.history-table{border-collapse:collapse;width:100%}.pending-table thead,.history-table thead{background:#f8f9ff}.pending-table thead th,.history-table thead th{text-align:left;text-transform:uppercase;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:14px 16px;font-size:.7rem;font-weight:700}.pending-table tbody td,.history-table tbody td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.pending-table tbody td small,.history-table tbody td small{color:var(--hrms-text-muted);margin-top:2px;font-size:.65rem;display:block}.pending-table tbody tr:hover td,.history-table tbody tr:hover td{background:#fafbff}.action-buttons,.action-buttons-small{gap:8px;display:flex}.action-buttons .approve-btn,.action-buttons .reject-btn,.action-buttons .approve-small,.action-buttons .reject-small,.action-buttons-small .approve-btn,.action-buttons-small .reject-btn,.action-buttons-small .approve-small,.action-buttons-small .reject-small{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.7rem;font-weight:600;transition:all .2s;display:flex}.action-buttons .approve-btn,.action-buttons .approve-small,.action-buttons-small .approve-btn,.action-buttons-small .approve-small{color:#059669;background:#10b9811a}.action-buttons .approve-btn:hover:not(:disabled),.action-buttons .approve-small:hover:not(:disabled),.action-buttons-small .approve-btn:hover:not(:disabled),.action-buttons-small .approve-small:hover:not(:disabled){background:#10b98133}.action-buttons .reject-btn,.action-buttons .reject-small,.action-buttons-small .reject-btn,.action-buttons-small .reject-small{color:#dc2626;background:#ef44441a}.action-buttons .reject-btn:hover:not(:disabled),.action-buttons .reject-small:hover:not(:disabled),.action-buttons-small .reject-btn:hover:not(:disabled),.action-buttons-small .reject-small:hover:not(:disabled){background:#ef444433}.action-buttons button:disabled,.action-buttons-small button:disabled{opacity:.5;cursor:not-allowed}@keyframes hal-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.hr-all-leave{padding:24px}.all-leave-header h1{font-size:1.5rem}}@media (width<=768px){.hr-all-leave{padding:16px}.all-leave-tabs{flex-direction:column}.all-leave-tabs .tab-btn{justify-content:center}.filters{flex-direction:column}.pending-table th,.pending-table td,.history-table th,.history-table td{padding:10px 12px;font-size:.7rem}.action-buttons{flex-direction:column}}.hal-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;animation:.2s hal-fade-in;display:flex;position:fixed;inset:0}.hal-modal{background:var(--hrms-card);border-radius:24px;width:90%;max-width:450px;animation:.3s cubic-bezier(.34,1.56,.64,1) hal-modal-in;overflow:hidden;box-shadow:0 20px 40px #0003}.hal-modal__header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex;position:relative}.hal-modal__icon-warning{background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto;display:flex}.hal-modal__icon-warning svg{color:var(--hrms-danger);font-size:28px}.hal-modal__close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;padding:6px;font-size:1.1rem;transition:color .2s;position:absolute;top:16px;right:16px}.hal-modal__close:hover{color:var(--hrms-danger)}.hal-modal__body{text-align:center;padding:20px 24px}.hal-modal__body h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:700}.hal-modal__body p{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.85rem}.hal-modal__textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);resize:vertical;border-radius:12px;padding:12px 14px;font-size:.85rem;transition:all .2s}.hal-modal__textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.hal-modal__textarea::placeholder{color:var(--hrms-text-muted)}.hal-modal__footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.hal-modal__cancel{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);cursor:pointer;background:#fff;border-radius:10px;flex:1;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s}.hal-modal__cancel:hover{border-color:var(--hrms-text-muted);background:#f8f9ff}.hal-modal__confirm{background:linear-gradient(135deg, var(--hrms-danger), #dc2626);color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.hal-modal__confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.hal-modal__confirm:disabled{opacity:.6;cursor:not-allowed}@keyframes hal-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.admin-leave-loading{background:var(--hrms-bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.admin-leave-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite adl-spin}@keyframes adl-spin{to{transform:rotate(360deg)}}.admin-leave{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.admin-leave-header{margin-bottom:28px}.admin-leave-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.admin-leave-header h1 svg{color:var(--hrms-primary)}.admin-leave-header p{color:var(--hrms-text-secondary);font-size:.875rem}.admin-stat-card .admin-stat-info h3{color:var(--hrms-text-muted);text-transform:uppercase;margin-bottom:4px;font-size:.75rem;font-weight:600}.admin-stat-card .admin-stat-info p.pending{color:var(--hrms-warning)}.admin-stat-card .admin-stat-info p.approved{color:var(--hrms-success)}.admin-stat-card .admin-stat-info p.rejected{color:var(--hrms-danger)}.admin-leave-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.admin-leave-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.admin-leave-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.admin-leave-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.admin-pending-card,.admin-history-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s adl-fade-in}.admin-pending-card h2,.admin-history-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:20px;font-size:1rem;font-weight:700}.admin-pending-card h2:before,.admin-history-card h2:before{content:"";background:var(--hrms-primary);vertical-align:middle;border-radius:4px;width:4px;height:18px;margin-right:10px;display:inline-block}.filters{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.filters .search-box{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:200px;padding:8px 14px;display:flex}.filters .search-box svg{color:var(--hrms-text-muted)}.filters .search-box input{background:0 0;border:none;outline:none;width:100%}.filters .filter-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.filters .filter-group select{cursor:pointer;background:0 0;border:none;outline:none}.admin-pending-table,.admin-history-table{border-collapse:collapse;width:100%}.admin-pending-table thead,.admin-history-table thead{background:#f8f9ff}.admin-pending-table thead th,.admin-history-table thead th{text-align:left;text-transform:uppercase;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:14px 16px;font-size:.7rem;font-weight:700}.admin-pending-table tbody td,.admin-history-table tbody td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.admin-pending-table tbody td small,.admin-history-table tbody td small{color:var(--hrms-text-muted);margin-top:2px;font-size:.65rem;display:block}.admin-pending-table tbody tr:hover td,.admin-history-table tbody tr:hover td{background:#fafbff}.employee-cell div span{color:var(--hrms-text-primary);font-weight:500}.employee-cell div small{color:var(--hrms-text-muted);font-size:.65rem;display:block}.reason-cell{white-space:nowrap;text-overflow:ellipsis;max-width:200px;overflow:hidden}.action-buttons,.override-buttons{flex-wrap:wrap;gap:8px;display:flex}.action-buttons .approve-btn,.action-buttons .reject-btn,.action-buttons .override-approve,.action-buttons .override-reject,.override-buttons .approve-btn,.override-buttons .reject-btn,.override-buttons .override-approve,.override-buttons .override-reject{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.7rem;font-weight:600;transition:all .2s;display:flex}.action-buttons .approve-btn,.action-buttons .override-approve,.override-buttons .approve-btn,.override-buttons .override-approve{color:#059669;background:#10b9811a}.action-buttons .approve-btn:hover:not(:disabled),.action-buttons .override-approve:hover:not(:disabled),.override-buttons .approve-btn:hover:not(:disabled),.override-buttons .override-approve:hover:not(:disabled){background:#10b98133}.action-buttons .reject-btn,.action-buttons .override-reject,.override-buttons .reject-btn,.override-buttons .override-reject{color:#dc2626;background:#ef44441a}.action-buttons .reject-btn:hover:not(:disabled),.action-buttons .override-reject:hover:not(:disabled),.override-buttons .reject-btn:hover:not(:disabled),.override-buttons .override-reject:hover:not(:disabled){background:#ef444433}.action-buttons .override-approve,.action-buttons .override-reject,.override-buttons .override-approve,.override-buttons .override-reject{padding:4px 8px;font-size:.65rem}.action-buttons button:disabled,.override-buttons button:disabled{opacity:.5;cursor:not-allowed}.pagination{border-top:1px solid var(--hrms-border);justify-content:center;align-items:center;gap:16px;margin-top:24px;padding-top:16px;display:flex}@keyframes adl-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.admin-leave{padding:24px}.admin-leave-header h1{font-size:1.5rem}.admin-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.admin-leave{padding:16px}.admin-stats-grid{grid-template-columns:1fr}.admin-leave-tabs{flex-direction:column}.admin-leave-tabs .tab-btn{justify-content:center}.filters{flex-direction:column}.admin-pending-table th,.admin-pending-table td,.admin-history-table th,.admin-history-table td{padding:10px 12px;font-size:.7rem}.action-buttons,.override-buttons{flex-direction:column}}.admin-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;animation:.2s admin-fade-in;display:flex;position:fixed;inset:0}.admin-modal{background:var(--hrms-card);border-radius:24px;width:90%;max-width:450px;animation:.3s cubic-bezier(.34,1.56,.64,1) admin-modal-in;overflow:hidden;box-shadow:0 20px 40px #0003}.admin-modal__header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex;position:relative}.admin-modal__icon-warning{background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto;display:flex}.admin-modal__icon-warning svg{color:var(--hrms-danger);font-size:28px}.admin-modal__close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;padding:6px;font-size:1.1rem;transition:color .2s;position:absolute;top:16px;right:16px}.admin-modal__close:hover{color:var(--hrms-danger)}.admin-modal__body{text-align:center;padding:20px 24px}.admin-modal__body h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:700}.admin-modal__body p{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.85rem}.admin-modal__textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);resize:vertical;border-radius:12px;padding:12px 14px;font-size:.85rem;transition:all .2s}.admin-modal__textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.admin-modal__textarea::placeholder{color:var(--hrms-text-muted)}.admin-modal__footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.admin-modal__cancel{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);cursor:pointer;background:#fff;border-radius:10px;flex:1;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s}.admin-modal__cancel:hover{border-color:var(--hrms-text-muted);background:#f8f9ff}.admin-modal__confirm{background:linear-gradient(135deg, var(--hrms-danger), #dc2626);color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.admin-modal__confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.admin-modal__confirm:disabled{opacity:.6;cursor:not-allowed}@keyframes admin-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.override-buttons{flex-wrap:wrap;gap:6px;display:flex}.override-buttons .override-approve,.override-buttons .override-reject{cursor:pointer;border:none;border-radius:6px;padding:4px 8px;font-size:.65rem;font-weight:600;transition:all .2s}.override-buttons .override-approve{color:#059669;background:#10b9811a}.override-buttons .override-approve:hover:not(:disabled){background:#10b98133}.override-buttons .override-reject{color:#dc2626;background:#ef44441a}.override-buttons .override-reject:hover:not(:disabled){background:#ef444433}.override-buttons button:disabled{opacity:.5;cursor:not-allowed}.action-buttons-small{flex-wrap:wrap;gap:6px;display:flex}.action-buttons-small button{cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:4px 12px;font-size:11px;font-weight:600;transition:all .3s}.action-buttons-small button:disabled{opacity:.6;cursor:not-allowed}.action-buttons-small .approve-small{color:#fff;background:#10b981}.action-buttons-small .approve-small:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.action-buttons-small .reject-small{color:#fff;background:#ef4444}.action-buttons-small .reject-small:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 8px #ef44444d}.override-approve{cursor:pointer;white-space:nowrap;color:#fff;background:#3b82f6;border:none;border-radius:4px;padding:4px 14px;font-size:11px;font-weight:600;transition:all .3s}.override-approve:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 8px #3b82f64d}.override-approve:disabled{opacity:.6;cursor:not-allowed}.override-reject{cursor:pointer;white-space:nowrap;color:#fff;background:#f59e0b;border:none;border-radius:4px;padding:4px 14px;font-size:11px;font-weight:600;transition:all .3s}.override-reject:hover:not(:disabled){background:#d97706;transform:translateY(-1px);box-shadow:0 4px 8px #f59e0b4d}.override-reject:disabled{opacity:.6;cursor:not-allowed}.no-action{color:#9ca3af;font-size:12px;font-weight:400}.action-buttons{flex-wrap:wrap;gap:8px;display:flex}.action-buttons button{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 16px;font-size:12px;font-weight:600;transition:all .3s;display:flex}.action-buttons button:disabled{opacity:.6;cursor:not-allowed}.action-buttons button svg{font-size:14px}.action-buttons .approve-btn{color:#fff;background:#10b981}.action-buttons .approve-btn:hover:not(:disabled){background:#059669;transform:translateY(-2px);box-shadow:0 6px 12px #10b9814d}.action-buttons .reject-btn{color:#fff;background:#ef4444}.action-buttons .reject-btn:hover:not(:disabled){background:#dc2626;transform:translateY(-2px);box-shadow:0 6px 12px #ef44444d}@media (width<=768px){.action-buttons-small{flex-direction:column;gap:4px}.action-buttons-small button,.override-approve,.override-reject{width:100%;padding:3px 10px;font-size:10px}.action-buttons{flex-direction:column;gap:6px}.action-buttons button{justify-content:center;width:100%;padding:5px 12px;font-size:11px}}.admin-history-table td .employee-cell,.admin-pending-table td .employee-cell{align-items:center;gap:10px;display:flex}.admin-history-table td .employee-cell .employee-avatar,.admin-pending-table td .employee-cell .employee-avatar{color:#374151;background:#e5e7eb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.admin-history-table td .employee-cell div,.admin-pending-table td .employee-cell div{flex-direction:column;display:flex}.admin-history-table td .employee-cell div span,.admin-pending-table td .employee-cell div span{color:#1f2937;font-size:13px;font-weight:600}.admin-history-table td .employee-cell div small,.admin-pending-table td .employee-cell div small{color:#6b7280;font-size:11px}.admin-history-table td .reason-cell,.admin-pending-table td .reason-cell{text-overflow:ellipsis;white-space:nowrap;color:#4b5563;max-width:150px;font-size:13px;overflow:hidden}.status-badge.status-pending{color:#d97706;background:#fef3c7}.status-badge.status-approved{color:#065f46;background:#d1fae5}.status-badge.status-rejected{color:#991b1b;background:#fee2e2}.status-badge.status-cancelled{color:#6b7280;background:#f3f4f6}*,:before,:after{box-sizing:border-box;margin:0;padding:0}.admin-attendance-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.admin-attendance-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-attendance{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.attendance-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.attendance-header .header-left h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;align-items:center;gap:10px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.attendance-header .header-left h1 svg{color:var(--hrms-primary)}.attendance-header .header-left p{color:var(--hrms-text-secondary);font-size:.875rem}.attendance-header .header-right .date-display{background:var(--hrms-card);border:1px solid var(--hrms-border);font-family:var(--hrms-font-body);color:var(--hrms-text-secondary);border-radius:12px;align-items:center;gap:10px;padding:10px 18px;font-size:.85rem;font-weight:500;display:inline-flex;box-shadow:0 2px 8px #0d0f1a0a}.attendance-header .header-right .date-display svg{color:var(--hrms-primary);font-size:.9rem}.admin-stat-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:18px;align-items:center;gap:14px;padding:18px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 12px #0d0f1a0a}.admin-stat-card .admin-stat-icon{width:46px;height:46px;color:var(--hrms-primary);background:#5a67f21a;border-radius:12px;justify-content:center;align-items:center;font-size:1.3rem;display:flex}.admin-stat-card .admin-stat-info h3{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.7rem;font-weight:600}.admin-stat-card .admin-stat-info p{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.3rem;font-weight:700}.admin-stat-card .admin-stat-info p.present,.admin-stat-card .admin-stat-info p.on-time{color:#059669}.admin-stat-card .admin-stat-info p.late,.admin-stat-card .admin-stat-info p.half-day{color:#d97706}.admin-stat-card .admin-stat-info p.absent{color:#dc2626}.filters-section{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:16px 20px;display:flex}.filters-section .search-box{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:200px;padding:8px 14px;display:flex}.filters-section .search-box svg{color:var(--hrms-text-muted);font-size:.85rem}.filters-section .search-box input{background:0 0;border:none;outline:none;width:100%;font-size:.85rem}.filters-section .filter-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.filters-section .filter-group .filter-icon{color:var(--hrms-text-muted);font-size:.85rem}.filters-section .filter-group select,.filters-section .filter-group input{cursor:pointer;background:0 0;border:none;outline:none;font-size:.85rem}.attendance-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.45s both admin-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.attendance-card .card-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.attendance-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.attendance-card .card-header h2 svg{color:var(--hrms-primary);font-size:1rem}.attendance-table{border-collapse:collapse;width:100%}.attendance-table thead{background:#f8f9ff}.attendance-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:14px 16px;font-size:.7rem;font-weight:700}.attendance-table td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.attendance-table tr:hover td{background:#fafbff}.attendance-table .date-cell{white-space:nowrap;font-weight:500}.employee-cell .employee-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:600;display:flex}.employee-cell .employee-info{flex-direction:column;gap:2px;display:flex}.employee-cell .employee-info .employee-name{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.employee-cell .employee-info small{color:var(--hrms-text-muted);font-size:.65rem}.role-badge{border-radius:20px;align-items:center;padding:4px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.status-badge-small{border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.status-badge-small.status-late,.status-badge-small.status-half-day{color:#d97706;background:#f59e0b1a}.edit-btn{color:var(--hrms-primary);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px;transition:all .2s}.edit-btn:hover{background:#5a67f21a;transform:scale(1.05)}.attendance-summary{border-top:1px solid var(--hrms-border);background:#f8f9ff;gap:24px;padding:20px 28px;display:flex}.attendance-summary .summary-item{color:var(--hrms-text-secondary);align-items:center;gap:8px;font-size:.85rem;display:flex}.attendance-summary .summary-item strong{color:var(--hrms-text-primary);font-size:1rem}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.edit-modal .modal-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.edit-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1.1rem;font-weight:700;display:flex}.edit-modal .modal-header .modal-close{cursor:pointer;color:var(--hrms-text-muted);background:0 0;border:none;font-size:1.2rem;transition:color .2s}.edit-modal .modal-body .employee-info{background:#f8f9ff;border-radius:12px;margin-bottom:20px;padding:16px}.edit-modal .modal-body .employee-info .info-row{justify-content:space-between;margin-bottom:8px;display:flex}.edit-modal .modal-body .employee-info .info-row:last-child{margin-bottom:0}.edit-modal .modal-body .employee-info .info-row span{color:var(--hrms-text-muted);font-size:.85rem}.edit-modal .modal-body .employee-info .info-row strong{color:var(--hrms-text-primary);font-size:.85rem}.edit-modal .modal-body .form-group{margin-bottom:16px}.edit-modal .modal-body .form-group label{color:var(--hrms-text-primary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.edit-modal .modal-body .form-group input,.edit-modal .modal-body .form-group textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);border-radius:10px;padding:10px 14px;font-size:.85rem;transition:all .2s}.edit-modal .modal-body .form-group input:focus,.edit-modal .modal-body .form-group textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.edit-modal .modal-body .form-group textarea{resize:vertical}.edit-modal .modal-footer .cancel-btn{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);cursor:pointer;background:#fff;border-radius:10px;flex:1;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s}.edit-modal .modal-footer .cancel-btn:hover{border-color:var(--hrms-text-muted);background:#f8f9ff}.edit-modal .modal-footer .save-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.edit-modal .modal-footer .save-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes admin-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.admin-attendance{padding:24px}.attendance-header .header-left h1{font-size:1.5rem}.admin-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.admin-attendance{padding:16px}.attendance-header{flex-direction:column;align-items:flex-start}.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.filters-section{flex-direction:column}.search-box,.filter-group{width:100%}.attendance-table th,.attendance-table td{padding:10px 12px;font-size:.7rem}.edit-modal{width:95%;margin:16px}.modal-footer{flex-direction:column}}@media (width<=480px){.admin-attendance{padding:12px}.admin-stats-grid{grid-template-columns:1fr}.attendance-table th,.attendance-table td{padding:8px 10px}.status-badge-small{padding:2px 6px;font-size:.6rem}}.manager-tasks-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.manager-tasks-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite mt-spin}@keyframes mt-spin{to{transform:rotate(360deg)}}.manager-tasks{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.tasks-header{margin-bottom:28px}.tasks-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.tasks-header h1 svg{color:var(--hrms-primary)}.tasks-header p{color:var(--hrms-text-secondary);font-size:.875rem}.tasks-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.tasks-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.tasks-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.tasks-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.create-task-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s mt-fade-in}.create-task-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:20px;font-size:1rem;font-weight:700}.create-task-card h2:before{content:"";background:var(--hrms-primary);vertical-align:middle;border-radius:4px;width:4px;height:18px;margin-right:10px;display:inline-block}.create-task-form{flex-direction:column;gap:20px;display:flex}.create-task-form .form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.create-task-form .form-group{flex-direction:column;gap:8px;display:flex}.create-task-form .form-group label{color:var(--hrms-text-primary);align-items:center;gap:6px;font-size:.8rem;font-weight:600;display:flex}.create-task-form .form-group input,.create-task-form .form-group textarea{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-body);border-radius:10px;padding:10px 14px;font-size:.85rem;transition:all .2s}.create-task-form .form-group input:focus,.create-task-form .form-group textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.create-task-form .form-group textarea{resize:vertical}.tasks-list-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.4s mt-fade-in;overflow:hidden}.tasks-list-card .card-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.tasks-list-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.tasks-list-card .card-header h2 svg{color:var(--hrms-primary)}.tasks-list-card .card-header .filters{flex-wrap:wrap;gap:12px;display:flex}.tasks-list-card .card-header .filters .search-box{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;min-width:200px;padding:8px 14px;display:flex}.tasks-list-card .card-header .filters .search-box svg{color:var(--hrms-text-muted)}.tasks-list-card .card-header .filters .search-box input{background:0 0;border:none;outline:none;width:100%}.tasks-list-card .card-header .filters .filter-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.tasks-list-card .card-header .filters .filter-group select{cursor:pointer;background:0 0;border:none;outline:none}.tasks-list{padding:0}.task-item .task-actions{gap:10px;display:flex}.task-item .task-actions button{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.7rem;font-weight:600;transition:all .2s;display:flex}.task-item .task-actions .complete-btn{color:#059669;background:#10b9811a}.task-item .task-actions .complete-btn:hover{background:#10b98133}.task-item .task-actions .assign-btn{color:var(--hrms-primary);background:#5a67f21a}.task-item .task-actions .assign-btn:hover{background:#5a67f233}.task-item .task-actions .expand-btn{color:var(--hrms-text-muted);background:0 0;padding:6px 10px}.task-item .task-actions .expand-btn:hover{background:#0000000d}.task-details .detail-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.75rem;font-weight:600}.assigned-employees{flex-direction:column;gap:10px;display:flex}.assigned-employees .assigned-employee{border:1px solid var(--hrms-border);background:#fff;border-radius:10px;align-items:center;gap:12px;padding:10px;display:flex}.assigned-employees .assigned-employee .employee-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:600;display:flex}.assigned-employees .assigned-employee .employee-info{flex-direction:column;display:flex}.assigned-employees .assigned-employee .employee-info .employee-name{color:var(--hrms-text-primary);font-size:.85rem;font-weight:600}.assigned-employees .assigned-employee .employee-info .assigned-date{color:var(--hrms-text-muted);font-size:.7rem}.status-badge.status-complete{color:#059669;background:#10b9811a}.status-badge.status-incomplete{color:#d97706;background:#f59e0b1a}.assign-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:500px;max-height:90vh;animation:.3s mt-modal-in;overflow:auto}.assign-modal .modal-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.assign-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.assign-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.assign-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.assign-modal .modal-body{padding:20px 24px}.assign-modal .modal-body .modal-subtitle{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.85rem}.assign-modal .modal-body .no-employees{text-align:center;background:#f8f9ff;border-radius:12px;padding:32px}.assign-modal .modal-body .no-employees p{color:var(--hrms-text-secondary);margin-bottom:4px;font-size:.85rem}.assign-modal .modal-body .no-employees small{color:var(--hrms-text-muted);font-size:.75rem}.assign-modal .modal-body .employees-list{flex-direction:column;gap:10px;max-height:400px;display:flex;overflow-y:auto}.assign-modal .modal-body .employees-list .employee-checkbox{border:1px solid var(--hrms-border);cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:10px;transition:all .2s;display:flex}.assign-modal .modal-body .employees-list .employee-checkbox:hover{border-color:var(--hrms-primary);background:#f8f9ff}.assign-modal .modal-body .employees-list .employee-checkbox input{cursor:pointer;width:18px;height:18px}.assign-modal .modal-body .employees-list .employee-checkbox .employee-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:600;display:flex}.assign-modal .modal-body .employees-list .employee-checkbox .employee-info{flex:1}.assign-modal .modal-body .employees-list .employee-checkbox .employee-info .employee-name{color:var(--hrms-text-primary);font-size:.85rem;font-weight:600}.assign-modal .modal-body .employees-list .employee-checkbox .employee-info .employee-id{color:var(--hrms-text-muted);font-size:.7rem;display:block}.assign-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 20px;display:flex}.assign-modal .modal-footer .cancel-btn,.assign-modal .modal-footer .assign-submit-btn{font-family:var(--hrms-font-head);cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.assign-modal .modal-footer .cancel-btn{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff}.assign-modal .modal-footer .cancel-btn:hover{background:#f8f9ff}.assign-modal .modal-footer .assign-submit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none}.assign-modal .modal-footer .assign-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.assign-modal .modal-footer .assign-submit-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes mt-fade-in{0%{opacity:0}to{opacity:1}}@keyframes mt-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=1024px){.manager-tasks{padding:24px}.tasks-header h1{font-size:1.5rem}}@media (width<=768px){.manager-tasks{padding:16px}.tasks-tabs{flex-direction:column}.tasks-tabs .tab-btn{justify-content:center}.create-task-form .form-row{grid-template-columns:1fr;gap:16px}.card-header{flex-direction:column;align-items:flex-start!important}.task-header{flex-direction:column;gap:12px;align-items:flex-start!important}.task-actions{justify-content:flex-start;width:100%}.filters{flex-direction:column;width:100%}.search-box{width:100%}.assign-modal{width:95%;margin:16px}}@media (width<=480px){.manager-tasks{padding:12px}.task-meta{flex-direction:column;gap:8px!important}}.manager-performance-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.manager-performance-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite mp-spin}.manager-performance{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.performance-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.performance-header h1 svg{color:var(--hrms-primary)}.add-review-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:28px;animation:.4s mp-fade-in}.add-review-card h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:20px;font-size:1rem;font-weight:700}.add-review-card h2:before{content:"";background:var(--hrms-primary);vertical-align:middle;border-radius:4px;width:4px;height:18px;margin-right:10px;display:inline-block}.add-review-form{flex-direction:column;gap:20px;display:flex}.add-review-form .form-row{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.add-review-form .form-group{flex-direction:column;gap:8px;display:flex}.add-review-form .form-group label{color:var(--hrms-text-primary);align-items:center;gap:6px;font-size:.8rem;font-weight:600;display:flex}.add-review-form .form-group input,.add-review-form .form-group select,.add-review-form .form-group textarea{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-body);border-radius:10px;padding:10px 14px;font-size:.85rem;transition:all .2s}.add-review-form .form-group input:focus,.add-review-form .form-group select:focus,.add-review-form .form-group textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.add-review-form .form-group textarea{resize:vertical}.ratings-section{background:#f8f9ff;border-radius:16px;margin:8px 0;padding:20px}.ratings-section h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:16px;font-size:.9rem;font-weight:600}.ratings-section .rating-group{margin-bottom:20px}.ratings-section .rating-group:last-child{margin-bottom:0}.ratings-section .rating-group label{color:var(--hrms-text-primary);margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.ratings-section .rating-group .rating-input{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.ratings-section .rating-group .rating-input input[type=range]{-webkit-appearance:none;background:var(--hrms-border);border-radius:2px;flex:1;height:4px}.ratings-section .rating-group .rating-input input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--hrms-primary);cursor:pointer;border-radius:50%;width:16px;height:16px}.ratings-section .rating-group .rating-input .rating-value{align-items:center;gap:8px;min-width:120px;display:flex}.ratings-section .rating-group .rating-input .rating-value svg{font-size:.85rem}.ratings-section .rating-group .rating-input .rating-value span{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.warning-box{background:#ef444414;border-radius:12px;align-items:center;gap:10px;padding:12px 16px;display:flex}.warning-box svg{color:var(--hrms-danger)}.warning-box span{color:var(--hrms-danger);font-size:.8rem}.form-actions{gap:16px;margin-top:8px;display:flex}.form-actions .reset-btn,.form-actions .submit-btn{font-family:var(--hrms-font-head);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.form-actions .reset-btn{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff}.form-actions .reset-btn:hover{border-color:var(--hrms-text-muted);background:#f8f9ff}.form-actions .submit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;flex:1}.form-actions .submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #5a67f24d}.form-actions .submit-btn:disabled{opacity:.6;cursor:not-allowed}.reviews-list-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.4s mp-fade-in;overflow:hidden}.reviews-list-card .card-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.reviews-list-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.reviews-list-card .card-header h2 svg{color:var(--hrms-primary)}.reviews-list-card .card-header .filters{flex-wrap:wrap;gap:12px;display:flex}.reviews-list-card .card-header .filters .filter-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.reviews-list-card .card-header .filters .filter-group svg{color:var(--hrms-text-muted);font-size:.85rem}.reviews-list-card .card-header .filters .filter-group select{cursor:pointer;background:0 0;border:none;outline:none;font-size:.8rem}.reviews-list{padding:0}.review-item .review-info{flex-wrap:wrap;flex:1;justify-content:space-between;align-items:center;gap:16px;display:flex}.review-item .review-info .review-employee{align-items:center;gap:12px;display:flex}.review-item .review-info .review-employee .employee-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1rem;font-weight:600;display:flex}.review-item .review-info .review-employee h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:1rem;font-weight:600}.review-item .review-info .review-employee .review-date{color:var(--hrms-text-muted);font-size:.7rem}.review-item .review-info .overall-rating{text-align:center;background:#f8f9ff;border-radius:12px;padding:8px 16px}.review-item .review-info .overall-rating strong{font-size:1.2rem;font-weight:700}.review-item .review-info .overall-rating span{color:var(--hrms-text-muted);font-size:.7rem}.review-item .review-info .overall-rating.rating-excellent strong{color:#059669}.review-item .review-info .overall-rating.rating-good strong{color:#3b82f6}.review-item .review-info .overall-rating.rating-average strong{color:#d97706}.review-item .review-info .overall-rating.rating-poor strong{color:#dc2626}.review-item .expand-btn{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px}.review-item .expand-btn:hover{background:#0000000d}@media (width<=1024px){.manager-performance{padding:24px}.performance-header h1{font-size:1.5rem}.ratings-grid{grid-template-columns:repeat(2,1fr)!important}}@media (width<=768px){.manager-performance{padding:16px}.performance-tabs{flex-direction:column}.performance-tabs .tab-btn{justify-content:center}.add-review-form .form-row{grid-template-columns:1fr;gap:16px}.card-header{flex-direction:column;align-items:flex-start!important}.filters{flex-direction:column;width:100%}.filter-group{justify-content:space-between;width:100%}.review-header{flex-direction:column;gap:12px;align-items:flex-start!important}.review-info{flex-direction:column;width:100%;align-items:flex-start!important}.ratings-grid{grid-template-columns:1fr!important}.rating-input{flex-direction:column;align-items:flex-start!important}}@media (width<=480px){.manager-performance{padding:12px}.ratings-section{padding:16px}}.employee-performance-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.employee-performance-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite ep-spin}.employee-performance{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.performance-header{margin-bottom:24px}.performance-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:5px;font-size:1.6rem;font-weight:700}.performance-header p{color:var(--hrms-text-secondary);font-size:.875rem}.summary-cards{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.summary-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;align-items:center;gap:14px;padding:16px;transition:transform .2s;display:flex}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.summary-card .summary-icon{width:48px;height:48px;color:var(--hrms-primary);background:#5a67f21a;border-radius:12px;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.summary-card .summary-info h3{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.7rem;font-weight:600}.summary-card .summary-info p{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.3rem;font-weight:700}.summary-card .summary-info p.rating-excellent{color:#059669}.summary-card .summary-info p.rating-good{color:#3b82f6}.summary-card .summary-info p.rating-average{color:#d97706}.summary-card .summary-info p.rating-poor{color:#dc2626}.performance-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.performance-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.performance-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.performance-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.tasks-card .card-header,.performance-card .card-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.tasks-card .card-header h2,.performance-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.tasks-card .card-header .filter-group,.tasks-card .card-header .filters,.performance-card .card-header .filter-group,.performance-card .card-header .filters{gap:12px;display:flex}.tasks-card .card-header .filter-group select,.tasks-card .card-header .filters select,.performance-card .card-header .filter-group select,.performance-card .card-header .filters select{border:1px solid var(--hrms-border);font-family:var(--hrms-font-body);cursor:pointer;background:#f8f9ff;border-radius:8px;outline:none;padding:8px 12px;font-size:.8rem}.task-item{border-bottom:1px solid #f1f4fd}.task-item:last-child{border-bottom:none}.task-item .task-header{cursor:pointer;justify-content:space-between;align-items:center;padding:16px 24px;transition:background .2s;display:flex}.task-item .task-header:hover{background:#fafbff}.task-item .task-info{flex:1}.task-item .task-info .task-title{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.task-item .task-info .task-title h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:.95rem;font-weight:600}.task-item .task-info .task-meta{flex-wrap:wrap;gap:16px;display:flex}.task-item .task-info .task-meta span{color:var(--hrms-text-muted);align-items:center;gap:5px;font-size:.7rem;display:flex}.task-item .expand-btn{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px}.task-item .expand-btn:hover{background:#0000000d}.task-details{background:#fafbff;border-top:1px solid #f1f4fd;padding:0 24px 16px}.task-details .detail-section{margin-bottom:12px}.task-details .detail-section:last-child{margin-bottom:0}.task-details .detail-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:600}.task-details .detail-section p{color:var(--hrms-text-primary);font-size:.85rem;line-height:1.4}.review-item{border-bottom:1px solid #f1f4fd}.review-item:last-child{border-bottom:none}.review-item .review-header{cursor:pointer;justify-content:space-between;align-items:center;padding:16px 24px;transition:background .2s;display:flex}.review-item .review-header:hover{background:#fafbff}.review-item .review-info{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.review-item .review-info .review-date-badge{text-align:center;background:#5a67f21a;border-radius:12px;min-width:80px;padding:8px 16px}.review-item .review-info .review-date-badge .month{color:var(--hrms-primary);text-transform:uppercase;font-size:.7rem;font-weight:600;display:block}.review-item .review-info .review-date-badge .year{color:var(--hrms-text-primary);font-size:.8rem;font-weight:700;display:block}.review-item .review-info .review-rating{text-align:center;background:#f8f9ff;border-radius:10px;padding:6px 14px}.review-item .review-info .review-rating strong{font-size:1.1rem;font-weight:700}.review-item .review-info .review-rating span{color:var(--hrms-text-muted);font-size:.7rem}.review-item .review-info .review-rating.rating-excellent strong{color:#059669}.review-item .review-info .review-rating.rating-good strong{color:#3b82f6}.review-item .review-info .review-rating.rating-average strong{color:#d97706}.review-item .review-info .review-rating.rating-poor strong{color:#dc2626}.review-details{background:#fafbff;border-top:1px solid #f1f4fd;padding:0 24px 16px}.review-details .ratings-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.review-details .ratings-grid .rating-item{border:1px solid var(--hrms-border);text-align:center;background:#fff;border-radius:10px;padding:10px}.review-details .ratings-grid .rating-item span{color:var(--hrms-text-muted);margin-bottom:6px;font-size:.65rem;display:block}.review-details .ratings-grid .rating-item .rating-stars{margin-bottom:6px}.review-details .ratings-grid .rating-item .rating-stars svg{font-size:.7rem}.review-details .ratings-grid .rating-item strong{color:var(--hrms-text-primary);font-size:.85rem}.review-details .comments-section{margin-bottom:12px}.review-details .comments-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:600}.review-details .comments-section p{color:var(--hrms-text-primary);border:1px solid var(--hrms-border);background:#fff;border-radius:8px;padding:10px;font-size:.85rem;line-height:1.4}.review-details .review-meta{color:var(--hrms-text-muted);gap:16px;font-size:.7rem;display:flex}.review-details .review-meta span{align-items:center;gap:5px;display:flex}@media (width<=1024px){.employee-performance{padding:24px}.summary-cards{grid-template-columns:repeat(2,1fr)}.ratings-grid{grid-template-columns:repeat(2,1fr)!important}}@media (width<=768px){.employee-performance{padding:16px}.performance-header h1{font-size:1.3rem}.summary-cards{grid-template-columns:1fr}.performance-tabs{flex-direction:column}.performance-tabs .tab-btn{justify-content:center}.card-header{flex-direction:column;align-items:flex-start!important}.filters,.filter-group,.filter-group select,.filters select{width:100%}.task-header,.review-header{flex-direction:column;gap:10px;align-items:flex-start!important}.review-info{justify-content:space-between;width:100%}.ratings-grid{grid-template-columns:1fr!important}}@media (width<=480px){.employee-performance{padding:12px}.task-title{flex-direction:column;align-items:flex-start!important}.task-meta{flex-direction:column;gap:8px!important}}.hr-overview-loading{background:var(--hrms-bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.hr-overview-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite hro-spin}@keyframes hro-spin{to{transform:rotate(360deg)}}.hr-overview{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.expand-btn{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px}.expand-btn:hover{background:#0000000d}@keyframes hro-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.hr-overview{padding:24px}.overview-header h1{font-size:1.5rem}}@media (width<=768px){.hr-overview{padding:16px}.overview-tabs{flex-direction:column}.overview-tabs .tab-btn{justify-content:center}.filters{flex-direction:column}.search-box,.filter-group{width:100%}.task-header,.review-header{flex-direction:column;gap:12px;align-items:flex-start!important}.ratings-grid{grid-template-columns:1fr!important}}.admin-overview-loading{background:var(--hrms-bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.admin-overview-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite ado-spin}@keyframes ado-spin{to{transform:rotate(360deg)}}.admin-overview{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.overview-header{margin-bottom:28px}.overview-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.overview-header h1 svg{color:var(--hrms-primary)}.overview-header p{color:var(--hrms-text-secondary);font-size:.875rem}.overview-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.overview-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.overview-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.overview-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.tasks-card,.performance-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.4s ado-fade-in;overflow:hidden}.tasks-card .card-header,.performance-card .card-header{border-bottom:1px solid var(--hrms-border);padding:20px 28px}.tasks-card .card-header h2,.performance-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;margin-bottom:16px;font-size:1rem;font-weight:700;display:flex}.tasks-card .card-header h2 svg,.performance-card .card-header h2 svg{color:var(--hrms-primary)}.tasks-card .card-header .filters,.performance-card .card-header .filters{flex-wrap:wrap;gap:12px;display:flex}.tasks-card .card-header .filters .search-box,.performance-card .card-header .filters .search-box{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:200px;padding:8px 14px;display:flex}.tasks-card .card-header .filters .search-box svg,.performance-card .card-header .filters .search-box svg{color:var(--hrms-text-muted)}.tasks-card .card-header .filters .search-box input,.performance-card .card-header .filters .search-box input{background:0 0;border:none;outline:none;width:100%}.tasks-card .card-header .filters .filter-group,.performance-card .card-header .filters .filter-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.tasks-card .card-header .filters .filter-group select,.performance-card .card-header .filters .filter-group select{cursor:pointer;background:0 0;border:none;outline:none}.tasks-list,.reviews-list{padding:0}.task-item,.review-item{border-bottom:1px solid #f1f4fd}.task-item:last-child,.review-item:last-child{border-bottom:none}.task-item .task-header,.task-item .review-header,.review-item .task-header,.review-item .review-header{cursor:pointer;justify-content:space-between;align-items:center;padding:16px 24px;transition:background .2s;display:flex}.task-item .task-header:hover,.task-item .review-header:hover,.review-item .task-header:hover,.review-item .review-header:hover{background:#fafbff}.task-info,.review-info{flex:1}.task-info .task-title,.review-info .task-title{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.task-info .task-title h3,.review-info .task-title h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:.95rem;font-weight:600}.task-info .task-meta,.task-info .review-meta,.review-info .task-meta,.review-info .review-meta{flex-wrap:wrap;gap:16px;display:flex}.task-info .task-meta span,.task-info .review-meta span,.review-info .task-meta span,.review-info .review-meta span{color:var(--hrms-text-muted);align-items:center;gap:5px;font-size:.7rem;display:flex}.task-actions,.review-actions{align-items:center;gap:8px;display:flex}.task-actions .edit-btn,.task-actions .delete-btn,.review-actions .edit-btn,.review-actions .delete-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;transition:all .2s}.task-actions .edit-btn svg,.task-actions .delete-btn svg,.review-actions .edit-btn svg,.review-actions .delete-btn svg{font-size:.9rem}.task-actions .edit-btn,.review-actions .edit-btn{color:var(--hrms-primary)}.task-actions .edit-btn:hover,.review-actions .edit-btn:hover{background:#5a67f21a}.task-actions .delete-btn,.review-actions .delete-btn{color:var(--hrms-danger)}.task-actions .delete-btn:hover,.review-actions .delete-btn:hover{background:#ef44441a}.task-actions .expand-btn,.review-actions .expand-btn{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px}.task-actions .expand-btn:hover,.review-actions .expand-btn:hover{background:#0000000d}.task-status{border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.task-status.status-complete{color:#059669;background:#10b9811a}.task-status.status-incomplete{color:#d97706;background:#f59e0b1a}.task-details,.review-details{background:#fafbff;border-top:1px solid #f1f4fd;padding:0 24px 20px}.task-details .detail-section,.review-details .detail-section{margin-bottom:16px}.task-details .detail-section h4,.review-details .detail-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;margin-bottom:8px;font-size:.7rem;font-weight:600}.task-details .detail-section p,.review-details .detail-section p{color:var(--hrms-text-primary);font-size:.85rem;line-height:1.4}.assigned-list{flex-direction:column;gap:8px;display:flex}.assigned-list .assigned-item{border:1px solid var(--hrms-border);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.assigned-list .assigned-item .assigned-name{color:var(--hrms-text-primary);font-weight:500}.assigned-list .assigned-item .assigned-date{color:var(--hrms-text-muted);font-size:.7rem}.review-employee{align-items:center;gap:12px;display:flex}.review-employee .employee-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:.9rem;font-weight:600;display:flex}.review-employee h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:.95rem;font-weight:600}.review-employee .review-date{color:var(--hrms-text-muted);font-size:.7rem}.overall-rating{text-align:center;background:#f8f9ff;border-radius:10px;padding:6px 14px}.overall-rating strong{font-size:1.1rem;font-weight:700}.overall-rating span{color:var(--hrms-text-muted);font-size:.7rem}.overall-rating.rating-excellent strong{color:#059669}.overall-rating.rating-good strong{color:#3b82f6}.overall-rating.rating-average strong{color:#d97706}.overall-rating.rating-poor strong{color:#dc2626}.ratings-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.ratings-grid .rating-item{border:1px solid var(--hrms-border);text-align:center;background:#fff;border-radius:10px;padding:10px}.ratings-grid .rating-item span{color:var(--hrms-text-muted);margin-bottom:6px;font-size:.65rem;display:block}.ratings-grid .rating-item .rating-stars{margin-bottom:6px}.ratings-grid .rating-item .rating-stars svg{font-size:.7rem}.ratings-grid .rating-item strong{color:var(--hrms-text-primary);font-size:.85rem}.comments-section{margin-bottom:16px}.comments-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:600}.comments-section p{color:var(--hrms-text-primary);border:1px solid var(--hrms-border);background:#fff;border-radius:8px;padding:10px;font-size:.85rem}.star-filled{color:#f59e0b}.star-empty{color:var(--hrms-border)}.edit-modal,.confirm-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:500px;animation:.3s ado-modal-in}.edit-modal .modal-header,.confirm-modal .modal-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.edit-modal .modal-header h3,.confirm-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.edit-modal .modal-header .modal-close,.confirm-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.edit-modal .modal-header .modal-close:hover,.confirm-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.edit-modal .modal-body,.confirm-modal .modal-body{padding:20px 24px}.edit-modal .modal-body .form-group,.confirm-modal .modal-body .form-group{margin-bottom:16px}.edit-modal .modal-body .form-group label,.confirm-modal .modal-body .form-group label{color:var(--hrms-text-primary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.edit-modal .modal-body .form-group input,.edit-modal .modal-body .form-group textarea,.confirm-modal .modal-body .form-group input,.confirm-modal .modal-body .form-group textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);border-radius:10px;padding:10px 14px}.edit-modal .modal-body .form-group input:focus,.edit-modal .modal-body .form-group textarea:focus,.confirm-modal .modal-body .form-group input:focus,.confirm-modal .modal-body .form-group textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.edit-modal .modal-body .form-group textarea,.confirm-modal .modal-body .form-group textarea{resize:vertical}.edit-modal .modal-body h3,.confirm-modal .modal-body h3{text-align:center;margin-bottom:8px;font-size:1.1rem}.edit-modal .modal-body p,.confirm-modal .modal-body p{text-align:center;color:var(--hrms-text-secondary);margin-bottom:8px}.edit-modal .modal-body .warning-text,.confirm-modal .modal-body .warning-text{color:var(--hrms-danger);font-size:.8rem}.edit-modal .modal-footer,.confirm-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 20px;display:flex}.edit-modal .modal-footer .cancel-btn,.edit-modal .modal-footer .save-btn,.edit-modal .modal-footer .delete-confirm-btn,.confirm-modal .modal-footer .cancel-btn,.confirm-modal .modal-footer .save-btn,.confirm-modal .modal-footer .delete-confirm-btn{font-family:var(--hrms-font-head);cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.edit-modal .modal-footer .cancel-btn,.confirm-modal .modal-footer .cancel-btn{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff}.edit-modal .modal-footer .cancel-btn:hover,.confirm-modal .modal-footer .cancel-btn:hover{background:#f8f9ff}.edit-modal .modal-footer .save-btn,.confirm-modal .modal-footer .save-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none}.edit-modal .modal-footer .save-btn:hover:not(:disabled),.confirm-modal .modal-footer .save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.edit-modal .modal-footer .delete-confirm-btn,.confirm-modal .modal-footer .delete-confirm-btn{background:linear-gradient(135deg, var(--hrms-danger), #dc2626);color:#fff;border:none}.edit-modal .modal-footer .delete-confirm-btn:hover:not(:disabled),.confirm-modal .modal-footer .delete-confirm-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.edit-modal .modal-footer button:disabled,.confirm-modal .modal-footer button:disabled{opacity:.6;cursor:not-allowed}.confirm-modal .modal-header{justify-content:center;position:relative}.confirm-modal .modal-header .warning-icon{background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.confirm-modal .modal-header .warning-icon svg{color:var(--hrms-danger);font-size:28px}.confirm-modal .modal-header .modal-close{position:absolute;top:16px;right:16px}@keyframes ado-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes ado-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=1024px){.admin-overview{padding:24px}.overview-header h1{font-size:1.5rem}}@media (width<=768px){.admin-overview{padding:16px}.overview-tabs{flex-direction:column}.overview-tabs .tab-btn{justify-content:center}.filters{flex-direction:column}.search-box,.filter-group{width:100%}.task-header,.review-header{flex-direction:column;gap:12px;align-items:flex-start!important}.ratings-grid{grid-template-columns:1fr!important}.task-actions,.review-actions{align-self:flex-end}}.announcements-loading{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.announcements-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite ann-spin}@keyframes ann-spin{to{transform:rotate(360deg)}}.announcements{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.announcements-header{margin-bottom:28px;position:relative}.announcements-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.announcements-header h1 svg{color:var(--hrms-primary)}.announcements-header p{color:var(--hrms-text-secondary);font-size:.875rem}.announcements-header .unread-badge{background:linear-gradient(135deg, var(--hrms-danger), #dc2626);color:#fff;border-radius:30px;align-items:center;gap:8px;padding:6px 14px;font-size:.75rem;font-weight:600;animation:2s ease-in-out infinite ann-pulse;display:flex;position:absolute;top:0;right:0}.announcements-header .unread-badge svg{font-size:.8rem}@keyframes ann-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}.announcements-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.announcements-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.announcements-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.announcements-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.view-card,.manage-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.4s ann-fade-in;overflow:hidden;box-shadow:0 2px 16px #0d0f1a0d}.view-card .card-header,.manage-card .card-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.view-card .card-header h2,.manage-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.view-card .card-header h2 svg,.manage-card .card-header h2 svg{color:var(--hrms-primary)}.view-card .card-header .filters,.manage-card .card-header .filters{flex-wrap:wrap;gap:12px;display:flex}.view-card .card-header .header-actions,.manage-card .card-header .header-actions{gap:12px;display:flex}.search-box,.filter-group,.manage-filters{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.search-box svg,.filter-group svg,.manage-filters svg{color:var(--hrms-text-muted);font-size:.85rem}.search-box input,.search-box select,.filter-group input,.filter-group select,.manage-filters input,.manage-filters select{background:0 0;border:none;outline:none;min-width:140px;font-size:.85rem}.manage-filters{flex-wrap:wrap;gap:12px;margin:16px 20px 0}.announcements-list{padding:0}.announcement-item{cursor:pointer;border-bottom:1px solid #f1f4fd;padding:20px 28px;transition:background .2s}.announcement-item:hover{background:#fafbff}.announcement-item.unread{border-left:3px solid var(--hrms-primary);background:#5a67f20a}.announcement-item.pinned{background:#f59e0b0a}.announcement-item .announcement-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.announcement-item .announcement-left{flex-wrap:wrap;gap:10px;display:flex}.announcement-item .announcement-right{align-items:center;gap:12px;display:flex}.announcement-item .announcement-date{color:var(--hrms-text-muted);align-items:center;gap:5px;font-size:.7rem;display:flex}.announcement-item .unread-dot{background:var(--hrms-primary);border-radius:50%;width:8px;height:8px;animation:1.5s ease-in-out infinite ann-pulse}.announcement-item .announcement-body h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1rem;font-weight:600}.announcement-item .announcement-body p{color:var(--hrms-text-secondary);margin-bottom:8px;font-size:.85rem;line-height:1.5}.announcement-item .announcement-body p.collapsed{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.announcement-item .announcement-body .read-more{color:var(--hrms-primary);cursor:pointer;background:0 0;border:none;font-size:.75rem;font-weight:500}.announcement-item .announcement-body .read-more:hover{text-decoration:underline}.announcement-item .announcement-footer{color:var(--hrms-text-muted);gap:20px;margin-top:12px;font-size:.65rem;display:flex}.announcement-item .announcement-footer span{align-items:center;gap:5px;display:flex}.type-badge,.type-badge-small{border-radius:20px;align-items:center;gap:5px;padding:4px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.type-badge.type-urgent,.type-badge-small.type-urgent{color:#dc2626;background:#ef44441a}.type-badge.type-holiday,.type-badge-small.type-holiday{color:#059669;background:#10b9811a}.type-badge.type-event,.type-badge-small.type-event{color:#7c3aed;background:#8b5cf61a}.type-badge.type-policy,.type-badge-small.type-policy{color:#2563eb;background:#3b82f61a}.type-badge.type-general,.type-badge-small.type-general{color:#4b5563;background:#6b72801a}.type-badge-small{padding:2px 8px;font-size:.65rem}.priority-badge,.priority-badge-small{border-radius:20px;align-items:center;padding:4px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.priority-badge.priority-high,.priority-badge-small.priority-high{color:#dc2626;background:#ef44441a}.priority-badge.priority-medium,.priority-badge-small.priority-medium{color:#d97706;background:#f59e0b1a}.priority-badge.priority-low,.priority-badge-small.priority-low{color:#059669;background:#10b9811a}.priority-badge-small{padding:2px 8px;font-size:.65rem}.pinned-badge{color:#d97706;background:#f59e0b26;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.7rem;font-weight:500;display:inline-flex}.create-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:8px 20px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.create-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #5a67f24d}.manage-table{padding:0 20px 20px;overflow-x:auto}.manage-table table{border-collapse:collapse;width:100%}.manage-table table thead{background:#f8f9ff}.manage-table table thead th{text-align:left;text-transform:uppercase;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:14px 16px;font-size:.7rem;font-weight:700}.manage-table table tbody td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.manage-table table tbody tr:hover td{background:#fafbff}.title-cell .title-wrapper{align-items:center;gap:6px;display:flex}.title-cell .title-wrapper .pin-icon{font-size:.8rem}.actions-cell button{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;transition:all .2s}.actions-cell button svg{font-size:.85rem}.actions-cell button.view-readers{color:var(--hrms-info)}.actions-cell button.view-readers:hover{background:#3b82f61a}.actions-cell button.edit{color:var(--hrms-primary)}.actions-cell button.edit:hover{background:#5a67f21a}.actions-cell button.delete{color:var(--hrms-danger)}.actions-cell button.delete:hover{background:#ef44441a}.status-badge.status-expired{color:#6b7280;background:#6b72801a}.modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:600px;max-height:90vh;animation:.3s ann-modal-in;overflow:auto}.modal.modal-lg{max-width:700px}.modal .modal-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.modal .modal-body{padding:24px}.modal .modal-body .form-group{margin-bottom:20px}.modal .modal-body .form-group label{color:var(--hrms-text-primary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.modal .modal-body .form-group input,.modal .modal-body .form-group select,.modal .modal-body .form-group textarea{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);border-radius:10px;padding:10px 14px;font-size:.85rem;transition:all .2s}.modal .modal-body .form-group input:focus,.modal .modal-body .form-group select:focus,.modal .modal-body .form-group textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.modal .modal-body .form-group textarea{resize:vertical}.modal .modal-body .form-row{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.modal .modal-body .checkbox-label{cursor:pointer;align-items:center;gap:8px;display:flex}.modal .modal-body .audience-checkboxes{flex-wrap:wrap;gap:20px;display:flex}.modal .modal-body .audience-checkboxes label{cursor:pointer;align-items:center;gap:6px;font-weight:400;display:flex}.modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.modal .modal-footer .cancel-btn,.modal .modal-footer .submit-btn{font-family:var(--hrms-font-head);cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.modal .modal-footer .cancel-btn{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff}.modal .modal-footer .cancel-btn:hover{background:#f8f9ff}.modal .modal-footer .submit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none}.modal .modal-footer .submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.modal .modal-footer .submit-btn:disabled{opacity:.6;cursor:not-allowed}.readers-stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.readers-stats .stat{text-align:center;background:#f8f9ff;border-radius:12px;padding:16px}.readers-stats .stat .stat-label{color:var(--hrms-text-muted);margin-bottom:4px;font-size:.7rem;display:block}.readers-stats .stat .stat-value{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.3rem;font-weight:700}.readers-stats .stat .stat-value.read{color:#059669}.readers-stats .stat .stat-value.unread{color:#dc2626}.readers-tables{grid-template-columns:1fr 1fr;gap:20px;display:grid}.readers-tables h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);border-bottom:1px solid var(--hrms-border);margin-bottom:12px;padding-bottom:8px;font-size:.85rem;font-weight:600}.readers-tables ul{max-height:300px;list-style:none;overflow-y:auto}.readers-tables ul li{border-bottom:1px solid #f1f4fd;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.readers-tables ul li .reader-name{color:var(--hrms-text-primary);font-weight:500}.readers-tables ul li .reader-role,.readers-tables ul li .reader-date{color:var(--hrms-text-muted);font-size:.7rem}.readers-tables .no-data{color:var(--hrms-text-muted);text-align:center;padding:20px;font-size:.8rem}.empty-state p{color:var(--hrms-text-secondary);margin-bottom:16px;font-size:.9rem}@keyframes ann-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes ann-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=1024px){.announcements{padding:24px}.announcements-header h1{font-size:1.5rem}.readers-stats{grid-template-columns:repeat(2,1fr)}.readers-tables{grid-template-columns:1fr}}@media (width<=768px){.announcements{padding:16px}.announcements-header .unread-badge{width:fit-content;margin-top:12px;position:static}.announcements-tabs{flex-direction:column}.announcements-tabs .tab-btn{justify-content:center}.view-card .card-header,.manage-card .card-header{flex-direction:column;align-items:flex-start}.filters{flex-direction:column;width:100%}.search-box,.filter-group{width:100%}.announcement-header{flex-direction:column;align-items:flex-start!important}.manage-table table{font-size:.75rem}.manage-table th,.manage-table td{padding:10px 8px}.actions-cell{flex-wrap:wrap}.modal-body .form-row{grid-template-columns:1fr;gap:12px}.modal{width:95%;margin:16px}.readers-stats{grid-template-columns:1fr;gap:10px}}@media (width<=480px){.announcements{padding:12px}.announcement-left{flex-wrap:wrap}.manage-table .title-cell{white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}}.employee-salary-loading{min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:38px;height:38px;animation:.75s linear infinite spin}.employee-salary{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.current-salary-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;margin-bottom:28px;overflow:hidden;box-shadow:0 4px 32px #0d0f1a0f}.current-salary-card .card-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 28px;display:flex}.current-salary-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.current-salary-card .card-header h2 svg{color:var(--hrms-primary)}.current-salary-card .salary-amount{background:linear-gradient(135deg,#5a67f214,#00d2c80a);flex-wrap:wrap;justify-content:space-between;gap:20px;padding:20px 28px;display:flex}.current-salary-card .salary-amount .net-salary,.current-salary-card .salary-amount .basic-salary{text-align:center;flex:1}.current-salary-card .salary-amount .net-salary .label,.current-salary-card .salary-amount .basic-salary .label{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:.7rem;display:block}.current-salary-card .salary-amount .net-salary .amount,.current-salary-card .salary-amount .basic-salary .amount{font-family:var(--hrms-font-head);font-size:1.5rem;font-weight:700}.current-salary-card .salary-amount .net-salary .amount{color:var(--hrms-primary)}.current-salary-card .salary-amount .basic-salary .amount{color:var(--hrms-text-primary)}.components-used-section{border-bottom:1px solid var(--hrms-border);background:#f8f9ff;padding:20px 28px}.components-used-section h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:16px;font-size:.85rem;font-weight:600}.components-used-list{flex-direction:column;gap:20px;display:flex}.components-group{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:12px;padding:16px}.components-group .components-group-title{font-family:var(--hrms-font-head);border-bottom:1px solid var(--hrms-border);align-items:center;gap:6px;margin-bottom:12px;padding-bottom:8px;font-size:.8rem;font-weight:600;display:flex}.components-group .components-group-title.additions,.components-group .components-group-title.additions svg{color:#059669}.components-group .components-group-title.deductions,.components-group .components-group-title.deductions svg{color:#dc2626}.components-items{flex-direction:column;gap:8px;display:flex}.component-item{border-bottom:1px solid #f1f4fd;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.component-item:last-child{border-bottom:none}.component-item.addition .component-amount{color:#059669}.component-item.deduction .component-amount{color:#dc2626}.component-item .component-info{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.component-item .component-info strong{color:var(--hrms-text-primary);font-size:.8rem}.component-item .component-info .component-code{color:var(--hrms-text-muted);background:#0000000d;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:.65rem}.component-item .component-info small{color:var(--hrms-text-muted);font-size:.6rem}.component-item .component-amount{font-size:.8rem;font-weight:700}.components-total{border-top:1px solid var(--hrms-border);justify-content:space-between;align-items:center;margin-top:8px;padding-top:12px;font-weight:600;display:flex}.components-total.addition-total{color:#059669}.components-total.deduction-total{color:#dc2626}.components-total span{font-size:.75rem}.components-total strong{font-size:.85rem}.used-components-list{flex-direction:column;gap:6px;display:flex}.used-component-item{border-bottom:1px solid #f1f4fd;justify-content:space-between;align-items:center;padding:6px 0;display:flex}.used-component-item span{color:var(--hrms-text-secondary);font-size:.7rem}.used-component-item strong{font-size:.7rem;font-weight:600}.used-component-item.addition strong{color:#059669}.used-component-item.deduction strong{color:#dc2626}.attendance-summary{border-bottom:1px solid var(--hrms-border);padding:20px 28px}.attendance-summary h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:16px;font-size:.85rem;font-weight:600}.summary-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.summary-item{background:#f8f9ff;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.summary-item .summary-icon{width:36px;height:36px;color:var(--hrms-primary);background:#5a67f21a;border-radius:10px;justify-content:center;align-items:center;font-size:.9rem;display:flex}.summary-item .summary-info{flex:1}.summary-item .summary-info .label{color:var(--hrms-text-muted);margin-bottom:2px;font-size:.65rem;display:block}.summary-item .summary-info strong{color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.deductions-section{border-bottom:1px solid var(--hrms-border);padding:20px 28px}.deductions-section h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:16px;font-size:.85rem;font-weight:600}.deductions-list{flex-direction:column;gap:10px;display:flex}.deduction-item{border-bottom:1px solid #f1f4fd;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.deduction-item span{color:var(--hrms-text-secondary);font-size:.8rem}.deduction-item strong{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.deduction-item.total{border-top:1px solid var(--hrms-border);border-bottom:none;margin-top:4px;padding-top:12px}.deduction-item.total span,.deduction-item.total strong{color:var(--hrms-primary);font-weight:700}.leave-usage-section{border-bottom:1px solid var(--hrms-border);padding:20px 28px}.leave-usage-section h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:16px;font-size:.85rem;font-weight:600}.leave-usage-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.leave-item{border-left:3px solid var(--hrms-success);background:#f8f9ff;border-radius:12px;padding:14px}.leave-item.warning{border-left-color:var(--hrms-warning)}.leave-item .leave-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.leave-item .leave-header .leave-name{color:var(--hrms-text-primary);font-size:.85rem;font-weight:600}.leave-item .leave-header .leave-days{color:var(--hrms-primary);font-size:.85rem;font-weight:700}.leave-item .leave-status{margin-bottom:6px;font-size:.7rem}.leave-item .leave-status.paid{color:var(--hrms-success)}.leave-item .leave-status.unpaid{color:var(--hrms-warning)}.leave-item .leave-balance{color:var(--hrms-text-muted);font-size:.65rem}.leave-item .deduction-note{border-top:1px dashed var(--hrms-border);color:var(--hrms-danger);margin-top:6px;padding-top:6px;font-size:.65rem}.leave-item .deduction-note.warning-note{color:var(--hrms-warning)}.action-buttons{justify-content:flex-end;padding:20px 28px;display:flex}.action-buttons .download-btn{color:#fff;font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.action-buttons .download-btn:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0596694d}.action-buttons .download-btn.disabled{background:var(--hrms-text-muted);cursor:not-allowed;opacity:.6}.no-salary{text-align:center;padding:48px}.no-salary svg{color:var(--hrms-text-muted);margin-bottom:12px;font-size:2rem}.no-salary p{color:var(--hrms-text-secondary);margin-bottom:6px;font-size:.9rem}.no-salary small{color:var(--hrms-text-muted);font-size:.75rem}.history-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;overflow:hidden}.history-card .card-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.history-card .card-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.history-card .card-header h2 svg{color:var(--hrms-primary)}.history-card .card-header .filter-group select{border:1px solid var(--hrms-border);cursor:pointer;background:#f8f9ff;border-radius:8px;outline:none;padding:6px 12px;font-size:.8rem}.history-card .card-header .filter-group select:focus{border-color:var(--hrms-primary)}.history-list{padding:0}.history-item{border-bottom:1px solid #f1f4fd}.history-item:last-child{border-bottom:none}.history-header{cursor:pointer;justify-content:space-between;align-items:center;padding:16px 24px;transition:background .2s;display:flex}.history-header:hover{background:#fafbff}.history-header .history-left .month{color:var(--hrms-text-primary);font-size:.9rem;font-weight:600}.history-header .history-left .year{color:var(--hrms-text-muted);margin-left:6px;font-size:.75rem}.history-header .history-right{align-items:center;gap:16px;display:flex}.history-header .history-right .net-amount{color:var(--hrms-primary);font-size:.9rem;font-weight:700}.history-header .history-right .expand-btn{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex}.history-header .history-right .expand-btn:hover{color:var(--hrms-primary)}.history-details{background:#fafbff;border-top:1px solid #f1f4fd;padding:16px 24px 20px}.detail-section{margin-bottom:20px}.detail-section:last-child{margin-bottom:0}.detail-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;margin-bottom:12px;font-size:.75rem;font-weight:600}.detail-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.detail-grid div{border-bottom:1px solid #f1f4fd;justify-content:space-between;align-items:center;padding:6px 0;display:flex}.detail-grid div span{color:var(--hrms-text-secondary);font-size:.7rem}.detail-grid div strong{color:var(--hrms-text-primary);font-size:.7rem;font-weight:600}.history-action{border-top:1px solid var(--hrms-border);text-align:right;margin-top:16px;padding-top:12px}.view-payslip-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:.7rem;font-weight:600;transition:all .2s;display:inline-flex}.view-payslip-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #5a67f24d}.pagination button{border:1px solid var(--hrms-border);font-family:var(--hrms-font-head);cursor:pointer;background:#fff;border-radius:8px;padding:6px 16px;font-size:.75rem;transition:all .2s}.payslip-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:800px;max-height:90vh;animation:.3s modalIn;overflow:auto}.payslip-modal .modal-header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.payslip-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.payslip-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.payslip-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.payslip-modal .modal-body{padding:24px}.payslip-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.payslip-modal .modal-footer .close-btn{font-family:var(--hrms-font-head);cursor:pointer;border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.payslip-modal .modal-footer .close-btn:hover{background:#f8f9ff}.payslip-modal .modal-footer .download-btn{font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.payslip-modal .modal-footer .download-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.payslip-content{font-family:var(--hrms-font-body);background:#fff;padding:20px}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=1024px){.employee-salary{padding:24px}.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.employee-salary{padding:16px}.salary-header h1{font-size:1.4rem}.current-salary-card .card-header,.salary-amount{text-align:center;flex-direction:column}.summary-grid,.leave-usage-grid{grid-template-columns:1fr}.history-header{text-align:center;flex-direction:column;gap:10px}.history-right{justify-content:center}.detail-grid,.payslip-salary,.payslip-grid{grid-template-columns:1fr}.payslip-footer{text-align:center;flex-direction:column}.payslip-footer .payslip-note{text-align:center}.payslip-modal{width:95%}.action-buttons{justify-content:center}.components-used-list{gap:12px}.component-item{flex-direction:column;align-items:flex-start;gap:6px}.component-info{flex-wrap:wrap}}@media (width<=480px){.employee-salary{padding:12px}.current-salary-card .salary-amount .net-salary .amount,.current-salary-card .salary-amount .basic-salary .amount{font-size:1.2rem}.history-header .history-right{flex-wrap:wrap;justify-content:center}}.hr-salary{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.salary-tabs{border-bottom:1px solid var(--hrms-border);gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex}.salary-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.salary-tabs .tab-btn:hover{color:var(--hrms-primary);background:#5a67f214}.salary-tabs .tab-btn.active{color:var(--hrms-primary);background:#5a67f21f}.my-salary-tab{animation:.4s hs-fade-in}.filters-card .filters-grid .search-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:8px;flex:1;align-items:center;gap:8px;min-width:200px;padding:0 12px;display:flex}.employees-table-card .table-header{border-bottom:1px solid var(--hrms-border);padding:20px 24px}.actions-cell .self-note{color:var(--hrms-warning);background:#f59e0b1a;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:.65rem;display:inline-flex}.detail-modal .modal-body .salary-summary{background:#f8f9ff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:20px;padding:16px;display:flex}.detail-modal .modal-body .salary-summary .summary-item{align-items:center;gap:8px;display:flex}.detail-modal .modal-body .salary-summary .summary-item span{color:var(--hrms-text-secondary);font-size:.8rem}.detail-modal .modal-body .salary-summary .summary-item strong{color:var(--hrms-text-primary);font-size:.9rem;font-weight:700}.detail-modal .modal-body .salary-summary .summary-item strong.net{color:var(--hrms-primary)}.detail-modal .modal-body .detail-section{margin-bottom:20px}.detail-modal .modal-body .detail-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;margin-bottom:12px;font-size:.75rem;font-weight:600}.detail-modal .modal-body .detail-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.detail-modal .modal-body .detail-grid div{border-bottom:1px solid #f1f4fd;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.detail-modal .modal-body .detail-grid div span{color:var(--hrms-text-secondary);font-size:.75rem}.detail-modal .modal-body .detail-grid div strong{color:var(--hrms-text-primary);font-size:.75rem;font-weight:600}.detail-modal .modal-body .detail-grid div strong.deduction{color:var(--hrms-danger)}.detail-modal .modal-body .leave-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.detail-modal .modal-body .leave-grid div{border-bottom:1px solid #f1f4fd;justify-content:space-between;padding:8px 0;display:flex}.detail-modal .modal-body .leave-grid div span{color:var(--hrms-text-secondary);font-size:.75rem}.detail-modal .modal-body .leave-grid div strong{color:var(--hrms-text-primary);font-size:.75rem;font-weight:600}.detail-modal .modal-body .leave-grid div strong.warning{color:var(--hrms-danger)}.detail-modal .modal-body .no-data{text-align:center;color:var(--hrms-text-secondary);padding:32px}.detail-modal .modal-footer{border-top:1px solid var(--hrms-border);padding:16px 24px 24px}.detail-modal .modal-footer .close-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;width:100%;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;padding:10px;font-size:.85rem;font-weight:600}.detail-modal .modal-footer .close-btn:hover{transform:translateY(-1px)}.component-group__title.addition,.component-group__title.addition svg{color:#059669}.component-group__title.deduction,.component-group__title.deduction svg{color:#dc2626}.action-calc.disabled,.action-paid.disabled{opacity:.5;cursor:not-allowed}.action-calc.disabled:hover,.action-paid.disabled:hover{background:0 0;transform:none}@keyframes hs-spin{to{transform:rotate(360deg)}}@keyframes hs-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes hs-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes hs-slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.hr-salary{padding:24px}.salary-header h1{font-size:1.5rem}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.hr-salary{padding:16px}.salary-tabs{flex-direction:column}.salary-tabs .tab-btn{justify-content:center}.filters-grid{flex-direction:column;align-items:stretch!important}.filters-grid .search-group{width:100%}.stats-grid{grid-template-columns:1fr}.bulk-actions{flex-direction:column}.bulk-actions button{justify-content:center;width:100%}.salary-table th,.salary-table td{padding:10px 12px;font-size:.7rem}.actions-cell{flex-wrap:wrap}.detail-grid,.leave-grid{grid-template-columns:1fr!important}.component-modal{width:95%;margin:16px}.component-item{flex-wrap:wrap}.component-item__value{margin-left:30px}.time-window-banner{text-align:center;flex-direction:column}.time-window-banner__details{justify-content:center}.time-window-banner__close{position:absolute;top:12px;right:12px}}.action-payslip{color:#fff;background:linear-gradient(135deg,#059669,#047857)}.action-payslip:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0596694d}.hr-payslip-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:800px;max-height:90vh;animation:.3s hs-modal-in;overflow:auto}.hr-payslip-modal .modal-header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.hr-payslip-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.hr-payslip-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.hr-payslip-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.hr-payslip-modal .modal-body{padding:24px}.hr-payslip-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.hr-payslip-modal .modal-footer .close-btn{font-family:var(--hrms-font-head);cursor:pointer;border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.hr-payslip-modal .modal-footer .close-btn:hover{background:#f8f9ff}.hr-payslip-modal .modal-footer .download-btn{font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.hr-payslip-modal .modal-footer .download-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.hr-payslip-content{font-family:var(--hrms-font-body);background:#fff;padding:20px}.payslip-header{text-align:center;border-bottom:2px solid var(--hrms-primary);padding-bottom:16px}.payslip-header h1{font-family:var(--hrms-font-head);color:var(--hrms-primary);margin-bottom:4px;font-size:1.5rem}.payslip-header p{color:var(--hrms-text-muted);font-size:.7rem}.payslip-header .payslip-title{margin-top:16px}.payslip-header .payslip-title h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.2rem}.payslip-section{background:#f8f9ff;border-radius:12px;margin:20px 0;padding:16px}.payslip-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:12px;font-size:.85rem;font-weight:600}.payslip-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.payslip-item{align-items:center;gap:8px;font-size:.75rem;display:flex}.payslip-item label{color:var(--hrms-text-muted);align-items:center;gap:4px;font-weight:600;display:flex}.payslip-item span{color:var(--hrms-text-primary)}.payslip-salary{grid-template-columns:1fr 1fr;gap:20px;margin:20px 0;display:grid}.payslip-earnings h4,.payslip-deductions h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);border-bottom:1px solid var(--hrms-border);margin-bottom:12px;padding-bottom:8px;font-size:.85rem;font-weight:600}.payslip-table{border-collapse:collapse;width:100%}.payslip-table td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:8px 0;font-size:.75rem}.payslip-table td:last-child{text-align:right;font-weight:500}.payslip-table .payslip-total td{color:var(--hrms-text-primary);border-top:1px solid var(--hrms-border);border-bottom:none;padding-top:10px;font-weight:700}.payslip-net{text-align:center;background:linear-gradient(135deg,#5a67f21a,#00d2c80d);border-radius:12px;margin:20px 0;padding:20px}.payslip-net .payslip-net-amount span{color:var(--hrms-text-muted);margin-bottom:4px;font-size:.7rem;display:block}.payslip-net .payslip-net-amount strong{color:var(--hrms-primary);font-size:1.5rem;font-weight:700}.payslip-footer{border-top:1px solid var(--hrms-border);color:var(--hrms-text-muted);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:16px;font-size:.65rem;display:flex}.payslip-footer .payslip-payment p{margin:4px 0}.payslip-footer .payslip-note{text-align:right}.payslip-footer .payslip-note p{margin:4px 0}@media (width<=768px){.hr-payslip-modal{width:95%;margin:16px}.payslip-salary,.payslip-grid{grid-template-columns:1fr}.payslip-footer{text-align:center;flex-direction:column}.payslip-footer .payslip-note{text-align:center}}.admin-salary{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.salary-header{margin-bottom:28px}.salary-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.salary-header h1 svg{color:var(--hrms-primary)}.salary-header p{color:var(--hrms-text-secondary);font-size:.875rem}.filters-card .filters-grid .filter-group{flex-direction:row;gap:6px;display:flex}.filters-card .filters-grid .filter-group label{color:var(--hrms-text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.filters-card .filters-grid .filter-group select,.filters-card .filters-grid .filter-group input{border:1px solid var(--hrms-border);cursor:pointer;background:#f8f9ff;border-radius:8px;outline:none;min-width:120px;padding:8px 12px;font-size:.85rem}.filters-card .filters-grid .filter-group select:focus,.filters-card .filters-grid .filter-group input:focus{border-color:var(--hrms-primary)}.filters-card .filters-grid .search-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:8px;flex-direction:row;flex:1;align-items:center;gap:8px;min-width:200px;padding:0 12px;display:flex}.filters-card .filters-grid .search-group svg{color:var(--hrms-text-muted)}.filters-card .filters-grid .search-group input{background:0 0;border:none;flex:1;padding:8px 0}.stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;display:grid}.stats-grid .stat-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;align-items:center;gap:14px;padding:18px;display:flex}.stats-grid .stat-card .stat-icon{width:48px;height:48px;color:var(--hrms-primary);background:#5a67f21a;border-radius:12px;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.stats-grid .stat-card .stat-info h3{color:var(--hrms-text-muted);text-transform:uppercase;margin-bottom:4px;font-size:.7rem;font-weight:600}.stats-grid .stat-card .stat-info p{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.3rem;font-weight:700}.stats-grid .stat-card .stat-info p.paid{color:#059669}.stats-grid .stat-card .stat-info p.unpaid{color:#d97706}.bulk-actions{gap:12px;margin-bottom:20px;display:flex}.bulk-actions button{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.bulk-actions .bulk-calc-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff}.bulk-actions .bulk-calc-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #5a67f24d}.bulk-actions .bulk-paid-btn{color:#fff;background:linear-gradient(135deg,#059669,#047857)}.bulk-actions .bulk-paid-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0596694d}.bulk-actions button:disabled{opacity:.6;cursor:not-allowed}.employees-table-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;overflow:hidden}.employees-table-card .table-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.employees-table-card .table-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.employees-table-card .table-header h2 svg{color:var(--hrms-primary)}.employees-table-card .table-header .window-closed-badge{color:var(--hrms-warning);background:#f59e0b1a;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.employees-table-card .table-header .window-closed-badge svg{font-size:.7rem}.salary-table{border-collapse:collapse;width:100%}.salary-table thead{background:#f8f9ff}.salary-table thead th{text-align:left;text-transform:uppercase;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);padding:14px 16px;font-size:.7rem;font-weight:700}.salary-table tbody td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.salary-table tbody tr:hover td{background:#fafbff}.employee-cell .employee-id{color:var(--hrms-text-muted);font-size:.65rem}.role-badge{color:var(--hrms-primary-dark);background:#5a67f21a;border-radius:20px;padding:4px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.basic-salary-cell{position:relative}.basic-salary-cell .edit-salary-btn{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:8px;padding:4px;transition:all .2s}.basic-salary-cell .edit-salary-btn:hover{color:var(--hrms-primary);background:#5a67f21a}.net-salary{color:var(--hrms-primary);font-weight:700}.status-badge.status-paid{color:#059669;background:#10b9811a}.status-badge.status-unpaid{color:#d97706;background:#f59e0b1a}.actions-cell{flex-wrap:wrap;gap:8px;display:flex}.actions-cell button.action-calc{color:var(--hrms-primary)}.actions-cell button.action-calc:hover{background:#5a67f21a}.actions-cell button.action-paid{color:#059669}.actions-cell button.action-paid:hover{background:#10b9811a}.actions-cell button:disabled{opacity:.5;cursor:not-allowed}.loading-state,.empty-state{text-align:center;padding:48px}.loading-state svg,.empty-state svg{color:var(--hrms-text-muted);opacity:.4;margin-bottom:16px;font-size:3rem}.loading-state p,.empty-state p{color:var(--hrms-text-secondary);font-size:.9rem}.loading-state small,.empty-state small{color:var(--hrms-text-muted);font-size:.75rem}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.detail-modal,.edit-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:550px;max-height:90vh;animation:.3s as-modal-in;overflow:auto}.detail-modal .modal-header,.edit-modal .modal-header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.detail-modal .modal-header h3,.edit-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.detail-modal .modal-header .modal-close,.edit-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.detail-modal .modal-header .modal-close:hover,.edit-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.detail-modal .modal-body,.edit-modal .modal-body{padding:24px}.detail-modal .modal-body .salary-summary,.edit-modal .modal-body .salary-summary{background:#f8f9ff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:20px;padding:16px;display:flex}.detail-modal .modal-body .salary-summary .summary-item,.edit-modal .modal-body .salary-summary .summary-item{align-items:center;gap:8px;display:flex}.detail-modal .modal-body .salary-summary .summary-item span,.edit-modal .modal-body .salary-summary .summary-item span{color:var(--hrms-text-secondary);font-size:.8rem}.detail-modal .modal-body .salary-summary .summary-item strong,.edit-modal .modal-body .salary-summary .summary-item strong{color:var(--hrms-text-primary);font-size:.9rem;font-weight:700}.detail-modal .modal-body .salary-summary .summary-item strong.net,.edit-modal .modal-body .salary-summary .summary-item strong.net{color:var(--hrms-primary)}.detail-modal .modal-body .detail-section,.edit-modal .modal-body .detail-section{margin-bottom:20px}.detail-modal .modal-body .detail-section h4,.edit-modal .modal-body .detail-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);text-transform:uppercase;margin-bottom:12px;font-size:.75rem;font-weight:600}.detail-modal .modal-body .detail-grid,.edit-modal .modal-body .detail-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.detail-modal .modal-body .detail-grid div,.edit-modal .modal-body .detail-grid div{border-bottom:1px solid #f1f4fd;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.detail-modal .modal-body .detail-grid div span,.edit-modal .modal-body .detail-grid div span{color:var(--hrms-text-secondary);font-size:.75rem}.detail-modal .modal-body .detail-grid div strong,.edit-modal .modal-body .detail-grid div strong{color:var(--hrms-text-primary);font-size:.75rem;font-weight:600}.detail-modal .modal-body .detail-grid div strong.deduction,.edit-modal .modal-body .detail-grid div strong.deduction{color:var(--hrms-danger)}.detail-modal .modal-body .leave-grid,.edit-modal .modal-body .leave-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.detail-modal .modal-body .leave-grid div,.edit-modal .modal-body .leave-grid div{border-bottom:1px solid #f1f4fd;justify-content:space-between;padding:8px 0;display:flex}.detail-modal .modal-body .leave-grid div span,.edit-modal .modal-body .leave-grid div span{color:var(--hrms-text-secondary);font-size:.75rem}.detail-modal .modal-body .leave-grid div strong,.edit-modal .modal-body .leave-grid div strong{color:var(--hrms-text-primary);font-size:.75rem;font-weight:600}.detail-modal .modal-body .leave-grid div strong.warning,.edit-modal .modal-body .leave-grid div strong.warning{color:var(--hrms-danger)}.detail-modal .modal-body .employee-info,.edit-modal .modal-body .employee-info{background:#f8f9ff;border-radius:12px;align-items:center;gap:16px;margin-bottom:20px;padding:16px;display:flex}.detail-modal .modal-body .employee-info .employee-avatar-large,.edit-modal .modal-body .employee-info .employee-avatar-large{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.2rem;font-weight:600;display:flex}.detail-modal .modal-body .employee-info h4,.edit-modal .modal-body .employee-info h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:.95rem;font-weight:600}.detail-modal .modal-body .employee-info p,.edit-modal .modal-body .employee-info p{color:var(--hrms-text-muted);font-size:.75rem}.detail-modal .modal-body .form-group,.edit-modal .modal-body .form-group{margin-bottom:20px}.detail-modal .modal-body .form-group label,.edit-modal .modal-body .form-group label{color:var(--hrms-text-primary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.detail-modal .modal-body .form-group input,.edit-modal .modal-body .form-group input{border:1.5px solid var(--hrms-border);border-radius:10px;width:100%;padding:10px 14px;font-size:.85rem}.detail-modal .modal-body .form-group input:focus,.edit-modal .modal-body .form-group input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.detail-modal .modal-body .form-group input:disabled,.edit-modal .modal-body .form-group input:disabled{color:var(--hrms-text-muted);background:#f8f9ff}.detail-modal .modal-body .no-data,.edit-modal .modal-body .no-data{text-align:center;color:var(--hrms-text-secondary);padding:32px}.detail-modal .modal-footer,.edit-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.detail-modal .modal-footer .close-btn,.detail-modal .modal-footer .cancel-btn,.edit-modal .modal-footer .close-btn,.edit-modal .modal-footer .cancel-btn{font-family:var(--hrms-font-head);cursor:pointer;border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.detail-modal .modal-footer .close-btn:hover,.detail-modal .modal-footer .cancel-btn:hover,.edit-modal .modal-footer .close-btn:hover,.edit-modal .modal-footer .cancel-btn:hover{background:#f8f9ff}.detail-modal .modal-footer .save-btn,.edit-modal .modal-footer .save-btn{font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.detail-modal .modal-footer .save-btn:hover:not(:disabled),.edit-modal .modal-footer .save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.detail-modal .modal-footer .save-btn:disabled,.edit-modal .modal-footer .save-btn:disabled{opacity:.6;cursor:not-allowed}.detail-modal--large{max-width:700px}.component-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:600px;max-height:90vh;animation:.3s as-modal-in;overflow:auto}.component-modal .modal-header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.component-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.component-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.component-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.component-modal .modal-body{padding:24px}.component-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.component-modal .modal-footer .cancel-btn{font-family:var(--hrms-font-head);cursor:pointer;border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.component-modal .modal-footer .cancel-btn:hover{background:#f8f9ff}.component-modal .modal-footer .save-btn{font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.component-modal .modal-footer .save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.component-modal .modal-footer .save-btn:disabled{opacity:.6;cursor:not-allowed}.component-info{background:#f8f9ff;border-radius:12px;margin-bottom:20px;padding:12px 16px}.component-info p{color:var(--hrms-text-primary);margin-bottom:4px;font-size:.85rem}.component-info small{color:var(--hrms-text-muted);font-size:.7rem}.component-actions{gap:12px;margin-bottom:20px;display:flex}.component-actions button{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.component-actions .component-select-all{color:#059669;background:#10b9811a}.component-actions .component-select-all:hover{background:#10b98133}.component-actions .component-deselect-all{color:#dc2626;background:#ef44441a}.component-actions .component-deselect-all:hover{background:#ef444433}.component-loading{text-align:center;padding:40px}.component-loading .spinner{border:2px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:32px;height:32px;margin:0 auto 12px;animation:.6s linear infinite as-spin}.component-loading p{color:var(--hrms-text-muted);font-size:.8rem}.component-group{margin-bottom:24px}.component-group__title{font-family:var(--hrms-font-head);border-bottom:1px solid var(--hrms-border);align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;font-size:.85rem;font-weight:600;display:flex}.component-group__title.addition,.component-group__title.addition svg{color:#059669}.component-group__title.deduction,.component-group__title.deduction svg{color:#dc2626}.component-list{flex-direction:column;gap:8px;display:flex}.component-item{cursor:pointer;background:#fafbff;border-radius:12px;align-items:center;gap:12px;padding:12px;transition:all .2s;display:flex}.component-item:hover{background:#f5f7ff}.component-item input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--hrms-primary)}.component-item__info{flex-direction:column;flex:1;gap:2px;display:flex}.component-item__info strong{color:var(--hrms-text-primary);font-size:.85rem}.component-item__info .component-code{color:var(--hrms-text-muted);font-family:monospace;font-size:.65rem}.component-item__value{color:var(--hrms-primary);background:#5a67f214;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.8rem;font-weight:600;display:flex}.component-item__value svg{font-size:.7rem}.components-used-grid{flex-direction:column;gap:8px;display:flex}.component-used-item{border-radius:10px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.component-used-item.addition{background:#10b98114;border-left:3px solid #059669}.component-used-item.deduction{background:#ef444414;border-left:3px solid #dc2626}.component-used-item .component-used-info{flex-direction:column;gap:4px;display:flex}.component-used-item .component-used-info strong{color:var(--hrms-text-primary);font-size:.8rem}.component-used-item .component-used-info .component-used-code{color:var(--hrms-text-muted);font-family:monospace;font-size:.6rem}.component-used-item .component-used-info small{color:var(--hrms-text-muted);font-size:.6rem}.component-used-item .component-used-amount{font-size:.85rem;font-weight:700}.addition .component-used-item .component-used-amount{color:#059669}.deduction .component-used-item .component-used-amount{color:#dc2626}.time-window-banner{border-radius:16px;align-items:flex-start;gap:16px;margin-bottom:24px;padding:16px 20px;animation:.3s as-slide-down;display:flex;position:relative}.time-window-banner--warning{border-left:4px solid var(--hrms-warning);background:linear-gradient(135deg,#f59e0b1f,#f59e0b0d)}.time-window-banner--error{border-left:4px solid var(--hrms-danger);background:linear-gradient(135deg,#ef44441f,#ef44440d)}.time-window-banner--info{border-left:4px solid var(--hrms-info);background:linear-gradient(135deg,#3b82f61f,#3b82f60d)}.time-window-banner__icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.time-window-banner__icon svg{font-size:1.2rem}.time-window-banner--warning .time-window-banner__icon{background:#f59e0b26}.time-window-banner--warning .time-window-banner__icon svg{color:var(--hrms-warning)}.time-window-banner--error .time-window-banner__icon{background:#ef444426}.time-window-banner--error .time-window-banner__icon svg{color:var(--hrms-danger)}.time-window-banner--info .time-window-banner__icon{background:#3b82f626}.time-window-banner--info .time-window-banner__icon svg{color:var(--hrms-info)}.time-window-banner__content{flex:1}.time-window-banner__content h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:.9rem;font-weight:700}.time-window-banner__content p{color:var(--hrms-text-secondary);font-size:.8rem;line-height:1.4}.time-window-banner__details{flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;display:flex}.time-window-banner__details span{color:var(--hrms-primary);background:#5a67f21a;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.7rem;font-weight:500;display:inline-flex}.time-window-banner__details span svg{font-size:.7rem}.time-window-banner__close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;padding:6px;transition:all .2s}.time-window-banner__close:hover{color:var(--hrms-danger);background:#0000000d}.bulk-calc-btn.disabled,.bulk-paid-btn.disabled,.action-calc.disabled,.action-paid.disabled{opacity:.5;cursor:not-allowed}.bulk-calc-btn.disabled:hover,.bulk-paid-btn.disabled:hover,.action-calc.disabled:hover,.action-paid.disabled:hover{box-shadow:none;transform:none}.confirm-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:450px;animation:.3s as-modal-in;overflow:hidden}.confirm-modal__header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex;position:relative}.confirm-modal__icon{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto;display:flex}.confirm-modal__icon svg{font-size:28px}.confirm-modal__close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;padding:6px;font-size:1.1rem;transition:color .2s;position:absolute;top:16px;right:16px}.confirm-modal__close:hover{color:var(--hrms-danger)}.confirm-modal__body h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:700}.confirm-modal__body p{color:var(--hrms-text-secondary);margin-bottom:0;font-size:.85rem}.confirm-modal__cancel,.confirm-modal__confirm{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.confirm-modal__cancel{border:1.5px solid var(--hrms-border);color:var(--hrms-text-secondary);background:#fff}.confirm-modal__cancel:hover{background:#f8f9ff}.confirm-modal__confirm{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff}.confirm-modal__confirm:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.confirm-modal--danger .confirm-modal__icon{background:#ef44441a}.confirm-modal--danger .confirm-modal__icon svg{color:var(--hrms-danger)}.confirm-modal--danger .confirm-modal__confirm{background:linear-gradient(135deg, var(--hrms-danger), #dc2626)}.confirm-modal--warning .confirm-modal__icon{background:#f59e0b1a}.confirm-modal--warning .confirm-modal__icon svg{color:var(--hrms-warning)}.confirm-modal--warning .confirm-modal__confirm{background:linear-gradient(135deg, var(--hrms-warning), #d97706)}.confirm-modal--success .confirm-modal__icon{background:#10b9811a}.confirm-modal--success .confirm-modal__icon svg{color:var(--hrms-success)}.confirm-modal--success .confirm-modal__confirm{background:linear-gradient(135deg, var(--hrms-success), #059669)}.confirm-modal--info .confirm-modal__icon{background:#3b82f61a}.confirm-modal--info .confirm-modal__icon svg{color:var(--hrms-info)}.confirm-modal--info .confirm-modal__confirm{background:linear-gradient(135deg, var(--hrms-info), #2563eb)}@keyframes as-spin{to{transform:rotate(360deg)}}@keyframes as-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes as-slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.admin-salary{padding:24px}.salary-header h1{font-size:1.5rem}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.admin-salary{padding:16px}.filters-grid{flex-direction:column;align-items:stretch!important}.filters-grid .search-group{width:100%}.stats-grid{grid-template-columns:1fr}.bulk-actions{flex-direction:column}.bulk-actions button{justify-content:center;width:100%}.salary-table th,.salary-table td{padding:10px 12px;font-size:.7rem}.actions-cell{flex-wrap:wrap}.detail-grid,.leave-grid{grid-template-columns:1fr!important}.detail-modal,.edit-modal,.component-modal{width:95%;margin:16px}.component-item{flex-wrap:wrap}.component-item__value{margin-left:30px}.detail-modal--large{max-width:95%}.time-window-banner{text-align:center;flex-direction:column}.time-window-banner__details{justify-content:center}.time-window-banner__close{position:absolute;top:12px;right:12px}.table-header{text-align:center;flex-direction:column}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-success:#10b981;--hrms-warning:#f59e0b;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.manager-salary{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.manager-salary .manager-salary-header{margin-bottom:28px}.manager-salary .manager-salary-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:5px;font-size:1.8rem;font-weight:700}.manager-salary .manager-salary-header p{color:var(--hrms-text-secondary);font-size:.875rem}@media (width<=1024px){.manager-salary{padding:24px}.manager-salary-header h1{font-size:1.5rem}}@media (width<=768px){.manager-salary{padding:16px}.manager-salary-header h1{font-size:1.3rem}}.hps-loading{min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.hps-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:38px;height:38px;animation:.75s linear infinite hps-spin}.hps-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:32px 36px}.hps-page-header{margin-bottom:28px}.hps-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:7px;margin-bottom:12px;padding:5px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.hps-page-header__badge svg{font-size:.65rem}.hps-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:1.8rem;font-weight:700}.hps-page-header p{color:var(--hrms-text-secondary);font-size:.875rem}.hps-tabs{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:14px;gap:6px;width:fit-content;margin-bottom:24px;padding:6px;display:flex}.hps-tab{font-family:var(--hrms-font-body);color:var(--hrms-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:background .2s,color .2s;display:flex}.hps-tab svg{font-size:.85rem}.hps-tab:hover:not(.hps-tab--active){color:var(--hrms-text-primary);background:#5a67f20f}.hps-tab--active{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-weight:600;box-shadow:0 4px 12px #5a67f24d}.hps-viewonly-badge{background:#00000026;border-radius:20px;align-items:center;gap:4px;margin-left:6px;padding:2px 8px;font-size:.65rem;font-weight:500;display:inline-flex}.hps-viewonly-badge svg{font-size:.6rem}.hps-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;animation:.35s cubic-bezier(.22,1,.36,1) both hps-in;overflow:hidden;box-shadow:0 4px 32px #0d0f1a0f}.hps-card__header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 28px;display:flex}.hps-card__title-wrap{align-items:center;gap:14px;display:flex}.hps-card__title-wrap h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:3px;font-size:1rem;font-weight:700}.hps-card__title-wrap p{color:var(--hrms-text-muted);font-size:.8rem}.hps-card__icon{width:40px;height:40px;color:var(--hrms-primary);background:#5a67f21a;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;display:flex}.hps-card__icon--green{color:var(--hrms-success);background:#10b9811a}.hps-card__icon--purple{color:#7c3aed;background:#8b5cf61a}.hps-card__footer{border-top:1px solid var(--hrms-border);background:#fafbff;padding:20px 28px}.hps-form-grid{grid-template-columns:repeat(4,1fr);gap:20px;padding:28px;display:grid}.hps-field{flex-direction:column;gap:7px;display:flex}.hps-field label{color:var(--hrms-text-primary);font-size:.8rem;font-weight:600}.hps-field label span{color:var(--hrms-text-muted);font-weight:400}.hps-field input,.hps-field select,.hps-field textarea{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:#fafbff;border-radius:10px;outline:none;padding:11px 14px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.hps-field input:focus,.hps-field select:focus,.hps-field textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow);background:#fff}.hps-field select{cursor:pointer;background-color:#fafbff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394A3B8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.hps-field textarea{resize:vertical;min-height:72px}.hps-field small{color:var(--hrms-text-muted);font-size:.72rem}.hps-field--readonly input,.hps-field--readonly select,.hps-field--readonly textarea{color:var(--hrms-text-secondary);cursor:not-allowed;opacity:.8;background:#f1f5f9}.hps-viewonly-tag{color:#d97706;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:.7rem;font-weight:600;display:inline-flex}.hps-viewonly-tag svg{font-size:.7rem}.hps-note{color:var(--hrms-danger);background:#ef44440f;border-radius:10px;align-items:center;gap:10px;padding:12px 16px;font-size:.8rem;display:flex}.hps-note svg{font-size:.85rem}.hps-table-wrap{overflow-x:auto}.hps-table{border-collapse:collapse;width:100%;min-width:600px}.hps-table thead tr{border-bottom:1px solid var(--hrms-border);background:#f8f9ff}.hps-table th{text-align:left;font-family:var(--hrms-font-head);color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.07em;padding:13px 20px;font-size:.7rem;font-weight:600}.hps-table tbody tr{border-bottom:1px solid #f1f4fd;transition:background .15s}.hps-table tbody tr:hover{background:#f8f9ff}.hps-table tbody tr:last-child{border-bottom:none}.hps-table td{color:var(--hrms-text-primary);vertical-align:middle;padding:14px 20px;font-size:.875rem}.hps-badge{text-transform:capitalize;border-radius:100px;align-items:center;padding:4px 11px;font-size:.72rem;font-weight:700;display:inline-flex}.hps-badge--public{color:var(--hrms-primary-dark);background:#5a67f21a}.hps-badge--festival{color:#b45309;background:#f59e0b1f}.hps-badge--company{color:#047857;background:#10b9811a}.hps-badge--optional{color:#374151;background:#6b72801a}.hps-code-badge{color:var(--hrms-primary);font-family:var(--hrms-font-head);letter-spacing:.06em;background:#5a67f214;border-radius:7px;align-items:center;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.hps-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex}.hps-btn svg{font-size:.8rem}.hps-btn--primary{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;box-shadow:0 4px 14px #5a67f24d}.hps-btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 22px #5a67f266}.hps-btn--ghost{color:var(--hrms-text-secondary);border:1.5px solid var(--hrms-border);background:#fff}.hps-btn--ghost:hover{color:var(--hrms-primary);background:#f0f2ff;border-color:#5a67f24d}.hps-btn--danger{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 14px #ef44444d}.hps-btn--danger:hover{transform:translateY(-2px);box-shadow:0 8px 22px #ef444466}.hps-btn-icon{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;transition:all .2s;display:flex}.hps-btn-icon--edit{color:var(--hrms-primary);background:#5a67f21a}.hps-btn-icon--edit:hover{background:var(--hrms-primary);color:#fff;box-shadow:0 4px 12px #5a67f24d}.hps-btn-icon--delete{color:var(--hrms-danger);background:#ef44441a}.hps-btn-icon--delete:hover{background:var(--hrms-danger);color:#fff;box-shadow:0 4px 12px #ef44444d}.hps-row-actions{align-items:center;gap:8px;display:flex}.hps-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.hps-modal{background:var(--hrms-card);border-radius:20px;width:100%;max-width:480px;max-height:90vh;animation:.3s cubic-bezier(.22,1,.36,1) both hps-modal-in;overflow-y:auto;box-shadow:0 24px 64px #0d0f1a2e}.hps-modal--lg{max-width:560px}.hps-modal--confirm{max-width:420px}.hps-modal__header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:22px 24px;display:flex;position:sticky;top:0}.hps-modal__header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.hps-modal__header--borderless{border-bottom:none;justify-content:flex-end;padding-bottom:0}.hps-modal__close{border:1px solid var(--hrms-border);width:32px;height:32px;color:var(--hrms-text-muted);cursor:pointer;background:#fafbff;border-radius:8px;justify-content:center;align-items:center;font-size:.78rem;transition:all .2s;display:flex}.hps-modal__close:hover{color:var(--hrms-danger);background:#ef44441a;border-color:#ef444433}.hps-modal__body{flex-direction:column;gap:16px;padding:24px;display:flex}.hps-modal__body--center{text-align:center;align-items:center;padding-top:8px}.hps-modal__footer{border-top:1px solid var(--hrms-border);gap:10px;padding:20px 24px 24px;display:flex}.hps-modal__footer .hps-btn{flex:1;justify-content:center}.hps-confirm__icon{width:54px;height:54px;color:var(--hrms-danger);background:#ef44441a;border:1px solid #ef444433;border-radius:14px;justify-content:center;align-items:center;margin-bottom:4px;font-size:1.25rem;display:flex}.hps-confirm__warn{color:var(--hrms-text-muted);background:#ef44440f;border:1px solid #ef444426;border-radius:8px;width:100%;margin-top:4px;padding:9px 14px;font-size:.775rem;display:block}@keyframes hps-spin{to{transform:rotate(360deg)}}@keyframes hps-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes hps-modal-in{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1024px){.hps-container{padding:24px}.hps-form-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.hps-container{padding:20px 16px}.hps-page-header h1{font-size:1.4rem}.hps-tabs{flex-direction:column;width:100%}.hps-tabs .hps-tab{justify-content:center}.hps-form-grid{grid-template-columns:1fr;padding:20px}.hps-card__header{flex-direction:column;align-items:flex-start}}.hps-card__icon--gold{color:#d97706;background:#f59e0b1a}.hps-table--salary{min-width:700px}.hps-order-cell{text-align:center;width:50px;color:var(--hrms-text-muted);font-weight:600}.hps-calc-cell{color:var(--hrms-text-secondary);font-size:.8rem}.hps-value-cell{font-weight:600}.hps-badge--addition{color:#059669;background:#10b9811a}.hps-badge--deduction{color:#dc2626;background:#ef44441a}.hps-calc-badge{background:#5a67f214;border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.hps-calc-badge svg{font-size:.7rem}.hps-note--info{color:var(--hrms-info);background:#3b82f60f}.hps-empty__icon{width:56px;height:56px;color:var(--hrms-primary);background:#f0f2ff;border-radius:16px;justify-content:center;align-items:center;font-size:1.4rem;display:flex}@media (width<=768px){.hps-table--salary{min-width:600px}.hps-calc-cell,.hps-value-cell{font-size:.75rem}.hps-calc-badge{padding:2px 8px;font-size:.7rem}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-success:#10b981;--hrms-warning:#f59e0b;--hrms-info:#3b82f6;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.all-employees-loading{background:var(--hrms-bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.all-employees-loading .spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite ae-spin}@keyframes ae-spin{to{transform:rotate(360deg)}}.all-employees{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.employees-header{margin-bottom:28px}.employees-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.employees-header h1 svg{color:var(--hrms-primary)}.employees-header p{color:var(--hrms-text-secondary);font-size:.875rem}.filters-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;margin-bottom:20px;padding:20px}.filters-card .filters-grid{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.filters-card .filters-grid .filter-group{border:1px solid var(--hrms-border);background:#f8f9ff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;display:flex}.filters-card .filters-grid .filter-group svg{color:var(--hrms-text-muted);font-size:.85rem}.filters-card .filters-grid .filter-group select,.filters-card .filters-grid .filter-group input{background:0 0;border:none;outline:none;min-width:140px;font-size:.85rem}.filters-card .filters-grid .search-group{flex:1;min-width:200px}.filters-card .filters-grid .search-group input{width:100%}.employees-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;overflow:hidden}.employees-card .table-header{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.employees-card .table-header h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.employees-card .table-header h2 svg{color:var(--hrms-primary)}.employees-card .table-header .table-stats{color:var(--hrms-text-muted);font-size:.8rem}.employees-table{border-collapse:collapse;width:100%;min-width:900px}.employees-table thead{background:#f8f9ff}.employees-table thead th{text-align:left;text-transform:uppercase;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);white-space:nowrap;padding:14px 16px;font-size:.7rem;font-weight:700}.employees-table tbody td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:14px 16px;font-size:.8rem}.employees-table tbody tr:hover td{background:#fafbff}.employee-cell{align-items:center;gap:10px;display:flex}.employee-cell .employee-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:600;display:flex}.employee-cell .employee-name{color:var(--hrms-text-primary);font-weight:600}.employee-cell .employee-email{color:var(--hrms-text-muted);font-size:.7rem}.employee-id{font-family:monospace;font-size:.75rem}.role-badge{border-radius:20px;padding:4px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.role-badge.role-hr{color:#7c3aed;background:#8b5cf61a}.role-badge.role-manager{color:var(--hrms-primary-dark);background:#5a67f21a}.role-badge.role-employee{color:#059669;background:#10b9811a}.status-badge{border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.status-badge.status-active{color:#059669;background:#10b9811a}.status-badge.status-inactive{color:#dc2626;background:#ef44441a}.actions-cell{gap:8px;display:flex}.actions-cell button{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;font-size:.85rem;transition:all .2s}.actions-cell button.action-view{color:var(--hrms-primary)}.actions-cell button.action-view:hover{background:#5a67f21a}.actions-cell button.action-edit{color:var(--hrms-warning)}.actions-cell button.action-edit:hover{background:#f59e0b1a}.actions-cell button.action-toggle{color:var(--hrms-danger)}.actions-cell button.action-toggle:hover{background:#ef44441a}.pagination{border-top:1px solid var(--hrms-border);justify-content:center;align-items:center;gap:16px;padding:20px;display:flex}.pagination button{border:1px solid var(--hrms-border);font-family:var(--hrms-font-head);cursor:pointer;background:#fff;border-radius:8px;padding:6px 16px;font-size:.75rem}.pagination button:hover:not(:disabled){background:var(--hrms-primary);color:#fff}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{color:var(--hrms-text-secondary);font-size:.8rem}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.detail-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:950px;max-height:90vh;animation:.3s ae-modal-in;overflow:auto}.detail-modal .modal-header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.detail-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.detail-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.detail-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.detail-modal .modal-body{padding:24px}.detail-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.detail-modal .modal-footer .close-btn{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);cursor:pointer;color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;padding:10px;font-size:.85rem;font-weight:600}.detail-modal .modal-footer .close-btn:hover{background:#f8f9ff}.detail-modal .modal-footer .edit-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;display:flex}.detail-modal .modal-footer .edit-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.detail-modal--large{width:90%;max-width:950px}.employee-profile-header{border-bottom:1px solid var(--hrms-border);align-items:center;gap:20px;margin-bottom:24px;padding-bottom:20px;display:flex}.employee-profile-header .profile-avatar-large{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:18px;justify-content:center;align-items:center;width:70px;height:70px;font-size:1.8rem;font-weight:700;display:flex}.employee-profile-header .profile-info h2{margin-bottom:8px;font-size:1.2rem}.employee-profile-header .profile-badges{flex-wrap:wrap;gap:8px;margin-bottom:6px;display:flex}.employee-profile-header .profile-meta{color:var(--hrms-text-muted);gap:16px;font-size:.8rem;display:flex}.employee-profile-header .profile-meta span{align-items:center;gap:4px;display:flex}.details-tabs-nav{border-bottom:1px solid var(--hrms-border);flex-wrap:wrap;gap:6px;margin-bottom:20px;padding-bottom:8px;display:flex}.details-tabs-nav .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.details-tabs-nav .tab-btn:hover{color:var(--hrms-text-primary);background:#5a67f20d}.details-tabs-nav .tab-btn.active{color:var(--hrms-primary);background:#5a67f21a}.details-tab-content{min-height:300px}.tab-panel{animation:.3s ae-fade-in}@keyframes ae-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.details-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.detail-item{background:#f8f9ff;border-radius:12px;align-items:flex-start;gap:12px;padding:12px;display:flex}.detail-item svg{color:var(--hrms-primary);flex-shrink:0;margin-top:2px;font-size:.9rem}.detail-item div{flex:1;min-width:0}.detail-item div label{color:var(--hrms-text-muted);text-transform:uppercase;margin-bottom:2px;font-size:.65rem;font-weight:600;display:block}.detail-item div p{color:var(--hrms-text-primary);word-break:break-word;font-size:.85rem;font-weight:500}.join-letter-section{background:#f8f9ff;border-radius:12px;align-items:center;gap:8px;margin-top:16px;padding:12px;display:flex}.join-letter-section a{color:var(--hrms-primary);font-weight:500;text-decoration:none}.join-letter-section a:hover{text-decoration:underline}.tab-filters{flex-wrap:wrap;gap:16px;margin-bottom:16px;display:flex}.tab-filters .filter-group{flex-direction:column;gap:4px;display:flex}.tab-filters .filter-group label{color:var(--hrms-text-muted);text-transform:uppercase;font-size:.65rem;font-weight:600}.tab-filters .filter-group select{border:1px solid var(--hrms-border);cursor:pointer;background:#f8f9ff;border-radius:8px;outline:none;padding:6px 10px;font-size:.8rem}.tab-filters .filter-group select:focus{border-color:var(--hrms-primary)}.attendance-stats,.salary-stats,.performance-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.attendance-stats .stat-card,.salary-stats .stat-card,.performance-stats .stat-card{text-align:center;background:#f8f9ff;border-radius:12px;padding:12px}.attendance-stats .stat-card span,.salary-stats .stat-card span,.performance-stats .stat-card span{color:var(--hrms-text-muted);font-size:.65rem;display:block}.attendance-stats .stat-card strong,.salary-stats .stat-card strong,.performance-stats .stat-card strong{color:var(--hrms-text-primary);font-size:1.2rem;font-weight:700;display:block}.attendance-stats .stat-card strong.text-success,.salary-stats .stat-card strong.text-success,.performance-stats .stat-card strong.text-success{color:var(--hrms-success)}.attendance-stats .stat-card strong.text-danger,.salary-stats .stat-card strong.text-danger,.performance-stats .stat-card strong.text-danger{color:var(--hrms-danger)}.attendance-stats .stat-card strong.text-warning,.salary-stats .stat-card strong.text-warning,.performance-stats .stat-card strong.text-warning{color:var(--hrms-warning)}.attendance-table-wrap,.salary-table-wrap,.performance-table-wrap,.leave-table-wrap{overflow-x:auto}.attendance-table,.salary-table,.performance-table,.leave-table{border-collapse:collapse;width:100%;min-width:500px;font-size:.8rem}.attendance-table thead th,.salary-table thead th,.performance-table thead th,.leave-table thead th{text-align:left;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);text-transform:uppercase;padding:10px 12px;font-size:.65rem;font-weight:600}.attendance-table tbody td,.salary-table tbody td,.performance-table tbody td,.leave-table tbody td{color:var(--hrms-text-secondary);border-bottom:1px solid #f1f4fd;padding:10px 12px}.attendance-table tbody tr:hover td,.salary-table tbody tr:hover td,.performance-table tbody tr:hover td,.leave-table tbody tr:hover td{background:#fafbff}.attendance-table .no-data,.salary-table .no-data,.performance-table .no-data,.leave-table .no-data{text-align:center;color:var(--hrms-text-muted);padding:24px}.status-badge-small{border-radius:12px;padding:3px 8px;font-size:.65rem;font-weight:600;display:inline-flex}.status-badge-small.status-on-time{color:#059669;background:#10b9811a}.status-badge-small.status-late{color:#d97706;background:#f59e0b1a}.status-badge-small.status-absent{color:#dc2626;background:#ef44441a}.status-badge-small.status-half-day{color:#2563eb;background:#3b82f61a}.status-badge-small.status-holiday{color:#059669;background:#10b9811a}.status-badge-small.status-weekend{color:#d97706;background:#f59e0b1a}.status-badge-small.status-default{color:var(--hrms-text-muted);background:#f1f4fd}.leave-balance-section{margin-bottom:20px}.leave-balance-section h4{font-family:var(--hrms-font-head);margin-bottom:12px;font-size:.85rem}.leave-balance-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.balance-item{background:#f8f9ff;border-radius:10px;padding:12px}.balance-item .balance-type{color:var(--hrms-text-primary);margin-bottom:4px;font-size:.9rem;font-weight:700;display:block}.balance-item .balance-details{color:var(--hrms-text-muted);gap:12px;font-size:.7rem;display:flex}.balance-item .balance-details span{align-items:center;gap:2px;display:flex}.balance-item .balance-details span:after{content:"|";color:var(--hrms-border)}.balance-item .balance-details span:last-child:after{content:""}.leave-status{border-radius:12px;padding:3px 10px;font-size:.65rem;font-weight:600}.leave-status.pending{color:#d97706;background:#f59e0b1a}.leave-status.approved{color:#059669;background:#10b9811a}.leave-status.rejected{color:#dc2626;background:#ef44441a}.leave-status.cancelled{color:var(--hrms-text-muted);background:#94a3b81a}.salary-status{border-radius:12px;padding:3px 10px;font-size:.65rem;font-weight:600}.salary-status.paid{color:#059669;background:#10b9811a}.salary-status.unpaid{color:#d97706;background:#f59e0b1a}.rating-stars{align-items:center;gap:2px;display:flex}.rating-stars svg{font-size:.7rem}.rating-stars .star-filled{color:#fbbf24}.rating-stars .star-empty{color:var(--hrms-border)}.rating-stars span{color:var(--hrms-text-muted);margin-left:4px;font-size:.7rem}.edit-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:700px;max-height:90vh;animation:.3s ae-modal-in;overflow:auto}.edit-modal .modal-header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.edit-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.edit-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.edit-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.edit-modal .modal-body{padding:24px}.edit-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.edit-modal .modal-footer .cancel-btn{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);cursor:pointer;color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;padding:10px;font-size:.85rem;font-weight:600}.edit-modal .modal-footer .cancel-btn:hover{background:#f8f9ff}.edit-modal .modal-footer .save-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;display:flex}.edit-modal .modal-footer .save-btn:disabled{opacity:.6}.edit-modal .modal-footer .save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.edit-modal--large{max-width:700px}.employee-info{background:#f8f9ff;border-radius:12px;align-items:center;gap:16px;margin-bottom:20px;padding:16px;display:flex}.employee-info .employee-avatar-large{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.2rem;font-weight:700;display:flex}.employee-info h4{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:.95rem}.employee-info p{color:var(--hrms-text-muted);font-size:.75rem}.edit-tabs{flex-direction:column;gap:20px;display:flex}.edit-section{background:#f8f9ff;border-radius:12px;padding:16px}.edit-section h4{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);border-bottom:1px solid var(--hrms-border);margin-bottom:12px;padding-bottom:6px;font-size:.8rem;font-weight:600}.form-group{margin-bottom:14px}.form-group label{color:var(--hrms-text-primary);align-items:center;gap:6px;margin-bottom:4px;font-size:.75rem;font-weight:600;display:flex}.form-group label svg{color:var(--hrms-text-muted);font-size:.7rem}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--hrms-border);width:100%;font-size:.85rem;font-family:var(--hrms-font-body);background:#fff;border-radius:8px;padding:8px 12px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.form-group textarea{resize:vertical;min-height:60px}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.file-upload-area .file-input{border:1px dashed var(--hrms-border);cursor:pointer;background:#fff;border-radius:8px;width:100%;padding:8px}.file-upload-area .file-input:hover{border-color:var(--hrms-primary)}.file-upload-area .existing-file,.file-upload-area .selected-file{background:#fff;border-radius:8px;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;display:flex}.file-upload-area .existing-file svg,.file-upload-area .selected-file svg{color:var(--hrms-primary);font-size:.9rem}.file-upload-area .existing-file a,.file-upload-area .selected-file a{color:var(--hrms-primary);font-size:.8rem;text-decoration:none}.file-upload-area .existing-file a:hover,.file-upload-area .selected-file a:hover{text-decoration:underline}.file-upload-area .existing-file small,.file-upload-area .selected-file small{color:var(--hrms-text-muted);margin-left:auto;font-size:.65rem}.file-upload-area .existing-file button,.file-upload-area .selected-file button{color:var(--hrms-danger);cursor:pointer;background:#ef44441a;border:none;border-radius:4px;padding:4px 8px;font-size:.7rem}.file-upload-area .existing-file button:hover,.file-upload-area .selected-file button:hover{background:#ef444433}.file-upload-area .selected-file svg{color:var(--hrms-success)}.password-reset-section{background:#fef2f2;border:1px solid #ef444433;border-radius:12px;margin-bottom:20px;padding:12px 16px}.password-reset-section .password-reset-btn{color:#fff;font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.password-reset-section .password-reset-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.password-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:450px;max-height:90vh;animation:.3s ae-modal-in;overflow:auto}.password-modal .modal-header{border-bottom:1px solid var(--hrms-border);background:var(--hrms-card);z-index:1;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.password-modal .modal-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.password-modal .modal-header .modal-close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.password-modal .modal-header .modal-close:hover{color:var(--hrms-danger)}.password-modal .modal-body{padding:24px}.password-modal .modal-footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.password-modal .modal-footer .cancel-btn{border:1.5px solid var(--hrms-border);font-family:var(--hrms-font-head);cursor:pointer;color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;padding:10px;font-size:.85rem;font-weight:600}.password-modal .modal-footer .cancel-btn:hover{background:#f8f9ff}.password-modal .modal-footer .save-btn{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;display:flex}.password-modal .modal-footer .save-btn:disabled{opacity:.6}.password-modal .modal-footer .save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5a67f266}.password-modal .form-group{margin-bottom:16px}.password-modal .form-group label{color:var(--hrms-text-primary);align-items:center;gap:8px;margin-bottom:6px;font-size:.8rem;font-weight:600;display:flex}.password-modal .form-group label svg{color:var(--hrms-primary);font-size:.8rem}.password-modal .form-group input{border:1.5px solid var(--hrms-border);width:100%;font-size:.85rem;font-family:var(--hrms-font-body);border-radius:8px;padding:10px 14px}.password-modal .form-group input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow);outline:none}.password-reset-info{margin-bottom:16px}.password-reset-info .reset-employee{background:#f8f9ff;border-radius:12px;align-items:center;gap:16px;margin-bottom:12px;padding:12px;display:flex}.password-reset-info .reset-employee .reset-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.1rem;font-weight:700;display:flex}.password-reset-info .reset-employee h4{color:var(--hrms-text-primary);margin-bottom:2px;font-size:.9rem}.password-reset-info .reset-employee p{color:var(--hrms-text-muted);font-size:.7rem}.password-reset-info .reset-note{border-left:3px solid var(--hrms-success);background:#10b98114;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.password-reset-info .reset-note svg{color:var(--hrms-success);margin-top:2px;font-size:.9rem}.password-reset-info .reset-note p{color:var(--hrms-text-secondary);font-size:.75rem;line-height:1.4}.confirm-modal{background:var(--hrms-card);border-radius:20px;width:90%;max-width:420px;animation:.3s ae-modal-in}.confirm-modal__header{justify-content:center;padding:24px 24px 0;display:flex;position:relative}.confirm-modal__header .confirm-modal__icon{background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.confirm-modal__header .confirm-modal__icon svg{color:var(--hrms-danger);font-size:28px}.confirm-modal__header .confirm-modal__close{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.1rem;position:absolute;top:16px;right:16px}.confirm-modal__header .confirm-modal__close:hover{color:var(--hrms-danger)}.confirm-modal__body{text-align:center;padding:20px 24px}.confirm-modal__body h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1.1rem}.confirm-modal__body p{color:var(--hrms-text-secondary);font-size:.85rem}.confirm-modal__footer{border-top:1px solid var(--hrms-border);gap:12px;padding:16px 24px 24px;display:flex}.confirm-modal__footer .confirm-modal__cancel{border:1.5px solid var(--hrms-border);cursor:pointer;font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);background:#fff;border-radius:10px;flex:1;padding:10px;font-weight:600}.confirm-modal__footer .confirm-modal__cancel:hover{background:#f8f9ff}.confirm-modal__footer .confirm-modal__confirm{background:linear-gradient(135deg, var(--hrms-danger), #dc2626);color:#fff;cursor:pointer;font-family:var(--hrms-font-head);border:none;border-radius:10px;flex:1;padding:10px;font-weight:600}.confirm-modal__footer .confirm-modal__confirm:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.spinning{animation:.6s linear infinite ae-spin}@keyframes ae-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=1200px){.attendance-stats,.salary-stats,.performance-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=1024px){.all-employees{padding:24px}.employees-header h1{font-size:1.5rem}}@media (width<=768px){.all-employees{padding:16px}.filters-grid{flex-direction:column;align-items:stretch!important}.filters-grid .search-group,.filters-grid .filter-group{width:100%}.employees-table th,.employees-table td{padding:10px 12px;font-size:.7rem}.employee-cell .employee-avatar{width:28px;height:28px;font-size:.7rem}.details-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:12px}.detail-modal{width:95%;max-height:95vh;margin:16px}.edit-modal,.password-modal{width:95%;margin:16px}.employee-profile-header{text-align:center;flex-direction:column}.profile-meta{flex-direction:column;align-items:center;gap:6px}.details-tabs-nav{justify-content:center}.attendance-stats,.salary-stats,.performance-stats{grid-template-columns:repeat(2,1fr)}.leave-balance-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column}}@media (width<=480px){.all-employees{padding:12px}.employees-header h1{font-size:1.2rem}.attendance-stats,.salary-stats,.performance-stats,.stats-grid{grid-template-columns:1fr}.detail-modal{border-radius:16px;padding:0}.employee-profile-header .profile-avatar-large{width:56px;height:56px;font-size:1.4rem}}.mt-loading{background:var(--hrms-bg);min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.mt-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:38px;height:38px;animation:.75s linear infinite mt-spin}.mt-container{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.mt-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.mt-page-header__badge{color:var(--hrms-primary);letter-spacing:.09em;text-transform:uppercase;background:#5a67f21a;border-radius:100px;align-items:center;gap:8px;margin-bottom:12px;padding:5px 12px;font-size:.7rem;font-weight:700;display:inline-flex}.mt-page-header__badge svg{font-size:.7rem}.mt-page-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);letter-spacing:-.02em;margin-bottom:5px;font-size:1.8rem;font-weight:700}.mt-page-header p{color:var(--hrms-text-secondary);font-size:.875rem}.mt-stats-badge{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;font-family:var(--hrms-font-head);border-radius:12px;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;display:flex;box-shadow:0 4px 12px #5a67f24d}.mt-stats-badge svg{font-size:1rem}.mt-search-wrapper{margin-bottom:24px}.mt-search{max-width:400px;position:relative}.mt-search__icon{color:var(--hrms-text-muted);font-size:.9rem;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.mt-search__input{border:1.5px solid var(--hrms-border);width:100%;font-family:var(--hrms-font-body);color:var(--hrms-text-primary);background:var(--hrms-card);border-radius:12px;outline:none;padding:12px 40px;font-size:.875rem;transition:all .2s}.mt-search__input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 4px var(--hrms-primary-glow)}.mt-search__input::placeholder{color:var(--hrms-text-muted)}.mt-search__clear{color:var(--hrms-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .2s;display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.mt-search__clear:hover{color:var(--hrms-danger)}.mt-search__clear svg{font-size:.8rem}.mt-empty{text-align:center;background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;padding:60px 20px}.mt-empty__icon{width:70px;height:70px;color:var(--hrms-primary);background:#5a67f21a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:2rem;display:flex}.mt-empty h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:600}.mt-empty p{color:var(--hrms-text-secondary);font-size:.875rem}.mt-list{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;overflow-x:auto;box-shadow:0 2px 12px #0d0f1a0d}.mt-list__header{border-bottom:1px solid var(--hrms-border);font-family:var(--hrms-font-head);text-transform:uppercase;letter-spacing:.08em;color:var(--hrms-text-muted);background:#fafbff;grid-template-columns:2fr 1fr 1.5fr 1.5fr 1.2fr .8fr;min-width:900px;padding:16px 20px;font-size:.75rem;font-weight:700;display:grid}.mt-list__item{border-bottom:1px solid var(--hrms-border);grid-template-columns:2fr 1fr 1.5fr 1.5fr 1.2fr .8fr;align-items:center;min-width:900px;padding:16px 20px;transition:background .2s;display:grid}.mt-list__item:hover{background:#fafbff}.mt-list__item:last-child{border-bottom:none}.mt-list__col{color:var(--hrms-text-secondary);align-items:center;gap:10px;font-size:.875rem;display:flex}.mt-list__col--name{color:var(--hrms-text-primary);font-weight:500}.mt-list__icon{color:var(--hrms-text-muted);flex-shrink:0;font-size:.8rem}.mt-list__name{color:var(--hrms-text-primary);margin-bottom:2px;font-weight:600}.mt-list__email{color:var(--hrms-text-muted);font-size:.75rem}.mt-list__na{color:var(--hrms-text-muted);font-style:italic}.mt-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:40px;height:40px;font-family:var(--hrms-font-head);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.mt-view-btn{color:var(--hrms-primary);font-family:var(--hrms-font-head);cursor:pointer;background:#5a67f21a;border:none;border-radius:8px;padding:6px 16px;font-size:.75rem;font-weight:600;transition:all .2s}.mt-view-btn:hover{background:var(--hrms-primary);color:#fff;transform:translateY(-1px)}.mt-stats{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;gap:16px;margin-top:24px;padding:16px 20px;display:flex}.mt-stats__item{align-items:baseline;gap:8px;display:flex}.mt-stats__label{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.mt-stats__value{font-family:var(--hrms-font-head);color:var(--hrms-primary);font-size:1.2rem;font-weight:700}.mt-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0d0f1ab3;justify-content:center;align-items:center;padding:20px;animation:.2s mt-fade-in;display:flex;position:fixed;inset:0}.mt-modal{background:var(--hrms-card);border-radius:24px;width:100%;max-width:450px;animation:.3s mt-slide-up;overflow:hidden}.mt-modal__header{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));justify-content:space-between;align-items:flex-start;padding:24px;display:flex;position:relative}.mt-modal__avatar{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;width:70px;height:70px;font-family:var(--hrms-font-head);background:#fff3;border:2px solid #ffffff4d;border-radius:20px;justify-content:center;align-items:center;font-size:2rem;font-weight:700;display:flex}.mt-modal__close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:flex}.mt-modal__close:hover{background:#ffffff4d}.mt-modal__body{padding:24px}.mt-modal h2{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:4px;font-size:1.4rem;font-weight:700}.mt-modal__role{color:var(--hrms-primary);margin-bottom:24px;font-size:.8rem;font-weight:600}.mt-modal__info{flex-direction:column;gap:16px;display:flex}.mt-modal__info-item{background:#fafbff;border-radius:12px;align-items:flex-start;gap:12px;padding:12px;display:flex}.mt-modal__info-item svg{color:var(--hrms-primary);margin-top:2px;font-size:.9rem}.mt-modal__info-item div{flex:1}.mt-modal__info-item label{text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);margin-bottom:4px;font-size:.7rem;font-weight:600;display:block}.mt-modal__info-item p{color:var(--hrms-text-primary);font-size:.875rem;font-weight:500}@keyframes mt-slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.mt-container{padding:24px}.mt-page-header h1{font-size:1.5rem}.mt-list__header,.mt-list__item{min-width:800px}}@media (width<=768px){.mt-container{padding:16px}.mt-page-header{flex-direction:column;align-items:flex-start}.mt-stats-badge{align-self:flex-start}.mt-page-header h1{font-size:1.3rem}.mt-search{max-width:100%}.mt-list{overflow-x:auto}.mt-list__header,.mt-list__item{min-width:700px}.mt-stats{flex-direction:column;gap:10px}.mt-modal{max-width:calc(100% - 32px);margin:16px}.mt-modal__header{padding:20px}.mt-modal__avatar{border-radius:16px;width:55px;height:55px;font-size:1.5rem}.mt-modal__body{padding:20px}.mt-modal h2{font-size:1.2rem}}@media (width<=480px){.mt-container{padding:12px}.mt-page-header h1{font-size:1.2rem}.mt-stats-badge{padding:6px 14px;font-size:.8rem}.mt-list__header,.mt-list__item{min-width:600px;padding:12px 16px}.mt-avatar{border-radius:10px;width:32px;height:32px;font-size:.8rem}.mt-view-btn{padding:4px 12px;font-size:.7rem}}.admin-dashboard-loading{background:var(--hrms-bg);min-height:60vh;font-family:var(--hrms-font-body);color:var(--hrms-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.admin-spinner{border:3px solid var(--hrms-border);border-top-color:var(--hrms-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite admin-spin}.admin-dashboard-error{background:var(--hrms-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60vh;display:flex}.admin-dashboard-error .error-icon{color:var(--hrms-danger);font-size:3rem}.admin-dashboard-error h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary)}.admin-dashboard-error p{color:var(--hrms-text-secondary)}.admin-retry-btn{background:var(--hrms-primary);color:#fff;font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:10px;padding:10px 24px;font-weight:600;transition:all .2s}.admin-retry-btn:hover{background:var(--hrms-primary-dark);transform:translateY(-2px)}.admin-dashboard{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.admin-welcome{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:24px;display:flex}.admin-welcome__greeting{opacity:.9;letter-spacing:.05em;font-size:.85rem}.admin-welcome h1{font-family:var(--hrms-font-head);margin-top:4px;font-size:1.8rem;font-weight:700}.admin-welcome p{opacity:.9;margin-top:8px;font-size:.85rem}.admin-welcome__date{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:16px;align-items:center;gap:12px;padding:12px 20px;display:flex}.admin-welcome__date svg{font-size:1.2rem}.admin-welcome__date div{flex-direction:column;display:flex}.admin-welcome__date span{font-size:.9rem;font-weight:600}.admin-welcome__date small{opacity:.8;font-size:.7rem}.admin-stats-grid{grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:28px;display:grid}.admin-stat-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;align-items:center;gap:12px;padding:16px;transition:transform .2s,box-shadow .2s;display:flex}.admin-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0d0f1a14}.admin-stat-card__icon{border-radius:14px;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.2rem;display:flex}.admin-stat-card__icon.admin-icon-total{color:var(--hrms-primary);background:#5a67f21a}.admin-stat-card__icon.admin-icon-new{color:var(--hrms-success);background:#10b9811a}.admin-stat-card__icon.admin-icon-present{color:var(--hrms-info);background:#3b82f61a}.admin-stat-card__icon.admin-icon-leave{color:var(--hrms-warning);background:#f59e0b1a}.admin-stat-card__icon.admin-icon-salary{color:var(--hrms-success);background:#10b9811a}.admin-stat-card__icon.admin-icon-task{color:#8b5cf6;background:#8b5cf61a}.admin-stat-card__info{flex:1}.admin-stat-card__label{text-transform:uppercase;letter-spacing:.06em;color:var(--hrms-text-muted);margin-bottom:4px;font-size:.65rem;font-weight:600;display:block}.admin-stat-card__value{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:1.4rem;font-weight:700}.admin-stat-card__sub{color:var(--hrms-text-muted);gap:12px;margin-top:4px;font-size:.6rem;display:flex}.admin-two-column{grid-template-columns:1fr 1fr;gap:24px;display:grid}.admin-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;margin-bottom:24px;padding:24px}.admin-card:last-child{margin-bottom:0}.admin-card__header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.admin-card__header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.admin-card__header h3 svg{color:var(--hrms-primary)}.admin-role-distribution,.admin-dept-distribution{margin-bottom:24px}.admin-role-distribution h4,.admin-dept-distribution h4{color:var(--hrms-text-secondary);margin-bottom:12px;font-size:.75rem;font-weight:600}.admin-role-grid{flex-direction:column;gap:12px;display:flex}.admin-role-item,.admin-dept-item{align-items:center;gap:12px;display:flex}.admin-role-item .admin-role-name,.admin-role-item .admin-dept-name,.admin-dept-item .admin-role-name,.admin-dept-item .admin-dept-name{width:80px;color:var(--hrms-text-primary);font-size:.75rem;font-weight:500}.admin-role-item .admin-role-bar-wrapper,.admin-role-item .admin-dept-bar-wrapper,.admin-dept-item .admin-role-bar-wrapper,.admin-dept-item .admin-dept-bar-wrapper{background:var(--hrms-border);border-radius:12px;flex:1;height:24px;overflow:hidden}.admin-role-item .admin-role-bar,.admin-role-item .admin-dept-bar,.admin-dept-item .admin-role-bar,.admin-dept-item .admin-dept-bar{background:linear-gradient(90deg, var(--hrms-primary), var(--hrms-accent));border-radius:12px;height:100%;transition:width .3s}.admin-role-item .admin-role-count,.admin-role-item .admin-dept-count,.admin-dept-item .admin-role-count,.admin-dept-item .admin-dept-count{width:35px;color:var(--hrms-text-primary);text-align:right;font-size:.7rem;font-weight:600}.admin-attendance-stats{flex-direction:column;gap:16px;display:flex}.admin-attendance-item{align-items:center;gap:12px;display:flex}.admin-attendance-item .admin-attendance-info{width:80px}.admin-attendance-item .admin-attendance-info .admin-attendance-label{color:var(--hrms-text-muted);font-size:.65rem;display:block}.admin-attendance-item .admin-attendance-info strong{color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.admin-attendance-item .admin-attendance-bar{border-radius:4px;flex:1;height:8px;overflow:hidden}.admin-attendance-item .admin-attendance-bar.present{background:#10b98133}.admin-attendance-item .admin-attendance-bar.late{background:#f59e0b33}.admin-attendance-item .admin-attendance-bar.half-day{background:#3b82f633}.admin-attendance-item .admin-attendance-bar.absent{background:#ef444433}.admin-attendance-item .admin-attendance-bar .admin-attendance-fill{border-radius:4px;height:100%;transition:width .3s}.present .admin-attendance-item .admin-attendance-bar .admin-attendance-fill{background:var(--hrms-success)}.late .admin-attendance-item .admin-attendance-bar .admin-attendance-fill{background:var(--hrms-warning)}.half-day .admin-attendance-item .admin-attendance-bar .admin-attendance-fill{background:var(--hrms-info)}.absent .admin-attendance-item .admin-attendance-bar .admin-attendance-fill{background:var(--hrms-danger)}.admin-attendance-item .admin-attendance-percent{width:45px;color:var(--hrms-text-primary);text-align:right;font-size:.7rem;font-weight:600}.admin-leave-trend{justify-content:space-around;align-items:flex-end;gap:16px;height:180px;display:flex}.admin-trend-item{flex-direction:column;flex:1;align-items:center;gap:8px;display:flex}.admin-trend-item .admin-trend-month{color:var(--hrms-text-secondary);order:2;font-size:.7rem;font-weight:500}.admin-trend-item .admin-trend-bar-wrapper{justify-content:center;align-items:flex-end;width:100%;height:120px;display:flex}.admin-trend-item .admin-trend-bar{background:linear-gradient(180deg, var(--hrms-primary), var(--hrms-accent));border-radius:8px 8px 4px 4px;width:30px;min-height:4px;transition:height .3s}.admin-trend-item .admin-trend-count{color:var(--hrms-text-primary);order:1;font-size:.7rem;font-weight:600}.admin-salary-stats{flex-direction:column;gap:16px;display:flex}.admin-salary-item{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.admin-salary-item:last-child{border-bottom:none}.admin-salary-item .admin-salary-label{color:var(--hrms-text-secondary);font-size:.75rem}.admin-salary-item strong{color:var(--hrms-text-primary);font-size:.9rem;font-weight:700}.admin-salary-status{gap:12px;display:flex}.admin-salary-status .status-paid{color:var(--hrms-success);background:#10b9811a;border-radius:12px;padding:2px 8px;font-size:.7rem;font-weight:600}.admin-salary-status .status-unpaid{color:var(--hrms-warning);background:#f59e0b1a;border-radius:12px;padding:2px 8px;font-size:.7rem;font-weight:600}.admin-holidays-list{flex-direction:column;gap:12px;display:flex}.admin-holiday-item{background:#fafbff;border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.admin-holiday-item .admin-holiday-name{color:var(--hrms-text-primary);flex:1;font-size:.8rem;font-weight:500}.admin-holiday-item .admin-holiday-date{color:var(--hrms-text-muted);font-size:.7rem}.admin-holiday-item .admin-holiday-type{text-transform:capitalize;border-radius:10px;padding:2px 8px;font-size:.6rem;font-weight:600}.admin-holiday-item .admin-holiday-type.public{color:var(--hrms-success);background:#10b9811a}.admin-holiday-item .admin-holiday-type.festival{color:var(--hrms-warning);background:#f59e0b1a}.admin-holiday-item .admin-holiday-type.company_event{color:var(--hrms-info);background:#3b82f61a}.admin-recent-section{margin-bottom:20px}.admin-recent-section h4{color:var(--hrms-text-secondary);border-bottom:1px solid var(--hrms-border);margin-bottom:12px;padding-bottom:8px;font-size:.75rem;font-weight:600}.admin-recent-section:last-child{margin-bottom:0}.admin-recent-item{background:#fafbff;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px;display:flex}.admin-recent-item:last-child{margin-bottom:0}.admin-recent-avatar{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-accent));color:#fff;width:40px;height:40px;font-family:var(--hrms-font-head);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.admin-recent-avatar.task{background:linear-gradient(135deg,#8b5cf6,#7c3aed);font-size:1rem}.admin-recent-info{flex:1}.admin-recent-info strong{color:var(--hrms-text-primary);font-size:.8rem;display:block}.admin-recent-info small{color:var(--hrms-text-muted);margin-top:2px;font-size:.65rem;display:block}.admin-recent-info p{color:var(--hrms-text-secondary);margin-top:4px;font-size:.7rem}.admin-recent-badge{border-radius:10px;padding:3px 8px;font-size:.6rem;font-weight:600}.admin-recent-badge.pending{color:var(--hrms-warning);background:#f59e0b1a}.admin-footer-stats{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:20px;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px;padding:20px;display:grid}.admin-footer-item{border-right:1px solid var(--hrms-border);align-items:center;gap:12px;padding:0 12px;display:flex}.admin-footer-item:last-child{border-right:none}.admin-footer-item svg{color:var(--hrms-primary);font-size:1.5rem}.admin-footer-item div{flex-direction:column;display:flex}.admin-footer-item span{color:var(--hrms-text-muted);font-size:.7rem}.admin-footer-item strong{color:var(--hrms-text-primary);font-size:1rem;font-weight:700}.trend-up{color:var(--hrms-success);font-size:.7rem}.trend-down{color:var(--hrms-danger);font-size:.7rem}.trend-neutral{color:var(--hrms-text-muted);font-size:.7rem}@media (width<=1200px){.admin-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=1024px){.admin-dashboard{padding:20px}.admin-two-column{grid-template-columns:1fr;gap:20px}.admin-footer-stats{grid-template-columns:1fr}.admin-footer-item{border-right:none;border-bottom:1px solid var(--hrms-border);padding-bottom:12px}.admin-footer-item:last-child{border-bottom:none;padding-bottom:0}}@media (width<=768px){.admin-dashboard{padding:16px}.admin-welcome{text-align:center;flex-direction:column}.admin-welcome h1{font-size:1.4rem}.admin-welcome__date{justify-content:center;width:100%}.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.admin-role-item,.admin-dept-item{flex-wrap:wrap}.admin-role-item .admin-role-name,.admin-role-item .admin-dept-name,.admin-dept-item .admin-role-name,.admin-dept-item .admin-dept-name,.admin-role-item .admin-role-bar-wrapper,.admin-role-item .admin-dept-bar-wrapper,.admin-dept-item .admin-role-bar-wrapper,.admin-dept-item .admin-dept-bar-wrapper{width:100%}.admin-leave-trend{height:150px}}@media (width<=480px){.admin-dashboard{padding:12px}.admin-stats-grid{grid-template-columns:1fr}.admin-stat-card__value{font-size:1.2rem}.admin-card{padding:16px}.admin-trend-bar{width:20px}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f226;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-success:#10b981;--hrms-warning:#f59e0b;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}.not-found-page{background:linear-gradient(135deg, var(--hrms-bg), #e8ebff);min-height:100vh;font-family:var(--hrms-font-body);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.not-found-container{z-index:2;width:100%;max-width:700px;padding:40px 24px;position:relative}.not-found-bg-shapes{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.shape{opacity:.05;border-radius:50%;animation:8s ease-in-out infinite float;position:absolute}.shape-1{background:var(--hrms-primary);width:300px;height:300px;animation-delay:0s;top:-100px;left:-100px}.shape-2{background:var(--hrms-accent);width:400px;height:400px;animation-delay:2s;bottom:-150px;right:-150px}.shape-3{background:var(--hrms-warning);width:150px;height:150px;animation-delay:4s;top:50%;left:-50px}.shape-4{background:var(--hrms-danger);width:200px;height:200px;animation-delay:6s;bottom:20%;right:-70px}.not-found-content{background:var(--hrms-card);text-align:center;border:1px solid var(--hrms-border);z-index:1;border-radius:24px;padding:48px 40px;animation:.6s cubic-bezier(.22,1,.36,1) slideUp;position:relative;box-shadow:0 24px 80px #0d0f1a1f}.not-found-number{font-family:var(--hrms-font-head);justify-content:center;align-items:center;gap:12px;margin-bottom:20px;font-weight:800;display:flex}.digit{font-size:5rem;line-height:1;display:inline-block}.digit-1,.digit-3{color:var(--hrms-primary);animation:2s ease-in-out infinite pulse}.digit-1{animation-delay:0s}.digit-3{animation-delay:1s}.digit-2{color:var(--hrms-warning);font-size:4rem;animation:2s ease-in-out infinite bounce}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-10px)rotate(-5deg)}75%{transform:translateY(-10px)rotate(5deg)}}.not-found-icon{width:70px;height:70px;color:var(--hrms-primary);background:#5a67f21a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:2rem;animation:2s ease-in-out infinite pulse;display:flex}.not-found-title{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);margin-bottom:12px;font-size:1.8rem;font-weight:700}.not-found-description{color:var(--hrms-text-secondary);margin-bottom:32px;font-size:.95rem;line-height:1.6}.not-found-links{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:32px;display:flex}.not-found-btn{font-family:var(--hrms-font-head);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:10px;padding:12px 28px;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.not-found-btn svg{font-size:.85rem}.not-found-btn-primary{background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));color:#fff;box-shadow:0 4px 16px #5a67f24d}.not-found-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5a67f266}.not-found-btn-secondary{color:var(--hrms-text-primary);border:1.5px solid var(--hrms-border);background:#fff}.not-found-btn-secondary:hover{border-color:var(--hrms-primary);background:#f8f9ff;transform:translateY(-2px)}.not-found-help{border-top:1px solid var(--hrms-border);margin-bottom:24px;padding-top:24px}.not-found-help p{color:var(--hrms-text-muted);margin-bottom:12px;font-size:.8rem}.help-links{flex-wrap:wrap;justify-content:center;gap:24px;display:flex}.help-links span{color:var(--hrms-text-secondary);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:.85rem;transition:all .2s}.help-links span:hover{color:var(--hrms-primary);background:#5a67f214}.not-found-footer{border-top:1px solid var(--hrms-border);padding-top:16px}.not-found-footer p{color:var(--hrms-text-muted);font-size:.7rem}@media (width<=768px){.not-found-content{padding:32px 20px}.digit{font-size:3.5rem}.digit-2{font-size:3rem}.not-found-title{font-size:1.4rem}.not-found-description{font-size:.85rem}.not-found-links{flex-direction:column}.not-found-btn{justify-content:center;width:100%}.help-links{gap:16px}.shape{display:none}}@media (width<=480px){.not-found-content{padding:24px 16px}.digit{font-size:2.8rem}.digit-2{font-size:2.2rem}.not-found-title{font-size:1.2rem}.not-found-icon{width:56px;height:56px;font-size:1.5rem}}:root{--hrms-primary:#5a67f2;--hrms-primary-dark:#3d4adb;--hrms-primary-glow:#5a67f226;--hrms-accent:#00d2c8;--hrms-bg:#f0f2ff;--hrms-card:#fff;--hrms-text-primary:#0d0f1a;--hrms-text-secondary:#64748b;--hrms-text-muted:#94a3b8;--hrms-border:#e4e8f5;--hrms-danger:#ef4444;--hrms-success:#10b981;--hrms-warning:#f59e0b;--hrms-info:#3b82f6;--hrms-font-head:"Sora", sans-serif;--hrms-font-body:"DM Sans", sans-serif}*{box-sizing:border-box;margin:0;padding:0}.admin-reports{background:var(--hrms-bg);min-height:100vh;font-family:var(--hrms-font-body);padding:28px 32px}.reports-header{margin-bottom:28px}.reports-header h1{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:12px;margin-bottom:5px;font-size:1.8rem;font-weight:700;display:flex}.reports-header h1 svg{color:var(--hrms-primary)}.reports-header p{color:var(--hrms-text-secondary);font-size:.875rem}.reports-tabs{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:14px;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding:8px;display:flex}.reports-tabs .tab-btn{font-family:var(--hrms-font-head);color:var(--hrms-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.reports-tabs .tab-btn svg{font-size:.9rem}.reports-tabs .tab-btn:hover{color:var(--hrms-text-primary);background:#5a67f20d}.reports-tabs .tab-btn.active{color:#fff;background:linear-gradient(135deg, var(--hrms-primary), var(--hrms-primary-dark));box-shadow:0 4px 12px #5a67f24d}.reports-filters-wrapper{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;margin-bottom:24px;padding:20px}.filters-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.filters-header .filters-title{font-family:var(--hrms-font-head);color:var(--hrms-text-secondary);align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.filters-header .filters-title svg{color:var(--hrms-primary)}.filters-header .export-btn{color:#fff;font-family:var(--hrms-font-head);cursor:pointer;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;align-items:center;gap:8px;padding:8px 18px;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.filters-header .export-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.filters-header .export-btn:disabled{opacity:.6;cursor:not-allowed}.report-filters{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.report-filters .filter-group{flex-direction:column;gap:4px;min-width:140px;display:flex}.report-filters .filter-group label{color:var(--hrms-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:600}.report-filters .filter-group select,.report-filters .filter-group input{border:1.5px solid var(--hrms-border);font-size:.8rem;font-family:var(--hrms-font-body);background:#f8f9ff;border-radius:8px;outline:none;padding:8px 12px;transition:all .2s}.report-filters .filter-group select:focus,.report-filters .filter-group input:focus{border-color:var(--hrms-primary);box-shadow:0 0 0 3px var(--hrms-primary-glow)}.report-filters .filter-group.filter-search{border:1.5px solid var(--hrms-border);background:#f8f9ff;border-radius:8px;flex-direction:row;flex:1;align-items:center;gap:8px;min-width:200px;padding:0 12px}.report-filters .filter-group.filter-search svg{color:var(--hrms-text-muted)}.report-filters .filter-group.filter-search input{background:0 0;border:none;flex:1;min-width:0;padding:8px 0}.report-filters .filter-group.filter-search input:focus{box-shadow:none}.reports-table-wrapper{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;overflow:hidden}.reports-table-wrapper .table-header{border-bottom:1px solid var(--hrms-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.reports-table-wrapper .table-header h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);font-size:.95rem;font-weight:600}.reports-table-wrapper .table-header .total-count{color:var(--hrms-text-muted);font-size:.8rem}.table-responsive{overflow-x:auto}.report-table{border-collapse:collapse;width:100%;min-width:600px}.report-table thead{background:#f8f9ff}.report-table thead th{text-align:left;text-transform:uppercase;color:var(--hrms-text-muted);border-bottom:1px solid var(--hrms-border);white-space:nowrap;padding:12px 16px;font-size:.7rem;font-weight:700}.report-table thead th svg{margin-right:4px;font-size:.7rem}.report-table tbody td{color:var(--hrms-text-secondary);text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #f1f4fd;max-width:200px;padding:10px 16px;font-size:.8rem;overflow:hidden}.report-table tbody tr:hover td{background:#fafbff}.status-badge{border-radius:12px;padding:3px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.status-badge.active,.status-badge.paid,.status-badge.approved,.status-badge.complete{color:#059669;background:#10b9811a}.status-badge.inactive,.status-badge.unpaid,.status-badge.rejected{color:#dc2626;background:#ef44441a}.status-badge.pending{color:#d97706;background:#f59e0b1a}.status-badge.cancelled{color:var(--hrms-text-muted);background:#94a3b81a}.rating-display{align-items:center;gap:4px;display:flex}.rating-display svg,.rating-display span{font-size:.8rem}.rating-display span{color:var(--hrms-text-muted);margin-left:4px}.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.dashboard-card{background:var(--hrms-card);border:1px solid var(--hrms-border);border-radius:16px;padding:20px}.dashboard-card h3{font-family:var(--hrms-font-head);color:var(--hrms-text-primary);align-items:center;gap:8px;margin-bottom:16px;font-size:.9rem;font-weight:600;display:flex}.dashboard-card h3 svg{color:var(--hrms-primary)}.dashboard-stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.dashboard-stats .stat-item{text-align:center}.dashboard-stats .stat-item span{color:var(--hrms-text-muted);font-size:.7rem;display:block}.dashboard-stats .stat-item strong{color:var(--hrms-text-primary);font-size:1.2rem;font-weight:700}.dashboard-stats .stat-item strong.text-success{color:#059669}.dashboard-stats .stat-item strong.text-danger{color:#dc2626}.dashboard-stats .stat-item strong.text-warning{color:#d97706}.dashboard-role-dist{border-top:1px solid var(--hrms-border);justify-content:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.dashboard-role-dist span{color:var(--hrms-text-secondary);background:#f8f9ff;border-radius:12px;padding:2px 10px;font-size:.75rem}.dashboard-attendance-rate,.dashboard-completion-rate{text-align:center;border-top:1px solid var(--hrms-border);color:var(--hrms-text-secondary);margin-top:12px;padding-top:12px;font-size:.85rem}.dashboard-attendance-rate strong,.dashboard-completion-rate strong{color:var(--hrms-primary);font-size:1.1rem}.loading-state{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.loading-state .spinning{color:var(--hrms-primary);font-size:2rem;animation:.8s linear infinite spin}.loading-state p{color:var(--hrms-text-secondary)}.empty-state{text-align:center;padding:60px 20px}.empty-state svg{color:var(--hrms-text-muted);opacity:.4;margin-bottom:16px;font-size:3rem}.empty-state p{color:var(--hrms-text-secondary);font-size:.9rem}.empty-state small{color:var(--hrms-text-muted);font-size:.75rem}@media (width<=1024px){.admin-reports{padding:20px}.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.admin-reports{padding:16px}.reports-header h1{font-size:1.4rem}.reports-tabs .tab-btn{padding:8px 14px;font-size:.75rem}.report-filters{flex-direction:column;align-items:stretch}.report-filters .filter-group,.report-filters .filter-group.filter-search{min-width:auto}.filters-header{flex-direction:column;align-items:stretch}.filters-header .export-btn{justify-content:center}.dashboard-grid{grid-template-columns:1fr}.dashboard-stats{grid-template-columns:repeat(3,1fr)}.table-header{text-align:center;flex-direction:column;gap:8px}}@media (width<=480px){.admin-reports{padding:12px}.reports-tabs{flex-wrap:nowrap;overflow-x:auto}.reports-tabs .tab-btn{white-space:nowrap;padding:6px 12px;font-size:.7rem}}
