/**
 * @file line-list.css
 * @author Jouni Miikki
 * SPDX-License-Identifier: MIT
 * @description A list of one-line pointers: who, then what they said, cut to one line. Drawn by
 *   components/LineList.js. Reads only the tokens in theme.css and the shapes in poster.css; a page
 *   never styles it from outside.
 * @usage Linked from public/spa.html in the component block, whose order keeps the order these
 *   rules had when they were one sheet.
 * @version-history
 *   v1.0.0 — 2026-09-23 — Moved unchanged from css/parts*.css (UI consolidation phase 1, a move).
 */

/* ── Waiting for your answer: one row per thread, the other party's name first and what they said
   after it. The line truncates rather than wraps, because the row is a pointer into the mailbox and
   a three-line row would make five threads fill the screen the band exists to summarise. ── */
.poster-line-list { list-style: none; margin: 0; padding: 0; }
.poster-line-row + .poster-line-row { border-top: 1px solid var(--border); }
.poster-line-link {
  display: flex; gap: 0.75rem; align-items: baseline;
  padding: 0.7rem 0; color: inherit; text-decoration: none;
}
.poster-line-link:hover .poster-line-name { text-decoration: underline; }
.poster-line-name { flex: 0 0 auto; font-weight: var(--weight-semibold); }
.poster-line-text { flex: 1 1 auto; min-width: 0; color: var(--text-dim); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.poster-line-more { color: var(--text-dim); }
@media (max-width: 640px) {
  .poster-line-link { flex-direction: column; gap: 0.15rem; }
  .poster-line-text { white-space: normal; }
}
