@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);:root{--navy:#172554;--blue:#2563eb;--blue-light:#eff6ff;--blue-mid:#dbeafe;--amber:#f59e0b;--green:#16a34a;--green-light:#f0fdf4;--red:#ef4444;--red-light:#fef2f2;--txt-primary:#111827;--txt-second:#6b7280;--txt-third:#9ca3af;--border:#e5e7eb;--border-light:#f3f4f6;--bg:#f9fafb;--bg-hover:#f3f4f6;--white:#fff;--sidebar-w:220px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 32px #0000001f}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{-webkit-font-smoothing:antialiased;background:#f9fafb;background:var(--bg);color:#111827;color:var(--txt-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:14px}::-webkit-scrollbar{height:5px;width:5px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:99px}.btn{align-items:center;border:1px solid #0000;border-radius:8px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;justify-content:center;letter-spacing:-.01em;padding:8px 16px;transition:all .15s;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.45}.btn-primary{background:#2563eb;background:var(--blue);border-color:#2563eb;border-color:var(--blue);color:#fff}.btn-primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.btn-secondary{background:#fff;background:var(--white);border-color:#e5e7eb;border-color:var(--border);color:#111827;color:var(--txt-primary)}.btn-secondary:hover:not(:disabled){background:#f9fafb;background:var(--bg)}.btn-ghost{background:#0000;border-color:#0000;color:#6b7280;color:var(--txt-second)}.btn-ghost:hover:not(:disabled){background:#f3f4f6;background:var(--bg-hover);color:#111827;color:var(--txt-primary)}.btn-danger{background:#fef2f2;background:var(--red-light);border-color:#0000;color:#ef4444;color:var(--red)}.btn-danger:hover:not(:disabled){background:#fee2e2}.btn-sm{border-radius:6px;border-radius:var(--radius-sm);font-size:12px;padding:5px 11px}.btn-lg{font-size:14px;padding:10px 20px}.badge{align-items:center;border-radius:99px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.02em;padding:2px 8px}.badge-blue{background:#eff6ff;background:var(--blue-light);color:#2563eb;color:var(--blue)}.badge-green{background:#f0fdf4;background:var(--green-light);color:#16a34a;color:var(--green)}.badge-amber{background:#fffbeb;color:#d97706}.badge-grey{background:#f3f4f6;background:var(--border-light);color:#6b7280;color:var(--txt-second)}.badge-navy{background:#172554;background:var(--navy);color:#f59e0b;color:var(--amber)}.badge-red{background:#fef2f2;background:var(--red-light);color:#ef4444;color:var(--red)}.card{background:#fff;background:var(--white);border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);padding:20px}.form-group{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.form-label{font-weight:500}.form-input,.form-label{color:#111827;color:var(--txt-primary);font-size:13px}.form-input{background:#fff;background:var(--white);border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-md);outline:none;padding:8px 11px;transition:border-color .15s,box-shadow .15s;width:100%}.form-input:focus{border-color:#2563eb;border-color:var(--blue);box-shadow:0 0 0 3px #2563eb14}.form-input.error{border-color:#ef4444;border-color:var(--red)}.form-hint{color:#9ca3af;color:var(--txt-third);font-size:12px;margin-top:3px}.table-wrap{border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-md);overflow-x:auto}table{border-collapse:collapse;width:100%}thead th{background:#f9fafb;background:var(--bg);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border);color:#6b7280;color:var(--txt-second);font-size:11px;font-weight:600;letter-spacing:.04em;padding:10px 14px;text-align:left;text-transform:uppercase}tbody td{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-light);font-size:13px;padding:11px 14px}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:#f9fafb;background:var(--bg)}.progress-bar{background:#f3f4f6;background:var(--border-light);border-radius:99px;overflow:hidden}.progress-fill{background:#2563eb;background:var(--blue);border-radius:99px;height:100%;transition:width .4s ease}.page-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.page-header h1{color:#111827;color:var(--txt-primary);font-size:18px;font-weight:700;letter-spacing:-.02em}.page-header p{font-size:13px;margin-top:2px}.empty-state,.page-header p{color:#6b7280;color:var(--txt-second)}.empty-state{padding:56px 24px;text-align:center}.empty-state h3{color:#111827;color:var(--txt-primary);font-size:15px;font-weight:600;margin-bottom:6px}.empty-state p{font-size:13px}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000059;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal{background:#fff;background:var(--white);border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 12px 32px #0000001f;box-shadow:var(--shadow-lg);max-height:90vh;max-width:460px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:16px 20px 14px}.modal-header h2{font-size:15px;font-weight:600}.modal-body{padding:20px}.modal-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;padding:14px 20px}.spinner{animation:spin .65s linear infinite;border:1.5px solid;border-radius:50%;border-top:1.5px solid #0000;display:inline-block;height:15px;opacity:.6;width:15px}.spinner-lg{border-width:2.5px;color:#2563eb;color:var(--blue);height:28px;opacity:1;width:28px}.loading-center{align-items:center;color:#6b7280;color:var(--txt-second);font-size:13px;gap:10px;justify-content:center;padding:64px}.loading-center,.toast-container{display:flex;flex-direction:column}.toast-container{bottom:20px;gap:8px;position:fixed;right:20px;z-index:9999}.toast{animation:toastIn .2s ease;border-radius:8px;border-radius:var(--radius-md);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);font-size:13px;font-weight:500;max-width:320px;min-width:200px;padding:10px 14px}.toast-success{background:#111827;color:#fff}.toast-error{background:#fff;background:var(--white);border:1px solid #fecaca;color:#ef4444;color:var(--red)}.avatar{align-items:center;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-weight:600;justify-content:center}.avatar-xs{font-size:9px;height:24px;width:24px}.avatar-sm{font-size:11px;height:30px;width:30px}.avatar-md{font-size:13px;height:36px;width:36px}.avatar-lg{font-size:16px;height:44px;width:44px}.tabs{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border);display:flex;margin-bottom:20px}.tab-btn{background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;color:var(--txt-second);cursor:pointer;font-size:13px;font-weight:500;margin-bottom:-1px;padding:8px 14px;transition:all .15s}.tab-btn:hover{color:#111827;color:var(--txt-primary)}.tab-btn.active{border-bottom-color:#2563eb;border-bottom-color:var(--blue);color:#2563eb;color:var(--blue);font-weight:600}.divider{background:#e5e7eb;background:var(--border);height:1px;margin:16px 0}.error-msg{color:#ef4444;color:var(--red)}.error-msg,.success-msg{font-size:12px;margin-top:4px}.success-msg{color:#16a34a;color:var(--green)}@keyframes spin{to{transform:rotate(1turn)}}@keyframes toastIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
/*# sourceMappingURL=main.b2d610bb.css.map*/