/* Optional content stays close to the message; compact rows reuse Chat Flow tokens. */
.content-extras{border-top:1px solid var(--line);margin-top:16px;padding-top:8px}
.content-extras summary{min-height:40px;display:list-item;align-content:center;cursor:pointer;color:var(--action);font-weight:600}
.content-extras summary>span{font-weight:400;color:var(--secondary-ink);margin-left:4px}
.content-extras summary:hover{text-decoration:underline;text-underline-offset:3px}
.content-extras summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.content-extras-fields{display:grid;gap:16px;padding-top:8px}
.content-extras-fields label{margin:0}
.content-extras-fields .field-note{display:block;font-weight:400;margin-top:4px}
.campaign-event-context{margin-bottom:12px;padding:12px;background:var(--soft);border-radius:6px}
.campaign-event-context p{margin:4px 0 0}
.campaign-image{margin-bottom:12px;max-width:100%;overflow:hidden;border-radius:6px;background:var(--soft)}
.campaign-image img{display:block;max-width:100%;width:auto;max-height:240px;object-fit:contain;margin:auto}
.campaign-image img[hidden]{display:none}
.campaign-image>span{padding:16px;color:var(--secondary-ink);font-size:14px}
.campaign-image>span:not([hidden]){display:block}
.campaign-cta{display:block;min-height:40px;padding:10px 12px;border-top:1px solid var(--line);color:var(--action);text-align:center;font-weight:600;overflow-wrap:anywhere;text-decoration:none}
.campaign-cta:hover{text-decoration:underline;text-underline-offset:3px}
.campaign-message{background:var(--soft);padding:16px;border-radius:6px;overflow-wrap:anywhere}
.campaign-message>p{white-space:pre-wrap;margin:0;max-width:75ch;color:var(--ink)}
.campaign-message>.campaign-cta{margin-top:12px}
#campaign-preview-link:empty,#campaign-preview-image:empty{display:none}
#campaign-preview-link:not(:empty){margin-top:12px}
.snippet-excerpt{white-space:pre-wrap;max-width:65ch;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.snippet-actions{flex-wrap:wrap;justify-content:flex-end;min-width:160px}
.event-card>.contact-actions{margin-top:auto;flex-wrap:wrap}
