.confetti-3d[data-v-424c4aac]{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000}.confetti-3d canvas[data-v-424c4aac]{display:block}.fireworks-canvas[data-v-69176ca8]{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999}.cursor-trail[data-v-28570786]{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:998}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes twinkle{0%{opacity:.3}to{opacity:.7}}@keyframes flicker{0%{transform:scale(1);opacity:1}to{transform:scale(1.2);opacity:.8}}@keyframes humanEarWiggleLeft{0%{transform:rotate(-10deg) scaleX(-1) scale(1)}50%{transform:rotate(-8deg) scaleX(-1) scale(1.05)}to{transform:rotate(-10deg) scaleX(-1) scale(1)}}@keyframes humanEarWiggleRight{0%{transform:rotate(10deg) scale(1)}50%{transform:rotate(8deg) scale(1.05)}to{transform:rotate(10deg) scale(1)}}@keyframes earBreathing{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.birthday-card{min-height:100vh;background:linear-gradient(135deg,#1a1a3a 0%,#0a0a2a 100%);display:flex;justify-content:center;align-items:center;overflow:hidden;overflow-x:hidden;position:relative}.birthday-card[data-gender=female]{background:linear-gradient(135deg,#ffd6e0 0%,#ffecf0 100%)}.birthday-card[data-gender=female] .stars{background-image:radial-gradient(rgba(255,117,140,.4) 1px,transparent 1px)}.birthday-card[data-gender=female] .content{background:rgba(255,255,255,.3);color:#444}.birthday-card[data-gender=female] .title{background:linear-gradient(45deg,#ff758c,#ff7eb3);-webkit-background-clip:text}.birthday-card[data-gender=female] .age{color:#ff758c;text-shadow:0 0 10px rgba(255,117,140,.5)}.birthday-card[data-gender=female] .message{background:rgba(255,255,255,.3)}.birthday-card[data-gender=female] .message p{color:#444;text-shadow:0 2px 4px rgba(255,255,255,.4)}.birthday-card[data-gender=female] .balloon:nth-child(1){background:radial-gradient(circle at 30% 30%,#ff9eb5,#ff758c)}.birthday-card[data-gender=female] .balloon:nth-child(2){background:radial-gradient(circle at 30% 30%,#ffb5d3,#ff8eb3)}.birthday-card[data-gender=female] .balloon:nth-child(3){background:radial-gradient(circle at 30% 30%,#ffd6e0,#ffb6c1)}.birthday-card[data-gender=female] .balloon:nth-child(4){background:radial-gradient(circle at 30% 30%,#ffecf0,#ffd6e0)}.birthday-card[data-gender=female] .balloon:nth-child(5){background:radial-gradient(circle at 30% 30%,#ff9eb5,#ff758c)}.birthday-card[data-gender=female] .cake-base{background:linear-gradient(45deg,#ff9eb5,#ff758c)!important}.birthday-card[data-gender=female] .cake-base:before{background:#ffb5d3!important}.birthday-card[data-gender=female] .photo{box-shadow:0 5px 15px #ff758c33}.birthday-card[data-gender=female] .main-photo{box-shadow:0 10px 30px #ff758c4d}.birthday-card .stars{position:absolute;width:100%;height:100%;top:0;left:0;background-image:radial-gradient(white 1px,transparent 1px);background-size:50px 50px;animation:twinkle 1.5s infinite alternate}.birthday-card .content{text-align:center;color:#fff;padding:45px 2rem;position:relative;z-index:2;max-width:1200px;margin:0 auto;background:rgba(26,26,58,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px}@media (max-width: 1024px){.birthday-card .content{overflow:visible}}.birthday-card .age{font-size:8rem;font-weight:700;color:#ffd93d;text-shadow:0 0 10px rgba(255,217,61,.5);margin:1rem 0}@media (max-width: 768px){.birthday-card .age{font-size:6rem}}.title{font-size:3.5rem;margin:1rem 0;background:linear-gradient(45deg,#ff6b6b,#4ecdc4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.photo-gallery{max-width:1200px;display:flex;gap:1.5rem;align-items:center}.photo-gallery.only-main{justify-content:center}.photo-gallery.only-main .main-photo{max-width:90%}.photo-gallery.only-main .main-photo img,.photo-gallery.only-main .main-photo video{height:unset;aspect-ratio:1.3}.photo-gallery .side-photos{flex:1;display:flex;flex-direction:column;gap:1rem;max-width:250px}.photo-gallery .main-photo{flex:2;margin:0;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0000004d;transition:transform .3s ease;max-width:600px}.photo-gallery .main-photo:hover{transform:scale(1.02)}.photo-gallery .main-photo img,.photo-gallery .main-photo video{width:100%;height:400px;display:block;object-fit:cover}.photo-gallery .photo{border-radius:15px;overflow:hidden;box-shadow:0 5px 15px #0003;height:200px;transition:transform .3s ease}.photo-gallery .photo:hover{transform:scale(1.05)}.photo-gallery .photo img{width:100%;height:100%;object-fit:cover;display:block}.birthday-card.high .photo-gallery .main-photo img,.birthday-card.high .photo-gallery .main-photo video{height:610px}.birthday-card.high .photo-gallery .photo{height:300px}.danilkins{background:linear-gradient(135deg,#2c3e50 0%,#3498db 100%)}.danilkins .title{background:linear-gradient(45deg,#e74c3c,#f1c40f);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.danilkins .content{background:rgba(44,62,80,.7)}.danilkins .cake-base{background:linear-gradient(45deg,#e74c3c,#f39c12)!important}.danilkins .cake-base:before{background:#f1c40f!important}.danilkins .balloon:nth-child(1){background:radial-gradient(circle at 30% 30%,#e74c3c,#c0392b)!important}.danilkins .balloon:nth-child(2){background:radial-gradient(circle at 30% 30%,#3498db,#2980b9)!important}.danilkins .balloon:nth-child(3){background:radial-gradient(circle at 30% 30%,#f1c40f,#f39c12)!important}.danilkins .balloon:nth-child(4){background:radial-gradient(circle at 30% 30%,#1abc9c,#16a085)!important}.danilkins .balloon:nth-child(5){background:radial-gradient(circle at 30% 30%,#9b59b6,#8e44ad)!important}.vladik{background:linear-gradient(135deg,#6a0572 0%,#ab83a1 100%)}.vladik .title{background:linear-gradient(45deg,#f7d794,#f5cd79);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.vladik .content{background:rgba(106,5,114,.7)}.vladik .cake-base{background:linear-gradient(45deg,#786fa6,#574b90)!important}.vladik .cake-base:before{background:#f7d794!important}.vladik .balloon:nth-child(1){background:radial-gradient(circle at 30% 30%,#786fa6,#574b90)!important}.vladik .balloon:nth-child(2){background:radial-gradient(circle at 30% 30%,#f8a5c2,#f78fb3)!important}.vladik .balloon:nth-child(3){background:radial-gradient(circle at 30% 30%,#f7d794,#f5cd79)!important}.vladik .balloon:nth-child(4){background:radial-gradient(circle at 30% 30%,#63cdda,#3dc1d3)!important}.vladik .balloon:nth-child(5){background:radial-gradient(circle at 30% 30%,#ea8685,#e66767)!important}.vladik .ear{width:80px;height:120px;position:relative;transform-origin:center top}.vladik .ear-image{width:100%;height:100%;object-fit:contain}.vladik .ear.left-ear{transform:rotate(-10deg) scaleX(-1);margin-right:40px;animation:humanEarWiggleLeft 4s infinite ease-in-out}.vladik .ear.right-ear{transform:rotate(10deg);margin-left:40px;animation:humanEarWiggleRight 4s infinite ease-in-out}.cake{flex:1;max-width:120px;position:relative;transition:transform .3s ease}.cake.left-cake{transform:scale(.8) rotate(-25deg)}.cake.left-cake:hover{transform:scale(.9) rotate(-20deg)}.cake.right-cake{transform:scale(.8) rotate(25deg)}.cake.right-cake:hover{transform:scale(.9) rotate(20deg)}.cake-base{width:100px;height:60px;background:linear-gradient(45deg,#ff6b6b,#ff8e8e);border-radius:10px;margin:0 auto;position:relative}.cake-base:before{content:"";position:absolute;width:120px;height:20px;background:#ffd93d;bottom:-10px;left:-10px;border-radius:10px}.cake .candle{width:8px;height:30px;background:linear-gradient(white,#bbb);position:absolute;top:-30px;left:50%;transform:translate(-50%)}.cake .candle:after{content:"";position:absolute;width:16px;height:16px;background:#ffd93d;border-radius:50%;top:-8px;left:-4px;animation:flicker .6s infinite alternate}@media (max-width: 1024px){.photo-gallery{flex-direction:column;gap:1rem;position:relative}.photo-gallery .side-photos{flex-direction:column;max-width:50%;width:50%;gap:1rem;position:absolute;z-index:10;opacity:0;transition:all .8s cubic-bezier(.34,1.56,.64,1)}.photo-gallery .side-photos:first-child{top:50%;left:0;transform:translate(-120%,-50%) scale(.8)}.photo-gallery .side-photos:last-child{top:50%;right:0;transform:translate(120%,-50%) scale(.8)}.photo-gallery .side-photos.is-visible{opacity:1}.photo-gallery .side-photos.is-visible:first-child{transform:translateY(-50%) scale(1)}.photo-gallery .side-photos.is-visible:last-child{transform:translateY(-50%) scale(1)}.photo-gallery .photo{flex:0 0 auto;width:100%;max-width:100%;min-width:100%;height:180px;box-shadow:0 15px 40px #0009}.photo-gallery .main-photo{width:100%;max-width:100%;order:-1;position:relative;transition:filter .8s ease}.photo-gallery .main-photo img,.photo-gallery .main-photo video{height:auto;min-height:400px;max-height:700px}.photo-gallery:has(.side-photos.is-visible) .main-photo{filter:blur(5px)}}@media (max-width: 768px){.photo-gallery,.photo-gallery .side-photos{gap:.75rem}.photo-gallery .side-photos:first-child,.photo-gallery .side-photos:last-child{width:45%}.photo-gallery .photo{flex:0 0 auto;width:100%;max-width:100%;min-width:100%;height:150px;box-shadow:0 15px 40px #0009}.photo-gallery .main-photo img,.photo-gallery .main-photo video{min-height:500px}.title{font-size:2.5rem}}@media (max-width: 480px){.photo-gallery,.photo-gallery .side-photos{gap:.5rem}.photo-gallery .side-photos:first-child,.photo-gallery .side-photos:last-child{width:45%}.photo-gallery .photo{flex:0 0 auto;width:100%;max-width:100%;min-width:100%;height:120px;box-shadow:0 15px 40px #0009}.photo-gallery .main-photo img,.photo-gallery .main-photo video{min-height:450px}.title{font-size:2rem}}.message{min-height:120px;display:flex;justify-content:center;align-items:center;padding:2rem;margin:2rem 0;position:relative;width:100%;background:rgba(0,0,0,.2);border-radius:15px;overflow:hidden}.message p{font-size:1.5rem;line-height:1.6;text-align:center;padding:0 2rem;transition:all .5s ease-in-out;width:100%;max-width:800px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2);font-weight:500;position:absolute;left:0;right:0;margin:auto;opacity:0;transform:translateY(-40px)}.message p.fade-out{opacity:0;transform:translateY(-30px)}.message p.isWishChanged:not(.fade-out){opacity:1;transform:translateY(0)}@media (max-width: 768px){.message{min-height:160px}}.game-section{margin:3rem 0;padding:2rem;background:rgba(0,0,0,.2);border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.game-title{font-size:2rem;color:#ffd93d;text-align:center;margin-bottom:1.5rem;text-shadow:0 0 10px rgba(255,217,61,.3)}.balloons{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;z-index:0}.balloons .balloon{position:absolute;width:60px;height:70px;background:radial-gradient(circle at 30% 30%,#ff6b6b,#ff4949);border-radius:50%;animation:float 4s ease-in-out infinite}.balloons .balloon:nth-child(1){left:10%;animation-delay:0s}.balloons .balloon:nth-child(2){left:30%;animation-delay:.5s}.balloons .balloon:nth-child(3){left:50%;animation-delay:1s}.balloons .balloon:nth-child(4){left:70%;animation-delay:1.5s}.balloons .balloon:nth-child(5){left:90%;animation-delay:2s}.balloons .balloon:nth-child(2){background:radial-gradient(circle at 30% 30%,#4ecdc4,#2ead9c)}.balloons .balloon:nth-child(3){background:radial-gradient(circle at 30% 30%,#ffd93d,#ffc107)}.balloons .balloon:nth-child(4){background:radial-gradient(circle at 30% 30%,#6c5ce7,#483d8b)}.balloons .balloon:nth-child(5){background:radial-gradient(circle at 30% 30%,#a8e6cf,#69d2a8)}.header-section{display:flex;flex-direction:column;align-items:center}.age-section{display:flex;align-items:center;justify-content:center;gap:2rem;width:100%}@media (max-width: 768px){.age-section{gap:0}}.text-content{flex:2;max-width:800px}*{margin:0;padding:0;box-sizing:border-box}html{background-color:#1a1a3a}html[data-gender=female]{background-color:#ffd6e0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background-color:#1a1a3a}body[data-gender=female]{background-color:#ffd6e0}
