.message-reply-draft { display: flex; align-items: center; gap: 8px; margin: 0 4px 8px; padding: 10px; border-left: 3px solid var(--accent); background: var(--surface-raised); border-radius: 8px; }
.message-reply-draft > div { min-width: 0; flex: 1; }
.message-reply-draft p { margin: 2px 0 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.message-reply-draft strong { font-size: 13px; }
.message-reply-draft button { flex-shrink: 0; min-height: 44px; }
.message-quote { margin: 0 0 8px; padding: 8px 10px; border-left: 3px solid currentColor; border-radius: 5px; background: color-mix(in srgb, currentColor 8%, transparent); font-size: 12px; }
.message-quote p { margin: 3px 0 0; max-height: 4.5em; overflow: auto; white-space: pre-wrap; }
.message-reactions, .message-reaction-picker { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.message-reaction { min-width: 44px; min-height: 40px; padding: 6px 10px; border: 1px solid var(--border-strong); border-radius: 18px; background: var(--surface-raised); color: var(--text); cursor: pointer; }
.message-reaction[aria-pressed="true"] { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }
.message-reaction-picker .message-reaction { font-size: 21px; min-height: 44px; }
.message-history-link { display: block; color: inherit; opacity: .8; padding: 6px 0; font-size: 11px; background: none; border: 0; text-decoration: underline; cursor: pointer; }
.message-tools-dialog { max-height: calc(100dvh - 24px); overflow: auto; }
.message-tools-dialog h2 { margin: 0 0 16px; }
.message-tools-dialog textarea { width: 100%; box-sizing: border-box; }
.message-tools-dialog footer { display: flex; justify-content: flex-end; gap: 8px; margin-top: 16px; }
.message-tools-note { color: var(--text-muted); font-size: 13px; }
.message-history p, .message-search-result p { white-space: pre-wrap; overflow-wrap: anywhere; }
.message-history section, .message-search-result { border-bottom: 1px solid var(--border); padding: 12px 0; }
.message-search-result time { display: block; font-size: 12px; color: var(--text-muted); }
.message-search-results { max-height: 45dvh; overflow: auto; margin-block: 14px; }
#message-search-button { flex-shrink: 0; min-height: 44px; padding-inline: 10px; }
#message-extra-actions { display: grid; gap: 8px; margin-bottom: 10px; }
.message-form .message-reply-draft { grid-column: 1 / -1; }
