:root{--blue-700:#054bb4;--blue-600:#1a5cbf;--blue-500:#2e5caf;--blue-400:#658cc2;--blue-100:#e8eef8;--blue-50:#f4f7fd;--gray-900:#111827;--gray-800:#1f2937;--gray-700:#374151;--gray-500:#6b7280;--gray-400:#9ca3af;--gray-200:#e5e7eb;--gray-100:#f3f4f6;--gray-50:#f9fafb;--green-600:#059669;--green-100:#d1fae5;--green-50:#ecfdf5;--red-600:#dc2626;--red-100:#fee2e2;--red-50:#fef2f2;--amber-600:#d97706;--amber-100:#fde68a;--amber-50:#fffbeb;--purple-600:#7c3aed;--purple-100:#ede9fe;--purple-50:#f5f3ff;--surface:#fff;--surface-2:#f9fafb;--border:#e5e7eb;--text-h:#111827;--text-b:#374151;--text-s:#6b7280;--text-xs:#9ca3af;--s1:0 1px 3px #0000000f,0 1px 2px #0000000a;--s2:0 4px 12px #0000000f,0 2px 6px #0000000a;--s3:0 8px 24px #00000014,0 4px 8px #0000000a;--s4:0 20px 48px #0000001a,0 8px 16px #0000000f;--r2:4px;--r4:8px;--r6:10px;--r8:12px;--r10:14px;--r12:16px;--r16:20px;--r20:24px;--sidebar:256px;--topbar:60px;--t1:all .15s ease;--t2:all .22s ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;background:#f4f7fd;background:var(--surface-3);color:#374151;color:var(--text-b);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6}a{color:#054bb4;color:var(--blue-700);text-decoration:none}a:hover{color:#1a5cbf;color:var(--blue-600)}img{display:block;max-width:100%}button,input,select,textarea{font-family:inherit}::selection{background:#bfdbfe;color:#054bb4;color:var(--blue-700)}::-webkit-scrollbar{height:5px;width:5px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#e5e7eb;background:var(--gray-200);border-radius:3px}h1,h2,h3,h4,h5,h6{color:#111827;color:var(--text-h);font-family:Poppins,sans-serif;font-weight:700;line-height:1.3}h1{font-size:1.75rem}h2{font-size:1.4rem}h3{font-size:1.15rem}h4{font-size:1rem}p{color:#374151;color:var(--text-b)}.btn{align-items:center;border:none;border-radius:10px;border-radius:var(--r6);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:6px;justify-content:center;line-height:1;outline:none;padding:8px 18px;text-decoration:none;transition:var(--t);transition:var(--t1);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#054bb4;background:var(--blue-700);color:#fff}.btn-primary:hover:not(:disabled){background:#1a5cbf;background:var(--blue-600);box-shadow:0 4px 12px #054bb447}.btn-secondary{background:#e8eef8;background:var(--blue-100);color:#054bb4;color:var(--blue-700)}.btn-secondary:hover:not(:disabled){background:#dce8f8}.btn-success{background:#ecfdf5;background:var(--green-50);color:#059669;color:var(--green-600)}.btn-success:hover:not(:disabled){background:#059669;background:var(--green-600);color:#fff}.btn-danger{background:#fef2f2;background:var(--red-50);color:#dc2626;color:var(--red-600)}.btn-danger:hover:not(:disabled){background:#dc2626;background:var(--red-600);color:#fff}.btn-ghost{background:#0000;color:#6b7280;color:var(--text-s)}.btn-ghost:hover:not(:disabled){background:#f3f4f6;background:var(--gray-100);color:#374151;color:var(--text-b)}.btn-outline{background:#0000;border:1.5px solid #054bb4;border:1.5px solid var(--blue-700);color:#054bb4;color:var(--blue-700)}.btn-outline:hover:not(:disabled){background:#054bb4;background:var(--blue-700);color:#fff}.btn-white{background:#fff;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--s1);color:#054bb4;color:var(--blue-700)}.btn-white:hover:not(:disabled){box-shadow:0 4px 12px #0000000f,0 2px 6px #0000000a;box-shadow:var(--s2)}.btn-sm{border-radius:8px;border-radius:var(--r4);font-size:.8rem;padding:5px 12px}.btn-lg{border-radius:12px;border-radius:var(--r8);font-size:.95rem;padding:11px 24px}.btn-xl{border-radius:14px;border-radius:var(--r10);font-size:1rem;padding:14px 30px}.btn-icon{border-radius:8px;border-radius:var(--r4);height:34px;padding:0;width:34px}.card{background:#fff;background:var(--surface);border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:16px;border-radius:var(--r12);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--s1);overflow:hidden}.card-header{border-bottom:1px solid var(--border-2)}.card-footer{background:var(--surface-2);border-top:1px solid var(--border-2)}.card-title{color:var(--text-h)}.form-label{color:var(--text-s)}.form-control{border-radius:10px;border-radius:var(--r6);color:var(--text-b);transition:var(--t1)}.form-control::placeholder{color:var(--text-xs)}.input-wrap{position:relative}.input-wrap .i-left{left:10px;pointer-events:none}.input-wrap .i-left,.input-wrap .i-right{color:#9ca3af;color:var(--text-xs);position:absolute;top:50%;transform:translateY(-50%)}.input-wrap .i-right{cursor:pointer;right:10px}.input-wrap .form-control.pl{padding-left:36px}.input-wrap .form-control.pr{padding-right:36px}.form-hint{color:var(--text-xs)}.badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.7rem;font-weight:700;gap:4px;letter-spacing:.02em;padding:2px 9px;white-space:nowrap}.badge-blue{background:#e8eef8;background:var(--blue-100);color:#054bb4;color:var(--blue-700)}.badge-green{background:#ecfdf5;background:var(--green-50);color:#059669;color:var(--green-600)}.badge-red{background:#fef2f2;background:var(--red-50);color:#dc2626;color:var(--red-600)}.badge-amber{background:#fffbeb;background:var(--amber-50);color:#d97706;color:var(--amber-600)}.badge-purple{background:#f5f3ff;background:var(--purple-50);color:#7c3aed;color:var(--purple-600)}.badge-gray{background:#f3f4f6;background:var(--gray-100);color:#6b7280;color:var(--gray-500)}.table-wrap{overflow-x:auto}.data-table td{border-bottom:1px solid var(--border-2);color:var(--text-b)}.stat-card{background:var(--surface);transition:var(--t1)}.stat-value{color:var(--text-h)}.stat-label{color:var(--text-s)}.stat-trend{font-size:.72rem;font-weight:600;margin-top:4px}.stat-trend.up{color:#059669;color:var(--green-600)}.stat-trend.down{color:#dc2626;color:var(--red-600)}.progress{background:#e5e7eb;background:var(--gray-200);border-radius:3px;height:6px;overflow:hidden;width:100%}.progress.sm{height:4px}.progress.lg{height:8px}.progress-bar{background:#054bb4;background:var(--blue-700);height:100%;transition:width .5s ease}.progress-bar.green{background:#059669;background:var(--green-600)}.progress-bar.amber{background:#d97706;background:var(--amber-600)}.progress-bar.red{background:#dc2626;background:var(--red-600)}.progress-bar.purple{background:#7c3aed;background:var(--purple-600)}.av-xs{font-size:.62rem;height:26px;width:26px}.av-sm{font-size:.72rem;height:32px;width:32px}.av-md{font-size:.85rem;height:40px;width:40px}.av-lg{font-size:1.1rem;height:52px;width:52px}.av-xl{font-size:1.5rem;height:68px;width:68px}.page-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.page-title{color:var(--text-h)}.page-subtitle{color:var(--text-s);margin-top:3px}.g{grid-gap:16px;display:grid;gap:16px}.g-2{grid-template-columns:repeat(2,1fr)}.g-3{grid-template-columns:repeat(3,1fr)}.g-4{grid-template-columns:repeat(4,1fr)}.f{display:flex}.f-col{flex-direction:column}.f-1{flex:1 1}.f-wrap{flex-wrap:wrap}.ai-c{align-items:center}.ai-s{align-items:flex-start}.jc-b{justify-content:space-between}.jc-c{justify-content:center}.jc-e{justify-content:flex-end}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-20{margin-bottom:20px}.t-c{text-align:center}.t-r{text-align:right}.fw-5{font-weight:500}.fw-6{font-weight:600}.fw-7{font-weight:700}.fw-8{font-weight:800}.fs-sm{font-size:.84rem}.fs-xs{font-size:.75rem}.c-b{color:#374151;color:var(--text-b)}.c-s{color:#6b7280;color:var(--text-s)}.c-xs{color:#9ca3af;color:var(--text-xs)}.c-blue{color:#054bb4;color:var(--blue-700)}.c-green{color:#059669;color:var(--green-600)}.c-red{color:#dc2626;color:var(--red-600)}.c-amber{color:#d97706;color:var(--amber-600)}.trunc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.w-full{width:100%}.modal-close{border-radius:8px;border-radius:var(--r4);color:var(--text-s);flex-shrink:0;transition:var(--t1)}.modal-close:hover{color:#374151;color:var(--text-b)}.search-box{border-radius:10px;border-radius:var(--r6);transition:var(--t1)}.search-box input{color:var(--text-b)}.search-box input::placeholder,.search-icon{color:var(--text-xs)}.empty-state{padding:48px 24px}.empty-icon{font-size:3rem;margin-bottom:12px;opacity:.5}.empty-title{color:#374151;color:var(--text-b);font-size:.95rem;font-weight:700;margin-bottom:6px}.empty-desc{color:#6b7280;color:var(--text-s);font-size:.82rem;line-height:1.6;max-width:260px}.spinner{animation:spin .6s linear infinite;border:2.5px solid #e5e7eb;border-top-color:#054bb4;border:2.5px solid var(--gray-200);border-radius:50%;border-top-color:var(--blue-700);height:28px;width:28px}.spinner-sm{border-width:2px;height:16px;width:16px}.loading-center{color:var(--text-s)}.demo-banner{background:#fffbeb;border-bottom:1px solid #fde68a;color:#d97706;color:var(--amber-600);font-size:.78rem;font-weight:600;padding:7px 16px;text-align:center}.notif-dot{background:#dc2626;background:var(--red-600);border:2px solid #fff;border-radius:50%;height:7px;position:absolute;right:5px;top:5px;width:7px}@keyframes bell-ring{0%,to{transform:rotate(0)}20%{transform:rotate(15deg)}40%{transform:rotate(-12deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-5deg)}}.bell-ring{animation:bell-ring .6s ease}.breadcrumb{align-items:center;color:#6b7280;color:var(--text-s);display:flex;font-size:.78rem;gap:6px;margin-bottom:16px}.breadcrumb a{color:#054bb4;color:var(--blue-700);font-weight:500}.breadcrumb span{color:#9ca3af;color:var(--text-xs)}.upload-zone{background:#f9fafb;background:var(--surface-2);border:2px dashed #e5e7eb;border:2px dashed var(--border);border-radius:12px;border-radius:var(--r8);cursor:pointer;padding:28px;text-align:center;transition:var(--t);transition:var(--t1)}.upload-zone.drag,.upload-zone:hover{background:#f4f7fd;background:var(--blue-50);border-color:#054bb4;border-color:var(--blue-700)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes slideIn{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.slide-in{animation:slideIn .25s ease both}.Toastify__toast{border-radius:12px!important;border-radius:var(--r8)!important;box-shadow:0 8px 24px #00000014,0 4px 8px #0000000a!important;box-shadow:var(--s3)!important;font-size:.84rem!important}.Toastify__toast-container{font-family:Inter,sans-serif!important}@media (max-width:1024px){.g-3,.g-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.g-2,.g-3,.g-4{grid-template-columns:1fr!important}.page-head{align-items:flex-start;flex-direction:column}}@media print{.no-print{display:none!important}.card{box-shadow:none!important}}:root{--text-h:var(--gray-900);--text-b:var(--gray-700);--text-s:var(--gray-500);--text-xs:var(--gray-400);--text-light:var(--gray-500);--text-dark:var(--gray-900);--text-med:var(--gray-700);--text-medium:var(--gray-700);--text-xlight:var(--gray-400);--danger:var(--red-600);--success:var(--green-600);--warning:var(--amber-600);--info:#3b82f6;--primary:var(--blue-700);--primary-dark:var(--blue-600);--primary-med:var(--blue-500);--primary-medium:var(--blue-500);--primary-light:var(--blue-400);--primary-xlight:var(--blue-100);--primary-xl:var(--blue-100);--primary-xxl:var(--blue-50);--clr-primary:var(--blue-700);--clr-primary-dark:var(--blue-600);--clr-primary-med:var(--blue-500);--clr-primary-light:var(--blue-400);--clr-primary-xl:var(--blue-100);--clr-primary-xxl:var(--blue-50);--blue-xl:var(--blue-100);--blue-l:var(--blue-100);--surface-2:var(--gray-50);--surface-3:#f4f7fd;--bg-main:#f0f4fb;--bg-card:#fff;--clr-bg:#f4f7fd;--clr-card:#fff;--border-2:#f0f0f0;--border-l:#f1f4fb;--clr-border:var(--border);--clr-border-l:#f1f4fb;--radius-sm:var(--r6);--radius-md:var(--r8);--radius-lg:var(--r12);--radius-xl:var(--r16);--radius-2xl:var(--r20);--r-xs:var(--r2);--r-sm:var(--r4);--r-md:var(--r8);--r-lg:var(--r12);--r-xl:var(--r16);--r-2xl:var(--r20);--shadow-sm:var(--s1);--shadow-md:var(--s2);--shadow-lg:var(--s3);--shadow-xl:var(--s4);--shadow-xs:var(--s1);--clr-shadow:var(--s2);--transition:var(--t);--ease:var(--t);--t1:var(--t);--t2:0.22s ease;--clr-success:var(--green-600);--clr-warning:var(--amber-600);--clr-danger:var(--red-600);--clr-info:#3b82f6;--clr-purple:var(--purple-600);--clr-orange:#f97316;--clr-text-dark:var(--gray-900);--clr-text-med:var(--gray-700);--clr-text-light:var(--gray-500);--clr-text-xlight:var(--gray-400);--sidebar-w:var(--sidebar);--topbar-h:var(--topbar);--sidebar-width:var(--sidebar);--topbar-height:var(--topbar);--green:var(--green-600);--red:var(--red-600);--amber:var(--amber-600);--purple:var(--purple-600);--blue:var(--blue-700)}.progress-fill{border-radius:3px;height:100%;transition:width .5s ease}.progress-fill.green{background:#059669;background:var(--green-600)}.progress-fill.amber{background:#d97706;background:var(--amber-600)}.progress-fill.danger,.progress-fill.red{background:#dc2626;background:var(--red-600)}.progress-fill.success{background:#059669;background:var(--green-600)}.progress-fill.warning{background:#d97706;background:var(--amber-600)}.progress-fill.purple{background:#7c3aed;background:var(--purple-600)}.table-wrapper{border-radius:12px;border-radius:var(--r8);overflow-x:auto}.data-table{border-collapse:collapse;font-size:.875rem;width:100%}.data-table th{background:#f4f7fd;background:var(--blue-50);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border);color:#2e5caf;color:var(--blue-500);font-size:.7rem;font-weight:700;letter-spacing:.6px;padding:10px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{border-bottom:1px solid #f0f0f0;color:#374151;color:var(--gray-700);padding:12px 14px;vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:#f4f7fd;background:var(--blue-50)}.grid{grid-gap:16px;display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.btn-full{width:100%}.search-icon{color:#9ca3af;color:var(--gray-400);flex-shrink:0}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 24px;text-align:center}.empty-state-icon{font-size:3rem;margin-bottom:12px;opacity:.45}.empty-state-title{color:#374151;color:var(--gray-700);font-size:.95rem;font-weight:700;margin-bottom:6px}.empty-state-desc{color:#6b7280;color:var(--gray-500);font-size:.82rem;line-height:1.6;max-width:260px}.badge-primary{background:#e8eef8;background:var(--blue-100);color:#054bb4;color:var(--blue-700)}.badge-success{background:#ecfdf5;background:var(--green-50);color:#059669;color:var(--green-600)}.badge-warning{background:#fffbeb;background:var(--amber-50);color:#d97706;color:var(--amber-600)}.badge-danger{background:#fef2f2;background:var(--red-50);color:#dc2626;color:var(--red-600)}.badge-info{background:#eff6ff;color:#2563eb}.badge-secondary{background:#f3f4f6;background:var(--gray-100);color:#6b7280;color:var(--gray-500)}.avatar{align-items:center;background:#e8eef8;background:var(--blue-100);border-radius:50%;color:#054bb4;color:var(--blue-700);display:flex;flex-shrink:0;font-weight:700;justify-content:center}.avatar-xs{font-size:.62rem;height:26px;width:26px}.avatar-sm{font-size:.72rem;height:32px;width:32px}.avatar-md{font-size:.85rem;height:40px;width:40px}.avatar-lg{font-size:1.1rem;height:52px;width:52px}.avatar-xl{font-size:1.6rem;height:72px;width:72px}.card-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:16px 20px}.card-title{color:#111827;color:var(--gray-900);font-size:.9rem;font-weight:700}.card-body{padding:16px 20px}.card-footer{background:#f9fafb;background:var(--gray-50);border-top:1px solid #f0f0f0;padding:12px 20px}.form-group{margin-bottom:14px}.form-label{color:#6b7280;color:var(--gray-500);display:block;font-size:.8rem;font-weight:600;letter-spacing:.03em;margin-bottom:5px;text-transform:uppercase}.form-control{background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--border);border-radius:12px;border-radius:var(--r8);color:#374151;color:var(--gray-700);font-family:inherit;font-size:.875rem;outline:none;padding:9px 12px;transition:var(--t);width:100%}.form-control:focus{border-color:#054bb4;border-color:var(--blue-700);box-shadow:0 0 0 3px #054bb414}.form-control::placeholder{color:#9ca3af;color:var(--gray-400)}.form-control.error{border-color:#dc2626;border-color:var(--red-600)}textarea.form-control{min-height:90px;resize:vertical}select.form-control{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%236b7280' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;cursor:pointer;padding-right:32px}.form-error{color:#dc2626;color:var(--red-600)}.form-error,.form-hint{font-size:.75rem;margin-top:4px}.form-hint{color:#9ca3af;color:var(--gray-400)}.stat-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:16px;border-radius:var(--r12);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--s1);display:flex;gap:14px;padding:16px 18px;transition:var(--t)}.stat-card:hover{box-shadow:0 4px 12px #0000000f,0 2px 6px #0000000a;box-shadow:var(--s2);transform:translateY(-1px)}.stat-icon{align-items:center;border-radius:12px;border-radius:var(--r8);display:flex;flex-shrink:0;font-size:1.25rem;height:46px;justify-content:center;width:46px}.stat-value{color:#111827;color:var(--gray-900);font-family:Poppins,sans-serif;font-size:1.6rem;font-weight:800;line-height:1}.stat-label{color:#6b7280;color:var(--gray-500);font-size:.75rem;margin-top:3px}.progress-bar{background:#e5e7eb;background:var(--gray-200);border-radius:3px;height:6px;overflow:hidden;width:100%}.modal-overlay{align-items:center;animation:fadeIn .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#11182780;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:900}.modal{animation:slideUp .2s ease;background:#fff;border-radius:20px;border-radius:var(--r16);box-shadow:0 20px 48px #0000001a,0 8px 16px #0000000f;box-shadow:var(--s4);max-height:90vh;max-width:520px;overflow-y:auto;width:100%}.modal-sm{max-width:400px}.modal-lg{max-width:700px}.modal-header{align-items:center;display:flex;justify-content:space-between;padding:20px 22px 0}.modal-title{font-size:1rem;font-weight:800}.modal-body{padding:16px 22px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:0 22px 20px}.modal-close{align-items:center;background:#f3f4f6;background:var(--gray-100);border:none;border-radius:10px;border-radius:var(--r6);color:#6b7280;color:var(--gray-500);cursor:pointer;display:flex;height:28px;justify-content:center;transition:var(--t);width:28px}.modal-close:hover{background:#e5e7eb;background:var(--gray-200)}.loading-center{align-items:center;color:#6b7280;color:var(--gray-500);display:flex;flex-direction:column;font-size:.84rem;gap:12px;justify-content:center;padding:48px}.divider{border:none;border-top:1px solid #e5e7eb;border-top:1px solid var(--border);margin:12px 0}.chip{align-items:center;background:#f3f4f6;background:var(--gray-100);border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:9999px;border-radius:var(--r-full,9999px);color:#374151;color:var(--gray-700);display:inline-flex;font-size:.78rem;font-weight:500;gap:5px;padding:4px 12px}.input-icon-wrap{position:relative}.input-icon-wrap .icon-left{left:12px;pointer-events:none}.input-icon-wrap .icon-left,.input-icon-wrap .icon-right{color:#9ca3af;color:var(--gray-400);position:absolute;top:50%;transform:translateY(-50%)}.input-icon-wrap .icon-right{cursor:pointer;right:12px}.input-icon-wrap input{padding-left:38px}.input-icon-wrap input.pr{padding-right:38px}.animate-fade{animation:fadeIn .25s ease both}.animate-slide{animation:slideUp .25s ease both}.fade-in{animation:fadeIn .25s ease both}.slide-up{animation:slideUp .25s ease both}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.page-title{color:#111827;color:var(--gray-900);font-family:Poppins,sans-serif;font-size:1.3rem;font-weight:800}.page-subtitle{color:#6b7280;color:var(--gray-500);font-size:.8rem;margin-top:2px}.file-upload-zone{background:#f9fafb;background:var(--gray-50);border:2px dashed #e5e7eb;border:2px dashed var(--border);border-radius:12px;border-radius:var(--r8);cursor:pointer;padding:28px;text-align:center;transition:var(--t)}.file-upload-zone:hover{background:#f4f7fd;background:var(--blue-50,#f4f7fd);border-color:#054bb4;border-color:var(--blue-700)}.search-box{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--border);border-radius:12px;border-radius:var(--r8);display:flex;gap:8px;padding:8px 12px;transition:var(--t)}.search-box:focus-within{border-color:#054bb4;border-color:var(--blue-700);box-shadow:0 0 0 3px #054bb412}.search-box input{background:none;border:none;color:#374151;color:var(--gray-700);flex:1 1;font-family:inherit;font-size:.875rem;outline:none}.search-box input::placeholder{color:#9ca3af;color:var(--gray-400)}@media(max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important}.page-header{align-items:flex-start;flex-direction:column}}[data-theme=dark]{--blue-100:#1e3a6e;--blue-50:#0f2040;--gray-900:#f1f5f9;--gray-800:#e2e8f0;--gray-700:#cbd5e1;--gray-500:#94a3b8;--gray-400:#64748b;--gray-200:#334155;--gray-100:#1e293b;--gray-50:#0f172a;--border:#2d3748;--border-2:#1e293b;--border-l:#2d3748;--surface:#1a2535;--surface-2:#111827;--surface-3:#0f1623;--bg-main:#0f1623;--bg-card:#1a2535;--clr-bg:#0f1623;--clr-card:#1a2535;--clr-border:#2d3748;--text-h:#f1f5f9;--text-b:#cbd5e1;--text-s:#94a3b8;--text-xs:#64748b;--text-dark:#f1f5f9;--text-med:#cbd5e1;--text-light:#94a3b8;--text-medium:#cbd5e1;--primary-xlight:#1e3a6e;--primary-xxl:#0f2040;--primary-xl:#1e3a6e;--blue-xl:#1e3a6e;--blue-l:#1e3a6e}[data-theme=dark] body{background:#0f1623;color:#cbd5e1}[data-theme=dark] .card{background:#1a2535;border-color:#2d3748}[data-theme=dark] .card-header{border-bottom-color:#2d3748}[data-theme=dark] .card-footer{background:#111827;border-top-color:#2d3748}[data-theme=dark] .form-control{background:#111827;border-color:#2d3748;color:#e2e8f0}[data-theme=dark] .form-control:focus{border-color:#658cc2}[data-theme=dark] .form-control::placeholder{color:#475569}[data-theme=dark] .data-table th{background:#111827;color:#93c5fd}[data-theme=dark] .data-table td{border-bottom-color:#1e293b;color:#cbd5e1}[data-theme=dark] .data-table tbody tr:hover{background:#1e3a6e22}[data-theme=dark] .btn-secondary{background:#1e3a6e;color:#93c5fd}[data-theme=dark] .btn-ghost{color:#94a3b8}[data-theme=dark] .btn-ghost:hover:not(:disabled){background:#1e293b;color:#e2e8f0}[data-theme=dark] .btn-white{background:#1a2535;color:#93c5fd}[data-theme=dark] .search-box{background:#111827;border-color:#2d3748}[data-theme=dark] .search-box input{color:#e2e8f0}[data-theme=dark] .modal-overlay{background:#000000b3}[data-theme=dark] .modal{background:#1a2535}[data-theme=dark] .modal-close{background:#2d3748;color:#94a3b8}[data-theme=dark] .modal-close:hover{background:#374151;color:#e2e8f0}[data-theme=dark] .stat-card{background:#1a2535;border-color:#2d3748}[data-theme=dark] .badge-secondary{background:#2d3748;color:#94a3b8}[data-theme=dark] .badge-blue,[data-theme=dark] .badge-primary{background:#1e3a6e;color:#93c5fd}[data-theme=dark] .progress{background:#2d3748}[data-theme=dark] .divider{border-top-color:#2d3748}[data-theme=dark] .chip{background:#2d3748;border-color:#374151;color:#94a3b8}[data-theme=dark] .nav-item{color:#94a3b8}[data-theme=dark] .nav-item:hover{background:#1e293b;color:#e2e8f0}[data-theme=dark] .nav-item.active{background:#1e3a6e;color:#93c5fd}[data-theme=dark] .sidebar,[data-theme=dark] header{background:#1a2535!important;border-color:#2d3748!important}[data-theme=dark] .land-nav{background:#1a2535f5!important;border-color:#2d3748!important}[data-theme=dark] .feat-card{background:#1a2535!important;border-color:#2d3748!important}[data-theme=dark] .feat-card:hover{border-color:#658cc2!important}[data-theme=dark] .role-card{background:#1a2535!important;border-color:#2d3748!important}[data-theme=dark] input:-webkit-autofill{-webkit-text-fill-color:#e2e8f0!important;-webkit-box-shadow:inset 0 0 0 100px #111827!important}@media (max-width:400px){.btn-lg,.btn-xl{font-size:.88rem!important;padding:11px 16px!important}.page-title,.stat-value{font-size:1.1rem!important}.g2,.g3,.g4,div[style*="grid-template-columns: repeat(2, 1fr)"],div[style*="grid-template-columns: repeat(3, 1fr)"],div[style*="grid-template-columns: repeat(4, 1fr)"],div[style*="grid-template-columns:repeat(2,1fr)"],div[style*="grid-template-columns:repeat(3,1fr)"],div[style*="grid-template-columns:repeat(4,1fr)"]{grid-template-columns:1fr!important}}@media (max-width:1024px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.g2,.g3,.g4{grid-template-columns:1fr!important}.page-head{align-items:flex-start!important;flex-direction:column!important}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table,.data-tbl{min-width:480px}.modal-overlay{align-items:flex-end!important;padding:0!important}.modal{border-radius:16px 16px 0 0!important;bottom:0!important;margin:0!important;max-height:90vh!important;max-width:100%!important;position:fixed!important}.filter-tabs{flex-wrap:wrap}.stat-value{font-size:1.3rem!important}.card-body,.card-header{padding:12px 14px!important}}@media (max-width:480px){.g2,.g3,.g4{grid-template-columns:1fr!important}.page-title,.stat-value{font-size:1.1rem!important}.btn-lg,.btn-xl{font-size:.88rem!important;padding:10px 16px!important}}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0px;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}@media only screen and (max-width:480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.7eb4142f.css.map*/