:root{--bg:#0f1220;--card:#181c30;--line:#262b47;--tx:#e8eaf6;--mut:#8b91b8;--ac:#7c8cff;--ac2:#5eead4;--bad:#ff6b8a;--ok:#4ade80}
@media (prefers-color-scheme:light){:root{--bg:#f4f5fb;--card:#fff;--line:#e3e5f2;--tx:#1b1e33;--mut:#6a6f93;--ac:#5560ee;--ac2:#0d9488;--bad:#e11d48;--ok:#16a34a}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.wrap{max-width:880px;margin:0 auto;padding:0 16px 48px}
nav{display:flex;align-items:center;gap:14px;padding:16px 0;flex-wrap:wrap}nav .logo{font-weight:700;font-size:20px;margin-right:auto}
nav a{color:var(--mut);text-decoration:none}nav a:hover{color:var(--tx)}
h1{font-size:28px;margin:8px 0 4px}h2{font-size:18px;margin:0 0 12px}.sub{color:var(--mut);margin:0 0 20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px}
.hero{text-align:center;padding:56px 0 24px}.hero h1{font-size:38px;background:linear-gradient(90deg,var(--ac),var(--ac2));-webkit-background-clip:text;background-clip:text;color:transparent}
input,select,textarea{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--tx);font:inherit;margin-bottom:10px}
.btn{display:inline-block;background:var(--ac);color:#fff;border:0;border-radius:10px;padding:10px 16px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--tx)}.btn.sm{padding:5px 10px;font-size:14px}.btn.bad{background:var(--bad)}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row>*{flex:0 0 auto}.grow{flex:1 1 160px!important}
table{width:100%;border-collapse:collapse;font-size:15px}td,th{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:middle}th{color:var(--mut);font-weight:500}
.tbl{overflow-x:auto}code,.mono{font-family:ui-monospace,Menlo,monospace;font-size:14px;word-break:break-all}
.pill{display:inline-block;padding:2px 9px;border-radius:99px;font-size:13px;background:var(--line);color:var(--mut)}.pill.ok{color:var(--ok)}.pill.bad{color:var(--bad)}
.msg{background:var(--card);border:1px solid var(--ac);border-radius:12px;padding:10px 14px;margin-bottom:16px}.err{color:var(--bad);margin:0 0 10px}
.code{font-size:30px;letter-spacing:4px;font-weight:700;color:var(--ac2)}.empty{color:var(--mut);text-align:center;padding:14px}
form.inline{display:inline;margin:0}.cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:700px){.cols{grid-template-columns:1fr}}
.adm{display:grid;grid-template-columns:190px 1fr;gap:20px}@media(max-width:760px){.adm{grid-template-columns:1fr}}
.side{display:flex;flex-direction:column;gap:4px}@media(max-width:760px){.side{flex-direction:row;overflow-x:auto}}
.side a{padding:9px 12px;border-radius:10px;color:var(--mut);text-decoration:none;white-space:nowrap}.side a:hover{background:var(--card);color:var(--tx)}.side a.on{background:var(--card);color:var(--tx);border:1px solid var(--line)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-bottom:16px}.kpi{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}
.kpi b{display:block;font-size:28px}.kpi span{color:var(--mut);font-size:14px}.kpi.hot b{color:var(--bad)}
.tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.bar{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--ac),var(--ac2))}
#log{height:55vh;min-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px}
.b{max-width:85%;padding:10px 14px;border-radius:14px;white-space:pre-wrap;word-break:break-word}.b.u{align-self:flex-end;background:var(--ac);color:#fff}.b.a{align-self:flex-start;background:var(--bg);border:1px solid var(--line)}
.dl{display:inline-block;margin:6px 6px 0 0}
