:root{--bg: var(--tg-theme-bg-color, #ffffff);--fg: var(--tg-theme-text-color, #111111);--hint: var(--tg-theme-hint-color, #8a8a8a);--link: var(--tg-theme-link-color, #2481cc);--btn: var(--tg-theme-button-color, #2481cc);--btn-fg: var(--tg-theme-button-text-color, #fff);--sec: var(--tg-theme-secondary-bg-color, #f4f4f5);--ok: #1a7f37;--warn: #9a6700;--crit: #cf222e;--unknown: #6e7781;--muted: #8b949e}html[data-scheme=dark]{--ok: #3fb950;--warn: #d29922;--crit: #f85149;--unknown: #8b949e;--muted: #6e7681}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;padding-bottom:env(safe-area-inset-bottom)}#root{min-height:100vh;min-height:var(--tg-viewport-stable-height, 100vh)}.tabs{display:flex;gap:4px;padding:8px 12px;background:var(--sec);position:sticky;top:0;z-index:2}.tabs button{flex:1;border:0;background:transparent;color:var(--hint);padding:10px 8px;border-radius:8px;font:inherit}.tabs button.active{background:var(--bg);color:var(--fg);font-weight:600}.banner{margin:12px;padding:14px 16px;border-radius:12px;background:var(--sec)}.banner.ok{border-left:4px solid var(--ok)}.banner.blind{border-left:4px solid var(--warn)}.banner.problems{border-left:4px solid var(--crit)}.banner.offline{border-left:4px solid var(--unknown)}.banner h2{margin:0 0 4px;font-size:18px}.banner .sub{color:var(--hint);font-size:13px}.list{margin:0;padding:0;list-style:none}.row{display:flex;align-items:center;gap:10px;min-height:52px;padding:10px 14px;border-bottom:1px solid color-mix(in srgb,var(--hint) 25%,transparent);cursor:pointer}.row:active{background:var(--sec)}.row .meta{margin-left:auto;color:var(--hint);font-size:13px;text-align:right}.badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;text-transform:uppercase}.badge.ok{color:var(--ok)}.badge.warn{color:var(--warn)}.badge.crit{color:var(--crit)}.badge.unknown,.badge.muted{color:var(--unknown)}.section{padding:8px 14px 4px;color:var(--hint);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 12px}.tile{background:var(--sec);border-radius:10px;padding:12px}.tile .label{color:var(--hint);font-size:12px}.tile .val{font-size:20px;font-weight:600}.btn-row{display:flex;gap:8px;padding:8px 12px;flex-wrap:wrap}button.primary,button.ghost{border:0;border-radius:10px;padding:10px 14px;font:inherit}button.primary{background:var(--btn);color:var(--btn-fg)}button.ghost{background:var(--sec);color:var(--fg)}button:disabled{opacity:.45}.empty,.err,.skel{padding:24px 16px;color:var(--hint);text-align:center}.err{color:var(--crit)}.logs{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;padding:8px 12px 24px;white-space:pre-wrap;word-break:break-word}.logs .line{padding:2px 0}.chip-row{display:flex;gap:6px;padding:8px 12px;overflow-x:auto}.chip{border:0;background:var(--sec);color:var(--fg);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;white-space:nowrap}.chip.on{background:var(--btn);color:var(--btn-fg)}.chart-wrap{margin:8px 12px 16px;height:180px;overflow:hidden;position:relative}.color-badge{font-size:11px;border:1px solid var(--link);color:var(--link);border-radius:4px;padding:1px 6px}.color-badge.green{border-color:#0d9488;color:#0d9488}.dev-panel{position:fixed;right:8px;bottom:8px;background:var(--sec);border-radius:8px;padding:8px;font-size:12px;z-index:9;max-width:200px}.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{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;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.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{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;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}
