.uplot,.uplot *,.uplot :before,.uplot :after{box-sizing:border-box}.uplot{width:min-content;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{-webkit-user-select:none;user-select:none;position:relative}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{width:100%;height:100%;display:block;position:relative}.u-axis{position:absolute}.u-legend{text-align:center;margin:auto;font-size:14px}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{pointer-events:none;background:#00000012;position:absolute}.u-cursor-x,.u-cursor-y{pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.u-hz .u-cursor-x,.u-vt .u-cursor-y{border-right:1px dashed #607d8b;height:100%}.u-hz .u-cursor-y,.u-vt .u-cursor-x{border-bottom:1px dashed #607d8b;width:100%}.u-cursor-pt{pointer-events:none;will-change:transform;border:0 solid;border-radius:50%;position:absolute;top:0;left:0;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}:root{--text:#1f2430;--muted:#5f6675;--bg:#f4f6f9;--card:#fff;--border:#d9dee6;--primary:#1d6fd1;--danger:#c62828;--ok:#2e7d32;--warn:#b26a00;color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:18px/1.45 system-ui,Segoe UI,Roboto,sans-serif}@media (width<=720px){:root{font-size:16px}}*{box-sizing:border-box}body{margin:0}h1{margin:0 0 1rem;font-size:1.8rem}h2{margin:0 0 .75rem;font-size:1.3rem}h3{margin:1rem 0 .5rem;font-size:1.1rem}a{color:var(--primary)}code{word-break:break-all;background:#eef1f5;border-radius:4px;padding:2px 6px;font-size:.95em}pre{white-space:pre-wrap;word-break:break-all;background:#eef1f5;border-radius:6px;margin:.5rem 0;padding:.75rem;font-size:.9rem;overflow:auto}.topbar{background:var(--card);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1.5rem;padding:.6rem 1.25rem;display:flex}.brand{font-size:1.15rem;font-weight:700}.topbar nav{flex-wrap:wrap;flex:1;gap:.25rem;display:flex}.topbar nav a{color:var(--text);border-radius:6px;padding:.4rem .8rem;font-weight:500;text-decoration:none}.topbar nav a.active{background:var(--primary);color:#fff}.who{align-items:center;gap:1rem;display:flex}.who small{color:var(--muted)}.banner{padding:.75rem 1.25rem;font-weight:500}.banner.warn{color:var(--warn);background:#fff4d6}.banner.bad{color:var(--danger);background:#fde3e3}main{max-width:1200px;margin:0 auto;padding:1.25rem}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;margin-bottom:1.25rem;padding:1.25rem}.card-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.page-head h1{flex-wrap:wrap;align-items:center;gap:.75rem;margin:0;display:flex}.form label,.auth label{flex-direction:column;gap:.3rem;margin-bottom:1rem;font-weight:500;display:flex}label.check{flex-direction:row;align-items:center;gap:.5rem}.grid label:not(.check)>:is(input,select),.row label:not(.check)>:is(input,select){margin-top:auto}.grid label.check{min-height:2.9rem;margin-top:auto}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 1.25rem;display:grid}.row{flex-wrap:wrap;align-items:end;gap:.75rem;margin:.5rem 0;display:flex}.row label{flex-direction:column;gap:.3rem;font-weight:500;display:flex}input,select,button,.button{font:inherit;border:1px solid var(--border);color:var(--text);background:#fff;border-radius:8px;padding:.6rem .9rem}input[type=checkbox]{width:1.3rem;height:1.3rem;padding:0}input.num{width:7rem;padding:.35rem .5rem}button,.button{cursor:pointer;background:#f1f3f6;font-weight:600;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#e4e8ee}button:disabled,.button.disabled{opacity:.5;cursor:default;pointer-events:none}button.primary,.button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}button.danger{color:var(--danger);border-color:var(--danger);background:#fff}button.danger:hover{background:#fde3e3}button.small{padding:.3rem .7rem;font-size:.9rem}button.link{color:var(--primary);background:0 0;border:none;padding:0;text-decoration:underline}button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.period{flex-wrap:wrap;gap:.25rem;display:flex}.error{color:var(--danger);background:#fde3e3;border-radius:8px;margin:.5rem 0;padding:.6rem .9rem}.ok{color:var(--ok);font-weight:600}.muted{color:var(--muted)}.small-text{font-size:.85rem}.warn-text{color:var(--warn);font-weight:600}.auth{justify-content:center;align-items:center;min-height:100svh;padding:1rem;display:flex}.auth .card{width:100%;max-width:440px}.auth input,.auth button.primary{width:100%}.links{flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin:1rem 0 0;display:flex}.cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.device-card{color:inherit;border-left:6px solid var(--border);margin:0;text-decoration:none}.device-card:hover{border-color:var(--primary)}.device-card.status-ok{border-left-color:var(--ok)}.device-card.status-alert{border-left-color:var(--danger)}.device-card strong{font-size:1.15rem}.badge{white-space:nowrap;border-radius:999px;padding:.15rem .6rem;font-size:.85rem;font-weight:600;display:inline-block}.badge-ok{color:var(--ok);background:#dff3e0}.badge-alert{color:var(--danger);background:#fde3e3}.badge-offline{color:#555;background:#e3e6ea}.badge-never{color:var(--muted);background:#eef1f5}.ingest-accepted{color:var(--ok);background:#dff3e0}.ingest-bad_token{background:var(--danger);color:#fff}.ingest-unparsed,.ingest-empty{color:var(--warn);background:#fff4d6}.token-box{background:#fffbe6;border:2px solid #f0c000;border-radius:10px;margin:1rem 0;padding:1.25rem}.token-box h2{margin-top:0}code.token{background:#fff;border:1px dashed #c9a600;padding:.75rem;font-size:1.2rem;display:block}.kv th{text-align:left;padding-right:1rem}.chart{margin-top:1rem}.chart h3{margin:0 0 .25rem}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:.55rem .7rem}td>input,td>select,td>button{padding:.4rem .6rem}th{color:var(--muted);white-space:nowrap;font-size:.9rem;font-weight:600}tr.row-alert td{background:#fff1f1}tr.row-current td{background:#eef6ff}tr.org-blocked td{background:#fff1f1}tr.org-pending td{background:#fffbe6}td.ua{text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}details summary{cursor:pointer;color:var(--primary)}details pre{max-width:480px}.captcha{min-height:1px;margin-bottom:1rem}.downloads{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}
