.discussion-message-list { padding: 2px !important; }
.discussion-message-card { width:fit-content; max-width:85%; min-height:0 !important; margin:2px 0; padding:2px 6px !important; border:1px solid rgba(127,127,127,.3); border-radius:9px; overflow-wrap:anywhere; }
.discussion-message-card--own { margin-left:auto; }
.discussion-message-card:not(.discussion-message-card--own) { margin-right:auto; }
.discussion-message-card .q-item__section { min-width:0; }
.discussion-message-list .discussion-message-meta { display:flex; flex-wrap:wrap; align-items:baseline; gap:3px; font-size:13px; line-height:1.3; white-space:normal; }
.discussion-message-meta .text-caption { font-size:11px; white-space:nowrap; }
.discussion-message-body { margin-top:2px; line-height:1.25; white-space:pre-wrap; }
.discussion-attachments { display:flex; flex-wrap:wrap; gap:3px; margin-top:1px; align-items:center; }
.discussion-image { width:64px; height:64px; object-fit:cover; border-radius:6px; }
.discussion-image-button { padding:0; border:0; border-radius:6px; background:transparent; cursor:zoom-in; line-height:0; }
.discussion-image-button:focus-visible { outline:2px solid var(--q-primary); outline-offset:3px; }
.discussion-audio { display:block; width:128px; height:26px; max-width:100%; }
.discussion-audio-error { color:var(--q-negative,#c10015); font-size:12px; line-height:16px; }
.discussion-attachment { min-width:0; max-width:100%; }
.discussion-media-loading { display:flex; gap:5px; align-items:center; min-width:64px; min-height:64px; font-size:12px; }
.discussion-compose-row { display:flex; align-items:flex-end; gap:8px; }
.discussion-message-input { flex:1; min-width:0; }
.discussion-compose-row > .q-btn { flex-shrink:0; }
.discussion-drafts { max-height:180px; overflow-y:auto; margin-bottom:8px; }
.discussion-draft { padding:8px; border:1px solid rgba(127,127,127,.25); border-radius:8px; margin-bottom:6px; }
.discussion-draft-head { display:flex; justify-content:space-between; align-items:center; font-size:12px; }
.discussion-draft-image { display:flex; align-items:center; gap:8px; padding:0; border:0; color:inherit; background:transparent; text-align:left; cursor:zoom-in; }
.discussion-draft-image img { width:64px; height:64px; object-fit:cover; border-radius:6px; }
.discussion-draft-image small { display:block; }
.attachment-viewer-dialog .q-dialog__inner { padding:0 !important; }
.attachment-viewer-card { width:100vw !important; max-width:100vw !important; height:100vh !important; height:100dvh !important; max-height:100dvh !important; border-radius:0 !important; background:#05070b !important; color:white !important; display:flex; flex-direction:column; }
.attachment-viewer-toolbar { flex:0 0 auto; background:#05070b !important; color:white !important; }
.attachment-viewer-stage { position:relative; flex:1 1 auto; min-height:0; display:flex; align-items:center; justify-content:center; background:#05070b; }
.attachment-viewer-img { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; display:block; }
.discussion-image-viewer-stage { overflow:auto; touch-action:pan-x pan-y; }
.discussion-image-viewer-stage.is-zoomed { display:block; }
.discussion-image-viewer-stage.is-zoomed .attachment-viewer-img { max-width:none; max-height:none; margin:auto; }
