:root{--navy:#0b2545;--navy-2:#13315c;--crimson:#c1121f;--orange:#ff751f;--bg:#f5f6f8;--muted:#64748b;--good:#178a50;--warn:#d97706;--danger:#c1121f}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Montserrat,ui-sans-serif,system-ui,sans-serif;background:var(--bg);color:var(--navy);-webkit-font-smoothing:antialiased}a{color:inherit}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:#fff;padding:22px 16px;display:flex;flex-direction:column;gap:20px;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:0 4px}.brand .mark{width:38px;height:38px;border-radius:10px;display:block;object-fit:cover}.brand .name{font-weight:800;letter-spacing:.08em;font-size:15px}.brand .sub{color:hsla(0,0%,100%,.55);font-size:11px}.nav{display:flex;flex-direction:column;gap:4px;flex:1 1}.nav button{width:100%;text-align:left;background:none;border:0;color:hsla(0,0%,100%,.75);font:inherit;font-size:13.5px;padding:10px 12px;border-radius:9px;cursor:pointer;display:flex;align-items:center;gap:10px}.nav button:hover{background:hsla(0,0%,100%,.08);color:#fff}.nav button.active{background:var(--crimson);color:#fff}.nav .ico{width:18px;text-align:center}.sidefoot{text-align:center;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:hsla(0,0%,100%,.4)}.main{padding:26px 30px;max-width:1200px}h1{font-size:22px;letter-spacing:.01em}.sub-title{color:var(--muted);font-size:13px;margin-top:3px}.grid{display:grid;grid-gap:14px;gap:14px}.cols-2{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width:900px){.cols-2,.cols-3,.cols-4{grid-template-columns:1fr 1fr}.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}}.card{background:#fff;border:1px solid #e5e9f0;border-radius:14px}.card-pad{padding:16px 18px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--crimson)}.stat{padding:12px 14px}.stat .label{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.stat .value{font-size:21px;font-weight:800;margin-top:2px}.stat .value.good{color:var(--good)}.stat .value.warn{color:var(--warn)}.badge{display:inline-block;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;border:1px solid #e5e9f0;color:var(--muted)}.badge-ok{color:var(--good);border-color:rgba(23,138,80,.3);background:rgba(23,138,80,.08)}.badge-warn{color:var(--warn);border-color:rgba(217,119,6,.3);background:rgba(217,119,6,.08)}.badge-danger{color:var(--danger);border-color:rgba(193,18,31,.3);background:rgba(193,18,31,.08)}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th{text-align:left;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:8px 10px;border-bottom:1px solid #e5e9f0;white-space:nowrap}table.data td{padding:9px 10px;border-bottom:1px solid #f0f3f7;vertical-align:top}table.data td.num,table.data th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.btn{display:inline-block;font:inherit;font-size:13px;font-weight:700;cursor:pointer;border:1px solid #d8dee9;background:#fff;color:var(--navy);padding:9px 15px;border-radius:10px;text-decoration:none}.btn:hover{border-color:var(--navy)}.btn-primary{background:var(--crimson);border-color:var(--crimson);color:#fff}.btn-primary:hover{background:#a50f1a;border-color:#a50f1a;color:#fff}.btn-sm{padding:5px 11px;font-size:11.5px;border-radius:8px}.input{width:100%;font:inherit;font-size:14px;padding:11px 13px;border-radius:10px;border:1px solid #d8dee9;background:#fff;color:var(--navy);outline:none}.input:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(11,37,69,.08)}.field label{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.error{color:var(--danger);font-size:13px;background:rgba(193,18,31,.06);border:1px solid rgba(193,18,31,.2);border-radius:10px;padding:10px 12px;margin-bottom:12px}.empty{font-size:13.5px;text-align:center;padding:30px 0}.empty,.muted{color:var(--muted)}.auth-wrap{min-height:100vh;display:grid;place-items:center;background:var(--navy)}.auth-card{width:380px;background:#fff;border-radius:18px;padding:34px}.auth-card .foot{text-align:center;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:22px}.spacer{flex:1 1}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.mt{margin-top:14px}.tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}