*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--navy:#0f2544;--navy2:#1a3a6b;--teal:#0d9488;--teal2:#14b8a6;--teal-light:#e1f5ee;--gold:#d97706;--light:#f0f4f8;--card:#fff;--text:#1e293b;--text2:#64748b;--border:#e2e8f0;--danger:#dc2626;--success:#16a34a;--warning:#d97706;--radius:10px;--shadow:0 1px 3px #00000014,0 1px 2px #0000000a}body{-webkit-font-smoothing:antialiased;background:#f0f4f8;background:var(--light);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5}.input,body{color:#1e293b;color:var(--text)}.input{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;font-family:inherit;font-size:13px;outline:none;padding:9px 12px;transition:border-color .15s;width:100%}.input:focus{border-color:#0d9488;border-color:var(--teal);box-shadow:0 0 0 3px #0d94881a}.input:read-only,.input[readonly]{background:#f8fafc;color:#64748b;color:var(--text2);cursor:default}.input[readonly]:focus{border-color:#e2e8f0;border-color:var(--border);box-shadow:none}label.lbl{color:#64748b;color:var(--text2);display:block;font-size:11px;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.btn,label.lbl{font-weight:600}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;gap:6px;padding:9px 18px;text-decoration:none;transition:all .15s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#0d9488;background:var(--teal);color:#fff}.btn-primary:hover:not(:disabled){background:#0f766e}.btn-navy{background:#0f2544;background:var(--navy);color:#fff}.btn-navy:hover:not(:disabled){background:#1a3a6b;background:var(--navy2)}.btn-secondary{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);color:#64748b;color:var(--text2)}.btn-secondary:hover:not(:disabled){background:#f0f4f8;background:var(--light)}.btn-danger{background:#dc2626;background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-sm{font-size:12px;padding:5px 12px}.btn-icon{align-items:center;background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:6px;color:#64748b;color:var(--text2);cursor:pointer;display:inline-flex;padding:6px;transition:all .15s}.btn-icon:hover{background:#f0f4f8;background:var(--light)}.btn-icon.danger:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626;color:var(--danger)}.btn-icon.teal:hover{background:#e1f5ee;background:var(--teal-light);border-color:#5eead4;color:#0d9488;color:var(--teal)}.card{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;box-shadow:var(--shadow)}.card-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:10px;justify-content:space-between;padding:14px 20px}.card-header,.card-title{align-items:center;display:flex}.card-title{color:#1e293b;color:var(--text);font-size:12px;font-weight:700;gap:8px;letter-spacing:.5px;text-transform:uppercase}.card-body{padding:20px}.tbl-wrap{overflow-x:auto}table{border-collapse:collapse;font-size:12.5px;width:100%}th{background:#f8fafc;border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border);color:#64748b;color:var(--text2);font-size:10.5px;font-weight:700;letter-spacing:.5px;text-align:left;text-transform:uppercase;white-space:nowrap}td,th{padding:10px 14px}td{border-bottom:1px solid #f1f5f9;color:#1e293b;color:var(--text)}tr:hover td{background:#fafafa}tr:last-child td{border-bottom:none}.mono{font-family:JetBrains Mono,monospace;font-size:11.5px}.badge{align-items:center;border-radius:20px;display:inline-flex;font-size:11px;font-weight:600;padding:2px 9px}.badge-green{background:#dcfce7;color:#15803d}.badge-amber{background:#fef3c7;color:#92400e}.badge-red{background:#fee2e2;color:#b91c1c}.badge-blue{background:#dbeafe;color:#1e40af}.badge-purple{background:#ede9fe;color:#5b21b6}.badge-slate{background:#f1f5f9;color:#475569}.toast-wrap{bottom:20px;display:flex;flex-direction:column;gap:8px;position:fixed;right:20px;z-index:9999}.toast{align-items:center;animation:slideIn .25s ease;border-radius:10px;box-shadow:0 4px 12px #00000026;display:flex;font-size:13px;font-weight:500;gap:10px;max-width:340px;padding:12px 16px}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.toast-success{background:#f0fdf4;border:1px solid #86efac;color:#15803d}.toast-error{background:#fef2f2;border:1px solid #fca5a5;color:#b91c1c}.toast-info{background:#eff6ff;border:1px solid #93c5fd;color:#1d4ed8}.prog{background:#e2e8f0;height:6px;overflow:hidden}.prog,.prog-fill{border-radius:4px}.prog-fill{height:100%;transition:width .4s}.form-grid{grid-gap:14px;display:grid;gap:14px}.cols-2{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:repeat(3,1fr)}.form-group{display:flex;flex-direction:column}.span-2{grid-column:span 2}.page-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:15px 24px}.page-title{color:#0f2544;color:var(--navy);font-size:17px;font-weight:700}.page-sub{color:#64748b;color:var(--text2);font-size:12px;margin-top:2px}.page-body{padding:20px 24px}.alert{align-items:flex-start;border-radius:8px;display:flex;font-size:13px;gap:10px;padding:12px 16px}.alert-info{background:#eff6ff;border:1px solid #93c5fd;color:#1d4ed8}.alert-warning{background:#fefce8;border:1px solid #fde047;color:#854d0e}.alert-success{background:#f0fdf4;border:1px solid #86efac;color:#15803d}.tabs{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border);display:flex;gap:0}.tab{background:none;border:none;border-bottom:2px solid #0000;color:#64748b;color:var(--text2);cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;margin-bottom:-2px;padding:10px 18px;transition:all .15s}.tab.active{border-bottom-color:#0d9488;border-bottom-color:var(--teal);color:#0d9488;color:var(--teal)}.tab:hover:not(.active){color:#1e293b;color:var(--text)}.stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.stat-card{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);padding:18px}.stat-label{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stat-val{font-size:24px;font-weight:700;margin-top:4px}.stat-sub{font-size:11px;margin-top:2px}.stat-dark{background:#0f2544;background:var(--navy)}.stat-dark .stat-label{color:#ffffff80}.stat-dark .stat-val{color:#14b8a6;color:var(--teal2)}.stat-dark .stat-sub{color:#ffffff4d}.stat-light{background:#fff}.stat-light .stat-label{color:#64748b;color:var(--text2)}.stat-light .stat-val{color:#0f2544;color:var(--navy)}.stat-light .stat-sub{color:#64748b;color:var(--text2)}.strength-bars{display:flex;gap:4px;margin-top:6px}.strength-bar{background:#e2e8f0;background:var(--border);border-radius:2px;flex:1 1;height:4px;transition:background .3s}.strength-rules{grid-gap:4px;display:grid;gap:4px;grid-template-columns:1fr 1fr;margin-top:8px}.strength-rule{font-size:11px;gap:5px}.modal-overlay,.strength-rule{align-items:center;display:flex}.modal-overlay{background:#0006;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:18px 22px}.modal-title{font-size:15px;font-weight:700}.modal-body{padding:22px}.modal-footer{border-top:1px solid #e2e8f0;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;padding:14px 22px}@media print{body *{visibility:hidden}.mud-printable,.mud-printable *{visibility:visible}.mud-printable{left:0;position:fixed;top:0;width:100%}}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.cols-2,.cols-3{grid-template-columns:1fr}.page-body{padding:14px 16px}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr 1fr}}
/*# sourceMappingURL=main.362319bb.css.map*/