:root{--bg:#0b0e14;--panel:#121826;--line:#1e2839;--fg:#c9d4e3;--dim:#5d6b80;--acc:#38bdf8;--ok:#34d399;--warn:#fbbf24;--bad:#f87171} *{margin:0;padding:0;box-sizing:border-box} body{background:var(--bg);color:var(--fg);font:15px/1.55 ui-sans-serif,system-ui,'Segoe UI',Roboto,sans-serif} .wrap{max-width:1080px;margin:0 auto;padding:28px 20px 60px} h1{font-size:26px;letter-spacing:-.02em} h1 b{color:var(--acc)} .sub{color:var(--dim);margin:6px 0 22px} .hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px} .card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px} .card .k{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--dim)} .card .v{font-size:26px;font-weight:700;margin-top:4px} .card .v.acc{color:var(--acc)}.card .v.ok{color:var(--ok)} h2{font-size:17px;margin:28px 0 12px;display:flex;gap:10px;align-items:baseline} h2 small{color:var(--dim);font-weight:400;font-size:12px} table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:13.5px} th{position:sticky;top:0;background:#0e141f;color:var(--dim);text-transform:uppercase;font-size:11px;letter-spacing:.06em;text-align:left;padding:9px 12px} td{padding:8px 12px;border-top:1px solid var(--line);max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} tr:hover td{background:#151d2e} .badge{display:inline-block;padding:1px 9px;border-radius:99px;font-size:11.5px;font-weight:600} .b-NEW{background:#0e3a2d;color:var(--ok)}.b-DEAD{background:#3a1414;color:var(--bad)}.b-ERR{background:#3a2b0e;color:var(--warn)} .eng{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px} .eng .card{display:flex;justify-content:space-between;align-items:center;gap:10px} .dot{width:10px;height:10px;border-radius:99px;display:inline-block;margin-right:7px} .dot.on{background:var(--ok);box-shadow:0 0 8px var(--ok)} .dot.off{background:#39445a} button{background:#1a2333;color:var(--fg);border:1px solid var(--line);border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer} button:hover{border-color:var(--acc);color:var(--acc)} button.stop:hover{border-color:var(--bad);color:var(--bad)} #log{background:#0a0d12;border:1px solid var(--line);border-radius:12px;padding:14px;font:12.5px/1.5 ui-monospace,Consolas,monospace;white-space:pre-wrap;color:#8fa3bd;max-height:320px;overflow:auto} .bar{height:7px;background:#1a2333;border-radius:99px;overflow:hidden;margin-top:8px} .bar i{display:block;height:100%;background:var(--acc)} .filters{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap} .filters select,.filters input{background:var(--panel);border:1px solid var(--line);color:var(--fg);border-radius:8px;padding:7px 10px;font-size:13px} footer{margin-top:34px;color:var(--dim);font-size:12px}