:root{--bg:#0c0d0b;--surface:#131512;--fg:#e9ecdf;--fg-2:#b4b9a8;--muted:#7c8272;--line:#2a2e27;--line-soft:#1f221d;--jade:#72cb83;--jade-dim:#3c6b45;--amber:#ce7124;--red:#e05a47;--font-mono:"IBM Plex Mono", "JetBrains Mono", ui-monospace, Menlo, monospace;--r:6px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);margin:0}body{font:13px/1.45 var(--font-mono);letter-spacing:.01em}.app{min-height:100vh}.head{border-bottom:1px solid var(--line);background:var(--head-dither,var(--bg)) 0 0 / 100% 100% no-repeat;image-rendering:pixelated;gap:22px;padding:22px max(28px,50vw - 620px) 26px;display:grid}.brand{align-items:baseline;gap:14px;display:flex}.brand b{letter-spacing:-.02em;font-size:28px}.brand span,.muted{color:var(--muted)}.summary{flex-wrap:wrap;align-items:flex-end;gap:28px;display:flex}.big{letter-spacing:-.03em;font-size:44px;font-weight:600;line-height:1}.big small{color:var(--muted);letter-spacing:0;margin-left:6px;font-size:13px;font-weight:400}.big.warn{color:var(--amber)}.big.muted{color:var(--muted)}.refresh{font:inherit;color:var(--bg);background:var(--jade);border-radius:var(--r);cursor:pointer;border:0;margin-left:auto;padding:7px 12px}.refresh:focus-visible{outline:2px solid var(--fg);outline-offset:2px}main{max-width:1240px;margin:0 auto;padding:24px 28px 64px}section{margin-bottom:40px}h2{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 12px;font-size:11px;font-weight:500}h2 i{color:var(--fg-2);font-style:normal}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);gap:10px;padding:14px 14px 12px;display:grid}.card.slow{border-color:#4a3420}.card.down{background:linear-gradient(0deg, #e05a470f, #e05a470f), var(--surface);border-color:#5a2a22}.row{align-items:center;gap:8px;display:flex}.name{font-size:14px;font-weight:600}.url{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.tag{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:1px 5px;font-size:10px}.state{align-items:center;gap:6px;margin-left:auto;font-size:12px;display:inline-flex}.dot{background:currentColor;border-radius:50%;width:7px;height:7px}.state.up{color:var(--jade)}.state.slow{color:var(--amber)}.state.down{color:var(--red)}.state.none{color:var(--muted)}.spark{width:100%;height:34px;display:block}.card .spark path{stroke:var(--jade)}.card.slow .spark path{stroke:var(--amber)}.card.down .spark path{stroke:var(--red)}.meta{border-top:1px dashed var(--line);grid-template-columns:repeat(5,1fr);gap:6px;padding-top:9px;display:grid}.meta div{gap:1px;min-width:0;display:grid}.meta span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.meta b{white-space:nowrap;font-size:12px;font-weight:500}.warn{color:var(--amber)}.bad{color:var(--red)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);margin:0;padding:0;list-style:none}.incident{border-bottom:1px solid var(--line-soft);align-items:baseline;gap:12px;padding:12px 14px;display:flex}.incident:last-child{border-bottom:0}.incident span:nth-child(2){color:var(--fg-2)}.error{color:var(--red);padding:24px 28px}@media (width<=860px){.big{font-size:34px}.meta{grid-template-columns:repeat(3,1fr)}}.link{font:inherit;color:var(--muted);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:7px 4px;text-decoration:underline}.link:hover,.link:focus-visible{color:var(--fg)}.auth{place-items:start center;padding-top:48px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);gap:10px;width:min(380px,100%);padding:22px;display:grid}.auth-card h1{margin:0;font-size:18px}.auth-card p{margin:0 0 6px}.auth-card label{color:var(--fg-2);font-size:12px}.auth-card input{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:9px 10px}.auth-card input:focus-visible{outline:2px solid var(--jade);outline-offset:1px;border-color:#0000}.auth-card .refresh{margin:6px 0 0}.auth-card .refresh[disabled]{opacity:.6;cursor:wait}.auth-card .error{padding:0}
