:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#17202a;background:#f5f7fa}*{box-sizing:border-box}body{margin:0}.shell{max-width:1180px;margin:0 auto;padding:42px 22px 60px}header{margin-bottom:28px}.kicker{color:#148a7d;font-size:12px;font-weight:800;letter-spacing:1.6px}h1{font-size:34px;line-height:1;margin:8px 0;color:#102a43}h2{font-size:17px;color:#102a43;margin:0 0 14px}.muted{color:#627d98;font-size:13px}.panel{background:#fff;border:1px solid #d9e2ec;border-radius:14px;padding:22px;box-shadow:0 4px 18px #102a4310}.hidden{display:none!important}form{max-width:420px}label{display:block;font-size:13px;font-weight:700;margin:14px 0}input{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #bcccdc;border-radius:8px;font-size:15px}button{border:0;border-radius:8px;background:#102a43;color:#fff;padding:11px 17px;font-weight:700;cursor:pointer}button.secondary{background:#e8f0fe;color:#2455a4;margin-left:7px}.toolbar{display:flex;align-items:center;justify-content:flex-end;margin-bottom:14px}.toolbar>div{margin-right:auto}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.metric{background:#fff;border:1px solid #d9e2ec;border-radius:12px;padding:16px}.metric .label{color:#627d98;font-size:12px}.metric .value{font-size:27px;font-weight:800;color:#102a43;margin-top:7px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid .panel{min-height:190px}.row{display:flex;justify-content:space-between;border-bottom:1px solid #edf2f7;padding:9px 0;font-size:13px}.empty{color:#829ab1;font-size:13px;padding:12px 0}.error{color:#c53030;font-size:13px;margin-top:14px}.notes{margin-top:16px;color:#627d98;font-size:12px}.spinner{width:24px;height:24px;border:3px solid #d9e2ec;border-top-color:#148a7d;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:14px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:800px){.cards{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap;gap:8px}.toolbar>div{width:100%;margin-bottom:8px}button.secondary{margin-left:0}}

