.pdrs-song-group {
    display: grid;
    gap: clamp(1.25rem, 3vw, 2.25rem);
    margin-block: clamp(1.5rem, 4vw, 3rem);
}

.pdrs-song {
    align-items: start;
    background: #101014;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .25);
    color: #f7f7f8;
    display: grid;
    gap: clamp(1rem, 3vw, 1.75rem);
    grid-template-columns: minmax(140px, 240px) minmax(0, 1fr);
    overflow: hidden;
    padding: clamp(1rem, 3vw, 1.75rem);
}

.pdrs-song__artwork {
    aspect-ratio: 1;
    margin: 0;
    overflow: hidden;
    border-radius: 12px;
}

.pdrs-song__artwork img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.pdrs-song__body { min-width: 0; }
.pdrs-song__title { color: inherit; font-size: clamp(1.35rem, 3vw, 2rem); line-height: 1.15; margin: 0 0 .75rem; }
.pdrs-song__description { color: rgba(255, 255, 255, .78); margin-bottom: 1rem; }
.pdrs-song__description > :first-child { margin-top: 0; }
.pdrs-song__player { background: #000; border-radius: 10px; min-height: 240px; overflow: hidden; position: relative; }
.pdrs-song__player iframe { border: 0; display: block; height: 240px; width: 100%; }
.pdrs-song__source { font-size: .875rem; margin: .75rem 0 0; text-align: right; }
.pdrs-song__source a { color: #d5b7ff; }
.pdrs-song__lyrics { border-top: 1px solid rgba(255,255,255,.14); margin-top: 1rem; padding-top: .85rem; }
.pdrs-song__lyrics summary { color: #d5b7ff; cursor: pointer; font-weight: 700; }
.pdrs-song__lyrics-body { color: rgba(255,255,255,.82); margin-top: 1rem; white-space: normal; }
.pdrs-song__lyrics-body p { margin: 0 0 1rem; }

/* Native adapter for The Plague Dr Universe theme. */
.pdrs-pdu-embed {
    background: var(--pdu-surface, #101015);
    border: 1px solid #343442;
    color: var(--pdu-bone, #f1ede4);
    margin: 0 0 2rem;
    padding: clamp(1rem, 3vw, 1.75rem);
}
.pdrs-pdu-embed__eyebrow {
    color: var(--pdu-amber, #c8912a);
    font-family: Oswald, Impact, sans-serif;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .18em;
    margin: 0 0 .75rem;
    text-transform: uppercase;
}
.pdrs-pdu-embed iframe { border: 0; display: block; height: 240px; width: 100%; }
.pdrs-pdu-embed > p:last-child { font-size: .8rem; margin: .75rem 0 0; text-align: right; }
.pdrs-pdu-embed a { color: var(--pdu-amber, #c8912a); }
.pdrs-pdu-lyrics { border-top: 1px solid #343442; margin-top: 2.5rem; padding-top: 2rem; }
.pdrs-pdu-lyrics h2 { color: var(--pdu-bone, #f1ede4); font-family: Oswald, Impact, sans-serif; font-size: clamp(1.6rem,4vw,2.5rem); margin: 0 0 1.5rem; text-transform: uppercase; }
.pdrs-pdu-lyrics__body { color: #ddd7cb; line-height: 1.9; }
.pdrs-pdu-lyrics__body p { margin: 0 0 1.35rem; }

.pdrs-pdu-dialog {
    background: #101015;
    border: 1px solid #343442;
    color: #f1ede4;
    max-width: min(760px, calc(100vw - 2rem));
    padding: 0;
    width: 100%;
}
.pdrs-pdu-dialog::backdrop { background: rgba(5, 5, 7, .88); backdrop-filter: blur(5px); }
.pdrs-pdu-dialog__bar { align-items: center; border-bottom: 1px solid #343442; display: flex; gap: 1rem; justify-content: space-between; padding: 1rem 1.25rem; }
.pdrs-pdu-dialog__bar h2 { color: #f1ede4; font-family: Oswald, Impact, sans-serif; font-size: 1.1rem; margin: 0; text-transform: uppercase; }
.pdrs-pdu-dialog__bar button { background: transparent; border: 1px solid #c8912a; color: #f1ede4; cursor: pointer; padding: .45rem .8rem; }
.pdrs-pdu-dialog iframe { border: 0; display: block; height: 280px; width: 100%; }

@media (max-width: 680px) {
    .pdrs-song { grid-template-columns: 1fr; }
    .pdrs-song__artwork { max-width: 260px; width: 100%; }
    .pdrs-pdu-dialog iframe { height: 240px; }
}
