/* Reviews and board images: keep pasted line breaks and the entire image. */
.review-layout { grid-template-columns: 130px minmax(0, 1fr); align-items: start; }
.review-layout > div { min-width: 0; }
.review-layout > .game-review { grid-column: 1 / -1; margin: 0; }
.game-review,
.admin-panel .review-input {
  text-align: justify;
  text-align-last: start;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  hyphens: auto;
  line-height: 1.9;
  tab-size: 4;
}
.admin-panel .review-input { min-height: 260px; font-family: inherit; font-size: 14px; }
.post-feature .post-image,
.post-card .post-image {
  min-height: 0;
  height: clamp(200px, 25vw, 320px);
  background: var(--surface-2);
}
.post-feature .post-image { align-self: center; }
.post-feature .post-image img,
.post-card .post-image img,
.post-feature:hover .post-image img,
.post-card:hover .post-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transform: none;
}
.post-feature .post-image::after { display: none; }
.modal-article-image {
  display: block;
  height: auto;
  max-height: min(70dvh, 640px);
  object-fit: contain;
  object-position: center;
  background: var(--surface-2);
}
@media (max-width: 600px) {
  .review-layout { grid-template-columns: 90px minmax(0, 1fr); gap: 16px; }
  .review-layout > img { width: 90px; }
}
