:root{--bg:#0d1117;--card:#161b22;--line:#252c36;--txt:#e6edf3;--mut:#8b949e;--acc:#5b8def;--ok:#35d39a;--bad:#ef6b6b;--warn:#f2b84b}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--txt);font:14px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--acc);text-decoration:none}
.top{display:flex;align-items:center;gap:24px;padding:12px 24px;background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap}
.brand{font-weight:700;letter-spacing:.3px}
.top nav{display:flex;gap:6px;flex:1}
.top nav a{padding:6px 12px;border-radius:8px;color:var(--mut)}
.top nav a.active,.top nav a:hover{background:#1f2630;color:var(--txt)}
.who{display:flex;gap:14px;color:var(--mut);align-items:center}
main{max-width:1280px;margin:0 auto;padding:24px}
h1{margin:0;font-size:22px}h2{margin-top:0}h3{margin:0 0 12px;font-size:15px}
.head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}
.period{display:flex;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:3px}
.period a{padding:5px 12px;border-radius:8px;color:var(--mut)}
.period a.active{background:var(--acc);color:#fff}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:16px}
.card.narrow{max-width:400px;margin:60px auto}
.card.warn{border-color:var(--warn)}
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:16px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.kpi span{display:block;color:var(--mut);font-size:12px}
.kpi b{font-size:20px}
.pos{color:var(--ok)}.neg{color:var(--bad)}.muted{color:var(--mut)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.grid2 .card{margin-bottom:0}
.scroll{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
th{color:var(--mut);font-weight:600;font-size:12px}
label{display:block;margin-bottom:12px;color:var(--mut);font-size:12px}
input,select{display:block;width:100%;margin-top:4px;padding:9px 10px;background:var(--bg);color:var(--txt);border:1px solid var(--line);border-radius:8px}
button{background:var(--acc);color:#fff;border:0;border-radius:8px;padding:9px 16px;cursor:pointer;font-weight:600}
button.mini{padding:4px 9px;font-size:12px;background:#222a35}
.acts{display:flex;gap:4px}.acts form{margin:0}
.badge{padding:2px 8px;border-radius:99px;font-size:11px;font-weight:600}
.badge.ok{background:rgba(53,211,154,.15);color:var(--ok)}
.badge.bad{background:rgba(239,107,107,.15);color:var(--bad)}
.badge.warnb{background:rgba(242,184,75,.15);color:var(--warn)}
.err{color:var(--bad)}
code.key{display:block;padding:10px;background:var(--bg);border-radius:8px;word-break:break-all;user-select:all}
@media(max-width:700px){main{padding:14px}}
