/*
 * catalog_page.css — Shell editorial del catalogo (TASK-FRONT-F1).
 */
.catalog-search-page {
  padding-block: clamp(1.5rem, 4vw, 2.5rem);
}

.catalog-search-page .catalog-filters__card {
  border-radius: var(--sd-radius-lg);
  border: 1px solid hsl(var(--sd-primary) / 0.12);
  box-shadow: var(--sd-shadow-soft);
  background: hsl(var(--sd-surface));
}

.catalog-search-page .catalog-filters__card .card-body {
  padding: 1.35rem;
}

.catalog-search-page .form-label {
  font-family: var(--sd-font-body), sans-serif;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: hsl(var(--sd-text-muted));
}

.catalog-search-page .form-control,
.catalog-search-page .form-select {
  border-radius: var(--sd-radius);
  border-color: hsl(var(--sd-primary) / 0.18);
  font-family: var(--sd-font-body), sans-serif;
}

.catalog-search-page .form-control:focus,
.catalog-search-page .form-select:focus {
  border-color: hsl(var(--sd-primary));
  box-shadow: 0 0 0 0.2rem hsl(var(--sd-primary) / 0.12);
}

.catalog-results__bar {
  padding: 0.85rem 1.1rem;
  border-radius: var(--sd-radius-lg);
  background: hsl(var(--sd-paper-warm));
  border: 1px solid hsl(var(--sd-primary) / 0.08);
}

.catalog-results__count {
  font-family: var(--sd-font-body), sans-serif;
  font-size: 0.92rem;
  font-weight: 500;
  color: hsl(var(--sd-text-muted));
  margin: 0;
}

.catalog-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.catalog-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  font-family: var(--sd-font-body), sans-serif;
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
  color: hsl(var(--sd-text-primary));
  background: hsl(var(--sd-surface));
  border: 1px solid hsl(var(--sd-primary) / 0.2);
  transition: background 0.2s ease, border-color 0.2s ease;
}

.catalog-chip:hover,
.catalog-chip:focus-visible {
  background: hsl(var(--sd-paper-warm));
  border-color: hsl(var(--sd-primary) / 0.35);
  color: hsl(var(--sd-text-primary));
}

.catalog-chip:focus-visible {
  outline: 2px solid hsl(var(--sd-primary));
  outline-offset: 2px;
}

.catalog-chip--clear {
  color: hsl(var(--sd-primary));
  border-style: dashed;
}

.catalog-search-page .pagination {
  gap: 0.35rem;
}

.catalog-search-page .page-item .page-link {
  font-family: var(--sd-font-body), sans-serif;
  font-weight: 600;
  font-size: 0.88rem;
  border-radius: 999px;
  border: 1px solid hsl(var(--sd-primary) / 0.15);
  color: hsl(var(--sd-text-primary));
  padding: 0.45rem 0.85rem;
  margin: 0 0.1rem;
  background: hsl(var(--sd-surface));
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.catalog-search-page .page-item .page-link:hover {
  background: hsl(var(--sd-paper-warm));
  border-color: hsl(var(--sd-primary) / 0.3);
  color: hsl(var(--sd-primary));
}

.catalog-search-page .page-item.active .page-link {
  background: hsl(var(--sd-primary));
  border-color: hsl(var(--sd-primary));
  color: hsl(var(--sd-surface));
}

.catalog-search-page .page-item.disabled .page-link {
  background: transparent;
  border-color: hsl(var(--sd-primary) / 0.08);
  color: hsl(var(--sd-text-muted) / 0.6);
}

.catalog-grid-toolbar {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  .catalog-chip,
  .catalog-search-page .page-item .page-link {
    transition: none;
  }
}
