:root { --border-radius: 10px; } #main-wrapper { width: 500px; display: flex; flex-direction: row; align-items: stretch; gap: 1em; opacity: 0; align-items: center; } #album-art-container { /* 1. Tell it to maintain a 1:1 square ratio */ aspect-ratio: 1 / 1; overflow: hidden; border-radius: var(--border-radius); position: relative; background-size: cover; background-position: center; display: var(--show-album-art); } #album-art-layer, #album-art-transition-layer { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; transition: opacity 0.5s ease; } #album-art-layer { z-index: 1; transition: all 0.5s ease; } #album-art-transition-layer { z-index: 0; } #song-info-container { position: relative; flex: 1; display: flex; flex-direction: column; overflow: hidden; } #background-transition-layer { z-index: 0; } /* The content sits on top */ #song-info-wrapper { position: relative; /* Keeps it in the document flow */ z-index: 2; /* Sits above the background-layer */ padding: 1em 1.75em; display: flex; flex-direction: column; gap: 0.3em; } #track-label { font-size: 1em; font-weight: 600; text-align: var(--text-alignment); } #artist-label { font-size: 0.8em; font-weight: 300; opacity: 0.6; text-align: var(--text-alignment); } .text-label { white-space: nowrap; overflow: hidden; mask-image: var(--trailing-fade); -webkit-mask-image: var(--trailing-fade); transition: opacity 0.25s ease-in-out; }