/* Latency capsules — the per-lane speed at a glance, inside the lane note.
   `.live` (Reflexer · Cloudflare) is the measured browser round trip,
   updated every piece; the others are static (recorded) or in-tab. */
.latcap {
  display: inline-block; margin-right: 6px; padding: 1px 9px;
  border: 1px solid var(--line); border-radius: 999px; background: var(--bg2);
  color: var(--text); font-size: 11.5px; font-weight: 600; line-height: 1.5;
  font-family: var(--mono);
  font-variant-numeric: tabular-nums; white-space: nowrap; vertical-align: 1px;
}
.latcap.live {
  border-color: var(--accent-line); color: var(--accent);
  background: var(--accent-soft);
}
.latcap.live::before {
  content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 6px;
  border-radius: 50%; background: var(--accent); vertical-align: 1px;
  animation: latpulse 1.4s ease-in-out infinite;
}
.latcap.live.idle::before { animation: none; opacity: 0.4; }
@keyframes latpulse { 0%, 100% { opacity: 0.35; } 50% { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .latcap.live::before { animation: none; } }
