.edition-choice{background:radial-gradient(circle at 50% 28%,#fff 12%,color-mix(in srgb,var(--edition-color) 16%,#fff) 80%);padding:13px 7px 9px}
.edition-choice>span{position:relative;width:58px;height:58px;isolation:isolate;border:0;outline:0;border-radius:12px;box-shadow:none;background:none}
.edition-choice>span>em{font-style:normal;display:block;line-height:1;will-change:transform}
.edition-choice>span::before,.edition-choice>span::after{content:none;position:absolute;inset:-6px;color:var(--edition-color);font-size:16px;text-align:right;text-shadow:0 0 5px #fff;pointer-events:none;transform-origin:center}
.edition-choice[data-effect=sparkle]{background:radial-gradient(ellipse at top,#fff7d7,#eadfff)}
.edition-choice[data-effect=sparkle]>span::before{content:'✦';text-shadow:-48px 16px #c278dc,-13px 48px #e8b12a,-43px 54px #7bc9c7;animation:buddy-twinkle 2.2s ease-in-out infinite}
.edition-choice[data-effect=sparkle]>span::after{content:'✧';color:#c274c5;inset:12px -4px;animation:buddy-twinkle 2.8s ease-in-out infinite reverse}
.edition-choice[data-effect=spin]{background:linear-gradient(135deg,#ffe4ee,#e5e2ff)}
.edition-choice[data-effect=spin]>span>em{animation:buddy-spin 7s ease-in-out infinite}
.edition-choice[data-effect=bounce]{background:linear-gradient(#e5faff 55%,#def3d1)}
.edition-choice[data-effect=bounce]>span>em{animation:buddy-bounce 2.2s ease-in-out infinite}
.edition-choice[data-effect=bounce]>span::before{content:'';inset:auto 10px -2px;height:5px;background:#658f6633;border-radius:50%;animation:buddy-shadow 2.2s ease-in-out infinite}
.edition-choice[data-effect=rainbow]{background:linear-gradient(125deg,#ffc8df,#ffecb2,#c7f4d1,#c9e5ff,#e5caff,#ffc8df);background-size:300% 300%;animation:buddy-rainbow 8s ease-in-out infinite}
.edition-choice[data-effect=rainbow]>span::before{content:'✦';color:#fff;text-shadow:-45px 35px #fff,0 48px #fff;animation:buddy-twinkle 2.8s ease-in-out infinite}
.edition-choice[data-effect=comet]{background:linear-gradient(145deg,#e1d7ff,#cce9ff)}
.edition-choice[data-effect=comet]>span>em{animation:buddy-float 3s ease-in-out infinite}
.edition-choice[data-effect=comet]>span::before{content:'✦';color:#8772dd;text-shadow:-16px 12px #ac98ee,-30px 22px #d0bafa;animation:buddy-trail 3s ease-in-out infinite}
.edition-choice[data-effect=orbit]>span::before{content:'★';animation:buddy-orbit 7s linear infinite}
.edition-choice[data-effect=orbit]>span::after{content:'⋆';color:#73bdb9;animation:buddy-orbit 4s linear infinite reverse}
.edition-choice[data-effect=fireworks]{background:linear-gradient(145deg,#e5dbff,#ffe1ee)}
.edition-choice[data-effect=fireworks]>span::before,.edition-choice[data-effect=fireworks]>span::after{content:'✺';inset:-10px;font-size:37px;color:#ce83d4;text-shadow:-32px 22px #efb95d,8px 38px #81bdcd;animation:buddy-fireworks 3.6s ease-out infinite;z-index:-1}
.edition-choice[data-effect=fireworks]>span::after{inset:8px -8px;color:#899bde;animation-delay:-1.8s;text-shadow:-28px 14px #e7a0bd;font-size:26px}
.edition-choice[data-effect=rainbow-swirl]{background:linear-gradient(135deg,#fff2e6,#edf1ff)}
.edition-choice[data-effect=rainbow-swirl]>span::before{content:'';inset:-7px;border-radius:18px;background:conic-gradient(from 0deg,#ffb1d8,#ffe5a0,#b1ebc9,#ace0ff,#d5bbff,#ffb1d8);opacity:.8;z-index:-1;animation:buddy-orbit 10s linear infinite}
.edition-choice[data-effect=rainbow-swirl]>span::after{content:'✧';color:#fff;text-shadow:-48px 40px #fff;animation:buddy-twinkle 3s ease-in-out infinite}
.golden-edition{background:radial-gradient(circle at 50% 25%,#fffce6,#ffe4a0)}
.golden-edition>span>em{filter:drop-shadow(0 0 8px #e9b947)}
@keyframes buddy-orbit{to{transform:rotate(360deg)}}
@keyframes buddy-twinkle{0%,100%{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
@keyframes buddy-spin{0%,25%{transform:rotate(0)}75%,100%{transform:rotate(360deg)}}
@keyframes buddy-bounce{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-5px) rotate(7deg)}}
@keyframes buddy-rainbow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes buddy-shadow{50%{transform:scaleX(.65);opacity:.5}}
@keyframes buddy-float{50%{transform:translate(4px,-5px) rotate(8deg)}}
@keyframes buddy-trail{0%,100%{opacity:.3;transform:translate(-5px,5px)}50%{opacity:1;transform:translate(0,0)}}
@keyframes buddy-fireworks{0%{transform:scale(.35);opacity:0}25%{opacity:.85}80%,100%{transform:scale(1.2);opacity:0}}
@media(prefers-reduced-motion:reduce){.edition-choice,.edition-choice>span,.edition-choice>span>em,.edition-choice>span::before,.edition-choice>span::after{animation:none!important;will-change:auto}}
