/* =================================================================
   Каталоги и презентации (2026-06-18) — плитка PDF + превью.
   Токены в tokens.css. Карточка .doc-card.
   ================================================================= */

.cat-docs__head-sec {
  background: var(--zs-surface);
  padding: var(--s-7) 0 var(--s-5);
}
.cat-docs .cat-crumbs__row {
  font-size: 13px; color: var(--zs-text-3);
  display: flex; gap: var(--s-3); align-items: center; flex-wrap: wrap;
  margin-bottom: var(--s-5);
}
.cat-docs .cat-crumbs__row a { color: var(--zs-text-2); transition: color var(--d-1) var(--ease); }
.cat-docs .cat-crumbs__row a:hover { color: var(--zs-accent); }

.cat-docs__title {
  font-family: var(--f-display); font-size: clamp(30px, 4vw, 48px);
  font-weight: 700; line-height: 1.05; letter-spacing: -0.02em;
  color: var(--zs-text); margin: 0 0 var(--s-3);
}
.cat-docs__lead {
  font-size: 17px; color: var(--zs-text-2); line-height: 1.5;
  max-width: 620px; margin: 0 0 var(--s-5);
}

.cat-docs__search {
  position: relative; max-width: 460px;
}
.cat-docs__search svg {
  position: absolute; left: 16px; top: 50%; transform: translateY(-50%);
  width: 18px; height: 18px; color: var(--zs-text-3); pointer-events: none;
}
.cat-docs__search input {
  width: 100%; height: 48px;
  padding: 0 var(--s-5) 0 46px;
  font-family: var(--f-body); font-size: 16px; color: var(--zs-text);
  background: var(--zs-surface); border: 1px solid var(--zs-line);
  border-radius: var(--zs-r-md);
  transition: border-color var(--d-1) var(--ease);
}
.cat-docs__search input:focus { outline: none; border-color: var(--zs-accent); }

.cat-docs__grid-sec {
  background: var(--zs-surface);
  padding: var(--s-3) 0 var(--s-9);
}
.cat-docs__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--s-5);
}

.doc-card {
  display: flex; flex-direction: column;
  background: var(--zs-surface);
  border: 1px solid var(--zs-line);
  border-radius: var(--zs-r-md);
  overflow: hidden;
  text-decoration: none; color: inherit;
  transition: box-shadow var(--d-2) var(--ease), transform var(--d-2) var(--ease);
}
.doc-card:hover { box-shadow: var(--zs-shadow-2); transform: translateY(-2px); }

.doc-card__media {
  position: relative;
  aspect-ratio: 3 / 4;
  background: #F2F2F5;
  overflow: hidden;
  display: block;
}
.doc-card__media img {
  width: 100%; height: 100%;
  object-fit: contain; object-position: center; /* обложки разной ориентации — целиком, единым размером (03.07.2026) */
  padding: 10px;
  display: block;
  transition: transform var(--d-3) var(--ease);
}
.doc-card:hover .doc-card__media img { transform: scale(1.04); }

.doc-card__badge {
  position: absolute; top: var(--s-3); left: var(--s-3);
  font-size: 10px; font-weight: 700;
  letter-spacing: var(--f-track-wide); text-transform: uppercase;
  padding: 5px 10px; border-radius: var(--zs-r-sm);
  background: var(--zs-accent); color: #fff;
}
.doc-card__pdf {
  position: absolute; bottom: var(--s-3); right: var(--s-3);
  width: 32px; height: 32px; border-radius: 50%;
  background: rgba(255,255,255,0.92);
  display: grid; place-items: center; color: var(--zs-accent);
  box-shadow: 0 2px 8px rgba(10,10,10,0.18);
}
.doc-card__pdf svg { width: 16px; height: 16px; }

.doc-card__body {
  padding: var(--s-4) var(--s-4) var(--s-5);
  display: flex; flex-direction: column; gap: 4px;
  border-top: 1px solid var(--zs-line);
  flex: 1;
}
.doc-card__name {
  font-family: var(--f-body); font-size: 14px; font-weight: 600;
  color: var(--zs-text); line-height: 1.3;
}
.doc-card__meta {
  font-size: 12px; color: var(--zs-text-3);
  letter-spacing: 0.02em; margin-top: auto;
}

.cat-docs__empty, .cat-docs__noresult {
  text-align: center; color: var(--zs-text-2);
  font-size: 16px; padding: var(--s-8) 0;
}

/* ───── Адаптив ───── */
@media (max-width: 1280px) { .cat-docs__grid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 980px)  { .cat-docs__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 680px)  {
  .cat-docs__grid { grid-template-columns: repeat(2, 1fr); gap: var(--s-3); }
  .doc-card__name { font-size: 13px; }
}
