:root{--bg:#14181d;--panel:#1c2229;--panel-2:#232a33;--border:#2d3640;--text:#e6edf3;--muted:#8b98a5;--ok:#3fb950;--warn:#d29922;--crit:#f85149;--unknown:#6e7681;--accent:#4493f8;--radius:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Roboto,sans-serif;font-size:14px;line-height:1.5}.topbar{background:var(--panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:12px 20px;display:flex;position:sticky;top:0}.topbar h1{margin:0;font-size:16px;font-weight:600}.topbar .host{color:var(--muted);font-size:13px}.topbar .spacer{flex:1}.topbar button{background:var(--panel-2);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px}.topbar button:hover{background:var(--border)}.grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));align-items:start;gap:14px;padding:16px 20px 40px;display:grid}.grid .wide{grid-column:span 2}@media (max-width:760px){.grid{grid-template-columns:1fr;padding:12px}.grid .wide{grid-column:span 1}}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.card>header{border-bottom:1px solid var(--border);background:var(--panel-2);align-items:center;gap:8px;padding:10px 14px;display:flex}.card>header h2{flex:1;margin:0;font-size:14px;font-weight:600}.card>header .meta{color:var(--muted);font-size:11px}.card>.body{padding:12px 14px}.dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot.ok{background:var(--ok)}.dot.warn{background:var(--warn)}.dot.crit{background:var(--crit)}.dot.unknown{background:var(--unknown)}.badge{white-space:nowrap;border:1px solid;border-radius:999px;padding:1px 7px;font-size:11px}.badge.ok{color:var(--ok)}.badge.warn{color:var(--warn)}.badge.crit{color:var(--crit)}.badge.unknown{color:var(--unknown)}.notice{background:var(--panel-2);border:1px dashed var(--border);color:var(--muted);border-radius:8px;padding:10px 12px;font-size:12.5px}.notice strong{color:var(--warn)}.metric{margin-bottom:12px}.metric:last-child{margin-bottom:0}.metric .label{justify-content:space-between;align-items:baseline;margin-bottom:4px;font-size:12.5px;display:flex}.metric .label .name{color:var(--muted)}.metric .label .value{font-variant-numeric:tabular-nums}.bar{background:var(--panel-2);border-radius:3px;height:6px;overflow:hidden}.bar>span{border-radius:3px;height:100%;transition:width .4s;display:block}.bar>span.ok{background:var(--ok)}.bar>span.warn{background:var(--warn)}.bar>span.crit{background:var(--crit)}.stat-row{flex-wrap:wrap;gap:18px;margin-bottom:12px;display:flex}.stat{min-width:74px}.stat .k{color:var(--muted);font-size:11px}.stat .v{font-variant-numeric:tabular-nums;font-size:18px}.rows{flex-direction:column;display:flex}.row{border-bottom:1px solid var(--border);align-items:center;gap:9px;padding:7px 0;font-size:12.5px;display:flex}.row:last-child{border-bottom:none}.row .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.row .sub{color:var(--muted);font-size:11.5px}.row .num{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.login-wrap{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:340px;padding:26px}.login-card h1{margin:0 0 4px;font-size:18px}.login-card p.sub{color:var(--muted);margin:0 0 20px;font-size:12.5px}.login-card label{color:var(--muted);margin-bottom:5px;font-size:12.5px;display:block}.login-card input{background:var(--bg);width:100%;color:var(--text);border:1px solid var(--border);border-radius:6px;margin-bottom:14px;padding:9px 11px;font-size:14px}.login-card input:focus{border-color:var(--accent);outline:none}.login-card button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;width:100%;padding:10px;font-size:14px;font-weight:600}.login-card button:disabled{opacity:.6;cursor:default}.error{color:var(--crit);margin-bottom:12px;font-size:12.5px}@media (max-width:560px){.topbar{flex-wrap:wrap;row-gap:6px;padding:10px 14px}.topbar h1{font-size:15px}.topbar .host{flex-basis:100%;order:10}.topbar .spacer{flex:1}.topbar button{padding:5px 10px;font-size:12.5px}.row{align-items:flex-start}.row .name{white-space:normal;word-break:break-word}.row .num{white-space:normal;word-break:break-word;text-align:right;max-width:52%}.row .dot{margin-top:5px}}
