/* Лента товаров (_parts/rail): подборка-слайдер, «Похожие», «Аналоги», «Вы смотрели» — tshop_3.
 * Карточки — общие (card.css). Видно --rail-n карточек (дробное — следующая выглядывает), число задают
 * контейнерные запросы по ширине самой ленты (на широкой — ручка дизайнера --rail-cards);
 * листание — нативная прокрутка со snap + кнопки (rail.js).
 */
@layer modules {
  .t3-rail { container: rail / inline-size; min-width: 0; --rail-n: 1.6; }
  @container rail (min-width: 480px) { .t3-rail__track { --rail-n: 2.4; } }
  @container rail (min-width: 720px) { .t3-rail__track { --rail-n: 3; } }
  @container rail (min-width: 960px) { .t3-rail__track { --rail-n: var(--rail-cards, 4); } }
  @container rail (min-width: 1240px) { .t3-rail__track { --rail-n: var(--rail-cards, 5); } }

  .t3-rail__track.t3-products[data-view="grid"] {
    grid-template-columns: none; grid-auto-flow: column;
    grid-auto-columns: calc((100% - (var(--rail-n, 1.6) - 1) * var(--card-gap)) / var(--rail-n, 1.6));
    overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none;
    /* место для тени и рамки фокуса карточки */
    padding: 4px; margin: -4px; scroll-padding-inline: 4px;
  }
  .t3-rail__track::-webkit-scrollbar { display: none; }
  .t3-rail__item { scroll-snap-align: start; min-width: 0; }
  [data-style="editorial"] .t3-rail__track.t3-products[data-view="grid"] { padding: 0; margin: 0; }

  .t3-rail__nav { display: flex; gap: var(--s-2); }
  .t3-rail__nav[hidden] { display: none; }
  .t3-rail__btn {
    display: grid; place-items: center; width: 44px; height: 44px; flex: none;
    border-radius: var(--radius-pill); border: var(--line-w) solid var(--line-strong); color: var(--text); background: var(--surface);
    transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease), opacity var(--dur) var(--ease);
  }
  .t3-rail__btn:hover:not(:disabled) { background: var(--text); border-color: var(--text); color: var(--bg); }
  .t3-rail__btn:disabled { opacity: .35; cursor: default; }
  /* на сенсорных экранах листают пальцем — кнопки не нужны */
  @media (hover: none) { .t3-rail__nav { display: none; } }
}
