/* Comments — full section (places/show, campaigns/show) */
.comments { margin-top: 1.5rem; }
.comments h3 { margin-bottom: 0.5rem; }

.comment-form { display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 1rem; }
.comment-form input[type="submit"] { align-self: flex-start; width: auto; }

.comment-list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 0.6rem; }
.comment {
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 0.5rem 0.75rem;
  background: var(--surface);
}
.comment-meta {
  display: flex; align-items: center; gap: 0.5rem;
  font-size: 0.8rem; margin-bottom: 0.25rem;
}
.comment-meta form.button_to { margin: 0 0 0 auto; }
.comment-delete { padding: 0.1rem 0.5rem; font-size: 0.75rem; width: auto; }
.comment-body p { margin: 0.25rem 0; }

/* Compact disclosure version on placement cards */
.card-comments { margin-top: 0.5rem; font-size: 0.85rem; }
.card-comments summary {
  cursor: pointer;
  display: inline-block;
  color: var(--muted);
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  list-style: none;
  user-select: none;
}
.card-comments summary::-webkit-details-marker { display: none; }
.card-comments summary:hover { background: rgba(255,255,255,0.05); color: var(--text); }
.card-comments[open] summary { color: var(--text); }
.card-comments .comments { margin-top: 0.5rem; }
