:root{--primary:#1e3a8a;--primary-light:#3b82f6;--primary-dark:#1e1b4b;--secondary:#111827;--accent:#06b6d4;--success:#16a34a;--warning:#f59e0b;--danger:#dc2626;--dark:#0f172a;--light:#f6f7fb;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-600:#475569;--surface:#fff;--surface-2:#f8fafc;--border:#e2e8f0;--radius:12px;--radius-lg:16px;--shadow-sm:0 1px 2px 0 #0f172a0f;--shadow-md:0 6px 14px #0f172a14;--shadow-lg:0 18px 40px #0f172a1f;--shadow-xl:0 30px 60px #0f172a2e}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--light);font-family:sans-serif;font-size:14px;line-height:1.6;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button,input,select,textarea{font-family:inherit}input,select,textarea{background:#fff;border:1px solid var(--border);border-radius:10px;color:var(--dark);font-size:14px;padding:10px 12px;transition:border .2s ease,box-shadow .2s ease,background .2s ease}input:focus,select:focus,textarea:focus{background:#f8faff;border-color:var(--primary-light);box-shadow:0 0 0 4px #3b82f61f;outline:none}button{cursor:pointer;transition:all .2s ease}a{color:inherit;text-decoration:none}.page-header{background:linear-gradient(135deg,#1e3a5f,#2e4f7b 60%,#365a8d);border:1px solid #ffffff1f;border-radius:12px;box-shadow:0 10px 20px #0f172a33;gap:16px;margin-bottom:24px;padding:16px 20px}.page-header h2{color:#f8fafc;font-size:20px;font-weight:700;margin:0}.page-header .page-subtitle{color:#f8fafcb3;font-size:12px;margin-top:4px}.page-header .btn-add-new,.page-header button{background:#ffffff29;border:1px solid #ffffff40;box-shadow:none;color:#f8fafc}.page-header .btn-add-new:hover,.page-header button:hover{background:#ffffff3d}.employees-table-wrapper,.table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md)}table{border-collapse:collapse;width:100%}thead{background:var(--surface-2);border-bottom:1px solid var(--border)}th{color:var(--dark);font-weight:700;text-align:left}td,th{font-size:13px;padding:14px 16px}td{color:var(--gray-600)}tbody tr{border-bottom:1px solid var(--border)}tbody tr:hover{background:var(--surface-2)}.status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;letter-spacing:.3px;padding:4px 10px}.filter-section{border-radius:var(--radius);margin-bottom:16px;padding:16px}.error-message,.loading-message,.success-message{border:1px solid #0000;border-radius:10px;font-size:13px;margin:12px 0;padding:12px 16px}.error-message{border-color:#fecaca}.success-message{border-color:#cde7da}.loading-message{background:var(--surface-2);border-color:var(--border)}.empty-state{color:var(--gray-400);font-size:14px;padding:24px;text-align:center}h1,h2,h3,h4{letter-spacing:-.3px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.App-container{background:#f9fafb;display:flex;min-height:100vh}.main-content{background:#f9fafb;flex:1 1;overflow-y:auto;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.App-container .sidebar.closed~.main-content,.main-content{margin-left:260px}@media (max-width:768px){.App-container .sidebar.closed~.main-content,.main-content{margin-left:0}}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--dark);font-family:inherit}html{scroll-behavior:smooth}.login-page{background:var(--light);color:var(--dark);display:grid;grid-template-columns:1fr 1fr;min-height:100vh;overflow:hidden}.apk-download-btn{background:var(--surface);border:1px solid var(--primary);border-radius:10px;color:var(--primary);display:inline-block;float:right;font-size:12px;font-weight:600;letter-spacing:.2px;margin-top:10px;padding:8px 12px;text-align:center;text-decoration:none;transition:background .2s ease,transform .2s ease,box-shadow .2s ease;width:auto}.apk-download-btn:hover{background:#2563eb14;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.login-left{align-items:center;border-right:1px solid var(--border);display:flex;justify-content:center;padding:60px 70px}.login-card,.login-left{background:var(--surface)}.login-card{width:min(460px,100%)}.login-card h1{font-size:28px;font-weight:700;margin:0 0 10px}.login-divider{background:var(--border);height:1px;margin-bottom:24px}.field{display:block;margin-bottom:18px}.field-label{color:var(--gray-600);display:block;font-size:12px;letter-spacing:.8px;margin-bottom:8px;text-transform:uppercase}.field-input{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;gap:10px;padding:12px 14px;transition:border .2s ease,box-shadow .2s ease}.field-input input{background:#0000;border:none;color:var(--dark);font-size:14px;outline:none;width:100%}.field-input input::placeholder{color:var(--gray-400)}.field-input:focus-within{border-color:var(--primary-light);box-shadow:0 0 0 4px #3b82f61f}.field-icon{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;display:grid;height:34px;place-items:center;width:34px}.field-icon svg{fill:var(--gray-600);height:16px;width:16px}.login-row{font-size:13px;justify-content:space-between;margin:8px 0 16px}.login-row,.remember{align-items:center;display:flex}.remember{color:var(--gray-600);gap:8px}.remember input{accent-color:var(--primary-light);height:16px;width:16px}.link-btn{background:none;border:none;color:var(--primary);cursor:pointer;font-size:13px;padding:0;transition:color .2s ease}.link-btn:hover{color:var(--primary-light)}.error-message{font-size:13px;margin-bottom:16px;padding:10px 14px}.login-btn{background:var(--primary);border:none;border-radius:12px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 16px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;width:100%}.login-btn:hover{background:var(--primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.login-footer{color:var(--gray-600);font-size:12px;margin-top:22px}.login-right{align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);display:flex;justify-content:center;overflow:hidden;position:relative}.login-right-overlay{background:radial-gradient(circle at 30% 30%,#3b82f633,#0f172ad9);inset:0;position:absolute}.login-right-content{position:relative;text-align:center;z-index:1}.logo-image{background-color:#fff;filter:drop-shadow(0 16px 30px rgba(15,23,42,.5));height:auto;width:min(240px,60vw)}.glow-base{background:radial-gradient(circle,#3b82f680 0,#3b82f60d 70%,#0000 100%);border-radius:50%;filter:blur(2px);height:50px;margin:16px auto 0;width:220px}@media (max-width:1024px){.login-page{grid-template-columns:1fr}.login-right{min-height:300px}.login-left{border-bottom:1px solid var(--border);border-right:none;padding:50px 40px}}@media (max-width:640px){.login-left{padding:40px 24px}.login-card h1{font-size:24px}}.navbar{background:linear-gradient(135deg,#1e3a5f,#2e4f7b 60%,#365a8d);border-bottom:1px solid #ffffff1f;box-shadow:0 10px 24px #0f172a40;height:70px;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar-container{align-items:center;display:flex;height:100%;justify-content:space-between;max-width:100%}.navbar-spacer{flex:1 1}.navbar-right{gap:24px}.navbar-right,.user-info-section{align-items:center;display:flex}.user-details{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.user-name{color:#f8fafc;font-size:15px;font-weight:700;letter-spacing:-.2px}.user-role{color:#f8fafca6;font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:capitalize}.user-menu-wrapper{position:relative}.user-profile-btn{align-items:center;background:#0f172a80;border:none;border-radius:12px;box-shadow:0 8px 18px #0f172a59;color:#fff;cursor:pointer;display:flex;font-size:22px;height:48px;justify-content:center;transition:all .3s ease;width:48px}.user-profile-btn:hover{background:#0f172ab3;box-shadow:0 12px 24px #0f172a73;transform:translateY(-2px)}.user-profile-btn:active{transform:translateY(0)}.profile-icon{align-items:center;display:flex;justify-content:center}.dropdown-menu{animation:slideDown .3s cubic-bezier(.34,1.56,.64,1);background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);margin-top:12px;min-width:240px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.dropdown-header{background:var(--surface-2);border-bottom:1px solid var(--border);padding:16px 20px}.dropdown-name{color:var(--dark);font-size:15px;font-weight:700;margin:0 0 4px}.dropdown-role{color:var(--gray-600);font-size:12px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.dropdown-divider{background:var(--border);height:1px}.change-password-option{align-items:center;background:none;border:none;color:var(--dark);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:12px;padding:14px 20px;text-align:left;transition:all .2s ease;width:100%}.change-password-option:hover{background:#3b82f61a;color:var(--primary)}.logout-option{align-items:center;background:none;border:none;color:var(--danger);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:12px;padding:14px 20px;text-align:left;transition:all .2s ease;width:100%}.logout-option:hover{background:#fee2e2;color:#991b1b}.logout-icon{font-size:18px}.logout-text{font-weight:600}.logout-modal-overlay{align-items:center;animation:fadeInOverlay .3s ease;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#0f172ab3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.logout-modal-box{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-xl);max-width:450px}.change-password-modal-box,.logout-modal-box{animation:slideUpScale .4s cubic-bezier(.34,1.56,.64,1);overflow:hidden;width:100%}.change-password-modal-box{background:#fff;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 30px 60px #0003,0 15px 35px #00000026,inset 0 1px 0 #fff9;max-width:480px}.change-password-body{display:flex;flex-direction:column;gap:14px;padding:28px 32px 8px}.change-field{color:#1f2937;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:6px}.change-field input{border:1px solid #d1d5db;border-radius:10px;font-size:14px;padding:10px 12px}.change-error{background:#fee2e2;border:1px solid #fecaca;border-radius:10px;color:#b91c1c}.change-error,.change-success{font-size:13px;padding:8px 12px}.change-success{background:#dcfce7;border:1px solid #bbf7d0;border-radius:10px;color:#15803d}.modal-header-logout{align-items:center;background:var(--surface-2);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:28px 32px 20px}.modal-header-logout h3{color:var(--dark);font-size:22px;font-weight:700;letter-spacing:-.3px;margin:0}.modal-close-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--gray-600);cursor:pointer;display:flex;font-size:22px;height:36px;justify-content:center;padding:0;transition:all .3s ease;width:36px}.modal-close-btn:hover{background:#fef2f2;border-color:#fecaca;color:var(--danger);transform:rotate(90deg)}.modal-body-logout{padding:40px 32px;text-align:center}.logout-icon-large{animation:shake .6s ease;font-size:56px;margin-bottom:20px}.logout-message{color:var(--dark);font-size:18px;font-weight:700;letter-spacing:-.3px;margin:0 0 12px}.logout-submessage{color:var(--gray-600);font-size:15px;line-height:1.6;margin:0}.modal-footer-logout{background:var(--surface);border-top:1px solid var(--border);display:flex;gap:12px;justify-content:center;padding:24px 32px 32px}.btn-cancel-logout,.btn-confirm-logout{border:none;border-radius:10px;cursor:pointer;font-size:15px;font-weight:700;letter-spacing:.3px;min-width:140px;padding:12px 32px;text-transform:uppercase;transition:all .3s ease}.btn-cancel-logout{background:var(--surface-2);border:1px solid var(--border);box-shadow:var(--shadow-sm);color:var(--dark)}.btn-cancel-logout:hover{background:var(--gray-100);border-color:var(--gray-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-cancel-logout:active{transform:translateY(0)}.btn-confirm-logout{background:var(--danger);box-shadow:0 10px 20px #dc26264d;color:#fff;overflow:hidden;position:relative}.btn-confirm-logout:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn-confirm-logout:hover{background:#b91c1c;box-shadow:0 16px 28px #dc262659;transform:translateY(-2px)}.btn-confirm-logout:hover:before{left:100%}.btn-confirm-logout:active{box-shadow:0 4px 12px #dc262640;transform:translateY(0)}@media (max-width:768px){.navbar{height:65px;padding:0 16px}.navbar-right{gap:16px}.user-name{font-size:14px}.user-role{font-size:11px}.user-profile-btn{font-size:20px;height:44px;width:44px}.dropdown-menu{min-width:220px}}@media (max-width:480px){.navbar{padding:0 12px}.user-details{display:none}.user-profile-btn{height:40px;width:40px}}@media (max-width:600px){.logout-modal-box{margin:20px;max-width:100%}.modal-header-logout{padding:24px 24px 16px}.modal-header-logout h3{font-size:20px}.modal-body-logout{padding:32px 24px}.modal-footer-logout{flex-direction:column-reverse;gap:10px;padding:20px 24px 24px}.btn-cancel-logout,.btn-confirm-logout{min-width:0;min-width:auto;width:100%}}.logout-icon svg,.logout-icon-large svg,.modal-close-btn svg,.profile-icon svg{fill:currentColor;height:18px;width:18px}.sidebar{background:linear-gradient(180deg,#0f172a,#1e293b);border-right:1px solid #94a3b833;box-shadow:2px 0 18px #0f172a59;display:flex;flex-direction:column;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;transition:all .3s ease;width:260px;z-index:1000}.sidebar.closed{width:80px}.sidebar-header{align-items:center;background:#0000;border-bottom:1px solid #94a3b826;display:flex;gap:12px;justify-content:space-between;padding:25px 20px;transition:all .3s ease}.sidebar.closed .sidebar-header{flex-direction:column;justify-content:center}.logo-section{align-items:center;display:flex;flex:1 1;gap:12px}.sidebar-logo{border-radius:8px;height:45px;min-width:45px;object-fit:contain;transition:all .3s ease;width:45px}.sidebar-logo:hover{transform:scale(1.05)}.sidebar.closed .logo-section{justify-content:center}.logo-section h2{font-size:18px}.logo-section h2,.sidebar-header h2{color:#e2e8f0;font-weight:700;margin:0;white-space:nowrap}.sidebar-header h2{font-size:16px;letter-spacing:-.5px;transition:opacity .3s ease}.sidebar.closed .sidebar-header h2{display:none}.toggle-btn{align-items:center;background:#0f172a99;border:1px solid #94a3b84d;border-radius:8px;display:flex;height:40px;justify-content:center;padding:0;transition:all .3s ease;width:40px}.toggle-btn:hover{background:#94a3b826;border-color:#94a3b873}.arrow-icon{align-items:center;color:#e2e8f0;display:flex;font-size:20px;font-weight:600;justify-content:center;transition:transform .3s ease}.arrow-icon.left{transform:rotate(180deg)}.arrow-icon.right{transform:rotate(0deg)}.user-info{background:#0f172a66;border-bottom:1px solid #94a3b826;padding:15px 20px;transition:all .3s ease}.sidebar.closed .user-info{padding:15px;text-align:center}.user-type{color:#94a3b8;font-size:11px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.sidebar-menu{flex:1 1;list-style:none;margin:0;overflow-y:auto;padding:16px 8px}.sidebar-settings{background:#0f172a99;border-top:1px solid #94a3b826;padding:15px 8px}.settings-header{align-items:center;background:#0000;border:none;border-radius:10px;color:#cbd5f5;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 14px;position:relative;text-align:left;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%}.sidebar.closed .settings-header{gap:0;justify-content:center;padding:12px}.settings-header:hover{background:#3b82f61f;color:#e2e8f0;padding-left:17px}.sidebar.closed .settings-header:hover{padding-left:12px}.settings-items{display:block;margin-top:0;max-height:0;opacity:0;overflow:hidden;transform:translateY(-4px);transition:max-height .3s ease,opacity .25s ease,transform .25s ease}.settings-items.open{margin-top:6px;max-height:500px;opacity:1;transform:translateY(0)}.settings-item{margin-bottom:4px}.settings-caret{align-items:center;display:inline-flex;justify-content:center;margin-left:auto;transform:rotate(90deg);transition:transform .25s ease}.settings-caret.open{transform:rotate(-90deg)}.menu-item{align-items:center;border-left:3px solid #0000;border-radius:10px;color:#cbd5f5;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;margin-bottom:4px;padding:12px 14px;position:relative;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1)}.sidebar.closed .menu-item{gap:0;justify-content:center;margin-bottom:8px;padding:12px}.menu-item:hover{background:#3b82f61f;color:#e2e8f0;padding-left:17px}.sidebar.closed .menu-item:hover{padding-left:12px}.menu-item.active{background:linear-gradient(90deg,#3b82f659,#3b82f614);border-left-color:#60a5fa;box-shadow:inset 0 0 0 1px #3b82f633;color:#f8fafc;font-weight:600}.menu-item.active:after{animation:pulse 2s ease-in-out infinite;background:#60a5fa;border-radius:50%;content:"";height:6px;position:absolute;right:10px;width:6px}.sidebar.closed .menu-item.active:after{display:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.menu-item .icon{align-items:center;display:flex;font-size:20px;justify-content:center;min-width:20px;text-align:center}.menu-item .label{font-size:14px;font-weight:500;transition:opacity .3s ease;white-space:nowrap}.sidebar.closed .menu-item .label{display:none}.sidebar-footer{background:#0f172ab3;border-top:1px solid #94a3b826;padding:20px;transition:all .3s ease}.sidebar.closed .sidebar-footer{padding:12px;text-align:center}.logout-btn{align-items:center;background:#dc2626;border:none;border-radius:8px;box-shadow:0 6px 14px #dc262659;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:12px;padding:10px 12px;transition:all .3s ease;white-space:nowrap;width:100%}.sidebar.closed .logout-btn{gap:0;justify-content:center;padding:10px}.logout-btn:hover{box-shadow:0 10px 18px #dc26264d;transform:translateY(-1px)}.logout-btn:active{transform:translateY(0)}.logout-btn .icon{align-items:center;display:flex;font-size:16px;justify-content:center;min-width:16px}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#0000}.sidebar::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}@media (max-width:768px){.sidebar{left:0;position:fixed;top:0;transform:translateX(-100%);width:260px;z-index:999}.sidebar.open{box-shadow:2px 0 20px #0000001a;transform:translateX(0)}.sidebar.closed{transform:translateX(-100%);width:260px}}.icon svg{fill:currentColor;height:18px;width:18px}.arrow-icon svg{fill:currentColor;height:16px;width:16px}.modal-overlay{align-items:center;animation:fadeInOverlay .3s ease;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#0f172ab3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.modal-box{animation:slideUpScale .4s cubic-bezier(.34,1.56,.64,1);background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-xl);max-width:500px;overflow:hidden;width:100%}@keyframes slideUpScale{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;background:var(--surface-2);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:32px 32px 24px}.modal-header h3{color:var(--dark);font-size:24px;font-weight:700;letter-spacing:-.5px;margin:0}.modal-close{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--gray-600);cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;padding:0;transition:all .3s ease;width:40px}.modal-close:hover{background:#fef2f2;border-color:#fecaca;color:var(--danger);transform:rotate(90deg)}.modal-body{background:var(--surface);padding:32px}.modal-body-content{align-items:center;display:flex;flex-direction:column;gap:20px;text-align:center}.modal-icon{align-items:center;animation:shake .6s ease;background:#fee2e2;border-radius:16px;box-shadow:0 8px 24px #dc262633;display:flex;flex-shrink:0;font-size:36px;height:70px;justify-content:center;width:70px}@keyframes shake{0%,to{transform:rotate(0deg)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.modal-content{flex:1 1}.modal-content p{color:var(--gray-600);font-size:16px;letter-spacing:.3px;line-height:1.6;margin:0}.modal-content-title{color:var(--dark);font-size:18px;font-weight:700;margin-bottom:8px}.modal-content-subtitle{color:var(--gray-600);font-size:15px;font-weight:500}.modal-footer{background:var(--surface);border-top:1px solid var(--border);display:flex;gap:16px;justify-content:center;padding:24px 32px 32px}.btn-cancel-modal,.btn-delete-confirm{border:none;border-radius:12px;box-shadow:var(--shadow-sm);cursor:pointer;font-size:15px;font-weight:700;letter-spacing:.3px;min-width:140px;padding:13px 32px;text-transform:uppercase;transition:all .3s ease}.btn-cancel-modal{background:var(--surface-2);border:1px solid var(--border);color:var(--dark)}.btn-cancel-modal:hover{background:var(--gray-100);border-color:var(--gray-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-cancel-modal:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-delete-confirm{background:var(--danger);box-shadow:0 10px 20px #dc26264d;color:#fff;overflow:hidden;position:relative}.btn-delete-confirm:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn-delete-confirm:hover{background:#b91c1c;box-shadow:0 16px 28px #dc262659;transform:translateY(-2px)}.btn-delete-confirm:hover:before{left:100%}.btn-delete-confirm:active{box-shadow:var(--shadow-sm);transform:translateY(0)}@media (max-width:600px){.modal-box{margin:20px;max-width:100%}.modal-header{padding:24px 24px 20px}.modal-close,.modal-header h3{font-size:20px}.modal-close{height:36px;width:36px}.modal-body{padding:24px}.modal-icon{font-size:32px;height:60px;width:60px}.modal-content p{font-size:15px}.modal-content-title{font-size:16px}.modal-footer{flex-direction:column-reverse;gap:12px;padding:20px 24px 24px}.btn-cancel-modal,.btn-delete-confirm{min-width:0;min-width:auto;width:100%}}.employee-list{background:var(--light);min-height:100vh;padding:40px}.employee-list h2{color:var(--dark);font-size:32px;font-weight:700;margin:0}.btn-add-new{background:var(--dark);box-shadow:var(--shadow-md)}.btn-add-new:hover{background:var(--secondary);box-shadow:var(--shadow-lg)}.employees-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.employee-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.employee-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-image{background:var(--surface-2);height:200px;overflow:hidden;width:100%}.card-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.employee-card:hover .card-image img{transform:scale(1.05)}.card-content{flex:1 1;padding:20px}.employee-name{color:var(--dark);font-size:18px;font-weight:700;margin:0 0 8px}.employee-id{color:var(--gray-600);font-size:13px;font-weight:600;letter-spacing:.3px;margin:0 0 8px;text-transform:uppercase}.employee-designation{color:var(--primary);font-size:14px;font-weight:600;margin:0}.card-actions{display:flex;flex-direction:column;gap:10px;padding:0 20px 20px}.action-btn{font-size:14px;font-weight:600;gap:6px;padding:11px 16px}.full-view-btn{background:var(--primary);color:#fff}.full-view-btn:hover{background:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.action-btn:active{transform:translateY(0)}.table-container{border-radius:var(--radius-lg)}.employee-edit-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.employee-edit-modal{max-width:1100px;width:100%}.edit-field{display:flex;flex-direction:column;gap:6px}.edit-field span{color:var(--gray-600);font-size:12px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.edit-field input{border:1px solid var(--border);border-radius:10px;font-size:13px;padding:8px 10px}.employee-edit-modal .modal-header{padding:20px 24px 16px}.employee-edit-modal .modal-body{max-height:70vh;overflow-y:auto;padding:20px 24px}.employee-edit-modal .modal-footer{padding:16px 24px 20px}.employees-table thead{background:var(--surface-2);border-bottom:1px solid var(--border)}.employees-table th{color:var(--dark)}.employees-table tbody tr{border-bottom:1px solid var(--border)}.employees-table tbody tr:hover{background:var(--surface-2)}.employees-table td{color:var(--gray-600)}.image-cell{text-align:center}.employee-avatar{border:1px solid var(--border);border-radius:8px;height:50px;object-fit:cover;width:50px}.employees-table input{border:1px solid var(--border);border-radius:8px;font-size:14px;padding:10px 12px;transition:all .3s ease;width:100%}.employees-table input:focus{border-color:var(--primary-light);box-shadow:0 0 0 3px #3b82f61f;outline:none}.action-btn{box-shadow:var(--shadow-sm)}.edit-btn{background:var(--surface-2);color:var(--dark)}.edit-btn:hover{background:var(--gray-100);box-shadow:var(--shadow-md)}.delete-btn{color:var(--danger)}.delete-btn:hover{box-shadow:var(--shadow-md)}.save-btn{background:#dcfce7}.save-btn:hover{background:#bbf7d0;box-shadow:var(--shadow-md);transform:translateY(-1px)}@media (max-width:768px){.employee-list{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.table-container{padding:15px}.employees-table td,.employees-table th{font-size:12px;padding:12px 10px}.employee-avatar{height:40px;width:40px}.action-btn{font-size:16px;height:36px;width:36px}.employee-edit-modal{max-width:100%}.employee-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.employee-edit-grid{grid-template-columns:1fr}}@media (max-width:480px){.employee-list{padding:15px}.employees-grid{grid-template-columns:1fr}.card-image{height:180px}}.employee-edit{align-items:center;background:var(--light);display:flex;justify-content:center;min-height:100vh;padding:40px}.employee-edit h2{color:var(--dark);font-size:36px;font-weight:700;margin-bottom:40px;text-align:center}.success-message{border-left:4px solid #10b981;box-shadow:var(--shadow-sm);left:50%;max-width:500px;position:fixed;top:20px;transform:translateX(-50%);z-index:1000}.employee-form{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-xl);max-width:900px;padding:50px}.form-section{margin-bottom:40px}.form-section:last-of-type{margin-bottom:0}.form-section h3{border-bottom:2px solid var(--primary-light);color:var(--primary);display:inline-block;font-size:20px;margin-bottom:24px;padding-bottom:12px}.form-row{grid-gap:28px;gap:28px;margin-bottom:28px}.form-group label{font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{border-radius:12px;padding:14px 16px}.form-group textarea{min-height:140px}.form-actions{border-top:1px solid var(--border);gap:16px;margin-top:45px;padding-top:30px}.submit-btn{border-radius:12px;font-weight:700;letter-spacing:.5px;padding:14px 40px;text-transform:uppercase}.submit-btn:active{transform:translateY(-1px)}.cancel-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;color:var(--dark);font-weight:700;letter-spacing:.5px;padding:14px 40px;text-transform:uppercase;transition:all .3s ease}.cancel-btn:hover{background:var(--gray-100);border-color:var(--gray-300);box-shadow:var(--shadow-md)}.cancel-btn:active{transform:translateY(-1px)}@media (max-width:768px){.employee-edit{padding:20px}.employee-edit h2{font-size:28px;margin-bottom:30px}.employee-form{padding:30px}.form-row{gap:20px;grid-template-columns:1fr;margin-bottom:20px}.form-section{margin-bottom:30px}.form-actions{flex-direction:column-reverse;gap:12px}.cancel-btn,.submit-btn{width:100%}}@media (max-width:480px){.employee-edit{padding:15px}.employee-edit h2{font-size:24px}.employee-form{border-radius:16px;padding:20px}.form-group label{font-size:13px}.form-section h3{font-size:18px}}.attendance-management{background:var(--light);min-height:100vh;padding:40px}.attendance-management h2{color:var(--dark);font-size:32px;font-weight:700;margin:0}.attendance-form{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);margin-bottom:30px;padding:30px}.table-container{border-radius:12px;box-shadow:var(--shadow-md)}.attendance-table{border-collapse:collapse;width:100%}.attendance-table thead{background:var(--surface-2);border-bottom:1px solid var(--border)}.attendance-table th{color:var(--dark);font-size:13px;font-weight:700;letter-spacing:.3px;padding:16px 14px;text-align:left}.attendance-table tbody tr{border-bottom:1px solid var(--border);transition:all .2s ease}.attendance-table tbody tr:hover{background:var(--surface-2)}.attendance-table td{color:var(--gray-600);font-size:13px;padding:16px 14px}.image-badge{background:#f3f4f6;border-radius:6px;color:#6b7280;font-size:12px;font-weight:500;padding:6px 12px}@media (max-width:768px){.attendance-management{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.table-container{padding:15px}.attendance-table td,.attendance-table th{font-size:12px;padding:12px 10px}.action-btn{font-size:16px;height:36px;width:36px}}.image-link{color:var(--primary);font-weight:600}.direction-btn{align-items:center;background:var(--success);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;justify-content:center;padding:8px 12px}.direction-btn:hover{filter:brightness(1.05)}.map-modal{max-width:900px;width:100%}.map-frame{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;height:420px;overflow:hidden;width:100%}.map-frame iframe{border:0;height:100%;width:100%}.timesheet-management{background:var(--light);min-height:100vh;padding:40px}.timesheet-management h2{color:var(--dark);font-size:32px;font-weight:700;margin:0}.timesheets-table{border-collapse:collapse;width:100%}.timesheets-table thead{background:var(--surface-2);border-bottom:1px solid var(--border)}.timesheets-table th{color:var(--dark);font-size:14px;font-weight:700;letter-spacing:.3px;padding:18px 20px;text-align:left}.timesheets-table tbody tr{border-bottom:1px solid var(--border);transition:all .2s ease}.timesheets-table tbody tr:hover{background:var(--surface-2)}.timesheets-table td{color:var(--gray-600);font-size:14px;padding:18px 20px}.timesheets-table input,.timesheets-table select{border:1.5px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .3s ease;width:100%}.timesheets-table input:focus,.timesheets-table select:focus{border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a;outline:none}.action-btn:disabled{box-shadow:0 2px 4px #00000014!important;cursor:not-allowed;opacity:.5;transform:none!important}.action-btn:disabled:hover{box-shadow:0 2px 4px #00000014!important;transform:none}.filter-btn{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--gray-600);cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .3s ease}.filter-btn:hover{background:#3b82f614;border-color:var(--primary-light);color:var(--primary)}.filter-btn.active{background:var(--primary);border-color:var(--primary);box-shadow:var(--shadow-md);color:#fff}@media (max-width:768px){.timesheet-management{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.table-container{padding:15px}.timesheets-table td,.timesheets-table th{font-size:12px;padding:12px 10px}.action-btn{font-size:16px;height:36px;width:36px}}.leave-management{background:var(--light);min-height:100vh;padding:40px}.page-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.leave-management h2{color:var(--dark);font-size:32px;font-weight:700;margin:0}.btn-add-new{background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:0 4px 15px #06b6d44d;transition:all .3s ease}.btn-add-new:hover{background:linear-gradient(135deg,#0891b2,#0369a1);box-shadow:0 8px 20px #06b6d466;transform:translateY(-2px)}.table-container{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);overflow-x:auto;padding:30px}.leaves-table{border-collapse:collapse;width:100%}.leaves-table thead{background:var(--surface-2);border-bottom:1px solid var(--border)}.leaves-table th{color:var(--dark);font-size:14px;font-weight:700;letter-spacing:.3px;padding:18px 20px;text-align:left}.leaves-table tbody tr{border-bottom:1px solid var(--border);transition:all .2s ease}.leaves-table tbody tr:hover{background:var(--surface-2)}.leaves-table td{color:var(--gray-600);font-size:14px;padding:18px 20px}.leaves-table input,.leaves-table select{border:1.5px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .3s ease;width:100%}.leaves-table input:focus,.leaves-table select:focus{border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a;outline:none}.status-badge{border-radius:6px;padding:8px 14px}.status-pending{background:#fef3c7}.status-approved{background:#d1fae5}.status-rejected{background:#fee2e2;color:#991b1b}.action-cell{text-align:center}.action-buttons{align-items:center;display:flex;gap:10px;justify-content:center}.action-btn{border-radius:8px;box-shadow:0 2px 8px #0000001f;transition:all .3s ease}.edit-btn{background:linear-gradient(135deg,#fcd34d,#f59e0b);color:#92400e}.edit-btn:hover{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 6px 16px #f59e0b59;transform:translateY(-2px)}.delete-btn{background:linear-gradient(135deg,#fca5a5,#ef4444);color:#991b1b}.delete-btn:hover{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 6px 16px #ef444459;transform:translateY(-2px)}.save-btn{background:linear-gradient(135deg,#86efac,#22c55e);color:#166534}.save-btn:hover{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 6px 16px #22c55e59;transform:translateY(-2px)}.cancel-btn{background:linear-gradient(135deg,#bfdbfe,#3b82f6);color:#1e40af}.cancel-btn:hover{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 6px 16px #3b82f659;transform:translateY(-2px)}.approve-btn{background:linear-gradient(135deg,#86efac,#22c55e);color:#166534}.approve-btn:hover{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 6px 16px #22c55e59;transform:translateY(-2px)}.reject-btn{background:linear-gradient(135deg,#bfdbfe,#3b82f6);color:#1e40af}.reject-btn:hover{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 6px 16px #3b82f659;transform:translateY(-2px)}.filter-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm);margin-bottom:25px;padding:20px}.date-filter-row,.filter-group{margin-bottom:16px}.date-filter-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.date-filter{display:flex;flex-direction:column;gap:8px}.date-filter label{color:var(--gray-600);font-size:13px;font-weight:600}.date-input{border:1.5px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .3s ease}.date-input:focus{border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a;outline:none}.search-input{border:1.5px solid #e5e7eb;border-radius:10px;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.search-input:focus{border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a;outline:none}.filter-buttons{display:flex;flex-wrap:wrap;gap:12px}.filter-select{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--gray-600);cursor:pointer;font-size:14px;font-weight:600;min-width:200px;padding:10px 16px;transition:all .3s ease}.filter-select:hover{border-color:var(--primary-light);color:var(--primary)}.filter-select:focus{border-color:var(--primary-light);box-shadow:0 0 0 3px #3b82f61f;outline:none}.form-container{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm);margin-bottom:25px;padding:24px}.form-row{margin-bottom:20px}.form-group label{margin-bottom:8px}.form-group input,.form-group select{border:1.5px solid #e5e7eb;border-radius:8px;padding:10px 12px}.form-group input:focus,.form-group select:focus{border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a}.submit-btn{border-radius:8px;font-size:14px;padding:11px 28px}.pagination{align-items:center;display:flex;gap:20px;justify-content:center;margin-top:25px;padding:20px}.pagination-btn{background:var(--primary);border:none;border-radius:8px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:var(--primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:var(--gray-600);font-size:14px;font-weight:600}@media (max-width:768px){.leave-management{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.table-container{padding:15px}.leaves-table td,.leaves-table th{font-size:12px;padding:12px 10px}.action-btn{font-size:16px;height:36px;width:36px}}.error-message{margin:20px 0;padding:14px 18px}.holiday{background:var(--light);min-height:100vh;padding:40px}.holiday h2{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin-bottom:30px}.btn-add-holiday{background:var(--primary);border:none;border-radius:10px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:25px;padding:11px 24px;transition:all .3s ease}.btn-add-holiday:hover{background:var(--primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-add-holiday:active{transform:translateY(0)}.holiday-form{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:30px;max-width:600px;padding:40px}.form-group input{background:#fff;border:1px solid var(--border);border-radius:10px;font-family:Inter,sans-serif;font-size:14px;padding:12px 14px;transition:all .3s ease}.form-group input:focus{background:#f8faff;border-color:var(--primary-light);box-shadow:0 0 0 4px #3b82f61f;outline:none}.form-group input::placeholder{color:var(--gray-400)}.holiday-list{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.holiday-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:16px;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.holiday-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.holiday-info{flex:1 1}.holiday-info h3{color:var(--dark);font-size:18px;font-weight:700;letter-spacing:-.3px;margin:0}.holiday-date{color:var(--gray-400);font-size:14px;font-weight:500;margin:10px 0 0}.btn-delete{align-self:flex-end;font-size:13px;padding:8px 16px}@media (max-width:768px){.holiday{margin-left:80px;padding:20px}.holiday-form{max-width:100%;padding:30px 20px}.form-row,.holiday-list{grid-template-columns:1fr}}@media (max-width:480px){.holiday{padding:15px}.holiday h2{font-size:24px}}.holiday-type{background:#eef2ff;border-radius:999px;color:var(--primary);display:inline-block;font-size:12px;margin-top:6px;padding:4px 10px}.events{background:var(--light);min-height:100vh;padding:40px}.events h2{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin-bottom:30px}.btn-add-event{background:var(--primary);border:none;border-radius:10px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:25px;padding:11px 24px;transition:all .3s ease}.btn-add-event:hover{background:var(--primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-add-event:active{transform:translateY(0)}.event-form{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:30px;max-width:700px;padding:40px}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group textarea{min-height:100px}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--gray-400)}.events-list{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.events-list h3{color:var(--dark);font-size:20px;font-weight:700;grid-column:1/-1;margin:10px 0 20px}.no-data{font-size:16px;grid-column:1/-1;padding:40px}.event-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);display:flex;gap:16px;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.event-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.event-icon{align-items:flex-start;display:flex;font-size:40px;min-width:50px}.event-info{flex:1 1}.event-info h3{color:var(--dark);font-size:18px;font-weight:700;letter-spacing:-.3px;margin:0 0 8px}.event-date{color:var(--gray-400);font-size:13px;font-weight:600;margin:0 0 12px}.event-type{margin:12px 0}.type-badge{border-radius:8px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.type-work{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #1e40af33;color:#1e40af}.type-festive{background:linear-gradient(135deg,#fedba0,#fec68a);border:1px solid #92400e33;color:#92400e}.type-birthday{background:linear-gradient(135deg,#e9d5ff,#d8b4fe);border:1px solid #6b21a833;color:#6b21a8}.type-other{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border:1px solid #37415133;color:#374151}.event-description{color:var(--gray-600);font-size:13px;line-height:1.5;margin:12px 0 0}.btn-delete{background:var(--danger);border:none;border-radius:8px;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:12px;font-weight:600;height:-webkit-fit-content;height:fit-content;padding:8px 14px;transition:all .3s ease}.btn-delete:hover{box-shadow:var(--shadow-md)}.btn-delete:active{transform:translateY(0)}@media (max-width:768px){.events{margin-left:80px;padding:20px}.event-form{max-width:100%;padding:30px 20px}.events-list,.form-row{grid-template-columns:1fr}.event-card{flex-direction:column}.event-icon{font-size:30px}}@media (max-width:480px){.events{padding:15px}.events h2{font-size:24px}}.event-icon svg{fill:currentColor;height:22px;width:22px}.error-message,.success-message{margin-top:12px;padding:12px 16px}.success-message{color:#065f46}.loading-message{color:var(--gray-600);font-weight:600;margin:20px 0}.add-leave{background:var(--light);min-height:100vh;padding:40px}.add-leave h2{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin-bottom:30px}.employee-selection-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:30px;padding:30px}.employee-select-group{margin-bottom:25px}.employee-select-group label{color:var(--gray-600);display:block;font-size:14px;font-weight:600;margin-bottom:10px}.employee-select{background:#fff;border:1px solid var(--border);border-radius:10px;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;max-width:400px;padding:12px 14px;transition:all .3s ease;width:100%}.employee-select:focus{background:#f8faff;border-color:var(--primary-light);box-shadow:0 0 0 4px #3b82f61f;outline:none}.employee-info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.info-card{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:16px;text-align:center}.info-card .label{color:var(--gray-400);font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.info-card .value{color:var(--dark);font-size:18px;font-weight:700;margin:0}.btn-new-leave{background:var(--primary);border:none;border-radius:10px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:25px;padding:11px 24px;transition:all .3s ease}.btn-new-leave:hover{background:var(--primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-new-leave:active{transform:translateY(0)}.leave-request-form{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:30px;max-width:600px;padding:40px}.form-group input::placeholder{color:#d1d5db}.submit-btn{margin-top:10px;width:-webkit-fit-content;width:fit-content}.leaves-list{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:30px;padding:30px}.leave-types-info h3,.leaves-list h3{color:var(--dark);font-size:20px;font-weight:700;letter-spacing:-.3px;margin:0 0 24px}.no-data{font-size:15px;padding:40px 0}.leave-item{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px;transition:all .25s ease}.leave-item:hover{background:var(--surface-2);border-color:var(--primary-light);box-shadow:var(--shadow-sm)}.leave-details h4{color:var(--dark);font-size:16px;font-weight:700;margin:0 0 6px}.leave-date{color:var(--gray-400);font-size:13px;font-weight:500;margin:0}.leave-status{align-items:center;display:flex;gap:12px}.status-badge{border-radius:8px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.status-pending{background:linear-gradient(135deg,#fef3c7,#fcd34d);border:1px solid #b453091a;color:#92400e}.status-approved{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1px solid #10b9811a;color:#065f46}.status-rejected{background:linear-gradient(135deg,#fee2e2,#fecaca);border:1px solid #ef44441a;color:#7f1d1d}.btn-cancel{background:var(--danger);border:none;border-radius:8px;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 14px;transition:all .3s ease}.btn-cancel:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-cancel:active{transform:translateY(0)}.leave-types-info{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:30px}.leave-types-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.leave-type-card{background:var(--primary);border-radius:10px;box-shadow:var(--shadow-md);color:#fff;font-size:13px;font-weight:600;padding:16px;text-align:center}.leave-type-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}@media (max-width:768px){.add-leave{margin-left:80px;padding:20px}.leave-request-form{max-width:100%;padding:30px 20px}.form-row{grid-template-columns:1fr}.leave-item{align-items:flex-start;flex-direction:column;gap:12px}.leave-status{justify-content:space-between;width:100%}.leave-types-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.add-leave{padding:15px}.add-leave h2{font-size:24px}.leave-types-grid{grid-template-columns:1fr}}.create-hr-page{background:var(--light);color:var(--dark);display:grid;min-height:calc(100vh - 80px);padding:40px 24px;place-items:center}.create-hr-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-xl);padding:32px;width:min(520px,100%)}.create-hr-card h2{font-size:26px;margin:0 0 8px}.create-hr-card p{color:var(--gray-600);margin:0 0 24px}.create-hr-card form{grid-gap:16px;display:grid;gap:16px}.create-hr-card label{grid-gap:8px;color:var(--gray-600);display:grid;font-size:13px;gap:8px;letter-spacing:1px;text-transform:uppercase}.create-hr-card input{background:#fff;border:1px solid var(--border);border-radius:10px;color:var(--dark);padding:12px 14px}.create-hr-card input:focus{border-color:var(--primary-light);box-shadow:0 0 0 3px #3b82f61f;outline:none}.create-hr-card button{background:var(--primary);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 16px}.status{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:13px;margin-top:8px;padding:10px 12px}.status-error{border-color:#fca5a5;color:#991b1b}.add-location-container{background:var(--light);min-height:100vh;padding:40px}.add-location-container h2{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin-bottom:30px}.location-form-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:40px;padding:40px}.location-form{display:flex;flex-direction:column;gap:20px}.form-section{border-bottom:1px solid var(--border);margin-bottom:35px;padding-bottom:35px}.form-section:last-of-type{border-bottom:none}.form-section h3{border-bottom:1px solid var(--border);color:var(--dark);font-size:18px;font-weight:700;margin-bottom:20px;padding-bottom:10px}.form-row{grid-gap:24px;gap:24px;margin-bottom:24px}.form-actions{margin-top:30px}.submit-btn{background:var(--primary);box-shadow:var(--shadow-md);transition:all .3s ease}.submit-btn:hover{background:var(--primary-dark);box-shadow:var(--shadow-lg)}.map-preview{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-sm);overflow:hidden}.map-preview-header{background:var(--surface);border-bottom:1px solid var(--border);color:var(--gray-600);font-size:12px;font-weight:600;padding:10px 14px}.map-preview iframe{border:0;display:block;height:220px;width:100%}.location-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-top:50px;padding:30px}.locations-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.location-list-section h2{color:var(--dark);font-size:24px;font-weight:700;margin:0}.location-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));max-height:600px;overflow-y:auto}.location-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .3s ease}.location-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}.card-header{padding:12px 14px}.card-header h3{font-size:14px}.card-body{font-size:13px;padding:12px 14px}@media (max-width:768px){.add-location-container{padding:20px}.add-location-container h2{font-size:24px;margin-bottom:20px}.location-form-section{padding:20px}.form-row{grid-template-columns:1fr}.locations-header{align-items:flex-start;flex-direction:column;gap:15px}.location-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.submit-btn{width:100%}}@media (max-width:480px){.location-cards{grid-template-columns:1fr}}.add-branch-container{background:var(--light);min-height:100vh;padding:40px}.branch-header{border-bottom:1px solid var(--border);margin-bottom:30px;padding-bottom:20px}.branch-header h1{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.branch-header p{color:var(--gray-600);font-size:14px;margin:0}.branch-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.branch-form-section,.branch-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:40px}.branch-form{display:flex;flex-direction:column;gap:20px}.branch-list-section h2{color:var(--dark);font-size:20px;font-weight:600;margin:0 0 20px}.branch-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr;max-height:600px;overflow-y:auto}.branch-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .3s ease}.branch-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}.location-badge{background:#dbeafe;border-radius:20px;color:#1d4ed8;font-size:12px;font-weight:600;padding:4px 12px}@media (max-width:1024px){.branch-content{grid-template-columns:1fr}}@media (max-width:768px){.add-branch-container{padding:20px}.form-row{grid-template-columns:1fr}.branch-header h1{font-size:24px}}.add-designation-container{background:var(--light);min-height:100vh;padding:40px}.designation-header{border-bottom:1px solid var(--border);margin-bottom:30px;padding-bottom:20px}.designation-header h1{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.designation-header p{color:var(--gray-600);font-size:14px;margin:0}.designation-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.designation-form-section,.designation-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:40px}.designation-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-template-columns:1fr 1fr}.designation-list-section h2{color:var(--dark);font-size:20px;font-weight:600;margin:0 0 20px}.designation-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr;max-height:600px;overflow-y:auto}.designation-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .3s ease}.designation-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}.level-badge{background:#d1fae5;border-radius:20px;color:#065f46;font-size:12px;font-weight:600;padding:4px 12px}@media (max-width:1024px){.designation-content{grid-template-columns:1fr}}@media (max-width:768px){.add-designation-container{padding:20px}.form-row{grid-template-columns:1fr}.designation-header h1{font-size:24px}}.add-shifts-container{background:var(--light);min-height:100vh;padding:40px}.shifts-header{border-bottom:1px solid var(--border);margin-bottom:30px;padding-bottom:20px}.shifts-header h1{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.shifts-header p{color:var(--gray-600);font-size:14px;margin:0}.shifts-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.shifts-form-section,.shifts-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:40px}.shifts-form{display:flex;flex-direction:column;gap:16px}.form-group{margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);font-family:Inter,sans-serif;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-light)}.form-row{grid-template-columns:1fr 1fr 1fr}.days-checkbox-group{grid-gap:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding:12px}.checkbox-label{align-items:center;color:var(--gray-600);cursor:pointer;display:flex;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{accent-color:var(--primary-light);cursor:pointer;height:18px;width:18px}.btn-submit{margin-top:14px}.shifts-list-section h2{color:var(--dark);font-size:20px;font-weight:600;margin:0 0 20px}.shifts-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr;max-height:600px;overflow-y:auto}.shift-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .3s ease}.shift-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}.time-badge{background:#fef3c7;border-radius:20px;color:#92400e;font-size:12px;font-weight:600;padding:4px 12px}@media (max-width:1024px){.shifts-content{grid-template-columns:1fr}}@media (max-width:768px){.add-shifts-container{padding:20px}.days-checkbox-group,.form-row{grid-template-columns:1fr}.shifts-header h1{font-size:24px}}.employee-create{background:#e9eef6;min-height:100vh;padding:40px;width:100%}.employee-create h2{color:#f8fafc;font-size:26px;font-weight:700;letter-spacing:-.3px;margin-bottom:6px}.employee-page-header{align-items:flex-start;background:linear-gradient(135deg,#1e3a5f,#2e4f7b 60%,#365a8d);border-bottom:1px solid #ffffff26;box-shadow:0 12px 24px #0f172a33;display:flex;gap:16px;justify-content:space-between;margin:-40px -40px 24px;padding:22px 32px}.page-subtitle{color:#f8fafcb8;font-size:12px}.success-message{animation:slideDown .3s ease;background:#ecfdf3;border:1px solid #cde7da;border-left:4px solid #22c55e;border-radius:10px;box-shadow:0 6px 16px #0f172a0f;color:#0f5132;margin-bottom:25px;padding:16px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.employee-form{display:flex;flex-direction:column;gap:20px;margin-bottom:40px;width:100%}.section-card{background:#fff;border:1px solid #d6dee8;border-radius:16px;box-shadow:0 18px 32px #0f172a1f;padding:28px;width:100%}.section-header{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.section-header h3{color:#1f2937;font-size:16px;font-weight:700;margin:0}.section-hint{color:#6b7280;font-size:12px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.form-row.full-width{grid-template-columns:1fr}.form-group.full-width{grid-column:1/-1}.form-group label{color:#374151}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #d3dae3;border-radius:10px;font-family:inherit;font-size:14px;padding:12px 14px;transition:border .2s ease,box-shadow .2s ease,background .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#f8faff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61f;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group textarea{min-height:120px;resize:vertical}.image-preview{border:1px solid #d6dee8;border-radius:10px;margin-top:15px;max-width:200px;overflow:hidden}.image-preview img{display:block;height:auto;width:100%}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.submit-btn{background:#2f6b3b;border:none;border-radius:10px;box-shadow:0 10px 20px #2f6b3b40;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 32px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.submit-btn:hover{background:#275b31;box-shadow:0 12px 24px #2f6b3b4d;transform:translateY(-1px)}.submit-btn:active{transform:translateY(0)}.cancel-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:10px;box-shadow:0 6px 14px #0f172a14;color:#1f2937;cursor:pointer;font-size:15px;font-weight:600;padding:12px 32px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.cancel-btn:hover{background:#e5e7eb;box-shadow:0 10px 18px #0f172a1f;transform:translateY(-1px)}.cancel-btn:active{transform:translateY(0)}.employees-list-section{background:#fff;border:1px solid #d6dee8;border-radius:16px;box-shadow:0 18px 32px #0f172a1f;margin-top:50px;padding:30px;width:100%}.employees-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.employees-list-section h2{color:#1f2937;font-size:24px;font-weight:700;margin:0}.btn-add-new{align-items:center;background:#1e293b;border:none;border-radius:25px;box-shadow:0 10px 18px #0f172a33;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 24px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-add-new:hover{background:#111827;box-shadow:0 12px 24px #0f172a3d;transform:translateY(-1px)}.btn-add-new:active{transform:translateY(0)}.employees-table-wrapper{overflow-x:auto}.employees-table{border-collapse:collapse;width:100%}.employees-table thead{background:#f3f6fb;border-bottom:1px solid #e5e7eb}.employees-table th{color:#1f2937;font-size:14px;font-weight:700;letter-spacing:.3px;padding:18px 20px;text-align:left}.employees-table tbody tr{border-bottom:1px solid #e5e7eb;transition:all .2s ease}.employees-table tbody tr:hover{background:#f8fafc}.employees-table td{color:#4b5563;font-size:14px;padding:18px 20px}.emp-name{color:#1f2937;font-weight:600}.emp-email{color:#2563eb}.emp-phone{color:#6b7280}.emp-actions{gap:10px}.action-btn,.emp-actions{align-items:center;display:flex;justify-content:center}.action-btn{border:none;border-radius:10px;box-shadow:0 6px 14px #0f172a1f;cursor:pointer;font-size:18px;height:40px;transition:transform .2s ease,box-shadow .2s ease;width:40px}.edit-btn{background:#f3f4f6;color:#1f2937}.edit-btn:hover{background:#e5e7eb;box-shadow:0 10px 18px #0f172a29;transform:translateY(-1px)}.edit-btn:active{transform:translateY(0)}.delete-btn{background:#fee2e2;color:#b91c1c}.delete-btn:hover{background:#fecaca;box-shadow:0 10px 18px #b91c1c40;transform:translateY(-1px)}.delete-btn:active{transform:translateY(0)}@media (max-width:768px){.employee-create{padding:20px}.employee-create h2{font-size:24px;margin-bottom:20px}.employee-form{padding:20px}.employees-grid,.form-row{grid-template-columns:1fr}.form-section{margin-bottom:20px;padding-bottom:20px}.employees-header{align-items:flex-start;flex-direction:column;gap:15px}.employees-table{font-size:12px}.employees-table td,.employees-table th{padding:12px 15px}.action-btn{font-size:14px;height:32px;width:32px}}.submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.form-row{gap:20px;grid-template-columns:1fr}.employee-form{padding:30px 20px}.employee-create{margin-left:80px;padding:20px}}@media (max-width:480px){.employee-create{padding:15px}.employee-create h2{font-size:24px;margin-bottom:20px}.employee-form{padding:20px}}.error-message{background:#fef2f2;border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:10px;box-shadow:0 6px 16px #b91c1c1f;color:#991b1b;margin-bottom:25px;padding:16px 20px}.add-grades{background:var(--light);min-height:100vh;padding:40px}.grades-form-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:40px;padding:40px}.grades-form{display:flex;flex-direction:column;gap:20px}.grades-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-top:50px;padding:30px}.grades-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.grades-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr;max-height:600px;overflow-y:auto}.grade-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .3s ease}.grade-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}@media (max-width:768px){.add-grades,.grades-form-section{padding:20px}.grades-header{align-items:flex-start;flex-direction:column;gap:15px}}.add-leave-type{background:var(--light);min-height:100vh;padding:40px}.leave-type-form-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:40px;padding:40px}.leave-type-form{display:flex;flex-direction:column;gap:20px}.grade-options{display:flex;flex-wrap:wrap;gap:12px}.grade-option{align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;color:var(--gray-600);display:flex;font-weight:600;gap:8px;padding:8px 12px}.grade-option input{accent-color:var(--primary-light)}.leave-matrix-item{grid-template-columns:1fr 120px auto}.leave-matrix-item input[type=number],.leave-matrix-item input[type=text]{border:1px solid var(--border);border-radius:8px;padding:10px}.btn-add{background:#eef2ff;border:1px dashed var(--primary-light);border-radius:8px;color:var(--primary);cursor:pointer;font-weight:600;margin-top:12px;padding:10px 16px}.btn-add:hover{background:#e0e7ff}.leave-type-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-top:50px;padding:30px}.leave-type-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.leave-type-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr;max-height:600px;overflow-y:auto}.leave-type-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .3s ease}.leave-type-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}@media (max-width:768px){.add-leave-type,.leave-type-form-section{padding:20px}.leave-type-header{align-items:flex-start;flex-direction:column;gap:15px}.leave-matrix-item{grid-template-columns:1fr}}.add-department-container{background:var(--light);min-height:100vh;padding:40px}.department-header{border-bottom:1px solid var(--border);margin-bottom:30px;padding-bottom:20px}.department-header h1{color:var(--dark);font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.department-header p{color:var(--gray-600);font-size:14px;margin:0}.department-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.department-form-section,.department-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:40px}.department-form{gap:20px}.department-form,.form-group{display:flex;flex-direction:column}.form-group label{color:var(--gray-600);font-size:14px;font-weight:600;letter-spacing:-.2px;margin-bottom:10px}.form-group input,.form-group select{background:#fff;border:1px solid var(--border);border-radius:10px;font-family:Inter,sans-serif;font-size:14px;padding:12px 14px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{background:#f8faff;border-color:var(--primary-light);box-shadow:0 0 0 4px #3b82f61f;outline:none}.form-group select:disabled{background-color:var(--gray-100);color:var(--gray-400);cursor:not-allowed}.btn-submit{background:var(--primary);border:none;border-radius:10px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-top:10px;padding:12px 32px;transition:all .3s ease}.btn-submit:hover{background:var(--primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.department-list-section h2{color:var(--dark);font-size:20px;font-weight:600;margin:0 0 20px}.no-data{color:var(--gray-400);font-size:14px;padding:40px 20px;text-align:center}.department-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr;max-height:600px;overflow-y:auto}.department-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .3s ease}.department-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}.card-header{align-items:center;background:var(--surface-2);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:15px 20px}.card-header h3{color:var(--dark);font-size:16px;font-weight:600;margin:0}.card-body{color:var(--gray-600);font-size:14px;padding:15px 20px}.card-body p{line-height:1.5;margin:8px 0}.card-footer{border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;padding:15px 20px}.btn-delete,.btn-edit{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:all .2s ease}.btn-edit{background:var(--surface-2);color:var(--primary)}.btn-edit:hover{background:var(--gray-100);transform:translateY(-1px)}.btn-delete{background:#fee2e2;color:var(--danger)}.btn-delete:hover{background:#fecaca;transform:translateY(-1px)}@media (max-width:1024px){.department-content{grid-template-columns:1fr}}@media (max-width:768px){.add-department-container{padding:20px}.department-header h1{font-size:24px}}.grade-leave-matrix{background:var(--light);min-height:100vh;padding:40px}.matrix-page-header{align-items:flex-end;display:flex;gap:20px;justify-content:space-between;padding:12px 0 28px}.matrix-page-header h2{color:var(--dark);font-size:28px;letter-spacing:-.5px;margin:0 0 6px}.matrix-subtitle{color:var(--gray-600);font-size:14px;margin:0}.matrix-summary-pill{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;color:var(--dark);font-weight:600;padding:8px 14px}.matrix-form-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-bottom:40px;padding:40px}.matrix-form{gap:20px}.leave-matrix-list,.matrix-form{display:flex;flex-direction:column}.leave-matrix-list{gap:12px}.leave-matrix-item{grid-gap:12px;align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;display:grid;gap:12px;grid-template-columns:1fr 120px;padding:10px 12px}.leave-matrix-item input[type=number]{border:1px solid var(--border);border-radius:8px;padding:10px}.leave-toggle{align-items:center;color:var(--gray-600);display:flex;font-weight:600;gap:10px}.leave-toggle input{accent-color:var(--primary-light)}.matrix-list-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);margin-top:50px;padding:30px}.matrix-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.matrix-cards{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-height:600px;overflow-y:auto}.matrix-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.matrix-card:hover{border-color:var(--gray-300);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.matrix-card .card-header{background:var(--surface-2);border-bottom:1px solid var(--border);padding:16px 18px}.matrix-card .card-header h3{color:var(--dark);font-size:18px;margin:0}.matrix-card .card-body{padding:16px 18px}.matrix-leave-list{grid-gap:8px;color:var(--dark);display:grid;gap:8px;list-style:none;margin:0;padding:0}.matrix-leave-list li{align-items:center;background:var(--surface-2);border-radius:10px;color:var(--dark);display:flex;font-weight:600;justify-content:space-between;padding:8px 12px}.matrix-json{background:var(--dark);border-top:1px solid #0b1220;color:#e2e8f0;font-size:12px;margin:0;overflow-x:auto;padding:12px 16px}@media (max-width:768px){.grade-leave-matrix{padding:20px}.matrix-page-header{align-items:flex-start;flex-direction:column}.matrix-form-section{padding:20px}.leave-matrix-item{grid-template-columns:1fr}}:root{--dash-bg:var(--light);--dash-card:var(--surface);--dash-border:var(--border);--dash-text:var(--dark);--dash-muted:var(--gray-600);--dash-accent:var(--primary);--dash-accent-2:var(--accent);--dash-accent-3:var(--primary-light);--dash-accent-4:var(--secondary)}.dashboard-page{background:var(--light);background:var(--dash-bg);color:var(--dark);color:var(--dash-text);min-height:100vh;padding:28px 32px 60px}.dashboard-error,.dashboard-loading{background:var(--surface);background:var(--dash-card);border:1px solid var(--dash-border);border-radius:12px;font-size:14px;margin-bottom:16px;padding:12px 16px}.dashboard-error{border-color:#ea580c66;color:#b45309}.dashboard-hero{align-items:center;animation:fadeIn .6s ease-out;background:linear-gradient(120deg,#0f766e1f,#2563eb14);border:1px solid var(--dash-border);border-radius:20px;box-shadow:0 10px 24px #0f172a0f;display:flex;gap:24px;justify-content:space-between;padding:28px 32px}.dashboard-eyebrow{color:var(--gray-600);color:var(--dash-muted);font-size:12px;font-weight:700;letter-spacing:.2em;margin-bottom:8px;text-transform:uppercase}.dashboard-hero h1{font-size:32px;margin-bottom:8px}.dashboard-subtitle{color:var(--gray-600);color:var(--dash-muted);line-height:1.5;max-width:480px}.dashboard-actions{display:flex;flex-wrap:wrap;gap:12px}.button{border:1px solid #0000;border-radius:999px;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .2s ease}.button.primary{background:var(--primary);background:var(--dash-accent);box-shadow:0 10px 20px #0f766e4d;color:#fff}.button.primary:hover{transform:translateY(-1px)}.button.ghost{background:#0000;border-color:#0f766e66;color:var(--primary);color:var(--dash-accent)}.dashboard-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:24px}.stat-card{animation:riseIn .6s ease-out;background:var(--surface);background:var(--dash-card);border:1px solid var(--dash-border);border-radius:16px;box-shadow:0 8px 20px #0f172a0a;padding:18px 20px}.stat-label{color:var(--gray-600);color:var(--dash-muted);font-size:13px}.stat-value{font-size:24px;font-weight:700;margin:8px 0}.stat-meta{color:var(--gray-600);color:var(--dash-muted);font-size:12px}.dashboard-analytics{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.dashboard-analytics--secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.panel-card{background:var(--surface);background:var(--dash-card);border:1px solid var(--dash-border);border-radius:18px;display:flex;flex-direction:column;gap:16px;min-height:260px;padding:20px 24px}.panel-header{justify-content:space-between}.panel-controls,.panel-header{align-items:center;display:flex;gap:12px}.filter-toggle{background:#0f172a0f;border-radius:999px;display:inline-flex;gap:4px;padding:4px}.toggle-btn{background:#0000;border:none;border-radius:999px;color:var(--gray-600);color:var(--dash-muted);cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s ease}.toggle-btn.active{background:var(--surface);background:var(--dash-card);box-shadow:0 6px 14px #0f172a14;color:var(--dark);color:var(--dash-text)}.panel-header h3{font-size:18px;margin-bottom:4px}.panel-header p{color:var(--gray-600);color:var(--dash-muted);font-size:13px}.panel-chip{background:#2563eb1a;border-radius:999px;color:var(--primary-light);color:var(--dash-accent-3);font-size:12px;padding:6px 12px}.line-chart{background:linear-gradient(180deg,#0f766e14,#0f766e00);border:1px dashed #0f766e40;border-radius:16px;flex:1 1;min-height:260px;overflow:hidden;position:relative}.line-chart--scroll{overflow-x:auto;padding-bottom:8px}.line-chart-y-axis{bottom:36px;color:var(--gray-600);color:var(--dash-muted);display:flex;flex-direction:column;font-size:11px;justify-content:space-between;left:10px;pointer-events:none;position:absolute;top:18px;z-index:1}.line-chart-grid{background-image:linear-gradient(#0f172a0f 1px,#0000 0),linear-gradient(90deg,#0f172a0f 1px,#0000 0);background-size:40px 40px;inset:12px 12px 36px 40px;position:absolute}.line-chart-path{background:linear-gradient(120deg,#2563eb99,#0f766e80);-webkit-clip-path:polygon(0 80%,15% 55%,32% 60%,48% 35%,60% 48%,75% 20%,100% 40%,100% 100%,0 100%);clip-path:polygon(0 80%,15% 55%,32% 60%,48% 35%,60% 48%,75% 20%,100% 40%,100% 100%,0 100%);opacity:.6}.line-chart-path,.line-chart-points{inset:24px 20px 48px 48px;position:absolute}.line-chart-points{grid-gap:6px;align-items:end;display:grid;gap:6px;grid-template-columns:repeat(7,1fr);padding-bottom:12px}.line-chart-points span{background:var(--primary-light);background:var(--dash-accent-3);border-radius:50%;box-shadow:0 0 0 4px #2563eb26;height:10px;justify-self:center;width:10px}.line-chart-points span:hover{transform:scale(1.15)}.line-chart-points span:first-child{margin-bottom:12px}.line-chart-points span:nth-child(2){margin-bottom:36px}.line-chart-points span:nth-child(3){margin-bottom:30px}.line-chart-points span:nth-child(4){margin-bottom:58px}.line-chart-points span:nth-child(5){margin-bottom:42px}.line-chart-points span:nth-child(6){margin-bottom:72px}.line-chart-points span:nth-child(7){margin-bottom:50px}.line-chart-labels{bottom:10px;color:var(--gray-600);color:var(--dash-muted);display:grid;font-size:11px;grid-template-columns:repeat(7,1fr);left:48px;position:absolute;right:20px;text-align:center}.chart-tooltip{background:var(--dark);background:var(--dash-text);border-radius:8px;box-shadow:0 8px 20px #0f172a2e;color:#fff;font-size:12px;padding:6px 10px;pointer-events:none;position:absolute;transform:translate(-50%,-100%);white-space:nowrap;z-index:2}.chart-tooltip:after{border-color:var(--dash-text) #0000 #0000;border-style:solid;border-width:6px 6px 0;bottom:-6px;content:"";left:50%;position:absolute;transform:translateX(-50%)}.donut-wrap{align-items:center;display:flex;flex:1 1;gap:20px}.attendance-map{background:radial-gradient(circle at top right,#38bdf81f,#0000 55%),linear-gradient(135deg,#0f172a0f,#0f766e14);border:1px dashed #2563eb40;border-radius:16px;flex:1 1;min-height:260px;overflow:hidden;position:relative}.map-canvas{height:100%;width:100%}.map-canvas,.map-empty{inset:0;position:absolute}.map-empty{align-items:center;color:var(--gray-600);color:var(--dash-muted);display:flex;font-size:13px;justify-content:center}.bar-list{display:flex;flex-direction:column;gap:12px}.bar-row{grid-gap:10px;align-items:center;color:var(--gray-600);color:var(--dash-muted);display:grid;font-size:13px;gap:10px;grid-template-columns:90px 1fr 40px}.bar-label{color:var(--dark);color:var(--dash-text);font-weight:600}.bar-track{background:#0f172a0f;border-radius:999px;height:10px;overflow:hidden}.bar-fill{border-radius:999px;height:100%}.bar-fill,.bar-fill.accent-1{background:var(--primary);background:var(--dash-accent)}.bar-fill.accent-2{background:var(--accent);background:var(--dash-accent-2)}.bar-fill.accent-3{background:var(--primary-light);background:var(--dash-accent-3)}.bar-fill.accent-4{background:var(--secondary);background:var(--dash-accent-4)}.bar-value{color:var(--dark);color:var(--dash-text);font-weight:600;text-align:right}.empty-state{color:var(--gray-600);color:var(--dash-muted);font-size:13px;padding:8px 0}.donut-chart{background:conic-gradient(var(--primary) 0deg 140deg,var(--accent) 140deg 240deg,var(--primary-light) 240deg 1turn);background:conic-gradient(var(--dash-accent) 0deg 140deg,var(--dash-accent-2) 140deg 240deg,var(--dash-accent-3) 240deg 1turn);border-radius:50%;box-shadow:0 12px 24px #0f172a14;height:140px;position:relative;width:140px}.donut-chart:after{background:var(--surface);background:var(--dash-card);border:1px solid var(--dash-border);border-radius:50%;content:"";inset:22px;position:absolute}.donut-legend{color:var(--gray-600);color:var(--dash-muted);display:flex;flex-direction:column;font-size:13px;gap:10px}.legend-row{align-items:center;display:flex;gap:8px}.legend-dot{border-radius:50%;height:10px;width:10px}.legend-dot.accent-1{background:var(--primary);background:var(--dash-accent)}.legend-dot.accent-2{background:var(--accent);background:var(--dash-accent-2)}.legend-dot.accent-3{background:var(--primary-light);background:var(--dash-accent-3)}.dashboard-links{display:flex;flex-direction:column;gap:20px;margin-top:32px}.section-header h2{font-size:22px}.section-header p{color:var(--gray-600);color:var(--dash-muted);margin-top:6px}.link-section h3{color:var(--dark);color:var(--dash-text);font-size:16px;margin-bottom:12px}.link-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.link-card{align-items:center;background:var(--surface);background:var(--dash-card);border:1px solid var(--dash-border);border-radius:14px;color:inherit;display:flex;justify-content:space-between;padding:14px 16px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.link-card:hover{box-shadow:0 10px 20px #0f172a14;transform:translateY(-2px)}.link-title{font-weight:600}.link-description{color:var(--gray-600);color:var(--dash-muted);font-size:12px;margin-top:4px}.link-arrow{color:var(--primary-light);color:var(--dash-accent-3);font-size:18px;margin-left:12px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1100px){.dashboard-hero{align-items:flex-start;flex-direction:column}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-analytics,.dashboard-analytics--secondary{grid-template-columns:1fr}}@media (max-width:720px){.dashboard-page{padding:20px}.dashboard-stats{grid-template-columns:1fr}.donut-wrap{align-items:flex-start;flex-direction:column}}.payroll-page{padding:24px}.payroll-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm);margin-bottom:20px;padding:20px}.payroll-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.payroll-form .form-group{display:flex;flex-direction:column;gap:8px}.payroll-form label{color:var(--gray-600);font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.payroll-form .helper-text{color:var(--gray-400);font-size:12px}.payroll-form .form-actions{display:flex;justify-content:flex-end;margin-top:16px}.payroll-result{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-md);padding:24px}.result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.result-header h3{color:var(--dark);font-size:18px;font-weight:700;margin:0}.result-header p{color:var(--gray-500);font-size:12px;margin:4px 0 0}.result-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.result-card{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:16px}.result-card h4{color:var(--dark);font-size:14px;font-weight:700;margin:0 0 10px}.result-card p{color:var(--gray-600);font-size:13px;margin:0 0 6px}.result-card .muted{color:var(--gray-400);font-size:12px}.result-split{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.result-card ul{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:0;padding:0}.result-card li{color:var(--gray-600);display:flex;font-size:13px;justify-content:space-between}.result-card li.total{color:var(--dark);font-weight:700}.result-card.highlight{background:#10b98114;border-color:#10b98159}.net-salary{color:var(--success);font-size:26px;font-weight:700;margin:8px 0 0}.payroll-history{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm);margin-top:24px;padding:20px}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.history-header h3{color:var(--dark);font-size:18px;font-weight:700;margin:0}.history-header p{color:var(--gray-500);font-size:12px;margin:4px 0 0}.history-filters{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;margin-bottom:16px;padding:16px}.history-filters .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.history-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:12px}.ghost-btn{background:#0000;border:1px solid var(--border);border-radius:10px;color:var(--gray-600);padding:10px 16px}.ghost-btn:hover{background:var(--surface)}.payroll-table{border-collapse:collapse;width:100%}@media (max-width:1024px){.payroll-form .form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.result-split{grid-template-columns:1fr}.history-filters .form-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.history-filters .form-row,.payroll-form .form-row,.result-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.d9b26225.css.map*/