:root{color:#17202a;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px}button,select{font:inherit}button{border:1px solid #1f5f8b;background:#1f5f8b;color:#fff;min-height:38px;padding:0 14px;border-radius:6px;cursor:pointer}button:disabled{border-color:#aeb8c2;background:#d8dee4;color:#66717d;cursor:not-allowed}select{min-height:38px;border:1px solid #bec8d2;border-radius:6px;background:#fff;color:#17202a;padding:0 10px}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:#fff;border-bottom:1px solid #dbe2ea}.topbar h1{margin:0;font-size:24px;line-height:1.2}.topbar p{margin:4px 0 0;color:#5d6a76;font-size:14px}.status{min-width:110px;text-align:right;font-weight:700}.status.muted{color:#7f8b96}.filters{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(120px,.5fr) minmax(110px,.4fr) auto;gap:12px;padding:16px 24px;background:#eef2f5;border-bottom:1px solid #dbe2ea}.filters label{display:grid;gap:5px}.filters span{color:#4f5d69;font-size:12px;font-weight:700}.filters button{align-self:end}.table-section{min-width:0;overflow:hidden}.table-wrap{width:100%;height:100%;overflow:auto}table{width:100%;border-collapse:collapse;background:#fff;font-size:13px}th,td{border-bottom:1px solid #e3e8ee;padding:9px 10px;text-align:right;white-space:nowrap}th{position:sticky;top:0;z-index:1;background:#273849;color:#fff;font-weight:700}th:nth-child(2),td:nth-child(2),th:nth-child(3),td:nth-child(3){text-align:left}tbody tr:hover{background:#f7fafc}.state{padding:48px 24px;color:#5d6a76;text-align:center}.state.error{color:#b42318}.pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 24px;background:#fff;border-top:1px solid #dbe2ea}.pager span{min-width:160px;color:#4f5d69;text-align:center}@media(max-width:760px){.topbar{align-items:flex-start;flex-direction:column}.status{text-align:left}.filters{grid-template-columns:1fr}.filters button{width:100%}.pager{justify-content:space-between}}
