:root{color-scheme:light;--bg:#f4f6f8;--panel:#fff;--line:#d9dee5;--text:#18202a;--muted:#647080;--blue:#1768ac;--green:#18794e;--amber:#9a6700;--red:#c62828}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 Segoe UI,Arial,sans-serif;letter-spacing:0}.topbar{height:56px;background:#17212b;color:#fff;display:flex;align-items:center;padding:0 28px;gap:32px}.brand{font-size:18px;font-weight:700;color:#fff;text-decoration:none}.topbar nav{display:flex;gap:22px;flex:1}.topbar nav a,.link-button{color:#d9e3ec;text-decoration:none}.link-button{border:0;background:transparent;cursor:pointer;font:inherit}main{max-width:1500px;margin:0 auto;padding:26px 28px 56px}.page-head,.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.page-head{margin-bottom:20px}.page-head h1{font-size:26px;line-height:1.2;margin:0 0 5px}.page-head p{margin:0;color:var(--muted)}.refresh-note{color:var(--muted);font-size:12px}.stats{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));border:1px solid var(--line);background:var(--panel);margin-bottom:22px}.stats>div,.facts>div{padding:15px 17px;border-right:1px solid var(--line)}.stats>div:last-child,.facts>div:last-child{border:0}.stats span,.facts span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.stats strong{font-size:24px}.stats small{display:block;color:var(--muted);font-size:11px}.good{color:var(--green)}.warn{color:var(--amber)}.bad{color:var(--red)}.section{margin-top:24px}.section h2{font-size:17px;margin:0 0 10px}.table-wrap{overflow:auto;border:1px solid var(--line);background:var(--panel)}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid #e8ebef;vertical-align:middle}th{font-size:12px;color:#536170;background:#f8f9fb;font-weight:600}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f8fbfe}.dense th,.dense td{padding:8px 10px}.client-link{font-weight:600}.client-link+small{display:block;color:var(--muted);margin-top:2px}.status{display:inline-block;border-radius:3px;padding:3px 8px;font-size:12px;font-weight:700;text-transform:uppercase}.status-online{background:#dff4e8;color:var(--green)}.status-stale{background:#fff0c2;color:var(--amber)}.status-offline{background:#f2dede;color:var(--red)}.mono{font-family:Consolas,monospace;font-size:12px}.trace{max-width:150px;overflow:hidden;text-overflow:ellipsis}.row-slow{background:#fff8e5}.row-error{background:#fff0f0}.empty{text-align:center;color:var(--muted);padding:30px}.facts{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));background:var(--panel);border:1px solid var(--line)}.facts strong{font-size:14px}.filters{display:flex;gap:8px;margin-bottom:10px}.filters select,.filters button,input{height:34px;border:1px solid #bfc7d1;background:#fff;padding:0 10px;font:inherit}.filters button,.primary{background:var(--blue);border-color:var(--blue);color:#fff;cursor:pointer}.breadcrumbs{display:flex;gap:8px;color:var(--muted);margin-bottom:16px}.breadcrumbs a{color:var(--blue)}a{color:var(--blue)}pre{white-space:pre-wrap;word-break:break-word;background:#111820;color:#dce7f2;padding:18px;border-radius:4px;max-height:65vh;overflow:auto;font:12px/1.55 Consolas,monospace}.login-shell{min-height:calc(100vh - 110px);display:grid;place-items:center}.login-panel{width:min(380px,100%);background:#fff;border:1px solid var(--line);padding:28px}.login-panel h1{font-size:24px;margin:0 0 5px}.login-panel p{color:var(--muted);margin:0 0 24px}.login-panel label{display:block;margin:14px 0 5px;font-weight:600}.login-panel input,.login-panel .primary{width:100%;height:40px}.login-panel .primary{margin-top:20px}.alert{background:#fff0f0;color:var(--red);padding:9px;border-left:3px solid var(--red)}.messages{margin-bottom:18px}.message{padding:10px 12px;background:#e8f2fb;border-left:3px solid var(--blue)}.message-error{background:#fff0f0;border-color:var(--red);color:#8f1d1d}.message-success{background:#e5f5ec;border-color:var(--green);color:#12613e}.period-form{display:flex;align-items:flex-end;gap:8px}.period-form label,.purge-form label{display:grid;gap:4px;color:var(--muted);font-size:12px}.period-form button{height:34px;padding:0 16px}.report-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);gap:18px}.chart-panel{min-width:0;background:var(--panel);border:1px solid var(--line);padding:16px}.chart-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:6px}.chart-heading h2{font-size:16px;margin:0 0 2px}.chart-heading p{margin:0;color:var(--muted);font-size:12px}.legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:11px}.legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px}.legend-blue:before{background:var(--blue)}.legend-red:before{background:var(--red)}.legend-amber:before{background:#b47800}.report-chart{display:block;width:100%;height:280px}.danger-zone{border-top:1px solid #e2b8b8;padding-top:18px}.danger-zone summary{color:var(--red);font-weight:700;cursor:pointer;width:max-content}.danger-content{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:14px;padding:16px;border:1px solid #e2b8b8;background:#fff}.danger-content h2{margin-bottom:4px}.danger-content p{margin:0;color:var(--muted)}.purge-form{display:flex;align-items:flex-end;gap:8px;flex:0 0 auto}.danger-button{height:34px;border:1px solid var(--red);background:var(--red);color:#fff;padding:0 14px;cursor:pointer}.danger-button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:1000px){.report-grid{grid-template-columns:1fr}.period-form{flex-wrap:wrap}.page-head{align-items:flex-start}.danger-content{align-items:flex-start;flex-direction:column}.purge-form{flex-wrap:wrap}}@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}.stats>div{border-bottom:1px solid var(--line)}.facts{grid-template-columns:repeat(2,1fr)}.topbar{padding:0 16px}.topbar nav{display:none}main{padding:20px 14px}.page-head{align-items:flex-start;flex-direction:column}.filters{flex-wrap:wrap}.period-form{width:100%}.period-form label{flex:1 1 180px}.period-form input{width:100%}.chart-heading{flex-direction:column}.report-chart{height:260px}.danger-zone summary{width:auto}.purge-form{width:100%}}
