:root{--g-scale:#b4441b;--g-data:#8b3d8f;--g-resilience:#94600a}:root[data-theme=dark]{--g-scale:#ff9466;--g-data:#d391d6;--g-resilience:#e3a94b}[data-group=scale]{--accent:var(--g-scale)}[data-group=data]{--accent:var(--g-data)}[data-group=resilience]{--accent:var(--g-resilience)}.grid-2.wide-left{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}.slider{flex-direction:column;gap:4px;display:flex}.slider .label{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);justify-content:space-between;display:flex}.slider .label strong{font:600 13px var(--mono);color:var(--ink);letter-spacing:0}.btn-row{flex-wrap:wrap;gap:8px;display:flex}select{font:14px var(--sans);color:var(--ink);background:var(--sheet);border:1px solid var(--rule-strong);border-radius:0;padding:7px 10px}.legend-inline{font:11px var(--mono);color:var(--ink-3);align-items:center;gap:6px;display:inline-flex}.dot-key{background:var(--accent);border-radius:50%;width:9px;height:9px;display:inline-block}@media (width<=1100px){.grid-2.wide-left{grid-template-columns:minmax(0,1fr)}}.section-lead{margin:-4px 0 18px}.tile.is-bad strong{color:var(--bad)}.note.bad,p.note.bad{border-left-color:var(--bad)}.big-stat{font:400 34px/1.1 var(--serif);color:var(--accent);margin:0}.kv strong{color:var(--accent);font-weight:600}.meters{gap:12px;display:grid}.meter{flex-direction:column;gap:4px;display:flex}.meter .label{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);justify-content:space-between;gap:8px;display:flex}.meter .label strong{font:600 13px var(--mono);letter-spacing:0;color:var(--ink);white-space:nowrap}.meter-bar{background:var(--rule);width:100%;height:10px;display:block}.meter-bar>span{background:var(--accent);height:100%;transition:width .25s;display:block}.meter.warm .meter-bar>span,.stage.warm .meter-bar>span{background:color-mix(in srgb, var(--accent) 50%, var(--bad))}.meter.full .meter-bar>span,.stage.is-bad .meter-bar>span{background:var(--bad)}.meter.full .label strong{color:var(--bad)}.chart .area{fill:color-mix(in srgb, var(--accent) 14%, transparent);stroke:none}.chart .area.bad{fill:color-mix(in srgb, var(--bad) 14%, transparent)}.chart .series.alt{stroke:var(--ink-3);stroke-dasharray:5 4;stroke-width:1.5px}.chart .series.bad{stroke:var(--bad)}.chart .series.ok{stroke:var(--ok)}.chart .series.target{stroke:var(--ink);stroke-dasharray:2 4;stroke-width:1.5px}.chart .band.bad{fill:color-mix(in srgb, var(--bad) 12%, transparent)}.chart .mark line{stroke:var(--ink-2);stroke-width:1px;stroke-dasharray:3 3}.chart .mark text{fill:var(--ink-2);font:600 11px var(--mono)}.chart .mark.bad line{stroke:var(--bad)}.chart .mark.bad text{fill:var(--bad)}.chart .mark.mean line{stroke:var(--ink);stroke-dasharray:none}.chart .dot.bad{fill:var(--bad)}.chart .hbar{fill:color-mix(in srgb, var(--accent) 70%, transparent)}.chart .hbar.tail{fill:var(--bad)}.dot-key.line{border-radius:0;width:16px;height:3px;margin-left:8px}.dot-key.line.alt{background:var(--ink-3)}.dot-key.line.bad{background:var(--bad)}.dot-key.line.ok{background:var(--ok)}.legend-inline{flex-wrap:wrap;justify-content:flex-end}.server-view{width:100%;height:auto;display:block}.server-view .sv-label{font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;fill:var(--ink-3)}.server-view .sv-lane{stroke:var(--rule);stroke-width:18px;stroke-linecap:round}.server-view .sv-req{fill:var(--accent)}.server-view .sv-note{font:12px var(--mono);fill:var(--ink-3)}.server-view .sv-big{font:400 34px var(--serif);fill:var(--accent)}.server-view .sv-worker{fill:var(--paper);stroke:var(--rule-strong);stroke-width:1px}.server-view .sv-busy{fill:color-mix(in srgb, var(--accent) 55%, transparent)}.server-view .sv-rejected{font:600 13px var(--mono);fill:var(--bad)}.squares{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;width:100%;max-width:360px;margin:0 auto;display:grid}.squares span{aspect-ratio:1;background:var(--rule)}.squares span.hit{background:var(--bad)}.squares span.wait{background:color-mix(in srgb, var(--accent) 60%, transparent)}.squares.herd{align-content:start;min-height:120px}@media (prefers-reduced-motion:no-preference){.squares.herd span{animation:.3s both herd-pop}@keyframes herd-pop{0%{transform:scale(0)}to{transform:scale(1)}}}.pipeline{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-bottom:24px;display:grid}.stage{background:var(--sheet);border:1px solid var(--rule-strong);border-top:4px solid var(--accent);flex-direction:column;gap:6px;padding:16px;display:flex;position:relative}.stage+.stage:before{content:"→";font:600 18px var(--mono);color:var(--ink-3);position:absolute;top:40%;left:-22px}.stage strong{font:400 20px/1.2 var(--serif)}.stage-util{font:400 30px/1 var(--serif);color:var(--accent)}.stage.is-bad{border-top-color:var(--bad);background:repeating-linear-gradient(-45deg, var(--bad-tint) 0 2px, var(--sheet) 2px 9px)}.stage.is-bad .stage-util{color:var(--bad)}@media (width<=720px){.pipeline{grid-template-columns:minmax(0,1fr);gap:22px}.stage+.stage:before{content:"↓";top:-22px;left:50%}}.table.machines tr.picked td{background:color-mix(in srgb, var(--ok) 10%, transparent);font-weight:600}.table.machines tr.short td{color:var(--ink-3)}.table.machines td:first-child{width:auto}.servers{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.server-card{gap:8px}.server-card .label{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.server-num{font:400 28px/1 var(--serif);color:var(--accent)}.server-card.is-bad{border-top:4px solid var(--bad)}.server-card.is-bad .server-num{color:var(--bad)}.session-servers{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.session-server{border:1px solid var(--rule-strong);background:var(--paper);flex-direction:column;align-items:flex-start;gap:4px;padding:10px;display:flex}.session-server strong{font:600 12px var(--mono)}.session-server.dead{opacity:.5;border-style:dashed}.users{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.users li{border:1px solid var(--rule);background:var(--paper);flex-direction:column;padding:6px 10px;display:flex}.users li.ok{border-color:color-mix(in srgb, var(--ok) 50%, transparent)}.users li.bad{border-color:var(--bad);background:var(--bad-tint)}.users li.bad .stat{color:var(--bad)}@media (width<=380px){.servers{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.server-card{padding:14px}.session-servers{grid-template-columns:repeat(2,minmax(0,1fr))}}.verdict{border-top-width:6px}.verdict.is-ok{border-top-color:var(--ok)}.verdict.is-bad{border-top-color:var(--bad);background:repeating-linear-gradient(-45deg, var(--bad-tint) 0 2px, var(--sheet) 2px 9px)}.verdict.is-bad .big-stat{color:var(--bad)}.world{background:var(--paper);border:1px solid var(--rule);width:100%;height:auto;display:block}.world .grat{stroke:var(--rule);stroke-width:1px}.world .city{cursor:pointer}.world .city circle{fill:var(--ink-3)}.world .city.sel circle{fill:var(--accent)}.world .city circle.origin{fill:var(--ink)}.world .city text{font:500 20px var(--sans);fill:var(--ink-2);text-anchor:middle}.world .city.sel text{fill:var(--accent);font-weight:600}.world .route{fill:none;stroke:var(--bad);stroke-width:3px;stroke-dasharray:8 6}.world .edge{fill:var(--accent)}.world .origin-label{font:600 16px var(--mono);fill:var(--ink);text-anchor:start;text-transform:uppercase;letter-spacing:.1em}.timeline{flex-direction:column;gap:4px;display:flex}.timeline .label{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.timeline .label strong{color:var(--ink);letter-spacing:0;font-size:13px}.timeline-bar{background:var(--paper);border:1px solid var(--rule);height:26px;display:flex;overflow:hidden}.ph{min-width:0;font:600 10px var(--mono);white-space:nowrap;color:var(--on-accent);border-right:1px solid var(--sheet);place-items:center;display:grid;overflow:hidden}.ph-tcp{background:color-mix(in srgb, var(--accent) 55%, var(--paper));color:var(--ink)}.ph-tls{background:color-mix(in srgb, var(--accent) 75%, var(--paper));color:var(--ink)}.ph-request{background:var(--accent)}.ph-server,.ph-edge{background:var(--ink-2);color:var(--paper)}.ph-origin{background:var(--bad)}.ph-transfer{background:color-mix(in srgb, var(--accent) 35%, var(--paper));color:var(--ink)}.keys{grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.key-chip{font:12px var(--mono);color:#fff;background:var(--c);border:2px solid #0000;justify-content:space-between;padding:6px 8px;display:flex}.key-chip small{opacity:.8}.key-chip.moved{border-color:var(--ink);box-shadow:0 0 0 2px var(--mark)}.s0{--c:#b4441b}.s1{--c:#2f4fb5}.s2{--c:#8b3d8f}.s3{--c:#0b7285}.s4{--c:#94600a}.s5{--c:#5c6b23}.s6{--c:#a61e4d}.s7{--c:#4a4a4a}svg.ring{width:100%;max-width:240px;margin:0 auto;display:block}svg.ring .ring-line{fill:none;stroke:var(--rule);stroke-width:2px}svg.ring .tick-s{stroke:var(--c);stroke-width:3px}.bucket-row{align-items:center;gap:20px;display:flex}.bucket{flex:none;width:110px}.bucket .bucket-wall{fill:none;stroke:var(--ink);stroke-width:3px}.bucket .bucket-fill{fill:color-mix(in srgb, var(--accent) 60%, transparent)}.bucket .bucket-drip{stroke:var(--accent);stroke-width:3px}.shots{flex-wrap:wrap;gap:4px;min-height:28px;margin:0;padding:0;list-style:none;display:flex}.shots li{font:600 11px var(--mono);border:1px solid;padding:3px 7px}.shots li.ok{color:var(--ok);border-color:color-mix(in srgb, var(--ok) 50%, transparent)}.shots li.bad{color:var(--bad);border-color:var(--bad);background:var(--bad-tint)}.table.breakdown tr.hot td{color:var(--bad);font-weight:600}.table.breakdown td:first-child{width:auto}.trace-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.trace-btn{width:100%;font:13px var(--sans);text-align:left;color:var(--ink);background:var(--paper);border:1px solid var(--rule);cursor:pointer;grid-template-columns:4.5rem minmax(0,1fr) 3.5rem auto;gap:8px;padding:8px 10px;display:grid}.trace-btn:hover,.trace-btn[aria-pressed=true]{border-color:var(--accent);background:var(--accent-tint)}.trace-btn.bad .num{color:var(--bad)}.trace-btn .num{font:500 12px var(--mono);text-align:right}.waterfall{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.waterfall li{font:12px var(--mono);grid-template-columns:minmax(0,9rem) minmax(0,1fr) 4rem;align-items:center;gap:8px;display:grid}.span-name{overflow-wrap:anywhere}.span-track{background:var(--paper);border:1px solid var(--rule);height:14px;position:relative}.span-bar{background:var(--accent);position:absolute;top:0;bottom:0}.waterfall li.bad .span-bar{background:var(--bad)}.waterfall li.bad .span-name{color:var(--bad)}.span-ms{text-align:right}.logs{font:12px/1.6 var(--mono);background:var(--paper);border:1px solid var(--rule);overflow-wrap:anywhere;margin:0;padding:12px;list-style:none}.logs li{border-bottom:1px dashed var(--rule);padding:2px 0}.logs .log-t{color:var(--ink-3)}.logs .log-level{font-weight:600}.logs .log-src{color:var(--accent)}.logs li.error .log-level{color:var(--bad)}.logs li.warn .log-level{color:#b07a00}.diagnose{margin:0}.diagnose legend{float:left;width:100%;font:400 20px/1.3 var(--serif);margin-bottom:10px}.diagnose .options{clear:both}@media (width<=720px){.trace-btn{grid-template-columns:4rem minmax(0,1fr)}.waterfall li{grid-template-columns:minmax(0,6.5rem) minmax(0,1fr) 3.5rem}}.working{font:13px/1.5 var(--mono);flex-direction:column;gap:8px;margin:0;padding-left:20px;display:flex}.thumbs{color:var(--ink-2);flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.check{font:14px/1.4 var(--sans);color:var(--ink-2);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.check input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.server-view{max-width:640px;margin:0 auto}.squares{max-width:280px}.slider .label strong{text-transform:none}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font:13px var(--sans);color:var(--ink-2);background:var(--sheet);border:1px solid var(--rule);cursor:pointer;padding:6px 12px}.chip:hover{border-color:var(--accent)}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}figure.card{margin:0}.grid-2.even{align-items:start}@media (pointer:coarse){.trace-btn,.check{min-height:44px}}@media (width<=720px){.btn-row .btn{white-space:normal;text-align:left;max-width:100%;line-height:1.3}.kv{grid-template-columns:minmax(0,1fr);gap:2px 0}.kv dd{overflow-wrap:anywhere;margin-bottom:8px}}
