/* fr-post-cards.css */
/* Контейнер и сетка */
.fr-cards{ 
  width:100%; 
}
.fr-cards__grid{
  display:grid;
  gap: 24px; /* управляется контролом */
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1024px) {
  .fr-cards__grid {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}

/* Карточка */
.fr-card{
  background:#fff;
  border-radius:24px; /* управляется контролом */
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height: 100%;
}

/* Внутренний контейнер с паддингами */
.fr-card__body{
  padding:24px; /* управляется контролом */
  display:flex;
  flex-direction:column;
  height: 100%;
}

/* Контентная область */
.fr-card__content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* Превью находится ВНУТРИ body, наследует отступы карточки */
.fr-card__preview{
  display:block;
  margin-bottom:16px; /* управление контролом space_after_preview */
}
.fr-card__media{
  width:100%;
  height:auto;
  display:block;
  object-fit:cover;
  border-radius:16px; /* управляется контролом preview_radius */
}

/* Заголовок / вступление */
.fr-card__title{
  margin:0 0 10px; /* управляется контролом space_after_title */
  font-weight:800;
  line-height:1.15;
}
.fr-card__title a{ text-decoration:none; }

.fr-card__excerpt{
  color:#3b4450;
  margin:0 0 14px; /* управляется контролом space_after_excerpt */
}
.fr-card__excerpt a{ color:inherit; text-decoration:none; }

/* Нижняя часть карточки */
.fr-card__bottom {
  margin-top: auto;
}

/* Пилюли */
.fr-card__tags{
  display:flex; gap:14px; flex-wrap:wrap; margin:8px 0 16px; /* управляется space_after_tags и pills_gap */
}
.fr-pill{
  display:inline-flex; align-items:center; gap:6px;
  background:#eef4ff; color:#3670f6;
  padding:8px 12px;
  border-radius:999px;
  text-decoration:none;
  font-weight:500;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%;
}
.fr-pill--tone{ background:#eef6ff; }
.fr-pill--article{ background:#fff0e6; color:#ff6600; }

/* Мета-блок: сетка 3 колонки × 2 строки
   [avatar] [top....................] [   ]
   [avatar] [bottom.................] [views(bottom)]
*/
.fr-card__meta{ 
  color:#7b8693; 
}
.fr-meta-grid{
  display:grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto auto;
  column-gap:10px; /* управляется avatar_gap_right */
  row-gap:6px;
  align-items:center;
}
.fr-meta__avatar{
  grid-column:1; grid-row:1 / span 2;
  width:36px; height:36px; border-radius:12px; overflow:hidden; display:inline-flex;
}
.fr-meta__avatar img{ width:100%; height:100%; object-fit:cover; display:block; }

.fr-meta__top{
  grid-column:2; grid-row:1;
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
}
.fr-meta__bottom{
  grid-column:2; grid-row:2;
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
}
.fr-meta__views{
  grid-column:3; grid-row:2; align-self:end;
  display:inline-flex; align-items:center; gap:6px;
  color:inherit; text-decoration:none; white-space:nowrap;
}

/* Текстовые элементы меты — без жирного по умолчанию */
.fr-meta__name{ font-weight:400; }
.fr-stat__num{ font-weight:400; }
.fr-stat__label{ font-weight:400; }

/* разделитель (иконка или точка) */
.fr-sep{ opacity:.7; user-select:none; display:inline-flex; align-items:center; line-height:0; }
.fr-ic{ display:inline-flex; line-height:0; }
.fr-ic svg{ width:16px; height:16px; }

/* Статы */
.fr-stat{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }

/* line clamp helpers */
.fr-clamp-1{ display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden; }
.fr-clamp-2{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.fr-clamp-3{ display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.fr-clamp-4{ display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.fr-clamp-5{ display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden; }

/* Пагинация/футер */
.fr-cards__footer{ margin-top:20px; text-align:center; }
.fr-cards__pagination{ display:inline-flex; gap:8px; }
.fr-page, .fr-loadmore{
  border:1px solid #d9dee6; background:#fff; color:#2d333b;
  border-radius:10px; padding:8px 12px; cursor:pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
}
.fr-page.is-active{ background:#2d333b; color:#fff; border-color:#2d333b; }

.fr-loadmore-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.fr-loadmore-icon svg {
  width: 16px;
  height: 16px;
  transition: all 0.3s ease;
}

.fr-loadmore:hover .fr-loadmore-icon svg {
  transform: translateY(-2px);
}

/* Классы для позиционирования иконки */
.fr-loadmore.icon-left {
  flex-direction: row;
}

.fr-loadmore.icon-right {
  flex-direction: row-reverse;
}

/* Состояние загрузки */
.fr-loadmore.loading {
  opacity: 0.7;
  pointer-events: none;
}

/* Оптимизация для WebP изображений */
.fr-card__media[type="image/webp"] {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

/* Оптимизация загрузки для скрытых вкладок */
.elementor-tab-content .fr-cards:not(.initialized) {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.elementor-tab-content .fr-cards.initialized {
  opacity: 1;
}