/* Collectshare link previews (linkpreview.js). Every box has its size before anything loads:
   players by aspect-ratio or fixed height, link cards at a fixed 84px. No layout shift. */
.lps{display:grid;gap:10px;margin-top:12px;min-width:0}
.lps:first-child{margin-top:0}
.lp{display:block;min-width:0;margin:0;color:inherit;text-decoration:none}
.lp-embed .lp-box{position:relative;width:100%;border-radius:14px;overflow:hidden;background:rgba(var(--inkA),.06)}
.lp-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;color-scheme:normal}
.lp-tall .lp-box{max-width:min(100%,320px)}
/* Click-to-load poster: fills the player's box exactly, so the swap to the iframe shifts nothing.
   No remote image: a provider tint and name only. --lp-c is the provider's accent. */
.lp-youtube{--lp-c:#e8202a}.lp-x{--lp-c:rgb(var(--inkA))}.lp-threads{--lp-c:rgb(var(--inkA))}.lp-instagram{--lp-c:#d6336c}
.lp-spotify{--lp-c:#1aa34a}.lp-applemusic{--lp-c:#f0364f}.lp-soundcloud{--lp-c:#ff5a00}
.lp-play,.lp-play:hover{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:clamp(14px,4%,22px);border:0;border-radius:inherit;cursor:pointer;color:inherit;font:inherit;text-transform:none;letter-spacing:normal;text-align:left;
  display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:12px;
  background:radial-gradient(120% 90% at 100% 0%,color-mix(in srgb,var(--lp-c,#888) 22%,transparent),transparent 60%),linear-gradient(160deg,rgba(var(--inkA),.05),rgba(var(--inkA),.11));
  box-shadow:inset 0 0 0 1px rgba(var(--inkA),.09);}
.lp-play:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.lp-go{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:rgb(var(--inkA));color:var(--bg,#fff);box-shadow:0 2px 10px rgba(0,0,0,.18);transition:transform .15s}
.lp-play:hover .lp-go,.lp-play:focus-visible .lp-go{transform:scale(1.06)}
.lp-go svg{width:24px;height:24px;fill:currentColor;stroke:none;margin-left:2px}
.lp-k-post .lp-go svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-left:0}
.lp-ptx{display:flex;flex-direction:column;gap:3px;min-width:0;max-width:100%}
.lp-pv{font:600 .72rem/1.3 var(--font-mono);color:color-mix(in srgb,var(--lp-c) 62%,rgb(var(--inkA)));letter-spacing:.02em}
.lp-pt{font-size:1rem;line-height:1.3;font-weight:600;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.lp-pn2{font:500 .7rem/1.3 var(--font-mono);color:var(--mute,rgba(var(--inkA),.55))}
.lp-k-music:not(.lp-tall) .lp-play{flex-direction:row;align-items:center;justify-content:flex-start;gap:14px}
.lp-k-music .lp-pt{-webkit-line-clamp:2}
.lp-k-post .lp-box{max-width:550px;background:transparent}
.lp-k-music .lp-box{border-radius:12px}
.lp-src{display:flex;gap:8px;align-items:baseline;min-width:0;margin-top:6px;font:500 .72rem/1.3 var(--font-mono);color:var(--mute,rgba(var(--inkA),.55));text-decoration:none}
.lp-src .lp-pn{flex:none;color:var(--blue)}
.lp-src .lp-u{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lp-src:hover .lp-u,.lp-src:focus-visible .lp-u{text-decoration:underline}
.lp-card{display:flex;align-items:stretch;height:84px;border-radius:14px;overflow:hidden;background:rgba(var(--inkA),.045);border:1px solid rgba(var(--inkA),.09);transition:background .15s}
.lp-card:hover{background:rgba(var(--inkA),.075)}
.lp-card:focus-visible,.lp-src:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.lp-card .lp-img{flex:none;width:84px;height:84px;display:grid;place-items:center;background:rgba(var(--inkA),.07);font:600 1.5rem var(--font-sans);color:rgba(var(--inkA),.4);overflow:hidden}
.e .lp-card .lp-img img{width:100%;height:100%;max-height:none;object-fit:cover;border-radius:0;background:none}
.lp-card .lp-txt{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0;padding:0 14px}
.lp-card .lp-site{font:500 .7rem/1.3 var(--font-mono);color:var(--mute,rgba(var(--inkA),.55));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lp-card .lp-title{font-size:.92rem;line-height:1.3;font-weight:560;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.lp-loading .lp-img{background:linear-gradient(90deg,rgba(var(--inkA),.05),rgba(var(--inkA),.11),rgba(var(--inkA),.05));background-size:200% 100%;animation:lp-sh 1.2s linear infinite;color:transparent}
@keyframes lp-sh{to{background-position:-200% 0}}
@media(max-width:380px){.lp-card{height:72px}.lp-card .lp-img{width:72px;height:72px}.lp-card .lp-txt{padding:0 11px}.lp-card .lp-title{font-size:.86rem}}
@media(prefers-reduced-motion:reduce){.lp-loading .lp-img{animation:none}.lp-card,.lp-go{transition:none}.lp-play:hover .lp-go,.lp-play:focus-visible .lp-go{transform:none}}
.e p a.lk{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;overflow-wrap:anywhere}
@media print{.lp-embed{display:none}}
