/* Monitor Hub 自定义补充样式（基于 Bootstrap 5） */
body {
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;
}

/* 表格内容紧凑、不换行，超长省略 */
.table > :not(caption) > * > * {
  vertical-align: middle;
}
td.cell-top { vertical-align: top; }
.text-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .85em; }

/* 推文/消息正文 */
.msg-text {
  white-space: pre-wrap;
  word-break: break-word;
  margin: 0;
  font-size: .85rem;
  color: var(--bs-secondary-color);
  max-height: 7.5em;
  overflow: hidden;
}

/* 卡片统计数字 */
.stat-number { font-size: 1.9rem; font-weight: 700; line-height: 1.2; }

/* 弹窗 body 独立滚动，header/footer 固定 */
.modal-body { max-height: calc(100vh - 220px); overflow-y: auto; }

/* 行内操作按钮不换行 */
.row-actions { display: flex; flex-wrap: nowrap; gap: .35rem; }
.row-actions form { display: inline; margin: 0; }
