@import url("https://fonts.googleapis.com/css2?family=Great+Vibes&family=Montserrat:wght@300;400;700&display=swap");body{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#ff758c,#ff7eb3);color:white;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath opacity='.5' d='M96 95h4v1h-4v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9zm-1 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm9-10v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");z-index:-1}h1,h2{font-family:Great Vibes,cursive,serif;text-shadow:3px 3px 15px rgba(255,255,255,.8);opacity:1;transform:translateY(-20px);animation:fadeSlideIn 1s ease-out forwards;font-size:3rem}.subtitle{font-family:Montserrat,sans-serif;font-size:1.5rem;opacity:.8}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.login-container{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,rgba(255,64,129,.2) 0,transparent 70%);z-index:-1}.question{animation:fadeInScaleUp 1.2s ease-in-out;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);padding:40px;border-radius:20px;border:1px solid rgba(255,255,255,.2);box-shadow:0 10px 30px rgba(0,0,0,.1);max-width:90%;width:500px}@keyframes fadeInScaleUp{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.title{background:linear-gradient(90deg,#ffffff,#ff4081,#ffffff);-webkit-background-clip:text;background-clip:text;color:#ffffff;display:inline-block;margin-bottom:30px;animation:titleShine 3s ease-in-out infinite;text-shadow:2px 2px 4px rgba(0,0,0,.2)}@keyframes titleShine{0%{background-position:-100% 0}to{background-position:200% 0}}.btn{color:#ff4081;box-shadow:0 4px 15px rgba(255,64,129,.3);margin:10px 0}.btn:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to bottom right,rgba(255,255,255,0),rgba(255,255,255,.4) 50%,rgba(255,255,255,0));transform:rotate(45deg);animation:shimmer 3s infinite}.btn:hover{background:#ff4081;box-shadow:0 6px 20px rgba(255,64,129,.5)}.btn:active{transform:scale(.95);box-shadow:0 2px 10px rgba(255,64,129,.3)}.unlock-animation{position:fixed;width:100vw;height:100vh;background:radial-gradient(circle,rgba(255,64,129,.9) 0,rgba(255,64,129,.5) 50%,transparent 100%);display:flex;justify-content:center;align-items:center;flex-direction:column;opacity:0;animation:fadeInUnlock 3s ease-in-out forwards;z-index:9999}@keyframes fadeInUnlock{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.heart-beat{font-size:6rem;animation:heartPulse 1s ease-in-out infinite;transform-origin:center;position:relative}.heart-beat:after,.heart-beat:before{content:"❤️";position:absolute;top:0;left:0;opacity:0;animation:heartEcho 2s ease-out infinite}.heart-beat:after{animation-delay:.5s}@keyframes heartEcho{0%{transform:scale(1);opacity:0}25%{transform:scale(1.5);opacity:.3}50%{transform:scale(2);opacity:0}to{transform:scale(2.5);opacity:0}}.lock-container{display:flex;align-items:center;justify-content:center;margin-top:40px;position:relative;width:200px;height:100px}.lock{font-size:4rem;animation:lockShake 1.5s ease-in-out,lockUnlock 3s 1.5s forwards}.key,.lock{position:absolute;transform-origin:center}.key{font-size:3rem;left:40px;animation:keyMove 3s ease-in-out forwards}@keyframes lockShake{0%,to{transform:rotate(0deg)}25%{transform:rotate(-10deg)}50%{transform:rotate(10deg)}75%{transform:rotate(-5deg)}}@keyframes keyMove{0%{transform:translateX(0) rotate(0deg);opacity:1}40%{transform:translateX(-30px) rotate(-30deg);opacity:1}60%{transform:translateX(-40px) rotate(-45deg);opacity:1}90%{transform:translateX(-20px) rotate(-30deg);opacity:.5}to{transform:translateX(0) rotate(0deg);opacity:0}}@keyframes lockUnlock{0%{transform:scale(1);text-shadow:0 0 0 transparent}50%{transform:scale(1.2);text-shadow:0 0 20px rgba(255,255,255,.8)}70%{content:"🔓"}to{transform:scale(1.5);opacity:0;content:"🔓"}}.input-box{padding:15px;font-size:1.6rem;border-radius:30px;border:2px solid white;width:300px;text-align:center;margin:20px 0;box-shadow:0 4px 15px rgba(255,255,255,.5);outline:none;background:rgba(255,255,255,.2);color:white;font-weight:700;transition:all .3s cubic-bezier(.175,.885,.32,1.275);backdrop-filter:blur(5px)}.input-box::placeholder{color:rgba(255,255,255,.9);font-weight:400;font-size:1.3rem}.input-box:focus{transform:scale(1.05);background:rgba(255,255,255,1);color:#ff4081;border-color:#ff4081;box-shadow:0 6px 20px rgba(255,64,129,.8)}.input-box:focus::placeholder{color:rgba(255,64,129,.6)}@keyframes floatHearts{0%{transform:translateY(0) scale(1) rotate(0deg);opacity:1}50%{transform:translateY(-150px) scale(1.3) rotate(20deg);opacity:.7}to{transform:translateY(-300px) scale(.8) rotate(40deg);opacity:0}}.heart-floating{position:absolute;font-size:2rem;color:white;opacity:0;animation:floatHearts 6s ease-in-out infinite;text-shadow:0 0 10px rgba(255,64,129,.7);pointer-events:none}.login-container:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;z-index:-1}@media (max-width:768px){.question{padding:30px;width:90%}.title{font-size:2.5rem}.subtitle{font-size:1.2rem}.btn{font-size:1.3rem;padding:12px 25px}.heart-beat{font-size:4rem}.lock{font-size:3rem}.key{font-size:2rem}.input-box{width:80%;font-size:1.4rem}}.love-birds{display:flex;align-items:center;justify-content:center;margin:20px 0}.bird{font-size:2.5rem;margin:0 15px;animation:birdFly 3s ease-in-out infinite alternate}.bird.flipped{animation-delay:1.5s}.heart-small{font-size:2rem;animation:heartBeatSmall 1.5s ease-in-out infinite}@keyframes birdFly{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.bird.flipped{transform:scaleX(-1)}@keyframes heartBeatSmall{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.btn-container{display:flex;gap:20px;justify-content:center;margin:20px 0}.yes-btn{background:linear-gradient(135deg,#ff80ab,#ff4081);color:white;transform:scale(1.1)}.no-btn{background:rgba(255,255,255,.5);opacity:.7;transform:scale(.9)}.no-btn:hover{transform:translateX(20px) scale(.85)}.shine-effect{position:relative;overflow:hidden}.shine-effect:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to bottom right,rgba(255,255,255,0),rgba(255,255,255,.4) 50%,rgba(255,255,255,0));transform:rotate(45deg);animation:shineEffect 3s infinite}@keyframes shineEffect{0%{transform:rotate(45deg) translateX(-150%)}to{transform:rotate(45deg) translateX(150%)}}.step-dots{display:flex;justify-content:center;gap:10px;margin-top:30px}.dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.3);transition:all .3s ease}.dot.active{background:white;transform:scale(1.2);box-shadow:0 0 10px rgba(255,255,255,.8)}.input-container{display:flex;flex-direction:column;align-items:center;gap:15px;margin:20px 0}.submit-btn{margin-top:10px;background:linear-gradient(135deg,#ff80ab,#ff4081);color:white}.unlock-text{margin-top:20px;font-size:1.8rem;font-weight:700;color:white;text-shadow:0 0 10px rgba(255,255,255,.8);animation:pulseText 1.5s infinite alternate}@keyframes pulseText{0%{opacity:.7;transform:scale(.95)}to{opacity:1;transform:scale(1.05)}}@import url("https://fonts.googleapis.com/css2?family=Dancing+Script:wght@700&family=Poppins:wght@300;400;700&family=Great+Vibes&display=swap");:root{--primary-color:#ff4081;--secondary-color:#ff758c;--tertiary-color:#ff7eb3;--dark-accent:#c60055;--light-accent:#ff80ab;--text-light:#ffffff;--text-dark:#333333;--overlay-light:rgba(255,255,255,0.3);--overlay-medium:rgba(255,255,255,0.4);--overlay-dark:rgba(255,255,255,0.5);--shadow-soft:0 5px 15px rgba(0,0,0,0.1);--shadow-medium:0 8px 20px rgba(0,0,0,0.15);--shadow-strong:0 10px 30px rgba(0,0,0,0.2)}body{font-family:Poppins,sans-serif;background:linear-gradient(135deg,var(--secondary-color),var(--tertiary-color));color:var(--text-light);text-align:center;margin:0;overflow-x:hidden;background-attachment:fixed}.hero,body{min-height:100vh}.hero{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;position:relative;overflow:hidden;background:radial-gradient(circle at center,rgba(255,128,171,.4) 0,transparent 70%)}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");z-index:-1;opacity:.3}.hero-content{max-width:800px;padding:40px;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);border-radius:30px;box-shadow:var(--shadow-medium);animation:fadeInUp 1.2s ease-out;border:1px solid rgba(255,255,255,.2)}.hero-title{font-family:Great Vibes,cursive;font-size:4.5rem;text-shadow:4px 4px 10px rgba(255,255,255,.9);margin-bottom:20px;background:linear-gradient(90deg,#ff80ab,#ff4081,#ffffff);-webkit-background-clip:text;background-clip:text;color:transparent;animation:titleGlow 2s ease-in-out infinite alternate}.hero-subtitle{font-size:2rem;margin:15px 0 30px}.hero-buttons{display:flex;gap:20px;flex-wrap:wrap;justify-content:center}@keyframes titleGlow{0%{text-shadow:0 0 10px rgba(255,255,255,.8),0 0 20px rgba(255,64,129,.4)}to{text-shadow:0 0 15px rgba(255,255,255,1),0 0 30px rgba(255,64,129,.8)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.section-title{font-family:Dancing Script,cursive;font-size:3.5rem;margin-bottom:30px;text-shadow:3px 3px 6px rgba(0,0,0,.2);position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:100px;height:3px;background:white;border-radius:3px}.section-title-special{font-family:Great Vibes,cursive;font-size:4rem;background:linear-gradient(90deg,#ff80ab,#ffffff,#ff4081);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:2px 2px 15px rgba(255,255,255,.3)}.timeline{background:var(--overlay-light);padding:60px;border-radius:20px;margin:70px auto;max-width:1000px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.3)}.timeline:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");z-index:-1}.timeline-content{display:flex;flex-wrap:wrap;gap:30px;justify-content:center}.year{background:var(--overlay-light);padding:25px;margin:20px 0;border-radius:15px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);flex:1 1 calc(50% - 30px);max-width:calc(50% - 30px);box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden;cursor:pointer}.year:hover{transform:translateY(-10px) scale(1.03);box-shadow:var(--shadow-strong);background:rgba(255,255,255,.35)}.year-image{width:100%;height:auto;border-radius:12px;margin-top:15px;transition:transform .5s ease;box-shadow:0 4px 10px rgba(0,0,0,.1);border:3px solid white}.year:hover .year-image{transform:scale(1.05)}.year h3{font-size:2.5rem;font-family:Dancing Script,cursive;margin-bottom:15px}.year5-images{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;margin-top:30px}.image-wrapper{display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:relative}.image-wrapper:hover{transform:translateY(-10px) scale(1.05)}.image-wrapper:hover:after{content:"👆 Clique para ver";position:absolute;bottom:40px;background:rgba(255,64,129,.9);color:white;padding:5px 15px;border-radius:20px;font-size:14px;animation:bounce 1s infinite alternate}.image-caption{font-size:1.8rem;margin-top:10px}.tap-heart{background:var(--overlay-medium);padding:60px;border-radius:20px;margin:70px auto;max-width:900px;box-shadow:var(--shadow-medium);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.3)}.heart-wrapper{display:flex;justify-content:center;align-items:center;margin:40px 0;position:relative}.heart-wrapper:before{content:"👇 Toque no coração";position:absolute;top:-30px;font-size:1.5rem;color:white;text-shadow:0 0 10px rgba(255,64,129,.8);animation:pulse 1.5s infinite alternate}.heart{font-size:8rem;cursor:pointer;transition:all .2s cubic-bezier(.68,-.55,.265,1.55);animation:heartPulse 1.5s infinite alternate;position:relative;z-index:2}.heart:hover{transform:scale(1.2)}.heart-clicked{animation:heartClicked .4s ease-in-out}.heart-counter{font-size:1.8rem;margin-top:20px;font-weight:700;background:rgba(255,255,255,.2);padding:10px 20px;border-radius:50px;display:inline-block;text-shadow:1px 1px 3px rgba(0,0,0,.2)}@keyframes heartPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes heartClicked{0%{transform:scale(1);color:white;text-shadow:0 0 10px pink}50%{transform:scale(1.5) rotate(10deg);color:var(--primary-color);text-shadow:0 0 30px var(--primary-color)}to{transform:scale(1.2);color:pink;text-shadow:0 0 20px red}}@keyframes pulse{0%{opacity:.7;transform:scale(.95)}to{opacity:1;transform:scale(1.05)}}.floating-heart{position:fixed;font-size:2rem;color:white;text-shadow:0 0 10px var(--primary-color);pointer-events:none;z-index:1000;animation:floatHeart 8s linear forwards}@keyframes floatHeart{0%{bottom:0;opacity:.8;transform:scale(.2) rotate(0deg)}20%{opacity:1;transform:scale(1) rotate(10deg)}80%{opacity:.8}to{bottom:100vh;opacity:0;transform:scale(.5) rotate(45deg)}}.music-toggle{position:fixed;top:20px;right:20px;z-index:100}.music-btn{background:rgba(255,255,255,.2);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:white;padding:10px 20px;border-radius:50px;cursor:pointer;font-size:1rem;box-shadow:0 4px 15px rgba(0,0,0,.1);transition:all .3s ease}.music-btn:hover{background:rgba(255,255,255,.3);transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,.15)}.moments-section{padding:60px 20px;margin:70px auto;max-width:1100px}.moments-container{display:flex;justify-content:center;flex-wrap:wrap;gap:30px}.moment-card{background:rgba(255,255,255,.2);backdrop-filter:blur(10px);border-radius:20px;padding:30px;width:220px;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.3)}.moment-card:hover{transform:translateY(-15px) scale(1.05);background:rgba(255,255,255,.3);box-shadow:var(--shadow-strong)}.moment-emoji{font-size:4rem;margin-bottom:15px}.moment-card h3{font-size:1.5rem;margin-bottom:10px}.moment-card p{font-size:1rem;opacity:.9}.love-letter{margin:70px auto;max-width:800px;padding:0 20px}.letter-content{background:rgba(255,255,255,.2);backdrop-filter:blur(5px);padding:40px;border-radius:20px;text-align:left;box-shadow:var(--shadow-medium);border:1px solid rgba(255,255,255,.3);position:relative}.letter-content:before{content:"";position:absolute;top:10px;left:10px;right:10px;bottom:10px;border:1px dashed rgba(255,255,255,.4);border-radius:15px;pointer-events:none}.letter-content p{font-size:1.2rem;line-height:1.8;margin-bottom:20px}.signature{font-family:Great Vibes,cursive;font-size:2.5rem;text-align:right;margin-top:30px}.love-meter{background:var(--overlay-medium);padding:50px;border-radius:20px;margin:70px auto;max-width:800px;box-shadow:var(--shadow-medium)}.meter-container{margin-top:30px}.meter{height:40px;background:rgba(255,255,255,.3);border-radius:20px;margin:0 auto;position:relative;overflow:hidden;box-shadow:inset 0 2px 10px rgba(0,0,0,.1);max-width:500px}.meter-fill{height:100%;background:linear-gradient(90deg,#ff4081,#ff80ab);border-radius:20px;width:0;animation:fillMeter 3s cubic-bezier(.165,.84,.44,1) forwards;box-shadow:0 0 10px rgba(255,64,129,.7)}.meter-text{font-size:1.5rem;font-weight:700;margin-top:20px;letter-spacing:1px}@keyframes fillMeter{0%{width:0}to{width:100%}}.year-six{padding:60px 20px;margin:70px auto;max-width:1000px}.future-container{margin-top:30px}.future-text{font-size:2rem;margin-bottom:40px}.future-options{display:flex;justify-content:center;gap:40px;flex-wrap:wrap}.future-option{background:rgba(255,255,255,.2);backdrop-filter:blur(5px);border-radius:20px;padding:30px;width:200px;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.3)}.future-option:hover{transform:translateY(-15px);background:rgba(255,255,255,.3);box-shadow:var(--shadow-strong)}.future-emoji{font-size:4rem;display:block;margin-bottom:20px}.future-option p{font-size:1.2rem}.quiz{background:var(--overlay-medium);padding:60px;border-radius:20px;max-width:900px;margin:70px auto;box-shadow:var(--shadow-medium);border:1px solid rgba(255,255,255,.3)}.quiz-options{display:flex;flex-direction:column;gap:20px;max-width:600px;margin:30px auto 0}.quiz-btn{font-size:1.5rem;background:rgba(255,255,255,.2);color:white;padding:15px 30px;border:1px solid rgba(255,255,255,.3);border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-soft)}.quiz-btn.correct:hover{background:rgba(76,175,80,.7);transform:scale(1.05)}.quiz-btn.wrong:hover{background:rgba(244,67,54,.7);transform:scale(1.05)}.final{padding:60px 20px;margin:70px auto;animation:fadeIn 2s ease-in-out;max-width:1000px}.final-container{background:var(--overlay-dark);padding:60px;border-radius:20px;box-shadow:var(--shadow-strong);border:1px solid rgba(255,255,255,.4);backdrop-filter:blur(10px)}.final-text{font-size:1.8rem;margin:30px 0}.final-btn{font-size:2rem;background:linear-gradient(45deg,#ff4081,#ff80ab);color:white;padding:20px 40px;border:none;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 10px 30px rgba(255,64,129,.5);margin-top:20px;position:relative;overflow:hidden}.final-btn:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to bottom right,rgba(255,255,255,0),rgba(255,255,255,.4) 50%,rgba(255,255,255,0));transform:rotate(45deg);animation:shimmer 3s infinite}.final-btn:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 15px 40px rgba(255,64,129,.6)}@keyframes shimmer{0%{transform:rotate(45deg) translateX(-150%)}to{transform:rotate(45deg) translateX(150%)}}.btn{font-size:1.5rem;background:white;color:var(--primary-color);padding:15px 30px;border:none;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 5px 15px rgba(255,64,129,.3)}.btn:hover{transform:translateY(-5px) scale(1.05);background:var(--primary-color);color:white;box-shadow:0 10px 25px rgba(255,64,129,.5)}.btn.shine-btn:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to bottom right,rgba(255,255,255,0),rgba(255,255,255,.4) 50%,rgba(255,255,255,0));transform:rotate(45deg);animation:shimmer 3s infinite}.btn.pulse-btn{animation:btnPulse 2s infinite alternate}@keyframes btnPulse{0%{box-shadow:0 0 10px 0 rgba(255,64,129,.5)}to{box-shadow:0 0 20px 10px rgba(255,64,129,.6)}}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.7);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-in-out}.modal{background:linear-gradient(135deg,#fff,#ffebee);padding:40px;border-radius:20px;color:var(--text-dark);text-align:center;max-width:500px;animation:scaleIn .5s cubic-bezier(.165,.84,.44,1);box-shadow:0 20px 50px rgba(0,0,0,.3);position:relative;border:1px solid rgba(255,255,255,.5)}.modal:before{content:"";position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px;border-radius:25px;border:2px dashed rgba(255,64,129,.3);pointer-events:none;animation:rotate 15s linear infinite}.modal-image{max-width:100%;height:auto;border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.1);margin-bottom:20px;border:5px solid white}.modal-text{font-size:1.8rem;margin-bottom:25px;color:var(--primary-color);font-weight:600}.modal-btn{background:linear-gradient(45deg,#ff4081,#ff80ab);color:white;padding:12px 25px;border-radius:50px;border:none;cursor:pointer;font-size:1.5rem;transition:all .3s ease;box-shadow:0 5px 15px rgba(255,64,129,.4)}.modal-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(255,64,129,.5);background:linear-gradient(45deg,#ff80ab,#ff4081)}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.love-footer{background:rgba(0,0,0,.1);padding:30px;margin-top:50px;border-top:1px solid rgba(255,255,255,.2)}.love-footer p{margin:5px 0;font-size:1rem}.copyright{font-size:.9rem;opacity:.7;margin-top:10px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-5px)}}@media (max-width:768px){.hero{padding:40px 20px}.hero-title{font-size:3rem}.hero-subtitle{font-size:1.5rem}.btn,.final-btn,.quiz-btn{font-size:1.3rem;padding:12px 25px}.final-container,.love-meter,.quiz,.tap-heart,.timeline,.year-six{padding:30px;margin:40px auto}.section-title,.section-title-special{font-size:2.5rem}.year{flex:1 1 100%;max-width:100%}.year h3{font-size:2rem}.heart{font-size:6rem}.heart-counter,.image-caption{font-size:1.5rem}.modal{max-width:90%;padding:30px}.modal-text{font-size:1.5rem}.modal-btn{font-size:1.3rem;padding:10px 20px}.future-options,.moments-container{gap:20px}.future-option,.moment-card{width:calc(50% - 20px);padding:20px}.future-emoji,.moment-emoji{font-size:3rem}.letter-content p{font-size:1rem}.signature{font-size:2rem}.music-toggle{top:10px;right:10px}.music-btn{font-size:.8rem;padding:8px 15px}}.music-player{position:fixed;top:70px;right:20px;z-index:100;animation:fadeIn .5s ease-in-out}.music-player-content{background:rgba(255,255,255,.15);backdrop-filter:blur(10px);border-radius:15px;box-shadow:var(--shadow-medium);padding:15px;border:1px solid rgba(255,255,255,.3);display:flex;flex-direction:column;align-items:center}.music-player-content h3{margin:0 0 10px;font-size:1rem;font-weight:400;color:white}.music-player iframe{border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.1)}@media (max-width:768px){.music-player{top:60px;right:10px}.music-player-content{padding:10px}.music-player iframe{width:250px;height:70px}}