/* Source UI reuses r12 semantic colors in all three appearance modes. */
.source-scope-summary { width:min(100%,var(--content-width)); margin:0 auto .4rem; font-size:.8rem; color:var(--text-muted); overflow-wrap:anywhere; }
.source-select { display:flex; align-items:center; gap:.5rem; margin:.5rem 0; font-size:.82rem; color:var(--text); }
.source-select input { flex:0 0 auto; width:1rem; height:1rem; accent-color:var(--primary); }
.message-sources { margin-top:.65rem; padding:.65rem .8rem; border:1px solid var(--border); border-radius:10px; background:var(--surface-soft); color:var(--text); font-size:.85rem; overflow-wrap:anywhere; }
.message-sources summary { cursor:pointer; color:var(--text); }
.message-sources p { color:var(--text-muted); margin:.5rem 0; }
.source-reference { max-width:100%; margin:.35rem 0; padding:.4rem .5rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); color:var(--link); text-align:left; white-space:normal; overflow-wrap:anywhere; cursor:pointer; }
.source-reference:disabled { color:var(--text-muted); cursor:default; }
.source-reference:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
.source-preview { white-space:pre-wrap; overflow-wrap:anywhere; max-height:20rem; overflow:auto; padding:.6rem; background:var(--surface); color:var(--text); border-radius:6px; font:inherit; }
