.filter-bar button span,
.filter-bar a span {
  display: inline-flex;
  min-width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  margin-left: 5px;
  padding: 0 6px;
  color: inherit;
  background: rgba(255, 255, 255, .65);
  border-radius: 999px;
  font-size: 11px;
}

.filter-bar button.active span,
.filter-bar button:hover span,
.filter-bar a.active span,
.filter-bar a:hover span {
  background: rgba(255, 255, 255, .18);
}

.catalog-status {
  min-height: 24px;
  margin: 0 0 24px;
  color: #668078;
  font-size: 13px;
  font-weight: 700;
}

.catalog-message {
  padding: 64px 24px;
  color: #668078;
  text-align: center;
}

.catalog-error {
  color: #9d342d;
}

.catalog-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 42px;
}

.filter-bar a {
  padding: 9px 18px;
  color: #58716a;
  background: #f0f7f4;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
}

.filter-bar a:hover,
.filter-bar a.active {
  color: #fff;
  background: #0e5047;
}

.catalog-pagination .pagination-block {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 12px;
}

.catalog-pagination .pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0;
}

.catalog-pagination .pagination li a,
.catalog-pagination .pagination li span {
  display: inline-flex;
  min-width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  color: #315f57;
  background: #f0f7f4;
  border: 1px solid #dceae6;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
}

.catalog-pagination .pagination li.active span,
.catalog-pagination .pagination li a:hover {
  color: #fff;
  background: #0e5047;
  border-color: #0e5047;
}

.catalog-pagination .pagination li.disabled span {
  color: #9eafaa;
  background: #f7faf9;
  border-color: #edf3f1;
}

.catalog-pagination .pagination_info {
  color: #668078;
  font-size: 13px;
}

.catalog-page-link {
  display: inline-flex;
  min-width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  color: #315f57;
  background: #f0f7f4;
  border: 1px solid #dceae6;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
  transition: .2s ease;
}

.catalog-page-link:hover,
.catalog-page-link.active {
  color: #fff;
  background: #0e5047;
  border-color: #0e5047;
}

.catalog-page-link.disabled {
  color: #9eafaa;
  background: #f7faf9;
  border-color: #edf3f1;
  pointer-events: none;
}

@media (max-width: 767.98px) {
  .catalog-page-link {
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
  }
}
