/* Полки внизу страницы лота (слово владельца 14.11, aero2/ported/lot_shelves.py + lot_shelves_html.py): «Такие же» и
   «Проданные такие же» (у NPA — «Похожие на NPA» / «Проданные на NPA»). Образец — Большой 15 (site/css/kit/shelf.css),
   макет «Полки лота» (upravdom/docs/maket-lot-polki.html, вкладка AeroMobilis): «плоский журнал» — 5 в ряд,
   ≤1000 px — 3, телефон — 2; плитки встык, линии 1px, без скруглений и теней; цена $ и мелко ≈ €.
   Цвета — токены кита --k-* (css/kit/tokens.css) с запасным значением: полки верны и до слияния фундамента.
   Одна разметка у страницы машины /<яз>/auto/… и у страницы лота в поиске (ручка /api/lot/similar, поле html). */
.k-shelf { margin: 24px 0 0; border-top: 1px solid var(--k-line, #e2e6ec); padding: 14px 0 0; }
.k-shelf__hd { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 0 0 10px; }
.k-shelf__h { font-weight: 700; font-size: 16px; line-height: 1.3; color: var(--k-ink, #1b2430); margin: 0; }
.k-shelf__ctx { color: var(--k-muted, #6b7685); font-weight: 400; }
.k-shelf__more { font-weight: 600; font-size: 13px; white-space: nowrap; color: var(--k-brand, #e63946); text-decoration: none; }
.k-shelf__grid {
  list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr));
  border-top: 1px solid var(--k-line, #e2e6ec); border-left: 1px solid var(--k-line, #e2e6ec);
}
.k-shelf__item { border-right: 1px solid var(--k-line, #e2e6ec); border-bottom: 1px solid var(--k-line, #e2e6ec); min-width: 0; }
.k-shelf__item > a { display: flex; flex-direction: column; color: var(--k-ink, #1b2430); text-decoration: none; height: 100%; }
.k-shelf__item > a:hover .k-shelf__name { color: var(--k-brand, #e63946); }
.k-shelf__pic { position: relative; display: block; aspect-ratio: 4 / 3; background: var(--k-bg-2, #f5f7f9); overflow: hidden; }
.k-shelf__pic img { display: block; width: 100%; height: 100%; object-fit: cover; }
.k-shelf__nophoto { display: grid; place-items: center; height: 100%; color: var(--k-muted, #6b7685); font-size: 13px; }
.k-shelf__chip, .k-shelf__sold {
  position: absolute; top: 8px; padding: 2px 7px; font-size: 11px; font-weight: 800; color: var(--k-on-brand, #fff);
}
.k-shelf__chip { left: 8px; background: var(--k-brand, #e63946); }
.k-shelf__chip--copart { background: var(--k-copart, #0072bc); }
.k-shelf__chip--iaai { background: var(--k-iaai, #c62828); }
.k-shelf__chip--npa { background: var(--k-npa, #ea580c); }
.k-shelf__sold { right: 8px; background: var(--k-ok, #1a8f5c); }
.k-shelf__body { display: flex; flex-direction: column; gap: 2px; padding: 8px 10px 10px; min-width: 0; }
.k-shelf__name { font-size: 13px; line-height: 1.3; overflow-wrap: anywhere; }
.k-shelf__sub, .k-shelf__plabel, .k-shelf__meta { color: var(--k-muted, #6b7685); font-size: 12px; overflow-wrap: anywhere; }
.k-shelf__price { font-weight: 800; font-size: 17px; color: var(--k-brand, #e63946); margin-top: 2px; }
.k-shelf__eur { font-weight: 500; font-size: 12px; color: var(--k-muted, #6b7685); margin-left: 6px; white-space: nowrap; }
.k-shelf__price--none { font-weight: 600; font-size: 13px; color: var(--k-muted, #6b7685); }
@media (max-width: 1000px) { .k-shelf__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  .k-shelf__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .k-shelf__hd { flex-direction: column; gap: 2px; }
}
