#nodeget-tcp-ping-panel.nodeget-tcp-card {
  border: 1px solid hsl(var(--border));
  border-radius: calc(var(--radius) - 2px);
  background: hsl(var(--card));
  color: hsl(var(--card-foreground));
  padding: 1.25rem;
}

.nodeget-system-logo-hidden {
  display: none !important;
}

.nodeget-front-flag {
  width: 1.25rem !important;
  height: 0.875rem !important;
  flex: none;
  border-radius: 1px;
  object-fit: cover;
  box-shadow: 0 1px 2px rgb(0 0 0 / 0.16);
}

main table.nodeget-flag-name-table th:nth-child(3),
main table.nodeget-flag-name-table td:nth-child(3) {
  display: none;
}

.nodeget-tcp-title {
  margin: 0;
  color: hsl(var(--muted-foreground));
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1rem;
  text-transform: uppercase;
}

.nodeget-tcp-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}

.nodeget-tcp-tabs {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: 0.125rem;
  padding: 0.125rem;
  border: 1px solid hsl(var(--border));
  border-radius: calc(var(--radius) - 4px);
  background: hsl(var(--muted) / 0.45);
}

.nodeget-tcp-tab {
  min-width: 2.25rem;
  padding: 0.25rem 0.5rem;
  border: 0;
  border-radius: calc(var(--radius) - 6px);
  appearance: none;
  background: transparent;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  font: inherit;
  font-size: 0.75rem;
  line-height: 1rem;
}

.nodeget-tcp-tab:hover {
  color: hsl(var(--foreground));
}

.nodeget-tcp-tab.is-active {
  background: hsl(var(--background));
  box-shadow: 0 1px 2px rgb(0 0 0 / 0.12);
  color: hsl(var(--foreground));
}

.nodeget-tcp-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 11rem;
  color: hsl(var(--muted-foreground));
  font-size: 0.875rem;
}

.nodeget-tcp-captcha {
  display: grid;
  min-height: 11rem;
  place-items: center;
  gap: 0.75rem;
  color: hsl(var(--muted-foreground));
  font-size: 0.875rem;
}

.nodeget-tcp-captcha-text {
  text-align: center;
}

.nodeget-tcp-captcha-button {
  padding: 0.4rem 0.75rem;
  border: 1px solid hsl(var(--border));
  border-radius: calc(var(--radius) - 4px);
  appearance: none;
  background: hsl(var(--background));
  color: hsl(var(--foreground));
  cursor: pointer;
  font: inherit;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.nodeget-tcp-captcha-button:disabled {
  cursor: default;
  opacity: 0.7;
}

.nodeget-tcp-chart-wrap {
  position: relative;
  aspect-ratio: 1040 / 230;
  min-width: 0;
  touch-action: pan-y;
}

.nodeget-tcp-chart-wrap svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.nodeget-tcp-grid-line {
  stroke: hsl(var(--border));
  stroke-dasharray: 4 4;
  stroke-opacity: 0.85;
}

.nodeget-tcp-axis {
  fill: hsl(var(--foreground));
  fill-opacity: 0.78;
  font-family:
    ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 12px;
  font-weight: 500;
  paint-order: stroke fill;
  stroke: hsl(var(--card));
  stroke-linejoin: round;
  stroke-width: 2.5px;
}

.nodeget-tcp-line {
  filter: drop-shadow(0 1px 1px rgb(0 0 0 / 0.12));
  stroke-width: 2.2px;
}

.nodeget-tcp-crosshair {
  stroke: hsl(var(--foreground));
  stroke-dasharray: 3 3;
  stroke-opacity: 0.45;
}

.nodeget-tcp-tooltip {
  position: absolute;
  z-index: 1;
  min-width: 10.5rem;
  max-width: min(18rem, calc(100% - 1rem));
  padding: 0.5rem 0.625rem;
  border: 1px solid hsl(var(--border));
  border-radius: calc(var(--radius) - 4px);
  background: hsl(var(--popover));
  box-shadow: 0 10px 24px rgb(0 0 0 / 0.18);
  color: hsl(var(--popover-foreground));
  font-size: 0.75rem;
  line-height: 1rem;
  pointer-events: none;
}

.nodeget-tcp-tooltip[hidden] {
  display: none;
}

.nodeget-tcp-tooltip-time {
  margin-bottom: 0.35rem;
  color: hsl(var(--muted-foreground));
  font-family:
    ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
}

.nodeget-tcp-tooltip-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  white-space: nowrap;
}

.nodeget-tcp-tooltip-label {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
}

.nodeget-tcp-dot {
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  flex: none;
}

.nodeget-tcp-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 0.75rem;
  margin-top: 0.75rem;
  font-family:
    ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 0.75rem;
  line-height: 1rem;
}

.nodeget-tcp-stat {
  min-width: 0;
  color: hsl(var(--muted-foreground));
}

.nodeget-tcp-stat.is-muted {
  opacity: 0.38;
}

.nodeget-tcp-stat-name {
  display: inline-flex;
  max-width: 100%;
  align-items: center;
  gap: 0.35rem;
  margin-bottom: 0.25rem;
  padding: 0.125rem 0.25rem 0.125rem 0;
  border: 0;
  border-radius: calc(var(--radius) - 6px);
  overflow: hidden;
  appearance: none;
  background: transparent;
  color: hsl(var(--foreground));
  cursor: pointer;
  font: inherit;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nodeget-tcp-stat-name:hover,
.nodeget-tcp-stat-name:focus-visible {
  background: hsl(var(--muted) / 0.6);
  outline: none;
}

.nodeget-tcp-stat-name[aria-pressed="true"] {
  background: hsl(var(--muted) / 0.75);
}

.nodeget-tcp-stat-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.nodeget-tcp-stat span {
  color: hsl(var(--foreground));
}

.nodeget-tcp-stat .nodeget-tcp-loss {
  color: rgb(239 68 68);
}

@media (max-width: 480px) {
  .nodeget-tcp-chart-wrap {
    aspect-ratio: 390 / 250;
  }

  .nodeget-tcp-axis {
    fill-opacity: 0.92;
    font-size: 12.5px;
    font-weight: 600;
    stroke-width: 3.25px;
  }

  .nodeget-tcp-line {
    stroke-width: 2.5px;
  }

  .nodeget-tcp-head {
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .nodeget-tcp-tabs {
    width: 100%;
  }

  .nodeget-tcp-tab {
    flex: 1;
  }
}
