.hpt-list-title { font-size: 1.55rem; font-weight: 800; margin: 0 0 .35rem; color: #0f172a; }
.hpt-list-desc { color: #64748b; margin: 0 0 1rem; }
.hpt-results-meta { color: #64748b; font-size: .88rem; margin: 0 0 1rem; }
.hpt-adv-search { margin: 0 0 1.25rem; }
.hpt-search-bar { display: flex; gap: .5rem; margin-bottom: 1rem; flex-wrap: wrap; }
.hpt-search-bar input[type=search] {
  flex: 1; min-width: 200px; min-height: 44px; border: 1px solid #cbd5e1;
  border-radius: 10px; padding: .65rem .9rem; font: inherit;
}
.hpt-search-bar button {
  min-height: 44px; padding: 0 1.15rem; border: 0; border-radius: 10px;
  background: #2563eb; color: #fff; font-weight: 700; cursor: pointer;
}
.hpt-filter-set { margin: 0 0 .85rem; }
.hpt-filter-label {
  margin: 0 0 .4rem; font-size: .72rem; font-weight: 800;
  letter-spacing: .06em; text-transform: uppercase; color: #64748b;
}
.hpt-filter-chips { display: flex; flex-wrap: wrap; gap: .4rem; }
.hpt-fchip {
  display: inline-flex; align-items: center; gap: .25rem;
  padding: .35rem .75rem; border-radius: 999px; cursor: pointer;
  background: #fff; border: 1px solid #e2e8f0; color: #0f172a;
  font-size: .82rem; font-weight: 650;
}
.hpt-fchip input { position: absolute; opacity: 0; pointer-events: none; }
.hpt-fchip.is-on, .hpt-fchip:has(input:checked) {
  background: #0f172a; color: #fff; border-color: #0f172a;
}
.hpt-pager { display: flex; gap: .35rem; flex-wrap: wrap; margin: 1.25rem 0 0; }
.hpt-pager a {
  min-width: 36px; height: 36px; display: inline-flex; align-items: center;
  justify-content: center; border-radius: 8px; border: 1px solid #e2e8f0;
  text-decoration: none; color: #0f172a; font-weight: 650;
}
.hpt-pager a.is-active { background: #2563eb; color: #fff; border-color: #2563eb; }
html[data-theme=dark] .hpt-fchip { background: #111827; color: #e5e7eb; border-color: #1f2937; }
html[data-theme=dark] .hpt-fchip.is-on { background: #2563eb; border-color: #2563eb; }
