.grid-visual-container.svelte-1jr1ma6{display:flex;flex-direction:column;align-items:center}.grid-visual.svelte-1jr1ma6{display:grid;grid-template-columns:repeat(var(--grid-cols),1fr);gap:4px;justify-content:center;max-width:100%}.grid-item.svelte-1jr1ma6{display:flex;align-items:center;justify-content:center;animation:svelte-1jr1ma6-gridReveal .4s ease-out backwards;animation-delay:var(--delay)}@keyframes svelte-1jr1ma6-gridReveal{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.stacks-container.svelte-1jr1ma6{min-height:3rem}.stack-item.svelte-1jr1ma6{animation:svelte-1jr1ma6-stackBounce .5s ease-out backwards;animation-delay:var(--delay)}@keyframes svelte-1jr1ma6-stackBounce{0%{opacity:0;transform:scale(0) rotate(-10deg)}60%{transform:scale(1.15) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}.stack-badge.svelte-1jr1ma6{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.25rem;border-radius:.5rem;transition:transform .2s ease}.stack-badge.svelte-1jr1ma6:hover{transform:scale(1.1)}.badge-label.svelte-1jr1ma6{position:absolute;top:-6px;right:-8px;font-size:.65rem;font-weight:700;color:#fff;padding:1px 4px;border-radius:9999px;line-height:1}.badge-25.svelte-1jr1ma6{background-color:color-mix(in srgb,var(--color-primary-dark) 15%,transparent);transform:scale(1.1)}.badge-25.svelte-1jr1ma6 .badge-label:where(.svelte-1jr1ma6){background-color:var(--color-primary-dark);font-size:.7rem;padding:2px 5px}.badge-10.svelte-1jr1ma6{background-color:color-mix(in srgb,var(--color-primary) 15%,transparent)}.badge-10.svelte-1jr1ma6 .badge-label:where(.svelte-1jr1ma6){background-color:var(--color-primary)}.badge-5.svelte-1jr1ma6{background-color:color-mix(in srgb,var(--color-primary-light) 30%,transparent);transform:scale(.95)}.badge-5.svelte-1jr1ma6 .badge-label:where(.svelte-1jr1ma6){background-color:var(--color-primary-light);color:var(--color-text)}.individual-emoji.svelte-1jr1ma6{opacity:.9}.stack-separator.svelte-1jr1ma6{color:var(--color-text-light);font-size:1.25rem;font-weight:600;margin:0 .25rem;animation:svelte-1jr1ma6-fadeIn .3s ease-out .2s backwards}@keyframes svelte-1jr1ma6-fadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.grid-item.svelte-1jr1ma6,.stack-item.svelte-1jr1ma6,.stack-separator.svelte-1jr1ma6{animation:none;opacity:1;transform:none}.stack-badge.svelte-1jr1ma6:hover{transform:none}}.celebration-mastery.svelte-is4ox3{animation:svelte-is4ox3-masteryPulse 1.5s ease-in-out infinite,svelte-is4ox3-floatUp .8s ease-out}.celebration-perfect.svelte-is4ox3{animation:svelte-is4ox3-perfectEntrance .8s ease-out,svelte-is4ox3-gentleBounce 2s ease-in-out .8s infinite}.celebration-standard.svelte-is4ox3{animation:svelte-is4ox3-gentleBounce 2s ease-in-out infinite}@keyframes svelte-is4ox3-masteryPulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 10px gold)}50%{transform:scale(1.1);filter:drop-shadow(0 0 20px gold)}}@keyframes svelte-is4ox3-floatUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes svelte-is4ox3-perfectEntrance{0%{transform:scale(.5) rotate(-10deg);opacity:0}60%{transform:scale(1.15) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0)}}@keyframes svelte-is4ox3-gentleBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.reward-overlay.svelte-aa7th{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background-color:color-mix(in srgb,var(--color-background) 95%,transparent);animation:svelte-aa7th-fadeIn .3s ease-out;cursor:pointer;overflow:hidden}.reward-overlay.category-streak.svelte-aa7th{background:linear-gradient(135deg,color-mix(in srgb,var(--color-background) 90%,transparent),color-mix(in srgb,var(--color-primary-light) 85%,transparent))}.reward-overlay.category-milestone.svelte-aa7th{background:linear-gradient(135deg,color-mix(in srgb,var(--color-background) 90%,transparent),color-mix(in srgb,#FFD700 20%,var(--color-background)),color-mix(in srgb,var(--color-primary-light) 85%,transparent))}.reward-overlay.lightning.svelte-aa7th{animation:svelte-aa7th-fadeIn .3s ease-out,svelte-aa7th-lightningBg .5s ease-out}@keyframes svelte-aa7th-lightningBg{0%,to{filter:brightness(1)}10%,30%{filter:brightness(1.5)}20%,40%{filter:brightness(1)}50%{filter:brightness(2)}}@keyframes svelte-aa7th-fadeIn{0%{opacity:0}to{opacity:1}}.particle-container.svelte-aa7th{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti-particle.svelte-aa7th{position:absolute;top:-20px;animation:svelte-aa7th-confettiFall linear forwards;border-radius:2px}.confetti-particle.circle.svelte-aa7th{border-radius:50%}@keyframes svelte-aa7th-confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.fire-particle.svelte-aa7th{position:absolute;bottom:0;border-radius:50%/60% 60% 40% 40%;animation:svelte-aa7th-fireRise ease-out forwards;filter:blur(1px)}@keyframes svelte-aa7th-fireRise{0%{transform:translateY(0) scale(1);opacity:1}50%{transform:translateY(-40vh) scale(.8);opacity:.8}to{transform:translateY(-80vh) scale(.3);opacity:0}}.star-particle.svelte-aa7th{position:absolute;color:gold;font-size:inherit;line-height:1;text-shadow:0 0 10px #FFD700,0 0 20px #FFD700;animation:svelte-aa7th-starTwinkle ease-in-out infinite}@keyframes svelte-aa7th-starTwinkle{0%,to{transform:scale(1) rotate(0);opacity:.7}50%{transform:scale(1.3) rotate(180deg);opacity:1}}.sparkle-particle.svelte-aa7th{position:absolute;background:radial-gradient(circle,white 0%,transparent 70%);border-radius:50%;animation:svelte-aa7th-sparkleFloat ease-out forwards}@keyframes svelte-aa7th-sparkleFloat{0%{transform:translateY(0) scale(0);opacity:0}30%{transform:translateY(-10px) scale(1);opacity:1}to{transform:translateY(-50px) scale(.5);opacity:0}}.lightning-flash.svelte-aa7th{position:absolute;inset:0;background:#fff;animation:svelte-aa7th-lightningFlash .6s ease-out forwards;pointer-events:none}@keyframes svelte-aa7th-lightningFlash{0%,to{opacity:0}5%,25%{opacity:.6}10%,30%{opacity:0}35%{opacity:.8}40%{opacity:0}}.reward-content.svelte-aa7th{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem}.reward-content.entry-scaleIn.svelte-aa7th{animation:svelte-aa7th-scaleIn .4s ease-out}.reward-content.entry-slideUp.svelte-aa7th{animation:svelte-aa7th-slideUp .3s ease-out}.reward-content.entry-explode.svelte-aa7th{animation:svelte-aa7th-explodeIn .5s ease-out}.reward-content.entry-flash.svelte-aa7th{animation:svelte-aa7th-flashIn .4s ease-out}@keyframes svelte-aa7th-scaleIn{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes svelte-aa7th-slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes svelte-aa7th-explodeIn{0%{transform:scale(0);opacity:0}40%{transform:scale(1.3)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}@keyframes svelte-aa7th-flashIn{0%{opacity:0;transform:scale(2)}50%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.reward-emoji.svelte-aa7th{font-size:5rem;line-height:1;margin-bottom:1rem}.reward-emoji.anim-bounce.svelte-aa7th{animation:svelte-aa7th-bounce .6s ease-in-out infinite}.reward-emoji.anim-pulse.svelte-aa7th{animation:svelte-aa7th-pulse .8s ease-in-out infinite}.reward-emoji.anim-shake.svelte-aa7th{animation:svelte-aa7th-shake .4s ease-in-out infinite}.reward-emoji.anim-rocket.svelte-aa7th{animation:svelte-aa7th-rocket 1s ease-out infinite}.reward-emoji.anim-flash.svelte-aa7th{animation:svelte-aa7th-emojiFlash .5s ease-out}@keyframes svelte-aa7th-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes svelte-aa7th-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes svelte-aa7th-shake{0%,to{transform:translate(0) rotate(0)}20%{transform:translate(-5px) rotate(-5deg)}40%{transform:translate(5px) rotate(5deg)}60%{transform:translate(-5px) rotate(-5deg)}80%{transform:translate(5px) rotate(5deg)}}@keyframes svelte-aa7th-rocket{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.2)}to{transform:translateY(0) scale(1)}}@keyframes svelte-aa7th-emojiFlash{0%{opacity:0;transform:scale(2)}50%{opacity:1;transform:scale(1.1);filter:brightness(1.5)}to{opacity:1;transform:scale(1)}}.reward-title.svelte-aa7th{font-size:2rem;font-weight:800;color:var(--color-primary);margin-bottom:.5rem;animation:svelte-aa7th-bounceText .5s ease-out .2s both}@keyframes svelte-aa7th-bounceText{0%{transform:scale(0);opacity:0}60%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.reward-message.svelte-aa7th{font-size:1.25rem;color:var(--color-text);margin-bottom:2rem;animation:svelte-aa7th-bounceText .5s ease-out .4s both}.tap-hint.svelte-aa7th{font-size:.875rem;color:var(--color-text-light);animation:svelte-aa7th-fadeIn .5s ease-out .6s both}.reward-mascot.svelte-aa7th{width:10rem;height:10rem;object-fit:contain;margin-bottom:.5rem;animation:svelte-aa7th-mascotBounce .8s ease-out;filter:drop-shadow(0 4px 8px rgba(0,0,0,.15))}@keyframes svelte-aa7th-mascotBounce{0%{transform:scale(0) rotate(-10deg);opacity:0}50%{transform:scale(1.2) rotate(5deg)}to{transform:scale(1) rotate(0);opacity:1}}.reward-mascot.streak-mascot.svelte-aa7th{width:7rem;height:7rem}.reward-content.quick.svelte-aa7th .reward-emoji:where(.svelte-aa7th){font-size:4.5rem}.reward-content.quick.svelte-aa7th .reward-title:where(.svelte-aa7th){font-size:1.5rem}.reward-content.quick.svelte-aa7th .reward-message:where(.svelte-aa7th){font-size:1rem;margin-bottom:0}@media(prefers-reduced-motion:reduce){.reward-overlay.svelte-aa7th,.reward-content.svelte-aa7th,.reward-emoji.svelte-aa7th,.reward-title.svelte-aa7th,.reward-message.svelte-aa7th,.reward-mascot.svelte-aa7th,.confetti-particle.svelte-aa7th,.fire-particle.svelte-aa7th,.star-particle.svelte-aa7th,.sparkle-particle.svelte-aa7th,.lightning-flash.svelte-aa7th{animation:none!important}.reward-overlay.svelte-aa7th{opacity:1}.reward-content.svelte-aa7th{transform:none;opacity:1}}.toast-container.svelte-n8785o{position:fixed;top:115px;left:50%;transform:translate(-50%);z-index:50;pointer-events:none}.toast.svelte-n8785o{padding:.625rem 1.25rem;border-radius:9999px;color:#fff;font-weight:600;font-size:.95rem;box-shadow:0 4px 12px #00000026;animation:svelte-n8785o-fly-in .25s ease-out,svelte-n8785o-fly-out .25s ease-in .95s forwards}.toast-message.svelte-n8785o{white-space:nowrap}@keyframes svelte-n8785o-fly-in{0%{opacity:0;transform:translate(-100px)}to{opacity:1;transform:translate(0)}}@keyframes svelte-n8785o-fly-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100px)}}@media(prefers-reduced-motion:reduce){.toast.svelte-n8785o{animation:none;opacity:1}}
