.datasets-hero {
  padding: 3.5rem 0 3rem;
}

.datasets-title {
  color: var(--aniot-text);
  font-weight: 750;
  letter-spacing: 0;
  line-height: 1.14;
  margin-bottom: 1rem;
  text-wrap: balance;
}

.datasets-description {
  color: var(--aniot-text-soft);
  font-size: 1.06rem;
  margin-bottom: 0;
  max-width: 54rem;
}

.datasets-browser {
  padding-top: 2.5rem;
}

.filter-panel {
  padding: 1rem;
}

.filter-panel .form-label {
  color: var(--aniot-text);
  font-weight: 650;
}

.filter-panel .form-control,
.filter-panel .form-select {
  border-color: var(--aniot-border);
}

.filter-panel .form-control:focus,
.filter-panel .form-select:focus {
  border-color: var(--aniot-accent);
  box-shadow: 0 0 0 0.2rem var(--aniot-focus-ring-soft);
}

.results-toolbar {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.results-title {
  font-size: 1.55rem;
  font-weight: 700;
  margin-bottom: 0;
}

.result-count {
  background: var(--aniot-surface);
  border: 1px solid var(--aniot-border);
  border-radius: 999px;
  color: var(--aniot-secondary);
  font-weight: 700;
  margin-bottom: 0;
  padding: 0.35rem 0.75rem;
}

.active-filter-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1rem;
  min-height: 1.8rem;
}

.filter-chip {
  background: var(--aniot-surface);
  border: 1px solid var(--aniot-border);
  border-radius: 999px;
  color: var(--aniot-text);
  font-size: 0.88rem;
  padding: 0.28rem 0.65rem;
}

.dataset-results {
  display: grid;
  gap: 1rem;
}

.dataset-card {
  padding: 1rem;
}

.dataset-card-header {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin-bottom: 1rem;
}

.dataset-card h3 {
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1.32;
  margin-bottom: 0.5rem;
  text-wrap: balance;
}

.dataset-card h3 a {
  color: var(--aniot-text);
  text-decoration: none;
}

.dataset-card h3 a:hover,
.dataset-card h3 a:focus {
  color: var(--aniot-primary-dark);
  text-decoration: underline;
}

.dataset-summary {
  color: var(--aniot-muted);
  margin-bottom: 0;
}

.dataset-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.dataset-visual-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: -0.2rem 0 1rem;
}

.dataset-visual-tag {
  align-items: center;
  background: var(--aniot-sage-50);
  border: 1px solid var(--aniot-border);
  border-radius: 999px;
  color: var(--aniot-text-soft);
  display: inline-flex;
  font-size: 0.86rem;
  font-weight: 650;
  gap: 0.35rem;
  line-height: 1.2;
  padding: 0.28rem 0.58rem 0.28rem 0.32rem;
}

.dataset-visual-icon {
  align-items: center;
  background: var(--aniot-surface);
  border: 1px solid var(--aniot-subtle-border);
  border-radius: 999px;
  color: var(--aniot-secondary);
  display: inline-flex;
  flex: 0 0 auto;
  height: 1.45rem;
  justify-content: center;
  width: 1.45rem;
}

.dataset-visual-icon svg {
  fill: none;
  height: 1rem;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 1rem;
}

.dataset-visual-icon-health {
  color: #8a4b12;
}

.dataset-visual-icon-nutrition {
  color: var(--aniot-primary-dark);
}

.dataset-visual-icon-growth {
  color: var(--aniot-accent);
}

.dataset-meta-grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: 1fr;
  margin-bottom: 1rem;
}

.dataset-meta-item {
  border-top: 1px solid var(--aniot-border);
  padding-top: 0.75rem;
}

.dataset-meta-label {
  color: var(--aniot-muted);
  display: block;
  font-size: 0.84rem;
  margin-bottom: 0.1rem;
}

.dataset-meta-value {
  color: var(--aniot-text);
  font-weight: 650;
}

.quality-row {
  align-items: center;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: minmax(5rem, auto) 1fr auto;
  margin-bottom: 1rem;
}

.quality-row .quality-label {
  color: var(--aniot-muted);
  font-size: 0.88rem;
}

.quality-meter {
  background: var(--aniot-sage-200);
  border-radius: 999px;
  height: 0.62rem;
  overflow: hidden;
}

.quality-meter span {
  background: var(--aniot-accent);
  display: block;
  height: 100%;
}

.quality-score {
  color: var(--aniot-primary-dark);
  font-weight: 700;
}

.dataset-card-footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: space-between;
}

.dataset-id {
  color: var(--aniot-muted);
  font-size: 0.84rem;
  margin-bottom: 0;
  overflow-wrap: anywhere;
}

.empty-state {
  padding: 1.5rem;
  text-align: center;
}

.empty-state h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.empty-state p {
  color: var(--aniot-muted);
  margin: 0 auto 1rem;
  max-width: 36rem;
}

@media (min-width: 576px) {
  .dataset-meta-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 768px) {
  .datasets-hero {
    padding: 4.5rem 0 3.5rem;
  }

  .datasets-title {
    font-size: 2.65rem;
  }

  .results-toolbar {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
  }

  .dataset-card {
    padding: 1.25rem;
  }

  .dataset-card-header {
    flex-direction: row;
    justify-content: space-between;
  }
}

@media (min-width: 992px) {
  .filter-panel {
    position: sticky;
    top: 5rem;
  }

  .dataset-meta-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
/* Compact, research-catalog presentation. */
.results-toolbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}.catalog-login-button{justify-self:start;border:1px solid var(--aniot-border);border-radius:999px;background:#fff;color:var(--aniot-text);font-size:.88rem;font-weight:700;padding:.48rem .9rem}.catalog-login-button:hover{border-color:var(--aniot-primary);color:var(--aniot-primary)}.dataset-results{gap:0;border-top:1px solid var(--aniot-border)}.dataset-list-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem 1.1rem;border:0;border-bottom:1px solid var(--aniot-border);border-radius:0;box-shadow:none;background:transparent}.dataset-list-row:hover{background:rgba(255,255,255,.68)}.dataset-list-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:8px;background:var(--aniot-soft);border:1px solid var(--aniot-subtle-border);color:var(--aniot-primary);font-size:1.8rem}.dataset-list-content h3{font-size:1.05rem;margin:0 0 .22rem;text-wrap:unset}.dataset-list-byline,.dataset-list-details{margin:0;color:var(--aniot-text-soft);font-size:.86rem;line-height:1.5}.dataset-list-details{color:var(--aniot-muted);font-size:.82rem}.dataset-list-side{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;white-space:nowrap}.dataset-list-source,.dataset-list-version{font-size:.76rem;color:var(--aniot-muted)}.dataset-list-version{border:1px solid var(--aniot-border);border-radius:999px;padding:.18rem .48rem;color:var(--aniot-primary);font-weight:700}@media(max-width:767px){.results-toolbar{grid-template-columns:auto 1fr}.result-count{grid-column:1/-1}.dataset-list-row{grid-template-columns:46px minmax(0,1fr)}.dataset-list-icon{width:46px;height:46px;font-size:1.3rem}.dataset-list-side{grid-column:2;justify-content:flex-start}.dataset-list-content h3{font-size:1rem}}
.dataset-list-row{grid-template-columns:78px minmax(0,1fr) auto;gap:1.25rem;padding:1.25rem 1.35rem}.dataset-list-icon{width:78px;height:78px;border-radius:10px;font-size:2rem}.dataset-list-content h3{font-size:1.22rem;margin-bottom:.32rem}.dataset-list-byline{font-size:.94rem}.dataset-list-details{font-size:.88rem;margin-top:.08rem}.dataset-list-source,.dataset-list-version{font-size:.82rem}.dataset-list-version{padding:.22rem .58rem}@media(max-width:767px){.dataset-list-row{grid-template-columns:58px minmax(0,1fr);padding:1rem}.dataset-list-icon{width:58px;height:58px;font-size:1.55rem}.dataset-list-content h3{font-size:1.08rem}}
.dataset-pagination{display:flex;justify-content:center;align-items:center;gap:.35rem;margin:1.5rem 0 .5rem}.dataset-pagination button{min-width:2.15rem;height:2.15rem;padding:0 .55rem;border:1px solid var(--aniot-border);border-radius:6px;background:#fff;color:var(--aniot-text);font-weight:650}.dataset-pagination button:hover:not(:disabled),.dataset-pagination button.active{background:var(--aniot-primary);border-color:var(--aniot-primary);color:#fff}.dataset-pagination button:disabled{opacity:.45;cursor:not-allowed}.dataset-pagination span{color:var(--aniot-muted);padding:0 .15rem}
