:root{--color-primary: #1B2A4A;--color-primary-light: #2D4470;--color-primary-dark: #0F1B33;--color-accent: #C17F3E;--color-accent-light: #D4A06A;--color-accent-dark: #9A6530;--color-success: #2D8B57;--color-success-light: #E8F5EE;--color-warning: #E5A100;--color-warning-light: #FFF8E6;--color-danger: #C0392B;--color-danger-light: #FDECEA;--color-neutral-50: #FAFAF8;--color-neutral-100: #F2F1EE;--color-neutral-200: #E5E3DE;--color-neutral-300: #D1CEC7;--color-neutral-400: #A8A49B;--color-neutral-500: #7A756B;--color-neutral-600: #5C584F;--color-neutral-700: #3D3A33;--color-neutral-800: #2A2722;--color-neutral-900: #1A1814;--surface-body: #F5F4F1;--surface-card: #FFFFFF;--surface-sidebar: var(--color-primary);--surface-header: #FFFFFF;--shadow-sm: 0 1px 3px rgba(27, 42, 74, .06);--shadow-md: 0 4px 12px rgba(27, 42, 74, .08);--shadow-lg: 0 8px 30px rgba(27, 42, 74, .12);--font-display: "DM Serif Display", Georgia, serif;--font-body: "IBM Plex Sans", system-ui, sans-serif;--transition-fast: .15s ease;--transition-base: .25s ease}body{font-family:var(--font-body);background-color:var(--surface-body);color:var(--color-neutral-800)}h1,h2,h3,.display-heading{font-family:var(--font-display)}.admin-sidebar{width:260px;height:100vh;background:var(--surface-sidebar);position:fixed;top:0;left:0;z-index:1030;transition:width var(--transition-base);overflow-y:auto;overflow-x:hidden;padding-bottom:2rem;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.admin-sidebar::-webkit-scrollbar{width:5px}.admin-sidebar::-webkit-scrollbar-track{background:transparent}.admin-sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.admin-sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff59}.admin-sidebar.collapsed{width:64px}.admin-sidebar.collapsed .sidebar-brand small,.admin-sidebar.collapsed .sidebar-section,.admin-sidebar.collapsed .nav-link span{display:none}.admin-sidebar.collapsed .sidebar-brand h5{font-size:0;overflow:hidden}.admin-sidebar.collapsed .sidebar-brand h5:first-letter{font-size:1.15rem}.admin-sidebar.collapsed .nav-link{padding:.6rem 0;text-align:center;border-left-width:0}.admin-sidebar.collapsed .nav-link i{margin-right:0;font-size:1.1rem}.admin-sidebar .sidebar-brand{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-sidebar .sidebar-brand h5{color:var(--color-accent-light);font-family:var(--font-display);margin:0;font-size:1.15rem}.admin-sidebar .nav-link{color:#ffffffb3;padding:.6rem 1.5rem;font-size:.875rem;font-weight:500;transition:all var(--transition-fast);border-left:3px solid transparent}.admin-sidebar .nav-link:hover{color:#fff;background:#ffffff0d}.admin-sidebar .nav-link.active{color:var(--color-accent-light);background:#ffffff14;border-left-color:var(--color-accent)}.admin-sidebar .nav-link i{width:1.25rem;margin-right:.75rem;text-align:center}.admin-sidebar .sidebar-section{padding:.75rem 1.5rem .25rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffff59;font-weight:600}.sidebar-submenu-toggle{display:flex;align-items:center}.sidebar-submenu-arrow{font-size:.65rem;transition:transform .2s ease;width:auto!important;margin-right:0!important}.sidebar-submenu-toggle[aria-expanded=true] .sidebar-submenu-arrow{transform:rotate(180deg)}.admin-sidebar .sidebar-submenu{background:#00000026}.admin-sidebar .sidebar-submenu .nav-link{padding:.4rem 1.5rem .4rem 2.75rem;font-size:.8rem;border-left:none}.admin-sidebar .sidebar-submenu .nav-link.active{color:var(--color-accent-light);background:#ffffff0f;border-left:none}.admin-sidebar.collapsed .sidebar-submenu,.admin-sidebar.collapsed .sidebar-submenu-arrow{display:none}.admin-content{margin-left:260px;min-height:100vh;transition:margin-left var(--transition-base)}body.sidebar-collapsed .admin-content{margin-left:64px}.admin-header{background:var(--surface-header);border-bottom:1px solid var(--color-neutral-200);padding:.75rem 1.5rem;box-shadow:var(--shadow-sm)}.sidebar-toggle{background:none;border:none;color:var(--color-neutral-500);font-size:1.2rem;padding:.25rem .5rem;cursor:pointer;border-radius:4px;transition:color var(--transition-fast),background var(--transition-fast)}.sidebar-toggle:hover{color:var(--color-primary);background:var(--color-neutral-100)}.admin-content .table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-neutral-500);white-space:nowrap;padding:.55rem .75rem;border-bottom:2px solid var(--color-neutral-200);background:var(--color-neutral-50)}.admin-content .table td{font-size:.84rem;padding:.5rem .75rem;vertical-align:middle;border-bottom-color:var(--color-neutral-100)}.admin-content .table tbody tr:hover{background-color:#1b2a4a05}.admin-content .dt-search{padding:.5rem .75rem}.admin-content .dt-search input{font-size:.84rem;border-radius:6px;border-color:var(--color-neutral-200);padding:.35rem .75rem;min-width:200px}.admin-content .dt-info{font-size:.78rem;color:var(--color-neutral-400);padding:.6rem 1rem}.admin-content .dt-paging{padding:.4rem 1rem .6rem}.admin-content .dt-paging .page-link{font-size:.78rem;padding:.25rem .6rem}.admin-content .page-item.active .page-link{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.admin-content .page-link{color:var(--color-neutral-700)}.admin-content .page-link:hover{color:var(--color-accent-dark);background-color:var(--color-neutral-100)}.admin-content .dt-length{display:none}.admin-content .dt-processing{font-size:.84rem}.employee-bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--surface-card);border-top:1px solid var(--color-neutral-200);box-shadow:0 -2px 10px #1b2a4a0f;z-index:1030;padding-bottom:env(safe-area-inset-bottom)}.employee-bottom-nav .nav-link{color:var(--color-neutral-400);font-size:.7rem;padding:.5rem 0;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:color var(--transition-fast)}.employee-bottom-nav .nav-link i{font-size:1.25rem;margin-bottom:2px}.employee-bottom-nav .nav-link.active{color:var(--color-accent)}.employee-header{background:var(--color-primary);color:#fff;padding:.75rem 1rem}.employee-header .brand-text{font-family:var(--font-display);color:var(--color-accent-light);font-size:1.1rem}.employee-body{padding-bottom:80px}.auth-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 50%,var(--color-primary-light) 100%);position:relative}.auth-wrapper:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 35px,rgba(255,255,255,.015) 35px,rgba(255,255,255,.015) 36px)}.auth-card{background:var(--surface-card);border-radius:12px;box-shadow:var(--shadow-lg);width:100%;max-width:420px;padding:2.5rem;position:relative;z-index:1}.auth-card .brand-logo{font-family:var(--font-display);color:var(--color-primary);font-size:1.5rem;margin-bottom:.25rem}.auth-card .brand-sub{color:var(--color-accent);font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.card{border:none;box-shadow:var(--shadow-sm);border-radius:8px}.form-control:focus,.form-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 .2rem #c17f3e26}.btn-primary{background-color:var(--color-primary);border-color:var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-light);border-color:var(--color-primary-light)}.btn-accent{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn-accent:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark);color:#fff}.swal2-container.swal2-top-end{z-index:9999}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.employee-body .card{animation:fadeInUp .3s ease both}.employee-body .card:nth-child(2){animation-delay:.05s}.employee-body .card:nth-child(3){animation-delay:.1s}.employee-body .card:nth-child(4){animation-delay:.15s}.employee-body .card:nth-child(5){animation-delay:.2s}@media(prefers-reduced-motion:reduce){.employee-body .card{animation:none}}.notification-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;font-size:.65rem;line-height:18px;border-radius:50%;background:var(--color-danger);color:#fff;text-align:center;padding:0 4px}
