.records-search {
  display: grid;
  gap: 7px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--border);
}
.records-search > label { font-size: 12px; font-weight: 600; }
.records-search-controls { display: flex; gap: 6px; }
.records-search-controls .input { min-width: 0; flex: 1; }
.records-search > .btn { justify-self: start; }
.records-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 12px;
  border-top: 1px solid var(--border);
  font-size: 11px;
}
.records-pagination > span { text-align: center; }
.records-list-card {
  align-self: start;
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 285px);
  min-height: 320px;
}
.records-list-card > .card-hd,
.records-list-card > .records-search,
.records-list-card > .records-pagination { flex-shrink: 0; }
.records-list-card .records-list {
  flex: 1 1 auto;
  min-height: 120px;
  max-height: none;
  overflow-y: auto;
}
@media (max-width: 720px) {
  .records-list-card { max-height: none; min-height: 0; }
  .records-list-card .records-list { max-height: 35vh; }
  .records-pagination { flex-wrap: wrap; }
}
