body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#faf8f9,#f5f0f2);color:#4a4a4a;font-family:Georgia,Times New Roman,serif;margin:0;min-height:100vh;overflow-x:hidden;position:relative}body:before{background:radial-gradient(circle at 20% 80%,#ffb6c108 0,#0000 50%),radial-gradient(circle at 80% 20%,#ffc0cb05 0,#0000 50%);content:"";z-index:-1}.floating-hearts,body:before{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%}.floating-hearts{z-index:1}.heart{animation:float 6s ease-in-out infinite;color:#ff6b9d;font-size:20px;opacity:.6;position:absolute}.heart:first-child{animation-delay:0s;left:10%;top:10%}.heart:nth-child(2){animation-delay:1s;left:80%;top:20%}.heart:nth-child(3){animation-delay:2s;left:15%;top:60%}.heart:nth-child(4){animation-delay:3s;left:70%;top:80%}.heart:nth-child(5){animation-delay:4s;left:60%;top:30%}.heart:nth-child(6){animation-delay:5s;left:85%;top:70%}.floating-bubbles{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1}.bubble{animation:floatBubble 8s ease-in-out infinite;background:radial-gradient(circle,#ffb6c14d 0,#ffb6c11a 100%);border:2px solid #ffb6c180;border-radius:50%;height:30px;position:absolute;width:30px}.bubble:first-child{animation-delay:0s;left:5%;top:15%}.bubble:nth-child(2){animation-delay:2s;left:90%;top:25%}.bubble:nth-child(3){animation-delay:4s;left:8%;top:65%}.bubble:nth-child(4){animation-delay:6s;left:75%;top:75%}.floating-stars{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1}.star{animation:floatStar 10s ease-in-out infinite;color:gold;filter:drop-shadow(0 0 5px rgba(255,215,0,.5));font-size:18px;opacity:.7;position:absolute}.star:first-child{animation-delay:0s;left:15%;top:5%}.star:nth-child(2){animation-delay:1.5s;left:85%;top:12%}.star:nth-child(3){animation-delay:3s;left:25%;top:25%}.star:nth-child(4){animation-delay:4.5s;left:75%;top:35%}.star:nth-child(5){animation-delay:6s;left:10%;top:55%}.star:nth-child(6){animation-delay:7.5s;left:80%;top:65%}.star:nth-child(7){animation-delay:9s;left:20%;top:80%}.star:nth-child(8){animation-delay:10.5s;left:70%;top:90%}.floating-sparkles{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1}.sparkle{animation:floatSparkle 12s ease-in-out infinite;color:#ff69b4;filter:drop-shadow(0 0 8px rgba(255,105,180,.6));font-size:16px;opacity:.6;position:absolute}.sparkle:first-child{animation-delay:0s;left:45%;top:8%}.sparkle:nth-child(2){animation-delay:2s;left:65%;top:18%}.sparkle:nth-child(3){animation-delay:4s;left:35%;top:28%}.sparkle:nth-child(4){animation-delay:6s;left:55%;top:38%}.sparkle:nth-child(5){animation-delay:8s;left:25%;top:58%}.sparkle:nth-child(6){animation-delay:10s;left:45%;top:68%}.sparkle:nth-child(7){animation-delay:12s;left:35%;top:78%}.sparkle:nth-child(8){animation-delay:14s;left:55%;top:88%}@keyframes floatStar{0%,to{opacity:.7;transform:translateY(0) rotate(0deg) scale(1)}25%{opacity:1;transform:translateY(-15px) rotate(90deg) scale(1.1)}50%{opacity:.8;transform:translateY(-25px) rotate(180deg) scale(.9)}75%{opacity:1;transform:translateY(-15px) rotate(270deg) scale(1.1)}}@keyframes floatSparkle{0%,to{opacity:.6;transform:translateY(0) rotate(0deg) scale(1)}33%{opacity:1;transform:translateY(-20px) rotate(120deg) scale(1.2)}66%{opacity:.7;transform:translateY(-30px) rotate(240deg) scale(.8)}}@keyframes floatBubble{0%,to{opacity:.3;transform:translateY(0) scale(1)}50%{opacity:.6;transform:translateY(-30px) scale(1.2)}}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(10deg)}}.app-container{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:800px;min-height:100vh;padding:3rem 2rem}.app-header{margin-bottom:4rem;text-align:center}.app-header h1{color:#ff6b9d;font-size:2.8rem;font-weight:700;letter-spacing:2px;line-height:1.2;margin:0;position:relative;text-shadow:3px 3px 6px #ffb6c14d}.app-header h1:after{animation:heartBeat 1.5s ease-in-out infinite;content:"💖";font-size:30px;position:absolute;right:-40px;top:-10px}@keyframes heartBeat{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.date-text{color:#8b7d7d;font-size:1.1rem;font-weight:300;letter-spacing:1px;margin-top:1rem}.countdown-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fff6;border:1px solid #ffffff4d;border-radius:8px;margin-top:1rem;max-width:600px;padding:2rem 2rem 3rem;width:100%}.countdown-display{margin:0;text-align:center}.countdown-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:500px}.countdown-item{align-items:center;background:linear-gradient(145deg,#fff,#f0f0f0);border:3px solid #ffb6c1;border-radius:20px;box-shadow:0 8px 16px #ffb6c14d,inset 0 1px 0 #fffc;display:flex;flex-direction:column;padding:1.5rem 1rem;position:relative;transition:all .3s ease}.countdown-item:hover{box-shadow:0 12px 24px #ffb6c166,inset 0 1px 0 #ffffffe6;transform:translateY(-8px) scale(1.05)}.countdown-item:before{background:linear-gradient(45deg,#ff6b9d,#ffb6c1,#ffd1dc);border-radius:22px;bottom:-2px;content:"";left:-2px;opacity:.7;position:absolute;right:-2px;top:-2px;z-index:-1}.countdown-number{animation:bounce 2s ease-in-out infinite;color:#ff6b9d;font-size:3.5rem;font-weight:700;line-height:1;margin-bottom:.5rem;position:relative;text-shadow:2px 2px 4px #0000001a}.countdown-number:after{animation:twinkle 1.5s ease-in-out infinite;content:"✨";font-size:16px;position:absolute;right:-15px;top:-10px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes twinkle{0%,to{opacity:1;transform:scale(1) rotate(0deg)}50%{opacity:.5;transform:scale(.8) rotate(180deg)}}.countdown-label{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#ff6b9d,#ffb6c1);-webkit-background-clip:text;background-clip:text;color:#8b7d7d;font-size:.9rem;font-weight:600;letter-spacing:2px;margin-top:0;text-transform:uppercase}.description{color:#8b7d7d;font-weight:300;line-height:1.6;margin-bottom:1rem;margin-top:2rem;text-align:center}.description h2{color:#ff6b9d;font-size:1.5rem;font-weight:700;letter-spacing:2px;margin-bottom:1rem;text-shadow:2px 2px 4px #ffb6c133}.description h2:before{animation:twinkle 2s ease-in-out infinite;content:"✨";margin-right:10px}.description h2:after{animation:twinkle 2s ease-in-out 1s infinite;content:"✨";margin-left:10px}.description p{font-size:1rem;margin:0 auto;max-width:400px}.app-footer{background:linear-gradient(145deg,#fff,#f0f0f0);border:2px solid #ffb6c1;border-radius:20px;box-shadow:0 4px 8px #ffb6c133;color:#ff6b9d;font-size:1rem;font-weight:600;letter-spacing:1px;margin-top:2rem;padding:1.5rem;position:relative;text-align:center}.app-footer:before{background:#fff;border:2px solid #ffb6c1;border-radius:50%;content:"💝";font-size:20px;left:50%;padding:5px;position:absolute;top:-10px;transform:translateX(-50%)}.engagement-section{background:linear-gradient(135deg,#fff3,#fff0f54d);border-bottom:3px solid #ffb6c1;border-radius:25px;margin-top:2rem;padding:3rem 2rem 2rem;position:relative}.engagement-section:before{background:#fff;border:3px solid #ffb6c1;border-radius:50%;box-shadow:0 4px 8px #0000001a;content:"💕";font-size:30px;left:50%;padding:10px;position:absolute;top:-15px;transform:translateX(-50%)}.couple-photo-section{background:linear-gradient(135deg,#ffffff4d,#fff0f566);border-bottom:3px solid #ffb6c1;border-radius:30px;box-shadow:0 15px 30px #ffb6c133;margin:3rem 0;padding:3rem 2rem 2rem;position:relative}.couple-photo-section:before{background:#fff;border:3px solid #ffb6c1;border-radius:50%;box-shadow:0 6px 12px #0000001a;content:"👫";font-size:35px;left:50%;padding:12px;position:absolute;top:-20px;transform:translateX(-50%);z-index:2}.couple-photo-container{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr;margin:0 auto;max-width:900px}.couple-photo-frame{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:3px solid #ffd1dc;border-radius:25px;box-shadow:0 25px 50px #ffb6c166,0 0 0 8px #ffb6c1,0 0 0 12px #ffd1dc;overflow:hidden;position:relative;transition:transform .3s ease}.couple-photo-frame:hover{transform:scale(1.02)}.couple-photo{border-radius:22px;display:block;height:auto;transition:transform .3s ease;width:100%}.couple-photo-content{padding:2rem;text-align:center}.couple-photo-content h3{color:#ff6b9d;font-size:2.2rem;font-weight:700;letter-spacing:2px;margin-bottom:1.5rem;text-shadow:2px 2px 4px #ffb6c133}.couple-photo-content p{color:#8b7d7d;font-size:1.1rem;font-style:italic;font-weight:400;line-height:1.6;margin-bottom:2rem}.photo-decorations{display:flex;gap:1.5rem;justify-content:center;margin-top:1.5rem}.decoration{animation:float 3s ease-in-out infinite;font-size:2rem}.decoration:first-child{animation-delay:0s}.decoration:nth-child(2){animation-delay:1s}.decoration:nth-child(3){animation-delay:2s}.engagement-container{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:1fr 1fr 1fr;margin:0 auto;max-width:1200px}.engagement-photo-frame{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:3px solid #ffd1dc;border-radius:25px;box-shadow:0 20px 40px #ffb6c14d,0 0 0 5px #ffb6c1;overflow:hidden;position:relative}.engagement-photo-frame:before{animation:sparkle 2s ease-in-out infinite;content:"💍";font-size:24px;position:absolute;right:10px;top:10px;z-index:2}@keyframes sparkle{0%,to{transform:scale(1) rotate(0deg)}50%{transform:scale(1.2) rotate(180deg)}}.engagement-photo{border-radius:22px;display:block;height:auto;transition:transform .3s ease;width:100%}.engagement-photo:hover{transform:scale(1.02)}.photo-overlay{background:linear-gradient(135deg,#ffb6c11a,#fff0f50d);bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.engagement-content{grid-column:2;padding:2rem;text-align:center}.engagement-content h3{color:#ff6b9d;font-size:2.2rem;font-weight:700;letter-spacing:2px;margin-bottom:2rem;text-shadow:2px 2px 4px #ffb6c133}.engagement-announcement{color:#8b7d7d;font-size:1.1rem;font-style:italic;font-weight:400;line-height:1.6;margin-bottom:2.5rem}.couple-names{gap:1rem;justify-content:center;margin:2rem 0}.couple-names,.name-with-photo{align-items:center;display:flex}.name-with-photo{flex-direction:column;gap:.5rem}.name-photo{border:3px solid #ffb6c1;border-radius:50%;box-shadow:0 5px 15px #ffb6c166;height:80px;object-fit:cover;transition:transform .3s ease;width:80px}.name-photo:hover{box-shadow:0 8px 20px #ffb6c199;transform:scale(1.1)}.couple-names .name{color:#ff6b9d;font-size:1.8rem;font-weight:700;letter-spacing:1px;text-shadow:1px 1px 2px #ffb6c133}.couple-names .ampersand{color:#ffb6c1;font-size:1.5rem;font-style:italic;font-weight:600}.timeline{align-items:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(145deg,#fff,#f0f0f0);border:3px solid #ffb6c1;border-radius:25px;box-shadow:0 8px 20px #ffb6c14d,inset 0 1px 0 #fffc;display:flex;gap:2rem;justify-content:center;margin:3rem auto 2rem;max-width:400px;padding:2rem;position:relative}.timeline:before{background:#fff;border:2px solid #ffb6c1;border-radius:50%;content:"🎯";font-size:24px;left:50%;padding:8px;position:absolute;top:-15px;transform:translateX(-50%)}.milestone{align-items:center;background:linear-gradient(145deg,#fff5f7,#ffeef2);border:2px solid #ffd1dc;border-radius:15px;box-shadow:0 4px 8px #ffb6c133;display:flex;flex-direction:column;padding:1rem;text-align:center}.milestone-label{color:#8b7d7d;font-size:.9rem;font-weight:600;letter-spacing:1px;margin-bottom:.5rem;text-transform:uppercase}.milestone-date{color:#ff6b9d;font-size:1.1rem;font-weight:600;letter-spacing:.5px}.timeline-arrow{animation:pulse 2s ease-in-out infinite;color:#ff6b9d;font-size:2rem;font-weight:700}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.journey-text{color:#8b7d7d;font-size:1rem;font-style:italic;font-weight:400;letter-spacing:.5px;line-height:1.5;margin-top:1.5rem}@media (max-width:768px){.countdown-grid{gap:1rem;grid-template-columns:repeat(2,1fr)}.countdown-number{font-size:2rem}.countdown-item{padding:1rem .5rem}.timeline{flex-direction:column;gap:1rem;margin:2rem auto 1.5rem;max-width:280px;padding:1.5rem 1rem}.timeline-arrow{font-size:1.2rem;margin:.5rem 0;transform:rotate(90deg)}.milestone-date{font-size:1rem}.milestone-label{font-size:.8rem}.engagement-container{gap:2rem;grid-template-columns:1fr;text-align:center}.engagement-content{grid-column:1;order:2}.engagement-photo-frame{order:1}.couple-photo-frame{order:3}.engagement-content h3{font-size:1.8rem}.couple-names{flex-direction:column;gap:.5rem}.couple-names .name{font-size:1.5rem}.engagement-section{margin-top:4rem;padding:3rem 1rem}.couple-photo-container{gap:2rem;grid-template-columns:1fr;text-align:center}.couple-photo-section{margin:2rem 0;padding:2rem 1rem}.couple-photo-content h3{font-size:1.8rem}.photo-decorations{gap:1rem}.decoration{font-size:1.5rem}}@media (max-width:480px){.countdown-grid{gap:.5rem;grid-template-columns:repeat(2,1fr)}.countdown-number{font-size:1.5rem}.countdown-label{font-size:.8rem}.timeline{margin:1.5rem auto 1rem;max-width:250px;padding:1rem}.milestone-date{font-size:.9rem}.milestone-label{font-size:.75rem}.timeline-arrow{font-size:1rem}.engagement-content h3{font-size:1.6rem}.couple-names{flex-direction:column;gap:.5rem}.couple-names .name{font-size:1.3rem}}.love-letter-section{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(135deg,#fff0f54d,#fff3);border:1px solid #ffc0cb4d;border-radius:16px;margin:2rem 0;padding:3rem 2rem;text-align:center}.love-letter-container{margin:0 auto;max-width:500px}.love-letter-section h3{color:#2d2d2d;font-size:2rem;font-weight:300;letter-spacing:1px;margin-bottom:1rem}.love-letter-description{color:#8b7d7d;font-size:1.1rem;font-style:italic;font-weight:300;margin-bottom:2rem}.love-letter-button{background:linear-gradient(135deg,#ff6b9d,#ffa8cc);border:none;border-radius:25px;box-shadow:0 8px 20px #ff6b9d4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:400;padding:1rem 2rem;transition:all .3s ease}.love-letter-button:hover{box-shadow:0 12px 25px #ff6b9d66;transform:translateY(-2px)}.password-prompt{background:#ffffff80;border-radius:12px;margin:1rem 0;padding:2rem}.password-prompt p{color:#2d2d2d;font-size:1.1rem;margin-bottom:1rem}.password-hints{margin-bottom:1rem}.password-hints small{color:#666;font-size:.9rem;font-style:italic}.password-input{background:#fffc;border:2px solid #ffc0cb80;border-radius:8px;color:#2d2d2d;font-size:1rem;margin-bottom:1rem;max-width:300px;padding:.8rem 1rem;width:100%}.password-input:focus{border-color:#ff6b9d;box-shadow:0 0 10px #ff6b9d33;outline:none}.password-submit{background:linear-gradient(135deg,#ff6b9d,#ffa8cc);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:1rem;padding:.8rem 1.5rem;transition:all .3s ease}.password-submit:hover{box-shadow:0 8px 15px #ff6b9d4d;transform:translateY(-1px)}.love-letter-access{background:#ffffff80;border-radius:12px;margin:1rem 0;padding:2rem}.success-message{color:#2d2d2d;font-size:1.3rem;font-weight:400;margin-bottom:1.5rem}.download-button{background:linear-gradient(135deg,#4caf50,#66bb6a);border:none;border-radius:25px;box-shadow:0 8px 20px #4caf504d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:400;margin-bottom:1rem;padding:1rem 2rem;transition:all .3s ease}.download-button:hover{box-shadow:0 12px 25px #4caf5066;transform:translateY(-2px)}.love-note{color:#8b7d7d;font-size:.95rem;font-style:italic;font-weight:300;line-height:1.5;margin-top:1rem}.monthly-anniversaries h4{color:#2d2d2d;font-size:1.5rem;font-weight:300;letter-spacing:1px;margin-bottom:2rem}.folder-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1.5rem}.folder-card{align-items:center;background:#fff9;border:2px solid #ffc0cb4d;border-radius:12px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;text-align:center;transition:all .3s ease}.folder-card:hover{border-color:#ffc0cb99;box-shadow:0 8px 25px #ffc0cb4d;transform:translateY(-5px)}.folder-icon{font-size:3rem;margin-bottom:.5rem}.folder-details h5{color:#2d2d2d;font-size:1.1rem;font-weight:500;margin:0 0 .5rem}.folder-date{color:#666;font-size:.9rem;margin:0 0 .5rem}.special-message{color:#ff6b9d;font-size:.85rem;font-style:italic;font-weight:500;margin:.5rem 0 1rem;text-align:center}.anniversary-card:hover{border-color:#ff6b9d66;box-shadow:0 8px 20px #ff6b9d33;transform:translateY(-3px)}.anniversary-header{align-items:baseline;display:flex;justify-content:center;margin-bottom:1rem}.month-number{font-size:2.5rem;line-height:1}.month-number,.month-suffix{color:#ff6b9d;font-weight:300}.month-suffix{font-size:1rem;margin-left:.2rem}.anniversary-title{color:#2d2d2d;font-size:1rem;font-weight:400;margin-bottom:.5rem}.anniversary-date{color:#8b7d7d;font-size:.9rem;font-weight:300;margin-bottom:1rem}.read-letter-btn{background:linear-gradient(135deg,#ff6b9d,#ffa8cc);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:400;padding:.6rem 1.2rem;transition:all .3s ease;width:100%}.read-letter-btn:hover{box-shadow:0 6px 15px #ff6b9d4d;transform:translateY(-1px)}.selected-date{color:#8b7d7d;font-size:1.1rem;font-style:italic;font-weight:300;margin-bottom:1.5rem}.password-buttons{align-items:center;display:flex;gap:1rem;justify-content:center}.back-button{background:#6c757dcc;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:400;padding:.6rem 1.2rem;transition:all .3s ease}.back-button:hover{background:#6c757d;transform:translateY(-1px)}@media (max-width:768px){.love-letter-section{padding:2rem 1rem}.love-letter-section h3{font-size:1.6rem}.download-button,.love-letter-button{font-size:1rem;padding:.8rem 1.5rem}.folder-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.anniversary-card{padding:1rem}.month-number{font-size:2rem}.password-buttons{flex-direction:column;gap:.8rem}}@media (max-width:480px){.love-letter-section h3{font-size:1.4rem}.password-input{max-width:250px}.folder-grid{gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.month-number{font-size:1.8rem}.monthly-anniversaries h4{font-size:1.3rem}}@media (prefers-reduced-motion:reduce){.countdown-text,.download-button,.engagement-photo,.love-letter-button,.password-submit{animation:none;transition:none}}@media (forced-colors:active){.countdown-text{forced-color-adjust:none}}
/*# sourceMappingURL=main.61f5ca69.css.map*/