@layer tokens{:root{--bg:#f3f5f3;--bg-grid:#1020140d;--surface:#fff;--surface-2:#eef1ee;--surface-3:#e4e9e5;--line:#dde3de;--line-strong:#c9d1cb;--ink:#0d1510;--ink-2:#344038;--muted:#5a675e;--brand:#10e80c;--brand-hover:#32ef2e;--brand-ink:#062b05;--brand-glow:color-mix(in srgb, var(--brand) 45%, transparent);--accent:#078a05;--accent-soft:#e1f7df;--ok:#067004;--ok-soft:var(--accent-soft);--warn:#9a6200;--warn-soft:#fdf1d6;--bad:#c42b2d;--bad-soft:#fde4e4;--on-solid:#fff;--shadow:#0d15101f;--term-bg:#0b0f0c;--term-ink:#cfe9d6;--term-dim:#6f8a77;--term-line:#1a221d;--term-btn-bg:#18201b;--term-btn-ink:#d7e6dc;--term-btn-line:#2a352e;--term-btn-hover:#222c25;--term-warn:#ffc23d;--font-display:"Archivo", "IBM Plex Sans", system-ui, sans-serif;--font-ui:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--fs-root:14.5px;--fs-3xs:.62rem;--fs-2xs:.68rem;--fs-xs:.72rem;--fs-sm:.76rem;--fs-md:.8rem;--fs-base:.84rem;--fs-body:.9rem;--fs-lg:1rem;--fs-xl:1.15rem;--fs-lead:1.3rem;--fs-2xl:1.6rem;--fs-3xl:1.9rem;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:48px;--r-xs:6px;--r-sm:8px;--r:10px;--r-lg:14px;--r-xl:18px;--r-pill:999px;--control-h:36px;--control-h-sm:30px;--control-h-lg:44px;--control-h-xl:48px;--icon-box:32px;--icon-box-lg:72px;--led:8px;--ring:3px;--rail:3px;--row-h:60px;--bg-grid-size:22px;--col-min:340px;--card-w:400px;--signin-w:480px;--copy-w:520px;--page-narrow:720px;--page-max:1180px;--page-x:20px;--side-w:232px;--rail-w:280px;--topbar-h:calc(53px + env(safe-area-inset-top));--tabbar-h:56px;--tabs-h:40px;--z-bars:30;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0b0e0c;--bg-grid:#10e80c09;--surface:#121714;--surface-2:#171d19;--surface-3:#1e2620;--line:#232c26;--line-strong:#2f3a33;--ink:#e8efe9;--ink-2:#b9c6bd;--muted:#839188;--accent:#3cf03a;--accent-soft:#10e80c1a;--ok:#3cf03a;--warn:#ffc23d;--warn-soft:#ffb8001a;--bad:#ff6b6d;--bad-soft:#ff4d4f1c;--on-solid:#1b0507;--term-bg:#070a08;--shadow:#00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (pointer:coarse){:root{--tabs-h:48px}}}@layer base{*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background-color:var(--bg);background-image:radial-gradient(var(--bg-grid) 1px,transparent 1px);background-size:var(--bg-grid-size) var(--bg-grid-size);color:var(--ink);font-family:var(--font-ui);font-size:var(--fs-root);-webkit-font-smoothing:antialiased;line-height:1.55}a{color:inherit;text-decoration:none}ol,p,ul{margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:600;line-height:1.2}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}.mono,code{font-family:var(--font-mono);font-size:.92em}ol,ul{padding-left:var(--sp-5)}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.label,.muted{color:var(--muted)}.small{font-size:var(--fs-base)}.tiny{font-size:var(--fs-sm)}.strong{font-weight:600}.label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:500}.num{font-variant-numeric:tabular-nums}.row{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.stack{gap:var(--sp-3);display:grid}.grow{flex:1;min-width:0}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.link{cursor:pointer;text-decoration:underline}.plain{padding:0;list-style:none}.ok-text{color:var(--ok)}.warn-text{color:var(--warn)}.bad-text{color:var(--bad)}}@layer components{.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-5);gap:var(--sp-4);align-content:start;min-width:0;display:grid}.panel-head{justify-content:space-between;align-items:center;gap:var(--sp-2) var(--sp-3);flex-wrap:wrap;display:flex}.panel-head h3{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:var(--sp-2);flex:1;min-width:0;font-weight:600;display:flex}.panel-head h3:after{content:"";background:var(--line);flex:1;height:1px}.grid2{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(var(--col-min),50% - var(--sp-4))),1fr));gap:var(--sp-4);display:grid}.panel-intro{align-items:flex-start;gap:var(--sp-3);flex-wrap:wrap;display:flex}.panel-intro>div{flex:1;min-width:0}.list-panel{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.list-panel>li{gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);display:flex}.list-panel>li+li{border-top:1px solid var(--line)}.btn{--b-bg:var(--surface);--b-ink:var(--ink);--b-line:var(--line-strong);--b-hover:var(--surface-2);justify-content:center;align-items:center;gap:var(--sp-2);font:inherit;font-weight:500;font-size:var(--fs-body);height:var(--control-h);padding:0 var(--sp-4);border-radius:var(--r);border:1px solid var(--b-line);background:var(--b-bg);color:var(--b-ink);cursor:pointer;white-space:nowrap;line-height:1;transition:background .15s,border-color .15s,transform 50ms;display:inline-flex}.btn:hover:not(:disabled){background:var(--b-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn.btn-primary{--b-bg:var(--brand);--b-ink:var(--brand-ink);--b-line:var(--brand);--b-hover:var(--brand-hover);font-weight:600}.btn.btn-ghost{--b-bg:transparent;--b-line:transparent}.btn.btn-danger{--b-ink:var(--bad)}.btn.btn-danger-solid{--b-bg:var(--bad);--b-ink:var(--on-solid);--b-line:var(--bad)}.btn.btn-sm{height:var(--control-h-sm);padding:0 var(--sp-3);font-size:var(--fs-base);border-radius:var(--r-sm)}.btn.btn-lg{height:var(--control-h-lg);padding:0 var(--sp-5);font-size:var(--fs-lg);border-radius:var(--r)}.btn.btn-icon{width:var(--control-h);padding:0}.btn.btn-sm.btn-icon{width:var(--control-h-sm)}@media (pointer:coarse){.btn{height:auto;min-height:var(--control-h-lg)}.btn.btn-icon{min-width:var(--control-h-lg)}}.input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r);height:var(--control-h);padding:0 var(--sp-3);width:100%;min-width:0}.input:focus{border-color:var(--accent);box-shadow:0 0 0 var(--ring) var(--accent-soft);outline:none}@media (pointer:coarse){.input{height:auto;min-height:var(--control-h-lg)}}.led{width:var(--led);height:var(--led);background:var(--line-strong);border-radius:50%;flex:none}.led.ok{background:var(--brand);box-shadow:0 0 0 var(--ring) var(--ok-soft),0 0 var(--sp-3) var(--brand-glow)}.led.warn{background:var(--warn);box-shadow:0 0 0 var(--ring) var(--warn-soft)}.led.bad{background:var(--bad);box-shadow:0 0 0 var(--ring) var(--bad-soft)}.pill{align-items:center;gap:var(--sp-1);height:var(--sp-6);padding:0 var(--sp-3);border-radius:var(--r-pill);font-size:var(--fs-md);white-space:nowrap;background:var(--surface-2);color:var(--ink-2);font-weight:500;display:inline-flex}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.status-ico{width:var(--sp-6);height:var(--sp-6);background:var(--surface-2);color:var(--muted);border-radius:50%;flex:none;place-items:center;display:grid}.status-ico.lg{width:var(--icon-box);height:var(--icon-box)}.status-ico.ok{background:var(--ok-soft);color:var(--ok)}.status-ico.warn{background:var(--warn-soft);color:var(--warn)}.status-ico.bad{background:var(--bad-soft);color:var(--bad)}.kv{gap:var(--sp-2) var(--sp-4);font-size:var(--fs-body);grid-template-columns:minmax(7em,max-content) 1fr;margin:0;display:grid}.kv dt{color:var(--muted)}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.term{background:var(--term-bg);color:var(--term-ink);font-family:var(--font-mono);font-size:var(--fs-md);border-radius:var(--r);padding:var(--sp-3) var(--sp-4);white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--term-line);margin:0;line-height:1.6;overflow:auto}.skel{background:linear-gradient(90deg,var(--surface-2),var(--surface-3),var(--surface-2));border-radius:var(--r-xs);min-height:var(--sp-3);background-size:200% 100%}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:1em;height:1em;display:inline-block}.spinner.spinner-sm{width:.8em;height:.8em}.radar{width:var(--icon-box);height:var(--icon-box);flex:none;place-items:center;display:grid;position:relative}.radar:before{width:var(--sp-3);height:var(--sp-3);background:var(--brand);box-shadow:0 0 var(--sp-3) var(--brand-glow)}.radar:after,.radar:before{content:"";border-radius:50%}.radar:after{border:2px solid var(--brand);opacity:0;position:absolute;inset:0}@media (prefers-reduced-motion:no-preference){.skel{animation:1.4s ease-in-out infinite shimmer}.spinner{animation:.75s linear infinite spin}.led.ok.live{animation:2.4s ease-in-out infinite breathe}.fade-in{animation:.25s ease-out both fadein}.radar:after{animation:1.8s ease-out infinite ping}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes breathe{50%{box-shadow:0 0 0 calc(2px + var(--ring)) var(--ok-soft),0 0 var(--sp-4) var(--brand-glow)}}@keyframes fadein{0%{opacity:.4;transform:translateY(.2em)}to{opacity:1;transform:none}}@keyframes ping{0%{opacity:.9;transform:scale(.35)}to{opacity:0;transform:scale(1.25)}}}.empty{text-align:center;justify-items:center;gap:var(--sp-3);padding:var(--sp-8) var(--sp-5);border:1px dashed var(--line-strong);border-radius:var(--r-xl);background:var(--surface);display:grid}.empty p{max-width:42ch}.host-table{--cols:var(--rail) var(--sp-5) minmax(0, 1.3fr) minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, .9fr) minmax(0, .6fr) minmax(0, .6fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;overflow:clip}.host-table-head,.host-table-row{grid-template-columns:var(--cols);gap:var(--sp-2);padding-right:var(--sp-4);align-items:center;display:grid}.host-table-head{height:var(--control-h);font-family:var(--font-mono);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface-2)}.host-table-head .end{text-align:right}@media (width<=720px){.host-table-head{display:none}}}@layer shell{.page{width:100%;max-width:var(--page-max);padding:var(--sp-6) max(var(--page-x),env(safe-area-inset-right)) var(--sp-8) max(var(--page-x),env(safe-area-inset-left));gap:var(--sp-5);grid-template-columns:minmax(0,1fr);align-content:start;margin:0 auto;display:grid}.page.page-narrow{max-width:var(--page-narrow)}@media (width<=860px){.page{padding-top:var(--sp-4)}}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-4);flex-wrap:wrap;display:flex}.page-head p{margin-top:var(--sp-1)}}
