/* Vibe only: loaded inside the domain-specific layout branch. */
@media (max-width: 767.98px) {
  body.vibe-site #main :is(#votes,#played) .songs-list {
    display: grid !important;
    grid-template-columns: 56px minmax(0,1fr) 82px;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 12px;
    row-gap: 5px;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: 92px;
    margin: 0 0 12px;
    padding: 12px;
    border: 1px solid var(--vibe-page-line,#e2e7f2);
    border-radius: 20px;
    background: var(--vibe-page-surface,#fff);
    box-shadow: 0 6px 20px rgba(31,48,94,.055);
  }
  body.vibe-site #main :is(#votes,#played) .songs-list .details-wpr { display: contents !important; }
  body.vibe-site #main :is(#votes,#played) .songs-list .img-wpr {
    grid-column: 1; grid-row: 1 / 3;
    align-self: center;
    width: 56px; height: 56px; min-width: 0; min-height: 0;
    margin: 0; padding: 0; border-radius: 12px;
  }
  body.vibe-site #main :is(#votes,#played) .songs-list .details {
    grid-column: 2; grid-row: 1; align-self: end;
    width: auto; min-width: 0; max-width: none; margin: 0; padding: 0;
  }
  body.vibe-site #main :is(#votes,#played) .songs-list :is(.title,.artist) {
    display: block; white-space: normal; overflow: visible; overflow-wrap: anywhere;
    -webkit-line-clamp: unset;
  }
  body.vibe-site #main :is(#votes,#played) .songs-list .title {font-size:15px;line-height:1.35;margin-bottom:3px;}
  body.vibe-site #main :is(#votes,#played) .songs-list .artist {font-size:13px;line-height:1.4;}
  body.vibe-site #main :is(#votes,#played) .songs-list .time-wpr {
    grid-column: 2; grid-row: 2; align-self: start;
    position: static; inset: auto; transform: none; z-index: auto;
    display: flex; align-items: center; justify-content: flex-start;
    width: auto; min-width: 0; height: auto; min-height: 0;
    margin: 0; padding: 0; flex: none;
  }
  body.vibe-site #main :is(#votes,#played) .songs-list .time-wpr::before {display:none;}
  body.vibe-site #main :is(#votes,#played) .songs-list .time {
    position: static; inset: auto; transform: none;
    width: auto; height: auto; min-height: 0; margin: 0; padding: 0;
    border: 0; border-radius: 0; background: transparent; box-shadow: none;
    color: var(--vibe-page-muted,#68758b); font-size:12px; font-weight:650; line-height:1.4;
    font-variant-numeric: tabular-nums; white-space:normal; overflow-wrap:anywhere;
  }
  body.vibe-site #main :is(#votes,#played) .songs-list .actions {
    grid-column: 3; grid-row: 1 / 3; justify-self: end; align-self: center;
    position: static !important; inset: auto !important; transform: none !important;
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    width:82px; min-width:0; height:auto; margin:0; padding:0; gap:6px;
  }
  body.vibe-site #main :is(#votes,#played) .songs-list .vibe-song-vote {
    display:inline-flex; align-items:center; justify-content:center; flex-shrink:0;
    box-sizing:border-box; width:82px; max-width:100%; min-width:44px; min-height:44px;
    margin:0; padding:8px; border:1px solid var(--vibe-page-line,#e2e7f2); border-radius:12px;
    background:var(--vibe-page-surface-soft,#f1f4fc); color:var(--vibe-page-blue-dark,#4560bd);
    gap:6px; font-size:13px; line-height:1.3; white-space:nowrap; text-decoration:none;
    touch-action:manipulation;
  }
  body.vibe-site #main :is(#votes,#played) .songs-list .vibe-song-vote svg {width:18px;height:18px;flex:0 0 18px;}
  body.vibe-site #main :is(#votes,#played) .songs-list .vibe-song-vote:focus-visible {outline:2px solid currentColor;outline-offset:3px;}
  body.vibe-site #main :is(#votes,#played) .songs-list .vibe-song-vote-status {display:block;max-width:100%;margin-top:5px;white-space:normal;overflow-wrap:anywhere;}
  @media (max-width:359px) {
    body.vibe-site #main :is(#votes,#played) .songs-list {grid-template-columns:48px minmax(0,1fr) 76px;column-gap:9px;padding:10px;}
    body.vibe-site #main :is(#votes,#played) .songs-list .img-wpr {width:48px;height:48px;}
    body.vibe-site #main :is(#votes,#played) .songs-list :is(.actions,.vibe-song-vote) {width:76px;}
  }
}
