[data-catalog="true"] {
  min-width: 0;
  border-radius: 8px;
  overflow-wrap: anywhere;
  letter-spacing: 0;
}

[data-catalog="true"] h2,
[data-catalog="true"] .card-name {
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0;
}

[data-catalog="true"] p {
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
  font-size: 1rem;
  line-height: 1.7;
}

[data-catalog="true"] .card-footer,
[data-catalog="true"] .card-bottom {
  flex-wrap: wrap;
  gap: 12px;
  margin-top: auto;
}

[data-catalog="true"] .card-footer,
[data-catalog="true"] .card-link {
  color: var(--light, var(--text-0));
}

[data-catalog="true"] .card-link {
  white-space: normal;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

[data-app-stage] { display: block; margin-bottom: 12px; }
.catalog-language { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 16px; }
.catalog-language select {
  min-height: 44px;
  padding: 8px 12px;
  font: inherit;
  font-size: 16px;
  color: var(--dark, var(--text-0));
  background: var(--light, var(--surface));
  border: 1px solid currentColor;
  border-radius: 4px;
}
.filter-btn { min-height: 44px; }
.filter-row { flex-wrap: wrap; }
.search-input { min-width: 0; font-size: 16px; max-width: 100%; }
#productGrid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }
#productGrid [data-catalog="true"] { cursor: default; }
#catalog-empty { padding: 24px 0; text-align: center; }
[hidden] { display: none !important; }
[data-catalog="true"]:focus-visible,
.catalog-language select:focus-visible,
.filter-btn:focus-visible,
[data-catalog="true"] a:focus-visible {
  outline: 3px solid var(--accent-cyan, var(--cyan));
  outline-offset: 4px;
}

@media (max-width: 640px) {
  .filters { position: static; }
  .filter-row .search-input { flex: 1 0 100%; width: 100%; }
}