/* assets/css/catalog.css
   Страница /catalog (список корневых категорий) — мобильная вёрстка
*/

:root{
  --cat-title: #111;
  --cat-muted: #666;

  --cat-card-bg: #fff;
  --cat-card-border: #e6e6e6;

  --cat-count-bg: #f3f3f3;
  --cat-count-text: #111;

  --cat-radius: 12px;
}

.catalog-page{
  padding: 10px 0 18px 0;
}

.catalog-page__title{
  margin: 0 0 12px 0;
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: -0.2px;
  color: var(--cat-title);
}

/* Сетка карточек */
.catalog-grid{
  list-style: none;
  padding: 0;
  margin: 0;

  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.catalog-card{
  background: var(--cat-card-bg);
  border: 1px solid var(--cat-card-border);
  border-radius: var(--cat-radius);
  overflow: hidden; /* чтобы ничего не вылезало */
}

.catalog-card__link{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;

  padding: 12px 12px;
  text-decoration: none;
  color: inherit;

  -webkit-tap-highlight-color: transparent;
}

.catalog-card__left{
  min-width: 0; /* важно чтобы длинные названия не раздвигали экран */
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.catalog-card__name{
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--cat-title);

  /* аккуратно обрезаем слишком длинные названия */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.catalog-card__hint{
  font-size: 12.5px;
  line-height: 1.2;
  color: var(--cat-muted);
}

/* счётчик */
.catalog-card__count{
  flex: 0 0 auto;
  min-width: 44px;
  height: 26px;
  padding: 0 10px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  background: var(--cat-count-bg);
  color: var(--cat-count-text);

  border-radius: 999px;
  font-size: 12.5px;
  font-weight: 700;
}

/* стрелка справа */
.catalog-card__chev{
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  opacity: .75;
}

.catalog-card__chev svg{
  width: 18px;
  height: 18px;
  display: block;
}

/* Фокус для клавиатуры (и в целом правильно) */
.catalog-card__link:focus-visible{
  outline: 2px solid rgba(255,106,0,.35);
  outline-offset: 2px;
  border-radius: calc(var(--cat-radius) - 2px);
}

/* При нажатии — лёгкая реакция */
.catalog-card__link:active{
  opacity: .92;
}

/* Пустое состояние */
.catalog-empty{
  margin: 0;
  padding: 12px 0;
  color: var(--cat-muted);
  font-size: 14px;
}
