/* Compact, source-backed lists: decisions first, research on demand. */
.song-row.song-row-compact { grid-template-columns:minmax(0,1fr) auto; position:relative; gap:0 20px; padding:18px 0; min-height:112px; }
.song-row-compact .song-copy { min-width:0; }
.song-row-compact h3 { font-size:18px; line-height:1.4; }
.song-row-compact .song-artist { margin-bottom:7px; }
.song-metadata { display:flex; flex-wrap:wrap; gap:3px 0; font-size:12px; line-height:1.6; color:var(--muted); }
.song-metadata span+span::before { content:'·'; padding:0 7px; }
.song-actions { display:flex; align-items:flex-start; gap:10px; }
.song-listen { display:flex; align-items:center; justify-content:center; gap:7px; min-height:44px; padding:5px 10px; color:var(--plum); background:var(--lilac); border-radius:6px; text-decoration:none; font-size:13px; line-height:1.3; }
.song-listen small { display:block; font-size:10px; color:var(--muted); margin-top:1px; }
.song-listen:hover { background:#e0d7e8; }
.song-listen>svg { fill:currentColor; }
.song-listen[aria-label^=Find]>svg { fill:none; transform:rotate(-40deg); }
.song-detail { grid-column:1/-1; font-size:13px; }
.song-detail>summary { position:absolute; top:62px; right:0; }
.song-detail[open] { padding-top:28px; }
.song-detail>summary,.provider-more>summary { display:flex; align-items:center; gap:7px; width:fit-content; min-height:44px; color:var(--plum); cursor:pointer; list-style:none; }
.song-detail>summary::-webkit-details-marker,.provider-more>summary::-webkit-details-marker { display:none; }
.song-detail>summary:hover,.provider-more>summary:hover { text-decoration:underline; text-underline-offset:4px; }
.song-detail[open]>summary svg,.provider-more[open]>summary svg { transform:rotate(180deg); }
.song-row-compact .song-detail p { margin:0 0 6px; line-height:1.65; }
.song-detail>a { display:inline-flex; align-items:center; gap:8px; min-height:44px; }
.song-detail>a svg { transform:rotate(-40deg); }
.provider-card.provider-card-compact,.article-copy .provider-card.provider-card-compact { grid-template-columns:minmax(0,1fr); gap:0; padding:25px 0 12px; }
.provider-card-compact .provider-top { margin-bottom:4px; gap:14px; }
.provider-identity { display:flex; flex-wrap:wrap; gap:7px 12px; align-items:center; min-width:0; }
.provider-card-compact h2 { font-size:33px; }
.provider-format { font-size:12px; color:var(--muted); padding:3px 8px; background:var(--lilac); border-radius:4px; }
.provider-card-compact p.provider-fit { font-size:15px; color:var(--ink); margin:0 0 9px; line-height:1.5; }
.provider-facts { display:flex; flex-wrap:wrap; gap:5px 19px; list-style:none; padding:0!important; margin:0 0 10px; font-size:13px; color:var(--plum); }
.provider-facts li,.article-copy .provider-facts li { display:flex; align-items:center; gap:5px; margin:0; }
.provider-card-compact .provider-coverage { display:flex; align-items:flex-start; gap:7px; max-width:68ch; margin:0 0 14px; font-size:13px; line-height:1.5; }
.provider-coverage>svg { margin-top:2px; }
.provider-card-compact .provider-actions { gap:12px 24px; }
.provider-card-compact .provider-actions .btn { min-height:44px; padding:9px 14px; }
.provider-more { margin-top:7px; font-size:13px; }
.provider-card-compact .provider-information { border:0; padding:3px 0 10px; max-width:68ch; }
.provider-card-compact .provider-information p { margin-bottom:14px; }
.provider-card-compact .provider-sources p { margin:0; font-size:12px; }
.guide-card.guide-card-compact { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:19px 0; }
.guide-card-compact h3 { font-size:27px; margin:0; }
.guide-card-compact>span { flex-shrink:0; gap:8px; font-size:12px; }
@media (max-width:740px) {
  .song-row.song-row-compact { gap:0 10px; padding:18px 0; min-height:140px; }
  .song-row-compact h3 { font-size:17px; }
  .song-actions { flex-direction:row; align-items:flex-start; gap:6px; }
  .song-listen { padding:5px 7px; gap:4px; }
  .song-listen>svg { width:14px; }
  .song-metadata { font-size:12px; }
  .song-detail>summary { top:68px; }
  .song-row-compact .song-copy { padding-bottom:8px; }
  .song-actions .save-button { width:44px; height:44px; }
  .song-listen { width:44px; padding:5px 2px; }
  .song-listen>svg { display:none; }
  .song-detail[open] { width:100%; padding-top:28px; }
  .provider-card-compact h2 { font-size:31px; }
  .provider-card-compact .provider-top { margin-bottom:6px; }
  .guide-card-compact h3 { font-size:26px; }
  .guide-card-compact>span { font-size:11px; }
}

.song-show-more { margin:22px 0 8px; }
.song-show-more[hidden] { display:none; }
