/* ForumPostComponent — list row for build showcase, shop listings, tickets. */

.forum-post-card {
  background-color: var(--surface-1);
  border-radius: var(--radius-md);
  border: 1px solid var(--border-default);
  border-left: 3px solid transparent;
  padding: var(--space-4);
  transition:
    border-color var(--transition-fast),
    background-color var(--transition-fast),
    transform var(--transition-fast);
}

@media (prefers-reduced-motion: no-preference) {
  .forum-post-card:hover {
    background-color: var(--surface-2);
    border-color: var(--border-strong);
    border-left-color: var(--color-amber);
  }
}

.forum-post-card__title {
  font-family: var(--font-display);
  font-size: var(--text-lg);
  font-weight: 600;
  margin-bottom: var(--space-2);
  letter-spacing: -0.01em;
  line-height: var(--leading-tight);
}

.forum-post-card__link {
  color: var(--color-parchment);
  transition: color var(--transition-fast);
}
.forum-post-card__link:hover { color: var(--color-amber); }

.forum-post-card__meta {
  font-size: var(--text-xs);
  color: var(--color-ash);
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}

.forum-post-card__meta-sep {
  color: rgba(255,255,255,0.15);
}

.forum-post-card__type-tag {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  padding: 1px var(--space-2);
  border-radius: var(--radius-sm);
  font-weight: 600;
}

.forum-post-card__type-tag--build_showcase {
  background-color: var(--color-amber-10);
  color: var(--color-sunflower);
}

.forum-post-card__type-tag--shop_listing {
  background-color: var(--color-vine-20);
  color: #8fc47e;
}

.forum-post-card__type-tag--ticket {
  background-color: var(--color-ember-20);
  color: #f0a98a;
}

.forum-post-card__pinned {
  font-size: var(--text-xs);
  color: var(--color-sunflower);
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
}

/* Status badge for tickets */
.status-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  padding: 1px var(--space-2);
  border-radius: var(--radius-sm);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.status-badge--open   { background-color: var(--color-vine-20); color: #8fc47e; }
.status-badge--closed { background-color: var(--color-white-05); color: var(--color-ash); }

.forum-post-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
