/* Replies (T3): inbound replies to the agent's approved outreach, shown on the
   owner's deal view (templates/feed/want_detail.html). Mirrors the want-files
   card. Existing design tokens only (tokens.css) -- no new tokens. */
.want-replies { margin: var(--space-6) 0 0; padding: var(--space-4) var(--space-5); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); background: var(--surface-primary); }
.want-replies__title { margin: 0 0 var(--space-3); font-size: var(--text-base); font-weight: var(--font-bold); color: var(--text-primary); }
.want-replies__list { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--space-3); }
.want-replies__item { padding: var(--space-3) var(--space-4); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); background: var(--surface-secondary); }
.want-replies__meta { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-3); margin: 0 0 var(--space-2); }
.want-replies__from { font-size: var(--text-sm); font-weight: var(--font-semibold); color: var(--text-primary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.want-replies__when { flex: none; font-size: var(--text-xs); color: var(--text-secondary); white-space: nowrap; }
.want-replies__subject { margin: 0 0 var(--space-2); font-size: var(--text-sm); font-weight: var(--font-semibold); color: var(--text-primary); }
.want-replies__body { margin: 0; font-size: var(--text-sm); color: var(--text-secondary); line-height: var(--leading-relaxed); white-space: pre-wrap; word-break: break-word; }
.want-replies__empty { margin: 0; font-size: var(--text-sm); color: var(--text-secondary); }

/* LANDING ON A REPLY (Steven 2026-09-03): the Messages row links to one
   specific reply. Two things have to be true when that link opens.

   1. The reply must not land under the fixed Toll Bench header, so both the
      section and each reply carry scroll-margin-top clear of it.
   2. The reader must be able to SEE which reply they were sent to, otherwise
      the anchor drops them in a stack of similar looking cards and they are
      scanning again. :target marks it, using the existing accent token. */
.want-replies,
.want-replies__item { scroll-margin-top: calc(var(--space-16) + var(--space-4)); }

.want-replies__item:target {
    border-color: var(--accent-tertiary);
    box-shadow: 0 0 0 3px var(--accent-tertiary-subtle);
}

/* Result count: running "N results so far" on an outreach deal's owner view
   (templates/feed/want_detail.html). Existing design tokens only -- no new
   tokens. */
.want-results { margin: var(--space-6) 0 0; padding: var(--space-4) var(--space-5); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); background: var(--surface-primary); }
.want-results__count { margin: 0; font-size: var(--text-base); color: var(--text-secondary); }
.want-results__n { font-size: var(--text-lg); font-weight: var(--font-bold); color: var(--text-primary); }
