@keyframes spin-sunburst{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes star-shockwave{0%{transform:scale(.2);opacity:.9}50%{opacity:.6}to{transform:scale(2.6);opacity:0}}@keyframes banner-pop{0%{transform:scale(.5) translateY(-20px);opacity:0}65%{transform:scale(1.12) translateY(3px);opacity:1}85%{transform:scale(.96) translateY(-1px)}to{transform:scale(1) translateY(0);opacity:1}}@keyframes shimmer-sweep{0%{transform:translateX(-150%) skewX(-20deg)}40%,to{transform:translateX(250%) skewX(-20deg)}}@keyframes star-float-bob{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-6px) rotate(1deg)}}@keyframes hero-star-pulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 16px rgba(251,191,36,.6))}50%{transform:scale(1.05);filter:drop-shadow(0 0 28px rgba(251,191,36,.9))}}@keyframes modal-card-entrance{0%{transform:scale(.65) translateY(40px);opacity:0}70%{transform:scale(1.03) translateY(-4px);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}@keyframes gem-gleam{0%,to{transform:scale(1) rotate(0deg);filter:drop-shadow(0 4px 8px rgba(168,85,247,.4))}50%{transform:scale(1.1) rotate(6deg);filter:drop-shadow(0 6px 16px rgba(168,85,247,.7))}}@keyframes sparkle-twinkle{0%,to{opacity:.2;transform:scale(.6) rotate(0deg)}50%{opacity:1;transform:scale(1.2) rotate(45deg)}}.animate-spin-sunburst{animation:spin-sunburst 36s linear infinite}.animate-star-shockwave{animation:star-shockwave .6s cubic-bezier(.1,.8,.2,1) forwards}.animate-banner-pop{animation:banner-pop .65s cubic-bezier(.175,.885,.32,1.275) forwards}.animate-shimmer-sweep{animation:shimmer-sweep 2.8s ease-in-out infinite}.animate-star-float{animation:star-float-bob 3s ease-in-out infinite}.animate-hero-pulse{animation:hero-star-pulse 2.2s ease-in-out infinite}.animate-modal-card-entrance{animation:modal-card-entrance .5s cubic-bezier(.175,.885,.32,1.275) forwards}.animate-gem-gleam{animation:gem-gleam 2s ease-in-out infinite}.animate-sparkle-1{animation:sparkle-twinkle 1.8s ease-in-out infinite}.animate-sparkle-2{animation:sparkle-twinkle 2.4s ease-in-out .6s infinite}.animate-sparkle-3{animation:sparkle-twinkle 2s ease-in-out 1.2s infinite}.btn-3d-primary{background:linear-gradient(180deg,#38bdf8,#056df5 45%,#0256b8);border-bottom:6px solid #0342a3;box-shadow:0 8px 18px rgba(5,109,245,.45);transition:all .1s ease}.btn-3d-primary:hover{background:linear-gradient(180deg,#60a5fa,#2563eb 45%,#1d4ed8);border-bottom-color:#1e40af;transform:translateY(-1px);box-shadow:0 10px 22px rgba(5,109,245,.55)}.btn-3d-primary:active{transform:translateY(6px);border-bottom-width:0;box-shadow:0 2px 6px rgba(5,109,245,.3)}.btn-3d-emerald{background:linear-gradient(180deg,#34d399,#10b981 45%,#059669);border-bottom:6px solid #047857;box-shadow:0 8px 18px rgba(5,150,105,.4);transition:all .1s ease}.btn-3d-emerald:hover{background:linear-gradient(180deg,#6ee7b7,#34d399 45%,#10b981);border-bottom-color:#065f46;transform:translateY(-1px);box-shadow:0 10px 22px rgba(5,150,105,.5)}.btn-3d-emerald:active{transform:translateY(6px);border-bottom-width:0;box-shadow:0 2px 6px rgba(5,150,105,.3)}.btn-3d-sky{background:linear-gradient(180deg,#38bdf8,#0ea5e9 45%,#0284c7);border-bottom:5px solid #0369a1;box-shadow:0 6px 14px rgba(14,165,233,.35);transition:all .1s ease}.btn-3d-sky:hover{background:linear-gradient(180deg,#7dd3fc,#38bdf8 45%,#0ea5e9);transform:translateY(-1px)}.btn-3d-sky:active{transform:translateY(5px);border-bottom-width:0;box-shadow:0 2px 4px rgba(14,165,233,.2)}