@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";:root{--sidebar-bg:#111827;--sidebar-text:#9ca3af;--sidebar-active-bg:#4f46e5;--main-bg:#f9fafb;--card-bg:#fff;--text-primary:#111827;--text-secondary:#6b7280;--border-color:#e5e7eb}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--main-bg);color:var(--text-primary);font-family:Plus Jakarta Sans,sans-serif}.layout{min-height:100vh;display:flex}.sidebar{background-color:var(--sidebar-bg);color:#fff;z-index:1000;flex-direction:column;width:260px;height:100vh;padding:1.5rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar nav.flex-1{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1;overflow:hidden auto}.sidebar nav.flex-1::-webkit-scrollbar{width:4px}.sidebar nav.flex-1::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.sidebar.collapsed{width:80px;padding:1.5rem .75rem}.logo-section{white-space:nowrap;align-items:center;gap:.75rem;margin-bottom:2rem;padding:.5rem;display:flex;overflow:hidden}.sidebar.collapsed .logo-section span{display:none}.logo-icon{background:#3b82f6;border-radius:8px;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;transition:all .3s;display:flex}.nav-item{color:var(--sidebar-text);cursor:pointer;border-radius:.75rem;align-items:center;gap:.75rem;margin-bottom:.25rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-item:hover{color:#fff;background:#ffffff0d}.nav-item.active{background:var(--sidebar-active-bg);color:#fff;box-shadow:0 4px 12px #4f46e54d}.nav-item .chevron{margin-left:auto;transition:transform .3s}.nav-item.open .chevron{transform:rotate(180deg)}.submenu{border-left:1px solid #ffffff1a;flex-direction:column;gap:.25rem;margin-bottom:.5rem;margin-left:1rem;padding-left:.5rem;display:flex}.submenu-item{color:var(--sidebar-text);cursor:pointer;border-radius:.5rem;align-items:center;gap:.75rem;padding:.6rem .75rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.submenu-item:hover{color:#fff;background:#ffffff14}.submenu-item.active{color:#fff;background:#ffffff26;border-left:2px solid #fff;margin-left:-1px;font-weight:700}.submenu-item .sub-icon{opacity:.6}.submenu-item.active .sub-icon{opacity:1}.sidebar-footer{margin-top:auto}.logout-btn{color:#f87171;cursor:pointer;background:#271c24;border:none;border-radius:.75rem;align-items:center;gap:.75rem;width:100%;padding:.75rem;font-weight:600;transition:all .2s;display:flex}.logout-btn:hover{background:#3a222e}.sidebar.collapsed .nav-item span,.sidebar.collapsed .submenu,.sidebar.collapsed .logout-btn span,.sidebar.collapsed .nav-item .chevron{display:none}.sidebar.collapsed .nav-item{justify-content:center;padding:.75rem}.sidebar-collapse-btn{color:#64748b;cursor:pointer;z-index:1100;background:#fff;border:1.5px solid #e2e8f0;border-radius:50%;outline:none;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:left .3s cubic-bezier(.4,0,.2,1),box-shadow .2s,color .2s,background .2s;display:flex;position:fixed;top:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0000001f,0 0 0 1px #0000000a}.sidebar-collapse-btn:hover{color:#1e293b;background:#f8fafc;box-shadow:0 4px 16px #00000029}.main-content{flex:1;margin-left:260px;padding:2rem 3rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.main-content.collapsed{margin-left:80px}.header{justify-content:space-between;align-items:flex-start;margin-bottom:2.5rem;display:flex}.header-title h1{color:#111827;margin-bottom:.25rem;font-size:1.875rem;font-weight:800}.header-title p{color:var(--text-secondary);font-size:.875rem}.notification-bell{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;padding:.75rem;display:flex;box-shadow:0 1px 3px #0000001a}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.stat-card{cursor:pointer;backface-visibility:hidden;background:#fff;border:1px solid #f1f5f9;border-radius:1.5rem;flex-direction:column;justify-content:space-between;min-height:180px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible;box-shadow:0 4px 6px -1px #0000000d}.stat-card:hover{outline-offset:-2px;z-index:10;border-color:#0000;outline:2px solid #1e1b4b;transform:scale(1.02);box-shadow:0 20px 25px -5px #0000001a}.premium-card{backface-visibility:hidden;background:#fff;border:1px solid #f1f5f9;border-radius:1.5rem;min-height:100px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 4px 6px -1px #0000000d}.premium-card:hover{outline-offset:-2px;z-index:10;border-color:#0000;outline:2px solid #1e1b4b;transform:scale(1.02);box-shadow:0 20px 25px -5px #0000001a}.staff-type-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;cursor:pointer;color:#fff;background:#ffffff26;border:1px solid #fff3;border-radius:1.25rem;min-width:160px;padding:1.25rem 1.75rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.staff-type-card:hover{background:#ffffff47;border-color:#ffffff80;transform:translateY(-4px)scale(1.04);box-shadow:0 16px 32px #0003}.staff-type-card.active{outline-offset:-2px;background:#ffffff40;outline:2px solid #fff}.staff-stat-item{cursor:default;border-radius:1rem;align-items:center;gap:1rem;padding:1.25rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.staff-stat-item:hover{filter:brightness(.97);transform:translateY(-3px)scale(1.03);box-shadow:0 12px 24px #0000001a}.staff-toggle-btn{cursor:pointer;border:none;border-radius:8px;padding:6px 14px;font-size:.8rem;font-weight:700;transition:all .2s}.staff-toggle-btn:not(.active):hover{color:#1e293b!important;background:#e2e8f0!important}.att-hero-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;color:#fff;cursor:default;background:#ffffff2e;border:1px solid #ffffff40;border-radius:1.1rem;min-width:130px;padding:1.1rem 1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.att-hero-card:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-4px)scale(1.05);box-shadow:0 14px 28px #0000002e}.att-btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border:none;border-radius:.75rem;align-items:center;gap:6px;height:38px;padding:0 1.1rem;font-size:.82rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 12px #6366f140}.att-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #6366f159}.att-btn-primary:active{transform:scale(.97)}.att-btn-secondary{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:.75rem;justify-content:center;align-items:center;width:38px;height:38px;font-weight:700;transition:all .2s;display:flex}.att-btn-secondary:hover{color:#1e293b;background:#e2e8f0;transform:rotate(-30deg)}.att-chart-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.att-chart-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px #00000014}.stat-card:before,.stat-card:after,.premium-card:before,.premium-card:after{display:none!important}.card-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.card-icon{border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.card-menu{color:#d1d5db;cursor:pointer}.card-value{color:#111827;margin-bottom:.25rem;font-size:2rem;font-weight:800}.card-label{color:#6b7280;font-size:.75rem;font-weight:600}.bg-purple{color:#8b5cf6;background:#f5f3ff}.bg-blue{color:#3b82f6;background:#eff6ff}.bg-red{color:#ef4444;background:#fef2f2}.bg-green{color:#22c55e;background:#f0fdf4}.bg-indigo{color:#6366f1;background:#eef2ff}.bg-teal{color:#14b8a6;background:#f0fdfa}@media (width<=1024px){.main-content{padding:1.5rem}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (width<=768px){.sidebar{z-index:2000;padding:1.5rem .75rem 1rem;transform:translate(-100%);width:270px!important}.sidebar.mobile-open{transform:translate(0)}.main-content{padding:calc(56px + 1rem) 1rem 1rem;margin-left:0!important}.header{flex-direction:column;gap:.75rem}.header-title h1{font-size:1.25rem}.sidebar-collapse-btn{display:none}.employment-page div[style*="grid-template-columns: 2fr 1fr"]{grid-template-columns:1fr!important}.employment-page div[style*="display: flex; gap: 1.5rem"]{flex-direction:column}.stats-grid{grid-template-columns:repeat(2,1fr)!important}}.login-container{background:#f0f4f8;justify-content:center;align-items:center;min-height:100vh;padding:2rem;font-family:Inter,sans-serif;display:flex}.login-card{text-align:center;background:#fff;border-radius:1.5rem;width:100%;max-width:440px;padding:3rem 2.5rem;box-shadow:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000005}.login-header{margin-bottom:2.5rem}.login-logo{justify-content:center;margin-bottom:1.5rem;display:flex}.university-name{color:#1f2937;letter-spacing:.025em;margin-bottom:.25rem;font-size:1.125rem;font-weight:800}.system-title{color:#6b7280;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:700}.login-form{text-align:left}.form-group{margin-bottom:1.5rem}.form-group label{color:#374151;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.input-icon{color:#9ca3af;position:absolute;left:1rem}.input-wrapper input{color:#111827;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;width:100%;padding:.75rem 1rem .75rem 2.75rem;font-size:.9375rem;transition:all .2s}.input-wrapper input:focus{background:#fff;border-color:#111827;outline:none;box-shadow:0 0 0 4px #1118270d}.login-error{color:#dc2626;text-align:center;background:#fef2f2;border-radius:.75rem;margin-bottom:1.5rem;padding:.75rem;font-size:.875rem;font-weight:600}.login-button{color:#fff;cursor:pointer;background:#111827;border:none;border-radius:.75rem;justify-content:center;align-items:center;width:100%;padding:.875rem;font-size:1rem;font-weight:700;transition:all .2s;display:flex}.login-button:hover{background:#1f2937;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.login-button:active{transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-footer{color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-top:2.5rem;font-size:.6875rem;font-weight:600}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.mobile-close-btn{color:#ffffffd9;cursor:pointer;z-index:10;background:#ffffff1a;border:1px solid #ffffff26;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;transition:background .2s;display:none;position:absolute;top:1rem;right:1rem}.mobile-close-btn:hover{background:#ffffff2e}.mobile-topbar{display:none}@media (width<=768px){.mobile-close-btn{display:flex}.mobile-topbar{background:var(--sidebar-bg);z-index:999;align-items:center;gap:.75rem;height:56px;padding:0 1rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 12px #00000040}.topbar-hamburger{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff1f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:background .2s;display:flex}.topbar-hamburger:hover{background:#ffffff2e}.topbar-logo{background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;padding:3px;display:flex;overflow:hidden;box-shadow:0 2px 6px #00000026}.topbar-logo img{object-fit:contain;width:100%;height:100%}.topbar-name{color:#fff;-webkit-line-clamp:2;opacity:.9;-webkit-box-orient:vertical;flex:1;font-size:.72rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}}.login-error{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;margin-bottom:1rem;padding:10px;font-size:.875rem}.password-toggle:hover{color:#3b82f6!important}.input-wrapper{align-items:center;display:flex;position:relative}.dash-card{cursor:default;transition:transform .22s,box-shadow .22s}.dash-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #00000017!important}
