html,body{background:#000!important}#shandy-room{background:#000!important}#shandy-room header,#shandy-room footer{background:#000!important}#shandy-room:after{opacity:.35;transition:opacity 2s ease,filter 2s ease}#shandy-room .jewel-divider{position:relative}#shandy-room .disco-heart{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;border:0;background:transparent;border-radius:50%;cursor:pointer;padding:0}#shandy-room .disco-heart:focus-visible{outline:2px solid #ffb8e3;outline-offset:1px}#shandy-room .jewel-divider svg,#shandy-room .rhinestone-logo,#shandy-room .art,#shandy-room .sectionhead span,#shandy-room dialog,#shandy-room .playerhead,#shandy-room .song-caption{transition:filter 2s ease,color 2s ease,border-color 2s ease,box-shadow 2s ease,background-color 2s ease}#shandy-room.disco-on{--pink:#ff75d4;--blue:#7ce2ff}#shandy-room.disco-on:after{opacity:.8;filter:brightness(1.3);background-image:radial-gradient(ellipse at 18% 14%,#7b246b22,transparent 29%),radial-gradient(ellipse at 80% 32%,#1a499022,transparent 28%),radial-gradient(circle at 10% 6%,#d2efff 0 .7px,transparent 1.3px),radial-gradient(circle at 86% 14%,#ffd5ed 0 .8px,transparent 1.4px),radial-gradient(circle at 28% 19%,#fff 0 .7px,transparent 1.3px),radial-gradient(circle at 69% 28%,#b8e6ff 0 .7px,transparent 1.3px),radial-gradient(circle at 16% 41%,#ffd8f3 0 .7px,transparent 1.3px);background-size:100% 1500px,100% 2100px,379px 617px,563px 829px,743px 571px,487px 947px,853px 1097px}#shandy-room.disco-on .rhinestone-logo{filter:brightness(1.12) saturate(1.18) drop-shadow(0 0 12px #e35fac30)}#shandy-room.disco-on .jewel-divider svg{filter:brightness(1.22) saturate(1.3) drop-shadow(0 0 7px #ff65c380)}#shandy-room.disco-on .sectionhead span:first-child{color:#ff8ddd;text-shadow:0 0 16px #ff55cc66}#shandy-room.disco-on .sectionhead span:last-child,#shandy-room.disco-on .tile small{color:#83e4ff}#shandy-room.disco-on .art{border-color:#fa88d5;box-shadow:0 0 0 2px #000,0 0 0 3px #73dbff88,0 0 18px #fa6ed633}#shandy-room.disco-on dialog{border-color:#ff87d4;box-shadow:0 0 0 3px #72d9ff66,0 0 45px #f554c746;background:#05050b}#shandy-room.disco-on .playerhead,#shandy-room.disco-on .song-caption{background:#08040d;border-color:#ff84d988}#shandy-room.disco-on .song-caption .session-title{color:#ffeafb;text-shadow:0 0 12px #ff76cd55}#shandy-room.disco-on .song-caption .session-artist{color:#84e7ff}#shandy-room.disco-on .player-scrollwork svg{filter:brightness(1.3) saturate(1.3) drop-shadow(0 0 4px #ff70cf66)}@media(prefers-reduced-motion:reduce){#shandy-room * ,#shandy-room:after{transition-duration:.01ms!important}}
/* The first state is a completely black stage; the universe appears with the heart. */
#shandy-room:after{opacity:0!important}
#shandy-room.disco-on:after{opacity:1!important;background-image:radial-gradient(ellipse at 15% 10%,#7d166c45,transparent 30%),radial-gradient(ellipse at 85% 25%,#16488554,transparent 32%),radial-gradient(ellipse at 48% 50%,#74197520,transparent 34%),radial-gradient(circle at 10% 6%,#d2efff 0 .85px,transparent 1.5px),radial-gradient(circle at 86% 14%,#ffd5ed 0 .9px,transparent 1.5px),radial-gradient(circle at 28% 19%,#fff 0 .8px,transparent 1.5px),radial-gradient(circle at 69% 28%,#b8e6ff 0 .8px,transparent 1.5px),radial-gradient(circle at 16% 41%,#ffd8f3 0 .8px,transparent 1.5px);background-size:100% 1700px,100% 2000px,100% 2300px,263px 409px,379px 557px,487px 571px,587px 683px,703px 829px}
#shandy-room.disco-on .jewel-divider svg{filter:brightness(1.45) saturate(1.65) drop-shadow(0 0 5px #ff6bc8) drop-shadow(0 0 16px #e37cba88)}
#shandy-room .jewel-divider svg g{transform-origin:center;transition:filter 2s ease,opacity 2s ease}
#shandy-room.disco-on .jewel-divider svg g{filter:drop-shadow(0 0 3px #ffb97b77)}
#shandy-room.disco-on .art,#shandy-room.disco-on .song:nth-child(2n) .art{border-color:#ff83da;box-shadow:0 0 0 2px #000,0 0 0 3px #79e6ff,0 0 12px #e965d6a0,0 0 26px #3fc7f455}
#shandy-room.disco-on .back-to-film{color:#c7f4ff;border-color:#73e1ff;box-shadow:0 0 15px #67dbff66}
#shandy-room.disco-on .sectionhead span:first-child{color:#ff85d7;text-shadow:0 0 9px #ff72d5,0 0 22px #f548c96b}
#shandy-room.disco-on .rhinestone-logo{filter:brightness(1.2) saturate(1.3) drop-shadow(0 0 14px #ed72ba66)}
#shandy-room.disco-on:before{border-color:#e9a4ccaa;box-shadow:inset 0 0 12px #77dbff22,0 0 18px #ec77c34a}
/* A single stable cosmic layer fades in and out, avoiding background-image swaps. */
#shandy-room:after,#shandy-room.disco-on:after{opacity:0!important}
#shandy-room .shandy-nebula{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity 3.5s ease-in-out;background-image:radial-gradient(ellipse at 14% 14%,#7d166c42,transparent 27%),radial-gradient(ellipse at 85% 36%,#16488548,transparent 30%),radial-gradient(ellipse at 48% 69%,#74197520,transparent 31%),radial-gradient(circle at 10% 6%,#d2efff 0 .85px,transparent 1.5px),radial-gradient(circle at 86% 14%,#ffd5ed 0 .9px,transparent 1.5px),radial-gradient(circle at 28% 19%,#fff 0 .8px,transparent 1.5px),radial-gradient(circle at 69% 28%,#b8e6ff 0 .8px,transparent 1.5px);background-size:100% 100%,100% 100%,100% 100%,263px 409px,379px 557px,487px 571px,587px 683px;background-repeat:no-repeat,no-repeat,no-repeat,repeat,repeat,repeat,repeat}
#shandy-room.disco-on .shandy-nebula{opacity:.85}
#shandy-room .rhinestone-logo,#shandy-room .jewel-divider svg,#shandy-room .jewel-divider svg g,#shandy-room .art,#shandy-room .sectionhead span,#shandy-room dialog,#shandy-room .playerhead,#shandy-room .song-caption,#shandy-room:before,#shandy-room .back-to-film{transition:filter 3.5s ease-in-out,color 3.5s ease-in-out,border-color 3.5s ease-in-out,box-shadow 3.5s ease-in-out,background-color 3.5s ease-in-out,text-shadow 3.5s ease-in-out}
@media(prefers-reduced-motion:reduce){#shandy-room .shandy-nebula,#shandy-room * ,#shandy-room:before{transition-duration:.01ms!important}}
/* Let the space layer flow continuously behind the footer. */
#shandy-room footer{background:transparent!important}
/* Matching shadow layers and inset status lets the browser interpolate every edge smoothly. */
#shandy-room.disco-on .song .art,#shandy-room.disco-on .song:nth-child(2n) .art{border-color:#ff83da;box-shadow:0 0 0 2px #000,0 0 0 3px #79e6ff,inset 0 1px 0 #fff3df55,0 8px 25px #e965d680}
@media(prefers-reduced-motion:reduce){#shandy-room .art{transition-duration:.01ms!important}}
