:root{--bg:#f5f7f9;--panel:#fff;--panel-strong:#edf3f6;--text:#162126;--muted:#66757f;--line:#d8e0e5;--accent:#0f766e;--accent-dark:#0b5f59;--warning:#b7791f;--danger:#b42318;--radius:8px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;border:0}.appShell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#eff7f8;background:#10272c;padding:22px 18px}.brand{align-items:center;gap:12px;min-height:48px;display:flex}.brandMark{border-radius:var(--radius);color:#123235;background:#d7f2ec;place-items:center;width:42px;height:42px;font-weight:800;display:inline-grid}.brand strong,.brand small{display:block}.brand small{color:#a8c2c7;margin-top:2px}.navLinks{gap:6px;margin-top:30px;display:grid}.navLinks a{color:#d6e7ea;border-radius:var(--radius);padding:10px 12px}.navLinks a:hover{background:#ffffff14}.main{min-width:0;padding:28px}.pageHeader{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;display:flex}.pageHeader h1{letter-spacing:0;margin:0;font-size:28px;line-height:1.2}.pageHeader h2{margin:0}.pageHeader p{color:var(--muted);margin:6px 0 0}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.panel h2{margin:0 0 14px;font-size:17px}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.metricGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.metricCard{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:94px;padding:14px}.metricCard span{color:var(--muted);font-size:13px;display:block}.metricCard strong{margin-top:8px;font-size:24px;line-height:1.15;display:block}.input,.select{border:1px solid var(--line);border-radius:var(--radius);min-height:40px;color:var(--text);background:#fff;padding:0 11px}.input{min-width:220px}.btn{border-radius:var(--radius);background:var(--accent);color:#fff;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 13px;font-weight:650;display:inline-flex}.btn:hover{background:var(--accent-dark)}.btn.secondary{color:#203138;background:#e7edf0}.btn.danger{background:var(--danger)}.btn.iconOnly{width:40px;padding:0}.btn:disabled{cursor:not-allowed;opacity:.55}.stack{gap:16px;display:grid}.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tableWrap{border:1px solid var(--line);border-radius:var(--radius);overflow:auto}table{border-collapse:collapse;background:#fff;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px;font-size:14px}th{background:var(--panel-strong);color:#34454d;white-space:nowrap}td{color:#26373e}.tableSort{color:inherit;background:0 0;padding:0;font-weight:700}.muted{color:var(--muted)}.error{color:var(--danger)}.empty{color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius);background:#fbfcfd;padding:18px}.chartBox{min-height:310px}.simpleChart{width:100%;height:260px;display:block}.legendSwatch{border-radius:2px;width:10px;height:10px;margin-right:5px;display:inline-block}.statusLine{color:var(--muted);align-items:center;gap:8px;display:flex}.statusDot{background:var(--warning);border-radius:999px;width:8px;height:8px}@media (max-width:920px){.appShell,.metricGrid,.grid2,.formGrid{grid-template-columns:1fr}.main{padding:18px}}
