/* Container */
.wj-feed { width: 100%; }

/* Grid: 1 col mobil, 2 col >=576px, 4 col >=992px */
.wj-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 16px;
}
@media (min-width: 576px) { .wj-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 992px) { .wj-grid { grid-template-columns: repeat(4, 1fr); } }

/* Card */
.wj-card {
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 12px;
  padding: 14px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 10px;
  height: 100%;
  transition: box-shadow .2s ease, transform .2s ease;
}
.wj-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,0.08); transform: translateY(-2px); }

/* Thumb (logo sau avatar) — raport 16:9 */
.wj-thumb {
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #f7f7f7;
  border-radius: 10px;
  overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.wj-thumb img { width: 100%; height: 100%; object-fit: contain; }

/* Avatar fallback când nu există logo */
.wj-avatar {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 2.2rem; color: #2d3748;
  background: linear-gradient(180deg, #eef2ff, #f8fafc);
}

/* Titlu + link */
.wj-title { margin: 2px 0 0; font-size: 1rem; line-height: 1.3; }
.wj-title a { text-decoration: none; color: inherit; }
.wj-title a:hover { text-decoration: underline; }

/* Snippet (max 3 linii) */
.wj-desc {
  font-size: 0.94rem; color: #555;
  overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
}
.wj-desc .highlighted { background: #fff7d6; padding: 0 2px; border-radius: 3px; }

/* Meta jos (aliniere) */
.wj-meta {
  margin-top: auto; display: flex; flex-wrap: wrap; gap: 8px;
  font-size: 0.85rem; color: #666;
}
.wj-meta span::before { content: "•"; margin: 0 6px 0 2px; color: #ccc; }
.wj-meta span:first-child::before { content: ""; }

/* Pagination */
.wj-pagination { margin-top: 20px; display: flex; align-items: center; justify-content: center; gap: 10px; }
.wj-btn {
  display: inline-block; padding: 8px 12px; border: 1px solid #ddd; border-radius: 8px; text-decoration: none; color: #333;
}
.wj-btn:hover { background: #f7f7f7; }
.wj-page { color: #666; }

.wj-alert, .wj-empty { padding: 12px; background: #fffbe6; border: 1px solid #ffe58f; border-radius: 8px; }