body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}#root,.app-container,body,html{height:100%;margin:0;padding:0;width:100%}.app-container{position:relative}.App{align-items:center;background:linear-gradient(180deg,#ffebee,pink,#f8bbd0);font-family:Arial,sans-serif;min-height:100vh;overflow:hidden;padding:20px}.App,.card-wrapper{display:flex;justify-content:center;position:relative}.card-wrapper{width:100%;z-index:10}@keyframes glow{0%,to{text-shadow:0 0 5px #e83e8c80}50%{text-shadow:0 0 20px #e83e8ccc,0 0 30px #e83e8c99}}@keyframes shimmer{0%{background-position:-100% 0}to{background-position:200% 0}}@keyframes fadeInText{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.video-overlay{align-items:center;animation:fadeIn .5s ease-in-out;background-color:#000c;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.video-container{animation:scaleIn .5s ease-in-out;background-color:#fff;border-radius:10px;box-shadow:0 0 30px #ff69b499;max-width:800px;overflow:hidden;position:relative;width:80%}.video-container .gif-animation,.video-container video{border-radius:8px;display:block;width:100%}.gif-animation{border:none;height:500px;max-height:80vh;width:100%}.close-video{align-items:center;background-color:#ffffffb3;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:20px;height:30px;justify-content:center;line-height:1;position:absolute;right:10px;top:10px;transition:all .3s ease;width:30px;z-index:1001}.close-video:hover{background-color:#fff;transform:scale(1.1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.birthday-card-container{align-items:center;animation:fadeIn 1.2s ease-out forwards;display:flex;flex-direction:column;max-width:800px;position:relative;width:100%;z-index:10}.birthday-title{animation:glow 2s ease-in-out infinite;animation:shimmer 6s linear infinite;background:linear-gradient(90deg,#e83e8c,#ff8da1,#ff69b4,#e83e8c);-webkit-background-clip:text;background-clip:text;background-size:300% 100%;color:#e83e8c;color:#0000;font-size:2.5rem;margin-bottom:1.5rem;text-align:center}.celebrate-button{background-color:#ff8da1;border:none;border-radius:25px;box-shadow:0 2px 5px #0000001a;color:#fff;cursor:pointer;font-size:1rem;margin-bottom:2rem;padding:10px 25px;transition:all .3s ease}.celebrate-button:hover{background-color:#ff7c94;transform:scale(1.05)}.card-content{animation:fadeIn 1.5s ease-out forwards;background:linear-gradient(135deg,#ffe0eb,#ffc8df 50%,#ffb0d0);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14zm48 25a7 7 0 1 0 0-14 7 7 0 0 0 0 14zm-43-7a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm63 31a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM34 90a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm56-76a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21a2 2 0 1 0 .001-3.999A2 2 0 0 0 80 29zM60 91a2 2 0 1 0 .001-3.999A2 2 0 0 0 60 91zM35 41a2 2 0 1 0 .001-3.999A2 2 0 0 0 35 41zM12 60a2 2 0 1 0 .001-3.999A2 2 0 0 0 12 60z' fill='%23e83e8c' fill-opacity='.05' fill-rule='evenodd'/%3E%3C/svg%3E");border:1px solid #e83e8c26;border-radius:15px;box-shadow:0 8px 25px #0000001a,0 0 1px #e83e8c4d;overflow:hidden;padding:2rem;position:relative;text-align:center;width:100%}.card-content:before{animation:shimmerEffect 6s infinite;background:linear-gradient(90deg,#fff0 0,#ffffff4d 50%,#fff0);content:"";height:100%;left:-100%;position:absolute;top:0;transform:skewX(-25deg);width:50%}@keyframes shimmerEffect{0%{left:-100%}20%,to{left:150%}}.special-day{animation:float 3s ease-in-out infinite;color:#e83e8c;font-size:1.5rem;margin-bottom:1rem;position:relative}.special-day:after{animation:float 2s ease-in-out infinite reverse;content:"✨";font-size:.8em;position:absolute;right:-15px;top:-5px}.emoji-row{display:flex;font-size:1.8rem;gap:1rem;justify-content:center;margin-bottom:1.5rem}.additional-wishes,.wishes{animation:fadeInText .8s ease-out forwards;animation-delay:1.8s;animation-delay:calc(var(--order, 0)*.3s + 1.8s);color:#555;line-height:1.6;margin-bottom:1rem;opacity:0;transform:translateY(20px)}.wishes{--order:1}.additional-wishes:first-of-type{--order:2}.additional-wishes:nth-of-type(2){--order:3}.additional-wishes:nth-of-type(3){--order:4}.closing{animation:fadeInText .8s ease-out forwards;animation-delay:3s;color:#e83e8c;font-style:italic;margin-top:1.5rem;opacity:0;position:relative}.closing:after,.closing:before{animation:fadeIn 1s ease-out 3.5s forwards,float 3s ease-in-out 4.5s infinite;content:"❤️";font-size:.8em;opacity:0;position:absolute;top:50%;transform:translateY(-50%)}.closing:before{left:15%}.closing:after{right:15%}.gifts-section{margin-top:2rem;width:100%}@media (max-width:600px){.birthday-title{font-size:2rem}.card-content{padding:1.5rem}}.gift-selection-container{background-color:#ffffff4d;border:2px dashed #ff69b480;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-top:30px;overflow:hidden;padding:20px;position:relative;text-align:center}.gift-selection-container:before{background:linear-gradient(135deg,#ffc0cb33,#fff0 50%,#ffc0cb33);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.gift-selection-container h3{color:#ff69b4;font-size:1.8em;margin-bottom:10px}.gift-selection-container p{color:#555;font-size:1em;margin-bottom:20px}.gifts-grid{justify-content:space-around}.gift-box,.gifts-grid{align-items:center;display:flex}.gift-box{background:linear-gradient(180deg,gold,#ffec80);border:3px solid pink;border-radius:15px;box-shadow:0 5px 15px #0003;cursor:pointer;height:120px;justify-content:center;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:120px}.gift-box:before{background:linear-gradient(90deg,#ff69b4,pink,#ff69b4);top:0}.gift-box:after,.gift-box:before{content:"";height:3px;left:0;position:absolute;right:0}.gift-box:after{background-color:pink;top:50%;transform:translateY(-50%)}.gift-box:hover{box-shadow:0 10px 20px #0003;transform:translateY(-5px) scale(1.05)}.gift-box:hover .gift-placeholder{animation:bounce .5s ease infinite alternate}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.gift-box.opened{background:linear-gradient(135deg,#ffcce6,#ffd6eb,#ffe6f2);border-color:#ffb3d9;box-shadow:inset 0 0 10px #ff69b433;cursor:pointer}.gift-box.opened:after,.gift-box.opened:before{background:#ffb3d9}.gift-placeholder{align-items:center;display:flex;font-size:3em;height:100%;justify-content:center;position:relative;transition:transform .3s ease;z-index:1}.gift-placeholder:after{content:"🎀";font-size:.5em;left:50%;position:absolute;top:-15px;transform:translateX(-50%)}.gift-locked{filter:grayscale(.7) opacity(.8);position:relative}.gift-locked+span{font-size:1.5em;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.gift-box:has(.gift-locked){box-shadow:none;cursor:not-allowed;filter:grayscale(.3);opacity:.8}.gift-box:has(.gift-locked):hover{box-shadow:none;transform:none}.gift-content{align-items:center;color:#333;cursor:pointer;display:flex;height:100%;justify-content:center;padding:10px;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.gift-content:hover{box-shadow:inset 0 0 15px #ff69b480;transform:scale(1.05)}.gift-icon{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.gift-icon:before{background:radial-gradient(circle,#fffc 0,#ffdfec99 50%,#ffcce600 100%);border-radius:50%;bottom:-5px;content:"";left:-5px;position:absolute;right:-5px;top:-5px;z-index:0}.gift-emoji{animation:float 3s ease-in-out infinite;font-size:2.5em;position:relative;z-index:1}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.secret-button-container{bottom:20px;left:50%;margin-top:30px;position:absolute;transform:translateX(-50%);transition:all .3s ease;z-index:10}.secret-button-container.pressed{transform:translateX(-50%) scale(1.2)}.secret-button{animation:pulse 1.5s infinite,wiggle 3s ease-in-out infinite;background:linear-gradient(90deg,red,#f50);border:none;border-radius:50px;box-shadow:0 5px 15px #f006,0 0 0 4px #fff3,0 0 20px #f009;color:#fff;cursor:pointer;font-size:1.2em;font-weight:700;overflow:hidden;padding:12px 24px;position:relative;transition:all .3s ease}.secret-button:hover{box-shadow:0 7px 20px #f009,0 0 0 6px #ffffff4d,0 0 25px #f00c;transform:scale(1.05)}.secret-button:active,.secret-button:disabled{background:linear-gradient(90deg,#c00,#c40);box-shadow:0 3px 10px #ff00004d;transform:scale(.98)}.secret-button:before{background:radial-gradient(circle,#ffffff4d 0,#fff0 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(30deg);transition:all .3s ease;width:200%}.secret-button:hover:before{transform:rotate(0deg)}@keyframes pulse{0%{box-shadow:0 5px 15px #f006,0 0 0 4px #fff3,0 0 20px #f009}50%{box-shadow:0 5px 15px #f009,0 0 0 6px #ffffff4d,0 0 30px #f00c}to{box-shadow:0 5px 15px #f006,0 0 0 4px #fff3,0 0 20px #f009}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.confetti{animation:confettiFall linear forwards;background-color:red;border-radius:0;height:10px;opacity:0;position:absolute;top:-20px;transform:rotate(0deg);width:10px;z-index:5}@keyframes confettiFall{0%{opacity:1;transform:translateY(0) rotate(0deg)}to{opacity:0;transform:translateY(1000px) rotate(2turn)}}.error-message{animation:shake .5s ease-in-out;background-color:#ff47571a;border-radius:5px;color:#ff4757;display:inline-block;font-weight:700;margin-top:10px;padding:5px 10px}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}.modal-overlay{align-items:center;animation:fadeIn .3s ease-out;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:fadeInModal .3s ease-out;background-color:#fff;background-image:linear-gradient(180deg,#fff,#fff9f9);border:2px solid pink;border-radius:10px;box-shadow:0 5px 20px #0000004d;max-width:500px;min-width:300px;padding:30px;position:relative;text-align:center}@keyframes fadeInModal{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-close-button{background:none;border:none;color:#aaa;cursor:pointer;font-size:1.8em;position:absolute;right:10px;top:10px}.modal-close-button:hover{color:#333}.modal-content{padding-top:20px}.gift-reveal{background-color:#fff0f5;border:2px dashed pink;border-radius:10px;margin-bottom:20px;margin-top:20px;overflow:hidden;padding:15px;position:relative}.gift-reveal:before{left:5px;top:5px}.gift-reveal:after,.gift-reveal:before{content:"🎉";font-size:1.2em;position:absolute}.gift-reveal:after{bottom:5px;right:5px}.gift-reveal h4{color:#333;font-size:1.5em;margin:0}.poem-content{background-color:#fff5f8;border-radius:8px;box-shadow:0 2px 10px #ff69b41a;color:#666;line-height:1.6;margin-top:15px;padding:15px}.poem-title{color:#ff69b4;font-size:1.2em;font-style:italic;font-weight:700;margin-bottom:10px}.gift-card-content{background-color:#f0f8ff;border-radius:8px;box-shadow:0 2px 10px #6495ed1a;margin-top:15px;padding:15px}.gift-card-details{background-color:#1b2838;border-radius:5px;color:#fff;margin:15px 0;padding:15px;text-align:center}.gift-card-value{color:#66c0f4;font-size:1.8em;font-weight:700;margin:5px 0 15px}.gift-card-details p{color:#c7d5e0;margin:8px 0}.gift-card-details strong{background-color:#66c0f433;border-radius:3px;color:#fff;letter-spacing:1px;padding:3px 6px}.gift-card-note{color:#666;font-size:.9em;margin-top:10px}.steam-icon{display:inline-block;font-size:1.3em;margin-left:5px;vertical-align:middle}.fireworks-container{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1001}.firework{animation:explode 1.5s ease-out forwards;border-radius:50%;height:5px;position:absolute;width:5px}.firework:after,.firework:before{animation:particle 1.5s ease-out forwards;border-radius:50%;content:"";height:100%;left:0;position:absolute;top:0;width:100%}.firework:before{transform:translateX(-50%)}.firework:after{transform:translateX(50%)}@keyframes explode{0%{background-color:var(--color);box-shadow:0 0 20px 10px var(--color);opacity:1;transform:translate(0) scale(0)}30%{background-color:var(--color);box-shadow:0 0 20px 10px var(--color);opacity:1;transform:translate(0) scale(1)}to{background-color:initial;box-shadow:none;opacity:0;transform:translate(0) scale(1.2)}}@keyframes particle{0%{background-color:var(--color);opacity:1;transform:rotate(0deg) translateX(0) scale(0)}30%{background-color:var(--color);opacity:1;transform:rotate(0deg) translateX(0) scale(0)}60%{background-color:var(--color);opacity:.7;transform:rotate(45deg) translateX(100px) scale(.5);transform:rotate(var(--angle,45deg)) translateX(100px) scale(.5)}to{background-color:var(--color);opacity:0;transform:rotate(45deg) translateX(150px) scale(0);transform:rotate(var(--angle,45deg)) translateX(150px) scale(0)}}.firework:before{--angle:45deg}.firework:after{--angle:135deg}.firework:after,.firework:before{box-shadow:0 0 0 2px var(--color),0 0 20px 5px var(--color)}.firework:before{box-shadow:0 0 0 2px var(--color),0 0 20px 5px var(--color),100px 50px 0 0 var(--color),50px 100px 0 0 var(--color),-50px 100px 0 0 var(--color),-100px 50px 0 0 var(--color)}.firework:after{box-shadow:0 0 0 2px var(--color),0 0 20px 5px var(--color),100px -50px 0 0 var(--color),50px -100px 0 0 var(--color),-50px -100px 0 0 var(--color),-100px -50px 0 0 var(--color)}
/*# sourceMappingURL=main.1be3bf69.css.map*/