@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,700;0,800;1,700&display=swap";:root{--bg-main: #09090B;--bg-card: #18181B;--bg-elevated: #27272A;--text-primary: #FFFFFF;--text-secondary: #A1A1AA;--text-muted: #52525B;--primary: #6366F1;--primary-dark: #4338CA;--primary-light: #818CF8;--accent: #F59E0B;--accent-dark: #D97706;--danger: #EF4444;--danger-dark: #B91C1C;--success: #22C55E;--success-dark: #15803D;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--shadow-subtle: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-deep: 0 10px 15px -3px rgba(0, 0, 0, .5);--font-serif: "Playfair Display", serif;--font-sans: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-primary);min-height:100dvh;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:800;letter-spacing:-.02em}button{cursor:pointer;border:none;font-family:var(--font-sans);-webkit-user-select:none;user-select:none}.btn-push{position:relative;background:var(--primary);color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:1rem 1.5rem;box-shadow:0 6px 0 var(--primary-dark);top:0;transition:all .1s cubic-bezier(.4,0,.2,1);transform:translateY(0);display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-push:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 0 var(--primary-dark)}.btn-push:active{top:6px;transform:translateY(0);box-shadow:0 0 0 var(--primary-dark)}.btn-push.accent{background:var(--accent);box-shadow:0 6px 0 var(--accent-dark);color:#1a1a1a}.btn-push.accent:hover{box-shadow:0 8px 0 var(--accent-dark)}.btn-push.accent:active{box-shadow:0 0 0 var(--accent-dark)}.btn-push.danger{background:var(--danger);box-shadow:0 6px 0 var(--danger-dark)}.btn-push.danger:hover{box-shadow:0 8px 0 var(--danger-dark)}.btn-push.danger:active{box-shadow:0 0 0 var(--danger-dark)}.btn-push.secondary{background:var(--bg-elevated);box-shadow:0 6px #000;color:var(--text-secondary)}.btn-push.secondary:hover{box-shadow:0 8px #000;filter:brightness(1.2)}.btn-push.secondary:active{box-shadow:0 0 #000}.btn-push.success{background:var(--success);box-shadow:0 6px 0 var(--success-dark)}.btn-push.success:hover{box-shadow:0 8px 0 var(--success-dark)}.btn-push.success:active{box-shadow:0 0 0 var(--success-dark)}.btn-push.sm{padding:.5rem 1rem;font-size:.8rem;border-radius:12px;box-shadow:0 4px 0 var(--primary-dark)}.btn-push.sm:hover{box-shadow:0 5px 0 var(--primary-dark);transform:translateY(-1px)}.btn-push.sm:active{top:4px;box-shadow:0 0}.btn-push.sm.secondary{box-shadow:0 4px #000}.input-chunky{background:var(--bg-card);border:3px solid var(--bg-elevated);border-radius:16px;padding:1rem;font-size:1rem;color:#fff;width:100%;transition:all .2s;outline:none;font-weight:500}.input-chunky:focus{border-color:var(--primary);background:#000;transform:translateY(-2px);box-shadow:0 4px 0 var(--primary-dark)}.container{max-width:600px;margin:0 auto;padding:1.5rem;min-height:100dvh;display:flex;flex-direction:column}.card-chunky{background:var(--bg-card);border:2px solid var(--bg-elevated);border-bottom-width:6px;border-radius:24px;padding:1.5rem;margin-bottom:1rem}.card-glass{background:linear-gradient(135deg,#27272ae6,#18181bf2);border:1px solid rgba(255,255,255,.08);box-shadow:0 10px 20px #0000004d;border-radius:32px}.animate-fade-in{animation:fadeIn .4s ease-out forwards}.animate-scale-in{animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1) forwards}.animate-slide-up{animation:slideUp .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.text-gradient-gold{background:linear-gradient(135deg,#fcd34d,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent}@keyframes backdrop-prismatic{0%{filter:brightness(.4) saturate(1.5) hue-rotate(0deg)}to{filter:brightness(.4) saturate(1.5) hue-rotate(360deg)}}@keyframes avatar-ring-pulse{0%,to{box-shadow:0 0 8px #f59e0b66}50%{box-shadow:0 0 16px #f59e0bb3}}@media(max-width:480px){.hide-on-mobile{display:none!important}}@keyframes glowPulse{0%{transform:translate(-50%,-50%) scale(.8);opacity:0}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.4}to{transform:translate(-50%,-50%) scale(.9);opacity:.15}}@keyframes flameFlicker{0%,to{transform:scale(1);filter:brightness(1)}25%{transform:scale(1.04) rotate(-2deg);filter:brightness(1.1)}50%{transform:scale(.97) rotate(1deg);filter:brightness(1.05)}75%{transform:scale(1.03) rotate(-1deg);filter:brightness(1.12)}}@keyframes checkDraw{0%{stroke-dashoffset:20}to{stroke-dashoffset:0}}@keyframes fillUp{0%{clip-path:inset(100% 0 0 0 round 50%)}to{clip-path:inset(0 0 0 0 round 50%)}}@keyframes popIn{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}@keyframes floatFlame{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.streak-celebration{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a1a;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:250;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none}.streak-celebration__glow{position:absolute;top:35%;left:50%;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,#f59e0b4d,#f59e0b00 70%);animation:glowPulse 2s ease-in-out forwards;pointer-events:none}.streak-celebration__flame{font-size:5rem;line-height:1;animation:floatFlame 2s ease-in-out infinite;animation-delay:1.2s;will-change:transform}.streak-celebration__flame--flickering{animation:flameFlicker .8s ease-in-out infinite,floatFlame 2s ease-in-out infinite;animation-delay:0s,1.2s}.streak-celebration__number{font-size:5rem;font-weight:900;color:#f59e0b;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 40px rgba(245,158,11,.3)}.streak-celebration__label{font-size:1.1rem;font-weight:600;color:#ffffffb3;letter-spacing:.02em}.streak-celebration__week{display:flex;gap:.5rem;align-items:center;justify-content:center}.streak-celebration__day{display:flex;flex-direction:column;align-items:center;gap:.4rem}.streak-celebration__day-label{font-size:.7rem;font-weight:700;text-transform:uppercase;color:#fff6;letter-spacing:.05em}.streak-celebration__day-label--today{color:#f59e0b}.streak-celebration__day-circle{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative}.streak-celebration__day-circle--empty{background:#ffffff14;border:2px solid rgba(255,255,255,.1)}.streak-celebration__day-circle--done{background:#f59e0b;border:2px solid #F59E0B}.streak-celebration__day-circle--frozen{background:#38bdf8;border:2px solid #38BDF8}.streak-celebration__day-circle--today-anim{animation:popIn .5s cubic-bezier(.34,1.56,.64,1) forwards}.streak-celebration__day-circle--today-anim .streak-celebration__day-fill{animation:fillUp .4s ease-out forwards}.streak-celebration__check{stroke:#0a0a1a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;fill:none}.streak-celebration__check--animate{stroke-dasharray:20;stroke-dashoffset:20;animation:checkDraw .3s ease-out forwards;animation-delay:.3s}.streak-celebration__message{font-size:.95rem;color:#fff9;text-align:center;max-width:280px;line-height:1.5;font-weight:500}.streak-celebration__continue{width:100%;max-width:340px;padding:1rem;border-radius:16px;background:var(--primary, #6366F1);border:none;color:#fff;font-size:1.1rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:transform .15s,opacity .15s}.streak-celebration__continue:active{transform:scale(.97)}@keyframes easterGradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes easterSparkle{0%,to{opacity:.2;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes easterFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes easterShadowFloat{0%,to{transform:scaleX(1);opacity:.3}50%{transform:scaleX(.85);opacity:.15}}@keyframes easterGlowPulse{0%,to{opacity:.15;transform:scale(.95)}50%{opacity:.35;transform:scale(1.05)}}@keyframes easterTextPulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes eggShake1{0%,to{transform:rotate(-4deg) translate(-2px)}50%{transform:rotate(4deg) translate(2px)}}@keyframes eggShake2{0%,to{transform:rotate(-10deg) translate(-4px) scale(1.02)}25%{transform:rotate(12deg) translate(3px) scale(1.04)}50%{transform:rotate(-12deg) translate(-3px) scale(1.02)}75%{transform:rotate(10deg) translate(4px) scale(1.06)}}@keyframes crackDraw{0%{stroke-dashoffset:60}to{stroke-dashoffset:0}}@keyframes fragmentFly1{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(-35px,-40px) rotate(-60deg);opacity:0}}@keyframes fragmentFly2{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(30px,-45px) rotate(50deg);opacity:0}}@keyframes fragmentFly3{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(-25px,30px) rotate(-40deg);opacity:0}}@keyframes fragmentFly4{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(35px,25px) rotate(70deg);opacity:0}}.easter-fragment{position:absolute;animation-duration:.5s;animation-fill-mode:forwards;animation-timing-function:ease-out}.easter-fragment--1{animation-name:fragmentFly1}.easter-fragment--2{animation-name:fragmentFly2}.easter-fragment--3{animation-name:fragmentFly3}.easter-fragment--4{animation-name:fragmentFly4}@keyframes bunnyBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes bunnyRun{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-4px) rotate(-3deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(-4px) rotate(3deg)}}@keyframes pawFade1{0%{opacity:.6}33%{opacity:.3}66%{opacity:.1}to{opacity:0}}@keyframes pawFade2{0%{opacity:0}33%{opacity:.6}66%{opacity:.3}to{opacity:.1}}@keyframes pawFade3{0%{opacity:0}33%{opacity:0}66%{opacity:.6}to{opacity:.3}}.easter-bunny-ear-left{transform-origin:bottom center;animation:bunnyEarTwitch 3s ease-in-out infinite}.easter-bunny-eyes{animation:bunnyBlink 4s ease-in-out infinite;animation-delay:1s;transform-box:fill-box;transform-origin:center center}.easter-bunny-body{animation:bunnyBounce 2s ease-in-out infinite}.easter-bunny-body--running{animation:bunnyRun .4s ease-in-out infinite}@keyframes buttonGlow{0%,to{box-shadow:0 4px 20px #7c3aed4d}50%{box-shadow:0 4px 30px #7c3aed99,0 0 15px #7c3aed33}}@keyframes buttonGlowGreen{0%,to{box-shadow:0 4px 20px #22c55e4d}50%{box-shadow:0 4px 30px #22c55e99,0 0 15px #22c55e33}}@keyframes urgencyPulse{0%,to{border-color:#6366f14d;box-shadow:0 0 15px #6366f10d}50%{border-color:#6366f199;box-shadow:0 0 25px #6366f126}}@keyframes netDraw{0%{stroke-dashoffset:200}to{stroke-dashoffset:0}}.easter-celebration{position:fixed;top:0;right:0;bottom:0;left:0;z-index:260;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0a0a1a;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none}.easter-celebration__glow{position:absolute;top:30%;left:50%;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,#8b5cf640,#8b5cf600 70%);animation:celebGlowPulse 2.5s ease-in-out infinite;pointer-events:none;transform:translate(-50%,-50%)}@keyframes celebGlowPulse{0%,to{opacity:.4;transform:translate(-50%,-50%) scale(.9)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1.1)}}@keyframes screenShake{0%,to{transform:translate(0)}10%{transform:translate(-3px,2px)}20%{transform:translate(3px,-2px)}30%{transform:translate(-2px,3px)}40%{transform:translate(2px,-1px)}50%{transform:translate(-1px,1px)}60%{transform:translate(0)}}.easter-celebration--shake{animation:screenShake .4s ease-out}.easter-celebration__net{stroke-dasharray:200;stroke-dashoffset:200;animation:celebNetDraw .8s ease-out forwards;animation-delay:.3s}@keyframes celebNetDraw{to{stroke-dashoffset:0}}.easter-celebration__bunny-container{position:relative}.easter-celebration__bunny-bounce{animation:celebBunnyBounce 1s ease-in-out infinite;animation-delay:1.5s}@keyframes celebBunnyBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes coinSpin3D{0%{transform:perspective(200px) rotateY(0)}to{transform:perspective(200px) rotateY(360deg)}}.easter-celebration__coin-spin{animation:coinSpin3D .6s ease-in-out}@keyframes shimmerSweep{0%{background-position:-200% center}to{background-position:200% center}}.easter-celebration__coin-badge{display:flex;align-items:center;gap:.6rem;background:#f59e0b1f;border:2px solid rgba(245,158,11,.3);border-radius:16px;padding:.9rem 1.6rem;position:relative;overflow:hidden}.easter-celebration__coin-badge:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(245,158,11,.15) 40%,rgba(253,230,138,.2) 50%,rgba(245,158,11,.15) 60%,transparent 100%);background-size:200% 100%;animation:shimmerSweep 2s ease-in-out infinite;animation-delay:1s}.easter-celebration__coin-amount{font-size:2.2rem;font-weight:900;color:#f59e0b;font-variant-numeric:tabular-nums;text-shadow:0 0 20px rgba(245,158,11,.3)}.easter-celebration__title{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem;text-align:center}.easter-celebration__title-word{font-size:1.6rem;font-weight:900;color:#c4b5fd;text-shadow:0 0 30px rgba(196,181,253,.2)}.easter-celebration__subtitle{display:flex;align-items:center;gap:.75rem;color:var(--text-secondary);font-size:.95rem;font-weight:600}.easter-celebration__collect-btn{width:100%;max-width:300px;padding:.9rem;font-size:1.05rem;font-weight:800;background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff;border:none;border-radius:16px;cursor:pointer;letter-spacing:.02em;animation:celebButtonGlow 2s ease-in-out infinite}@keyframes celebButtonGlow{0%,to{box-shadow:0 4px 20px #7c3aed4d}50%{box-shadow:0 4px 35px #7c3aed99,0 0 20px #7c3aed26}}.easter-celebration__collect-btn:active{transform:scale(.97)}@keyframes bunnyBlink{0%,90%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes bunnyEarTwitch{0%,85%,to{transform:rotate(0)}90%{transform:rotate(-8deg)}95%{transform:rotate(3deg)}}.easter-celebration__flourish{opacity:.4}
