[data-platform-links] { white-space:pre-line; overflow-wrap:anywhere; }
.platform-link { color:var(--green, #4824ad); text-decoration:underline; text-underline-offset:3px; font-weight:600; overflow-wrap:anywhere; }
.platform-link:focus-visible { outline:2px solid currentColor; outline-offset:4px; border-radius:2px; }
.feed-post-body .photo-credit { display:block; margin:12px 0 4px; font-size:.75rem; line-height:1.45; color:var(--muted); white-space:normal; }
body .source-icon-link, body.pj-demo .pj-source.source-icon-link {
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  vertical-align:middle; width:32px; height:32px; padding:0; margin:6px 6px 0 0;
  border:1px solid var(--border-soft); border-radius:9px; background:transparent;
  color:var(--green); text-decoration:none;
}
.source-link-tooltip { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.source-icon-link:is(:hover,:focus-visible) .source-link-tooltip {
  clip-path:none; width:max-content; max-width:min(220px,65vw); height:auto;
  left:0; bottom:calc(100% + 6px); margin:0; padding:6px 9px; white-space:normal;
  border-radius:7px; background:var(--ink); color:var(--white); font-size:.75rem;
  line-height:1.4; z-index:20; box-shadow:0 3px 12px #0002; pointer-events:none;
}
.source-icon-link:focus-visible { outline:2px solid var(--green); outline-offset:3px; }
.source-brand-logo { width:20px; height:20px; padding:1px; object-fit:contain; border-radius:4px; background:#fff; }
