/* ===== 卡片样式：纯文本卡片（无缩略图，紧凑） ===== */
.pv-grid .pv-card {
  background: #fff; border: 1px solid #eceef1; border-left: 3px solid #dfe5ec;
  border-radius: 8px; cursor: pointer; display: flex; flex-direction: column;
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}
.pv-grid .pv-card:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(20,24,32,.06); border-left-color: #2f6bb0; }
.pv-grid .pv-img { display: none; }
.pv-grid .pv-body { flex: 1; display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 14px; }
.pv-grid .pv-main {
  flex: 1;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 2px 10px;
}
.pv-grid .pv-num { grid-column: 1; grid-row: 1; margin-bottom: 0; }
.pv-grid .pv-tags { grid-column: 2; grid-row: 1; justify-self: end; }
.pv-grid .pv-name { grid-column: 1 / -1; grid-row: 2; font-size: 15.5px; }
.pv-grid .pv-desc {
  grid-column: 1 / -1;
  grid-row: 3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 13px;
}
.pv-grid .pv-side { flex-direction: row; justify-content: space-between; align-items: center; border-top: 1px solid #f2f4f6; padding-top: 10px; }
.pv-grid .pv-date { font-size: 12px; }
.pv-grid .pv-btn { font-size: 12.5px; }
