/* Effects cover only the artwork. Controls always receive the pointer. */
.album-flair{position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;overflow:hidden}
.album-flair>span{position:absolute;inset:0;display:none;background-size:100% 100%;background-repeat:no-repeat;pointer-events:none}
html[data-album-flair=snow] .album-flair-snow{display:block;animation:album-snow-settle 16s cubic-bezier(.18,.55,.4,1) both}
html[data-album-flair=frost] .album-flair-frost{display:block;animation:album-frost-grow 9s ease-out both}
@keyframes album-snow-settle{from{clip-path:inset(0 0 96% 0);opacity:.12}to{clip-path:inset(0);opacity:1}}
@keyframes album-frost-grow{from{opacity:.08}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.album-flair>span{animation:none!important}}

html[data-album-flair=halloween] .album-flair-halloween,
html[data-album-flair=christmas] .album-flair-christmas,
html[data-album-flair=new-years] .album-flair-new-years{display:block}
.song-card[data-selected=true] :is(.album-flair-christmas,.album-flair-new-years){animation:album-light-breath 6s ease-in-out infinite}
@keyframes album-light-breath{0%,100%{opacity:.82}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.song-card[data-selected=true] .album-flair>span{animation:none!important}}

html[data-album-flair=nocturne] .album-flair-nocturne,
html[data-album-flair=gilded] .album-flair-gilded,
html[data-album-flair=afterhours] .album-flair-afterhours{display:block}
:is(.album-flair-nocturne,.album-flair-gilded,.album-flair-afterhours)::after{content:"";position:absolute;top:1.25%;left:12%;width:32px;height:1px;background:linear-gradient(90deg,transparent,#eefff4,transparent);box-shadow:0 0 7px #cff9ff66;opacity:0}
.album-flair-nocturne::after{top:10%;width:6px;background:#fff5fa;box-shadow:0 0 9px #c7c6fa}
.album-flair-gilded::after{background:linear-gradient(90deg,transparent,#fff0cb,transparent);box-shadow:0 0 6px #f9d5a866}
.song-card[data-selected=true] :is(.album-flair-nocturne,.album-flair-gilded,.album-flair-afterhours)::after{animation:album-foil-glint 9s ease-in-out infinite}
@keyframes album-foil-glint{0%,30%{left:12%;opacity:0}42%{opacity:.75}63%,100%{left:83%;opacity:0}}
@media(prefers-reduced-motion:reduce){.album-flair>span::after{animation:none!important;opacity:0}}
