/* The dance floor belongs to the vote panel, underneath all controls. */
body[data-page-view="vote"] #party-app .pc-dj-card{background:linear-gradient(145deg,#28162f70,#160d1b99);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);border-color:#cd94df54;box-shadow:inset 0 1px 0 #e7beff1a,0 16px 40px #08031026}
body[data-page-view="vote"] #party-app .pc-dj-card :is(h2,p,.pc-label){text-shadow:0 1px 9px #09040fbb}
body[data-page-view="vote"] #party-app .vote-shell{isolation:isolate;background:#160d1c;box-shadow:0 20px 65px #0005,inset 0 1px 0 #eab5ff24}
body[data-page-view="vote"] #party-app .vote-shell::before{display:none}
#party-app .vote-dance-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;border-radius:inherit;background:#160d1c}
#party-app .vote-dance-photo{position:absolute;inset:-3%;background:url('assets/tickets-background.png') center 59%/cover no-repeat;opacity:.87;transform:scale(1.02);transform-origin:50% 60%}
#party-app .vote-dance-shade{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 42%,#170e1ce8 0%,#170e1cb8 32%,#170e1c20 77%),linear-gradient(180deg,#140b1b50,#140b1b0a 45%,#140b1b80 82%,#140b1bee);z-index:1}
#party-app .vote-dance-beam{position:absolute;top:-28%;width:42%;height:125%;z-index:2;opacity:.36;transform-origin:50% 0;mix-blend-mode:screen;clip-path:polygon(48% 0,52% 0,100% 100%,0 100%)}
#party-app .vote-dance-beam.beam-purple{left:-14%;background:linear-gradient(180deg,#c14dff45,#bd4bff14 55%,transparent);transform:rotate(-21deg)}
#party-app .vote-dance-beam.beam-orange{right:-14%;background:linear-gradient(180deg,#ff9a4540,#ff8b3514 55%,transparent);transform:rotate(21deg)}
#party-app .vote-dance-spectrum{position:absolute;bottom:0;left:50%;display:flex;align-items:flex-end;gap:5px;height:44px;transform:translateX(-50%);opacity:.42;z-index:2}
#party-app .vote-dance-spectrum i{display:block;width:3px;height:var(--dance-bar);border-radius:4px 4px 0 0;background:linear-gradient(#ddafff,#ac58d5);transform:scaleY(.35);transform-origin:50% 100%}
#party-app .vote-dance-spectrum i:nth-child(n+20){background:linear-gradient(#ffcb97,#f08a49)}
#party-app .vote-shell>.vote-inner{z-index:3}
#party-app .vote-dance-scene~.vote-inner .vote-header h2{text-shadow:0 2px 18px #08040fd9,0 0 40px #be7bef2b}
#party-app .vote-dance-scene~.vote-inner .vote-choice{background:linear-gradient(145deg,#2c1c30ed,#1c131fef);box-shadow:inset 0 1px 0 #edc9ff18,0 12px 30px #0003}
#party-app .vote-dance-scene~.vote-inner .vote-choice.option-b{background:linear-gradient(145deg,#30203ced,#1d1426ef)}
#party-app .vote-dance-scene~.vote-inner .vote-choice.selected{background:linear-gradient(145deg,#543125f2,#2c1c1bf5)}
#party-app .vote-dance-scene~.vote-inner .vote-setup-notice{background:#211527ed;border-color:#f1b37257}
#party-app .vote-dance-scene~.vote-inner .vote-auth{max-width:840px;margin-inline:auto;padding-bottom:10px;text-shadow:0 1px 8px #000}
#party-app .vote-dance-scene~.vote-inner .vote-summary{color:#f0ddec;text-shadow:0 1px 8px #000}
html.motion-full #party-app .vote-dance-photo{animation:vote-dance-drift 19s ease-in-out infinite alternate}
html.motion-full #party-app .vote-dance-beam.beam-purple{animation:vote-purple-sweep 9s ease-in-out infinite alternate}
html.motion-full #party-app .vote-dance-beam.beam-orange{animation:vote-orange-sweep 11s ease-in-out -4s infinite alternate}
html.motion-full #party-app .vote-dance-spectrum i{animation:vote-spectrum-bounce 1.45s ease-in-out var(--dance-delay) infinite alternate}
@keyframes vote-dance-drift{from{transform:scale(1.02) translate3d(-.5%,0,0)}to{transform:scale(1.085) translate3d(.5%,-.8%,0)}}
@keyframes vote-purple-sweep{from{transform:rotate(-21deg);opacity:.24}to{transform:rotate(17deg);opacity:.5}}
@keyframes vote-orange-sweep{from{transform:rotate(21deg);opacity:.25}to{transform:rotate(-13deg);opacity:.47}}
@keyframes vote-spectrum-bounce{from{transform:scaleY(.3)}to{transform:scaleY(1)}}
html.page-hidden #party-app .vote-dance-scene *{animation-play-state:paused!important}
html.motion-reduced #party-app .vote-dance-scene *{animation:none!important}
@media(max-width:760px){
  #party-app .vote-dance-photo{background-position:53% center;opacity:.75}
  #party-app .vote-dance-shade{background:linear-gradient(180deg,#170d1d50,#170d1dc9 30%,#170d1d94 70%,#170d1df0)}
  #party-app .vote-dance-beam{opacity:.23;width:70%}
  #party-app .vote-dance-spectrum{gap:3px;opacity:.3}
  #party-app .vote-dance-spectrum i{width:2px}
}
@media(prefers-reduced-motion:reduce){html.motion-full #party-app .vote-dance-scene *{animation:none!important}}
