/* Project-specific additions. Keep this small. */

/* Evidence quote: the caption line a proposed value came from. */
.quote { border-left: 3px solid var(--border-strong); padding: 2px 0 2px 10px; color: var(--muted-fg); font-size: 13px; line-height: 19px; }
.quote .t { font: 500 11.5px var(--font-mono); color: var(--subtle-fg); margin-right: 6px; }

/* Caption lines around a quote (transcript in context). */
.cap { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 10px; padding: 6px 10px; border-radius: var(--radius-sm); font-size: 13.5px; }
.cap .t { font: 500 11.5px/20px var(--font-mono); color: var(--subtle-fg); }
.cap.hit { background: color-mix(in oklab, var(--warn) 14%, var(--bg)); }
.cap.gap { color: var(--subtle-fg); font-style: italic; }

/* Telegram chat drawn as content: header, wider message cards, inline keyboard under a message. */
.tg-head { display: flex; align-items: center; gap: 12px; padding: 10px 12px; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); }
.chat.tg { background: color-mix(in oklab, var(--info) 10%, var(--surface)); gap: 6px; }
.bubble.wide { max-width: 94%; }
.tg-kb { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; max-width: 94%; margin-bottom: 6px; }
.tg-btn { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 36px; padding: 6px 10px; border-radius: 10px;
  background: color-mix(in oklab, var(--fg) 34%, transparent); color: #fff; font-size: 13px; font-weight: 500; text-align: center; }
.tg-btn.full { grid-column: 1 / -1; }
.tg-day { align-self: center; padding: 2px 10px; border-radius: 999px; background: color-mix(in oklab, var(--fg) 22%, transparent); color: #fff; font-size: 12px; }
