.home-notes {
  max-width: 920px;
  margin-bottom: 32px;
  color: var(--text-muted);
  line-height: 1.85;
}
.home-follow {
  margin-top: 28px;
  margin-bottom: 32px;
}
.home-route-art {
  display: block;
  max-width: 100%;
  height: auto;
  margin-top: 24px;
  color: var(--peach);
}
.home-lock-bar {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid var(--char-hi);
  border-radius: var(--r-row);
  background: color-mix(in srgb, var(--success) 14%, var(--char));
  color: var(--char-text);
}
.home-lock-bar svg {
  color: color-mix(in srgb, var(--success) 55%, var(--char-text));
}
.mini-panel .home-panel-note {
  margin-top: 20px;
  margin-bottom: 0;
  font-size: var(--text-sm);
  line-height: 1.8;
}
.home-policy-card {
  display: grid;
  gap: 8px;
  padding: 16px;
  border: 1px solid var(--char-hi);
  border-radius: var(--r-row);
  background: var(--char-3);
}
.home-policy-card span {
  color: var(--char-muted);
  font-size: var(--text-xs);
}
.home-policy-card strong {
  font-weight: var(--weight-bold);
}
.server-status:empty {
  display: none;
}
.server-status {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 2px;
}
.server-status > :is(.srv-grid, .server-grid, .servers-grid, .grid) {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.server-status > :is(h2, h3, p) {
  grid-column: 1 / -1;
}
.server-status .srv-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: var(--r-card);
  background: var(--bg-panel);
  color: var(--text);
  box-shadow: inset 0 1px 0 var(--hi);
}
.server-status .srv-dot {
  display: inline-block;
  flex: 0 0 7px;
  width: 7px;
  height: 7px;
  border-radius: var(--r-pill);
  background: var(--success);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--success) 12%, var(--clear));
}
.server-status .srv-flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
  width: 24px;
  height: 17px;
  overflow: hidden;
  border-radius: var(--r-small);
}
.server-status .srv-flag :is(svg, img) {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.server-status .srv-name {
  flex: 1 1 110px;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  font-weight: var(--weight-bold);
}
.server-status .srv-type {
  max-width: 100%;
  padding: 3px 7px;
  border-radius: var(--r-small);
  background: var(--bg-panel-2);
  color: var(--text-muted);
  font-size: var(--text-xs);
  overflow-wrap: anywhere;
  white-space: normal;
}
.server-status :is(.srv-ms, .srv-bw) {
  max-width: 100%;
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.server-status .srv-ms {
  color: var(--success);
}
.server-status .srv-bw {
  color: var(--text-muted);
}
@media (max-width: 768px) {
  .server-status,
  .server-status > :is(.srv-grid, .server-grid, .servers-grid, .grid) {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 640px) {
  .server-status .srv-row {
    gap: 8px;
    padding: 12px;
  }
  .home-lock-bar {
    align-items: flex-start;
  }
}