.home-type-row {
  display:grid;
  grid-template-columns:minmax(100px,1fr) minmax(0,2fr);
  gap:16px;
  align-items:center;
  color:var(--ink-2);
}
.home-device-wall {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.home-device-wall .tag {
  font-size:14px;
  padding:8px 14px;
}
.home-check {
  display:flex;
  align-items:flex-start;
  gap:12px;
  color:var(--ink-2);
}
.home-check .ok {
  margin-top:4px;
}
.home-reading {
  max-width:960px;
  margin:28px auto 0;
  color:var(--muted);
  line-height:1.85;
}
.home-reading p + p {
  margin-top:20px;
}
#server-status.server-status {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
#server-status:empty {
  display:none;
}
.server-status .srv-row {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:18px;
  border:1px solid var(--border);
  border-radius:var(--r-card);
  background:var(--panel);
  box-shadow:var(--shadow-panel);
  color:var(--ink-2);
}
.server-status .srv-dot {
  display:inline-block;
  width:8px;
  height:8px;
  flex:none;
  border-radius:var(--r-round);
  background:var(--success);
  box-shadow:0 0 0 4px var(--success-soft);
}
.server-status .srv-flag {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:none;
  border-radius:var(--r-small);
}
.server-status .srv-flag svg,
.server-status .srv-flag img {
  width:24px;
  height:18px;
  border-radius:var(--r-small);
}
.server-status .srv-name {
  flex:1 1 110px;
  min-width:0;
  color:var(--text);
  font-weight:600;
  overflow-wrap:anywhere;
}
.server-status .srv-type {
  max-width:100%;
  padding:4px 9px;
  border-radius:var(--r-block);
  background:var(--accent-soft);
  color:var(--accent-dark);
  font-size:12px;
  overflow-wrap:anywhere;
}
.server-status .srv-ms,
.server-status .srv-bw {
  font-family:var(--font-mono);
  font-size:13px;
  font-variant-numeric:tabular-nums;
  color:var(--muted);
}
.server-status .srv-ms {
  color:var(--success-ink);
}
@media (max-width:768px) {
  #server-status.server-status {
    grid-template-columns:minmax(0,1fr);
  }
  .home-type-row {
    grid-template-columns:minmax(0,1fr);
    gap:10px;
  }
}
@media (max-width:420px) {
  .server-status .srv-row {
    padding:16px;
    gap:10px 8px;
  }
  .server-status .srv-name {
    flex-basis:calc(100% - 58px);
  }
  .server-status .srv-type {
    margin-right:auto;
  }
}