@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Poppins:wght@300;400;500;600&display=swap";.home{min-height:100vh;background:linear-gradient(135deg,#fff5f7,#fce7f3);color:#4a4a4a;position:relative;overflow-x:hidden;padding:1rem}.floating-elements{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.floating-element{position:absolute;opacity:.6;filter:blur(1px)}.home-content{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:2rem 1rem}.header{text-align:center;margin-bottom:3rem;padding:2rem;background:#ffffffe6;border-radius:20px;box-shadow:0 10px 30px #ec48991a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.title-container{position:relative}.title{font-family:Playfair Display,serif;font-size:2.5rem;color:#ec4899;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(236,72,153,.1);animation:glow 2s ease-in-out infinite}.subtitle{font-family:Poppins,sans-serif;font-size:1.2rem;color:#9d174d;opacity:.8}.timer-section{background:#fffffff2;padding:2rem;border-radius:20px;margin-bottom:2rem;box-shadow:0 10px 30px #ec48991a;border:1px solid rgba(236,72,153,.1);position:relative;overflow:hidden}.timer-section:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,#ec48990d,#ec489900);pointer-events:none}.timer-header{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem;position:relative}.timer-sparkle{color:#ec4899;width:24px;height:24px;animation:sparkle 2s ease-in-out infinite}.timer{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;position:relative}.time-unit{text-align:center;min-width:80px;background:#ec48990d;padding:1.5rem 1rem;border-radius:15px;transition:all .3s ease;position:relative;overflow:hidden;border:1px solid var(--unit-color, rgba(236, 72, 153, .1))}.time-unit:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,var(--unit-color, rgba(236, 72, 153, .1)) 0%,rgba(236,72,153,0) 100%);opacity:0;transition:opacity .3s ease}.time-unit:hover:before{opacity:.2}.time-unit-icon{color:var(--unit-color, #ec4899);width:20px;height:20px;margin-bottom:.5rem;opacity:.8;transition:transform .3s ease}.time-unit:hover .time-unit-icon{transform:scale(1.2)}.time-value{font-family:Playfair Display,serif;font-size:2rem;color:var(--unit-color, #ec4899);font-weight:700;text-shadow:0 2px 4px rgba(236,72,153,.1);transition:all .3s ease}.time-unit:hover .time-value{transform:scale(1.1);text-shadow:0 4px 8px rgba(236,72,153,.2)}.time-label{font-family:Poppins,sans-serif;font-size:.9rem;color:#9d174d;text-transform:uppercase;letter-spacing:1px;margin-top:.5rem;transition:color .3s ease}.time-unit:hover .time-label{color:#ec4899}.love-message{text-align:center;margin-top:2rem;padding:1rem;background:#ec48990d;border-radius:15px;position:relative;overflow:hidden}.love-message p{font-family:Playfair Display,serif;font-size:1.2rem;color:#ec4899;margin:0;position:relative;z-index:1}.love-letter{background:#fffffff2;padding:2.5rem;border-radius:20px;margin-bottom:2rem;box-shadow:0 10px 30px #ec48991a;border:1px solid rgba(236,72,153,.1);position:relative;overflow:hidden}.letter-header{text-align:center;margin-bottom:2rem;position:relative}.letter-header h2{font-family:Playfair Display,serif;font-size:2.2rem;color:#ec4899;margin:0;text-shadow:2px 2px 4px rgba(236,72,153,.1)}.letter-icon{color:#ec4899;width:28px;height:28px;position:absolute;top:50%;transform:translateY(-50%)}.letter-icon:first-child{left:0}.letter-icon:last-child{right:0}.letter-content{display:flex;gap:2rem;position:relative}.letter-decoration{display:flex;flex-direction:column;gap:2rem;opacity:.6}.letter-decoration.left{align-items:flex-start}.letter-decoration.right{align-items:flex-end}.decoration-icon{color:#ec4899;width:24px;height:24px;animation:float 3s ease-in-out infinite}.letter-main{flex:1;display:flex;flex-direction:column;gap:2rem}.letter-paragraphs{display:flex;flex-direction:column;gap:1.5rem}.letter-paragraph{display:flex;gap:1rem;align-items:flex-start;padding:1.5rem;border-radius:15px;background:#ec489905;transition:all .3s ease;border:1px solid rgba(236,72,153,.05)}.letter-paragraph:hover{background:#ec48990d;transform:translate(10px);box-shadow:0 5px 15px #ec48991a}.paragraph-icon{color:#ec4899;width:24px;height:24px;flex-shrink:0;margin-top:.25rem}.letter-paragraph p{margin:0;font-size:1.1rem;line-height:1.6;color:#4a4a4a;font-family:Poppins,sans-serif}.signature-container{text-align:right;margin-top:2rem;position:relative}.signature-line{width:150px;height:1px;background:linear-gradient(90deg,transparent,#ec4899,transparent);margin:0 auto 1rem}.signature{font-family:Playfair Display,serif;font-size:1.2rem;color:#ec4899;margin:0}.signature span{font-size:1.4rem;font-weight:700;display:block;margin-top:.5rem}.interactive-elements{display:flex;flex-direction:column;align-items:center;margin:2rem 0;position:relative;min-height:200px}.love-buttons-container{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin:2rem 0;padding:0 1rem}.love-button{background:linear-gradient(135deg,#4f9fff,#6fb1ff);border:none;border-radius:12px;padding:1rem 2rem;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #4f9fff4d;min-width:160px}.love-button.her{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);box-shadow:0 4px 15px #ff6b6b4d}.love-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4f9fff66}.love-button.her:hover{box-shadow:0 6px 20px #ff6b6b66}.love-button:disabled{opacity:.7;cursor:not-allowed}.button-content{display:flex;align-items:center;justify-content:center;gap:.5rem}.button-icon{width:24px;height:24px}.button-text{font-size:1.1rem}.button-sparkle{width:20px;height:20px;opacity:.8}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000}.confetti{position:absolute;width:8px;height:8px;background:#ec4899;border-radius:50%;opacity:.8}.confetti:nth-child(2n){background:#db2777;width:10px;height:10px}.confetti:nth-child(3n){background:#be185d;width:6px;height:6px}.confetti:nth-child(4n){background:#9d174d;width:12px;height:12px}.confetti:nth-child(5n){background:#831843;width:8px;height:8px}.love-message-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fffffffa;padding:2rem;border-radius:20px;box-shadow:0 8px 32px #00000026;z-index:1001;width:min(90%,400px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,107,107,.1);animation:popupFadeIn .3s ease-out}.popup-content{display:flex;flex-direction:column;align-items:center;gap:1.2rem;text-align:center;position:relative;width:100%}.popup-text{font-size:clamp(1rem,4vw,1.3rem);color:#333;margin:0;line-height:1.5;font-weight:500;padding:0 .5rem;word-wrap:break-word;max-width:100%}.sparkle-icon{width:clamp(24px,6vw,32px);height:clamp(24px,6vw,32px);color:#ff6b6b;animation:sparkle 1.5s ease-in-out infinite;flex-shrink:0}.popup-heart{width:clamp(32px,8vw,40px);height:clamp(32px,8vw,40px);color:#ff6b6b;animation:pulse 1.5s ease-in-out infinite;flex-shrink:0}@keyframes popupFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.love-counter{background:#fffffffa;border-radius:20px;padding:2rem;margin:2rem auto;max-width:600px;box-shadow:0 8px 32px #00000026;position:relative;z-index:1000}.counter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;justify-items:center}.counter-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fffc;border-radius:12px;width:100%;max-width:250px;transition:transform .3s ease}.counter-item:hover{transform:translateY(-2px)}.counter-icon{width:32px;height:32px;color:#ff6b6b}.counter-info{display:flex;flex-direction:column;gap:.25rem}.counter-label{font-size:.9rem;color:#666;font-weight:500}.counter-value{font-size:1.5rem;font-weight:700;color:#333}.memory-wall{background:#fffffffa;padding:2.5rem;border-radius:20px;box-shadow:0 10px 30px #ec48991a;border:1px solid rgba(236,72,153,.1);position:relative;overflow:hidden;margin:2rem 0}.memory-wall:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ec48990d,#ec489900);pointer-events:none}.memory-header{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:2rem;position:relative}.memory-icon{color:#ec4899;width:28px;height:28px;animation:sparkle 2s ease-in-out infinite}.memory-header h2{font-family:Playfair Display,serif;font-size:2rem;color:#ec4899;margin:0;text-shadow:2px 2px 4px rgba(236,72,153,.1)}.memory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;padding:.5rem}.memory-card{background:#fffffff2;border-radius:16px;box-shadow:0 8px 24px #ec489914;border:1px solid rgba(236,72,153,.1);transition:all .3s ease;position:relative;overflow:hidden;display:flex;flex-direction:column}.memory-image-container{position:relative;width:100%;height:200px;overflow:hidden;border-radius:16px 16px 0 0}.memory-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.memory-card:hover .memory-image{transform:scale(1.05)}.memory-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ec48990d,#ec489900);opacity:0;transition:opacity .3s ease;pointer-events:none}.memory-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #ec489926}.memory-card:hover:before{opacity:1}.memory-card h3{font-family:Playfair Display,serif;font-size:1.5rem;color:#ec4899;margin:1.5rem 1.5rem .5rem;position:relative;display:inline-block}.memory-card h3:after{content:"";position:absolute;bottom:-5px;left:0;width:40px;height:2px;background:linear-gradient(90deg,#ec4899,transparent);transition:width .3s ease}.memory-card:hover h3:after{width:100%}.memory-card p{font-family:Poppins,sans-serif;color:#4a4a4a;line-height:1.6;margin:0 1.5rem 1.5rem;font-size:1rem}@media (max-width: 768px){.memory-wall{padding:2rem;margin:1.5rem 0}.memory-header{margin-bottom:1.5rem}.memory-header h2{font-size:1.8rem}.memory-grid{gap:1.5rem}.memory-image-container{height:180px}.memory-card h3{font-size:1.3rem;margin:1.2rem 1.2rem .4rem}.memory-card p{margin:0 1.2rem 1.2rem}}@media (max-width: 480px){.memory-wall{padding:1.5rem;margin:1rem 0}.memory-header{margin-bottom:1.2rem}.memory-header h2{font-size:1.6rem}.memory-grid{gap:1rem}.memory-image-container{height:160px}.memory-card h3{font-size:1.2rem;margin:1rem 1rem .3rem}.memory-card p{font-size:.95rem;margin:0 1rem 1rem}}@media (max-width: 768px){.home{padding:.5rem}.home-content{padding:1rem .5rem}.header{padding:1.5rem;margin-bottom:2rem}.title{font-size:2rem}.subtitle{font-size:1rem}.timer-section,.love-letter,.memory-wall{padding:1.5rem}.timer{gap:1rem}.time-unit{min-width:70px;padding:1rem .75rem}.time-value{font-size:1.5rem}.time-label{font-size:.8rem}.love-message p{font-size:1rem}.letter-paragraph{padding:1rem}.letter-paragraph p{font-size:1rem}.interactive-elements{min-height:180px}.love-buttons-container{flex-direction:column;align-items:center}.love-button{width:100%;max-width:300px}.love-message-popup{padding:1.5rem;width:85%;max-height:90vh;overflow-y:auto}.popup-content{gap:1rem}.popup-text{font-size:clamp(.9rem,3.5vw,1.2rem)}.counter-grid{grid-template-columns:1fr}.counter-item{max-width:100%}.crown-icon{width:24px;height:24px;top:-15px}.love-letter{padding:1.5rem}.letter-header h2{font-size:1.8rem}.letter-icon{width:24px;height:24px}.letter-content{flex-direction:column;gap:1rem}.letter-decoration{display:none}.signature-container{margin-top:1.5rem}.signature{font-size:1.1rem}.signature span{font-size:1.3rem}}@media (max-width: 480px){.love-button{padding:.8rem 1.5rem}.button-text{font-size:1rem}.counter-item{padding:.8rem}.counter-value{font-size:1.3rem}.love-message-popup{padding:1.2rem;width:90%}.popup-content{gap:.8rem}.popup-text{font-size:1rem;padding:0 .3rem}.sparkle-icon{width:24px;height:24px}.popup-heart{width:32px;height:32px}}@keyframes float{0%,to{transform:translateY(0) translate(-50%)}50%{transform:translateY(-10px) translate(-50%)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes sparkle{0%,to{opacity:.5;transform:scale(1) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}}.love-message-popup:before{content:"";position:fixed;inset:0;background:#0000004d;z-index:-1;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.coming-soon-overlay{position:absolute;inset:0;background:#ec4899d9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:2;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border-radius:16px 16px 0 0;transition:all .3s ease}.coming-soon-heart{width:40px;height:40px;color:#fff;animation:pulse 1.5s ease-in-out infinite}.coming-soon-text{font-family:Playfair Display,serif;font-size:1.8rem;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.2);font-weight:700;letter-spacing:1px}.coming-soon-sparkle{width:32px;height:32px;color:#fff;animation:sparkle 2s ease-in-out infinite}.memory-card.coming-soon:hover .coming-soon-overlay{background:#ec4899e6}.memory-card.coming-soon:hover .coming-soon-heart{transform:scale(1.1)}.memory-card.coming-soon:hover .coming-soon-text{transform:scale(1.05)}@media (max-width: 768px){.coming-soon-text{font-size:1.5rem}.coming-soon-heart{width:32px;height:32px}.coming-soon-sparkle{width:24px;height:24px}}@media (max-width: 480px){.coming-soon-text{font-size:1.3rem}.coming-soon-heart{width:28px;height:28px}.coming-soon-sparkle{width:20px;height:20px}}.birthday-container{font-family:sans-serif;color:#1f2937;overflow-x:hidden}.music-control{position:fixed;top:1rem;right:1rem;z-index:50;background-color:#ec4899;color:#fff;padding:.5rem;border-radius:9999px;box-shadow:0 10px 15px -3px #0000001a;transition:all .3s}.music-control:hover{background-color:#db2777}.birthday-content{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;background:linear-gradient(to bottom right,#fce7f3,#f3e8ff);padding:4rem 1rem}.animate-flicker{animation:flicker 2s infinite}.blow-animation{animation:blow 1s forwards}.bucket-container{width:100%;height:10rem;background:linear-gradient(to bottom,#fbcfe8,#fdf2f8);border-radius:9999px 9999px 0 0;overflow:hidden;border:2px solid #f9a8d4;position:relative;box-shadow:0 20px 25px -5px #0000001a;transform:translateZ(0)}@media (min-width: 640px){.bucket-container{height:12rem}}.bucket-base{position:absolute;bottom:0;width:100%;height:2rem;background:linear-gradient(to bottom,#f9a8d4,#f472b6);border-radius:0 0 9999px 9999px;box-shadow:inset 0 2px 4px #0000001a;transform:rotateX(60deg) translateZ(-10px)}.bucket-pattern{position:absolute;inset:0;opacity:.2}.bucket-pattern-line{position:absolute;width:200%;height:1px;background-color:#f9a8d4;left:-50%}.bucket-pattern-line:nth-child(1){top:0%;transform:rotate(45deg) translateZ(2px)}.bucket-pattern-line:nth-child(2){top:12%;transform:rotate(50deg) translateZ(2px)}.bucket-pattern-line:nth-child(3){top:24%;transform:rotate(55deg) translateZ(2px)}.bucket-pattern-line:nth-child(4){top:36%;transform:rotate(60deg) translateZ(2px)}.bucket-pattern-line:nth-child(5){top:48%;transform:rotate(65deg) translateZ(2px)}.bucket-pattern-line:nth-child(6){top:60%;transform:rotate(70deg) translateZ(2px)}.bucket-pattern-line:nth-child(7){top:72%;transform:rotate(75deg) translateZ(2px)}.bucket-pattern-line:nth-child(8){top:84%;transform:rotate(80deg) translateZ(2px)}.bucket-shine{position:absolute;inset:0;background:linear-gradient(to top right,transparent,white,transparent);opacity:.3;animation:shine 3s linear infinite;background-size:200% 100%}.flower-container{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.flower{position:absolute;transform-style:preserve-3d}.flower-pink{color:#f472b6}.flower-purple{color:#c084fc}.flower:hover{transform:scale(1.1);transition:transform .3s}.girlfriend-day{position:relative;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden}.floating-hearts-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.girlfriend-day-content{position:relative;z-index:2;padding:2rem;max-width:800px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center}.girlfriend-day-header{text-align:center;margin-bottom:3rem}.header-content{position:relative}.header-crown{width:60px;height:60px;color:#fbbf24;margin:0 auto 1rem;filter:drop-shadow(0 4px 8px rgba(251,191,36,.3))}.header-title{font-size:3rem;font-weight:800;background:linear-gradient(135deg,#ec4899,#fbbf24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem;text-shadow:0 4px 8px rgba(0,0,0,.1)}.header-subtitle{font-size:1.2rem;color:#ffffffe6;font-weight:500;margin-bottom:1rem}.header-sparkle{width:30px;height:30px;color:#fbbf24;position:absolute;top:-10px;right:-20px;animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.2) rotate(180deg);opacity:.8}}.step-content{width:100%;max-width:600px;margin-bottom:3rem}.step-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:3rem 2rem;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2);text-align:center;position:relative;overflow:hidden}.step-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ec4899,#fbbf24,#ec4899);background-size:200% 100%;animation:shimmer 3s linear infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.step-icon-container{position:relative;width:80px;height:80px;margin:0 auto 2rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--icon-color),#fbbf24);border-radius:50%;box-shadow:0 10px 30px #ec48994d}.step-icon{width:40px;height:40px;color:#fff;z-index:2}.step-sparkle{position:absolute;top:-10px;right:-10px;width:24px;height:24px;color:#fbbf24;animation:sparkle 2s ease-in-out infinite}.step-title{font-size:2.5rem;font-weight:700;color:#1f2937;margin-bottom:1rem;background:linear-gradient(135deg,#ec4899,#db2777);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.step-subtitle{font-size:1.1rem;color:#6b7280;font-weight:500;margin-bottom:1.5rem}.step-message{font-size:1.1rem;color:#374151;line-height:1.7;margin-bottom:2rem;font-weight:400}.interactive-heart{background:linear-gradient(135deg,#ec4899,#db2777);border:none;border-radius:50%;width:80px;height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 30px #ec489966;transition:all .3s ease;position:relative;overflow:hidden}.interactive-heart:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.interactive-heart:hover:before{left:100%}.heart-icon{width:32px;height:32px;color:#fff;margin-bottom:4px}.heart-count{color:#fff;font-size:.8rem;font-weight:600}.step-navigation{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:600px;gap:2rem}.nav-button{background:#ffffffe6;border:none;border-radius:50px;padding:1rem 1.5rem;display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:600;color:#374151;box-shadow:0 8px 20px #0000001a;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-button:hover:not(:disabled){background:#fff;transform:translateY(-2px);box-shadow:0 12px 30px #00000026}.nav-button:disabled{opacity:.5;cursor:not-allowed}.nav-button.next{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff}.nav-button.next:hover:not(:disabled){background:linear-gradient(135deg,#db2777,#be185d)}.step-indicators{display:flex;gap:.5rem}.step-indicator{width:12px;height:12px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:all .3s ease}.step-indicator.active{background:#ec4899;transform:scale(1.2)}.step-indicator:hover{background:#ec4899;transform:scale(1.1)}.welcome-message{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.welcome-content{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:3rem;max-width:500px;text-align:center;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden}.welcome-crown{width:60px;height:60px;color:#fbbf24;margin:0 auto 2rem;filter:drop-shadow(0 4px 8px rgba(251,191,36,.3));animation:sparkle 2s ease-in-out infinite}.welcome-content h2{font-size:2.5rem;font-weight:700;color:#1f2937;margin-bottom:1.5rem;background:linear-gradient(135deg,#ec4899,#db2777);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-content p{font-size:1.2rem;color:#374151;line-height:1.7;margin-bottom:2rem;font-weight:400}.welcome-button{background:linear-gradient(135deg,#ec4899,#db2777);border:none;border-radius:50px;padding:1rem 2rem;color:#fff;font-weight:600;font-size:1.1rem;cursor:pointer;box-shadow:0 10px 30px #ec489966;transition:all .3s ease}.welcome-button:hover{background:linear-gradient(135deg,#db2777,#be185d);transform:translateY(-2px);box-shadow:0 15px 40px #ec489999}.special-message{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#ec4899,#db2777);color:#fff;padding:2rem 3rem;border-radius:20px;box-shadow:0 20px 40px #ec489966;text-align:center;z-index:1000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.special-heart{width:40px;height:40px;margin-bottom:1rem;animation:pulse 1s ease-in-out infinite}.special-sparkle{position:absolute;top:-10px;right:-10px;width:24px;height:24px;color:#fbbf24;animation:sparkle 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.achievement-badge{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.5rem 1rem;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:20px;color:#fff;font-weight:600;font-size:.9rem;box-shadow:0 4px 15px #fbbf2466}.achievement-crown{width:20px;height:20px;color:#fff}.final-surprise{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.surprise-content{background:#fffffff2;border-radius:24px;padding:3rem;max-width:600px;text-align:center;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.surprise-crown{width:60px;height:60px;color:#fbbf24;margin:0 auto 2rem;filter:drop-shadow(0 4px 8px rgba(251,191,36,.3))}.surprise-content h2{font-size:2.5rem;font-weight:700;color:#1f2937;margin-bottom:2rem;background:linear-gradient(135deg,#ec4899,#db2777);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.surprise-content p{font-size:1.1rem;color:#374151;line-height:1.7;margin-bottom:1.5rem;font-weight:400}.surprise-hearts{display:flex;justify-content:center;gap:1rem;margin:2rem 0;flex-wrap:wrap}.surprise-heart{width:40px;height:40px;display:flex;align-items:center;justify-content:center}.surprise-heart .heart-icon{width:32px;height:32px;color:#ec4899;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(10deg)}}.signature{font-size:1.2rem;color:#6b7280;font-weight:500;margin-top:2rem}.signature span{color:#ec4899;font-weight:700;font-size:1.4rem}.countdown-section{margin:2rem 0;padding:2rem;background:linear-gradient(135deg,#ec48991a,#fbbf241a);border-radius:16px;border:1px solid rgba(236,72,153,.2)}.countdown-section h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem;text-align:center}.countdown-timer{display:flex;justify-content:center;gap:2rem;margin-bottom:1.5rem}.countdown-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.countdown-number{font-size:2rem;font-weight:700;color:#ec4899;background:linear-gradient(135deg,#ec4899,#db2777);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.countdown-label{font-size:.9rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.countdown-message{font-size:1rem;color:#374151;text-align:center;font-style:italic;line-height:1.6}@media (max-width: 768px){.girlfriend-day-content{padding:1rem}.header-title{font-size:2rem}.step-card{padding:2rem 1.5rem}.step-title{font-size:2rem}.step-navigation{flex-direction:column;gap:1rem}.nav-button{width:100%;justify-content:center}.surprise-content{padding:2rem;margin:1rem}.surprise-content h2{font-size:2rem}.welcome-content{padding:2rem;margin:1rem}.welcome-content h2{font-size:2rem}.countdown-timer{gap:1rem}.countdown-number{font-size:1.5rem}.bucket-list-button{padding:.8rem 1.5rem;font-size:1rem}.bucket-list-content{padding:1.5rem;margin:.5rem;max-height:95vh}.bucket-list-header h2{font-size:1.5rem}.bucket-list-header p{font-size:1rem}.bucket-list-timeline:before{left:30px;transform:none}.timeline-item{flex-direction:row!important;margin-bottom:2rem}.timeline-connector{width:40px;height:40px}.timeline-dot{width:16px;height:16px;border-width:3px}.timeline-content{padding:1rem;max-width:none;margin-left:1rem}.timeline-header{gap:.75rem}.goal-icon{width:35px;height:35px}.goal-emoji{font-size:1rem}.goal-title{font-size:.9rem}.timeline-date{font-size:.7rem}.goal-description{font-size:.8rem}.goal-category{font-size:.65rem}.goal-status{font-size:.65rem;padding:.2rem .4rem}.completion-badge{top:-8px;right:-8px;padding:.4rem .8rem;font-size:.7rem}.completion-sparkle{width:12px;height:12px}}@media (max-width: 480px){.girlfriend-day-content{padding:.75rem}.header-title{font-size:1.75rem}.step-card{padding:1.5rem 1rem}.step-title{font-size:1.75rem}.step-subtitle,.step-message{font-size:1rem}.interactive-heart{width:70px;height:70px}.heart-icon{width:28px;height:28px}.bucket-list-button{padding:.7rem 1.2rem;font-size:.9rem}.bucket-list-icon{width:20px;height:20px}.bucket-list-sparkle{width:16px;height:16px}.bucket-list-content{padding:1rem;margin:.25rem}.bucket-list-header h2{font-size:1.3rem}.bucket-list-header p{font-size:.9rem}.bucket-list-timeline:before{left:25px}.timeline-connector{width:35px;height:35px}.timeline-dot{width:14px;height:14px;border-width:2px}.timeline-content{padding:.75rem;margin-left:.75rem}.timeline-header{gap:.5rem}.goal-icon{width:30px;height:30px}.goal-emoji{font-size:.9rem}.goal-title{font-size:.8rem}.timeline-date{font-size:.65rem}.goal-description{font-size:.7rem}.goal-category{font-size:.6rem}.goal-status{font-size:.6rem;padding:.15rem .3rem}.completion-badge{top:-6px;right:-6px;padding:.3rem .6rem;font-size:.65rem}.completion-sparkle{width:10px;height:10px}}@media (max-width: 360px){.girlfriend-day-content{padding:.5rem}.header-title{font-size:1.5rem}.step-card{padding:1rem .75rem}.step-title{font-size:1.5rem}.step-icon-container{width:60px;height:60px}.step-icon{width:30px;height:30px}.interactive-heart{width:60px;height:60px}.heart-icon{width:24px;height:24px}.bucket-list-button{padding:.6rem 1rem;font-size:.8rem}.bucket-list-content{padding:.75rem;margin:.1rem}.bucket-list-header h2{font-size:1.1rem}.bucket-list-header p{font-size:.8rem}.bucket-list-timeline:before{left:20px}.timeline-connector{width:30px;height:30px}.timeline-dot{width:12px;height:12px;border-width:2px}.timeline-content{padding:.5rem;margin-left:.5rem}.timeline-header{gap:.4rem}.goal-icon{width:25px;height:25px}.goal-emoji{font-size:.8rem}.goal-title{font-size:.7rem}.timeline-date{font-size:.6rem}.goal-description{font-size:.65rem}.goal-category{font-size:.55rem}.goal-status{font-size:.55rem;padding:.1rem .25rem}.completion-badge{top:-5px;right:-5px;padding:.25rem .5rem;font-size:.6rem}.completion-sparkle{width:8px;height:8px}.virtual-gift-section{padding:1.5rem;margin:1.5rem 0}.virtual-gift-section h3{font-size:1.5rem}.flower-bouquet{gap:.5rem;margin:1.5rem 0}.flower{font-size:2rem}.flower:after{height:15px}.gift-message{font-size:1rem}.gift-signature{font-size:1.1rem}.gift-signature span{font-size:1.2rem}.virtual-gift-section{padding:1rem;margin:1rem 0}.virtual-gift-section h3{font-size:1.3rem}.flower-bouquet{gap:.4rem;margin:1rem 0}.flower{font-size:1.5rem}.flower:after{height:12px}.gift-message{font-size:.9rem}.gift-signature{font-size:1rem}.gift-signature span{font-size:1.1rem}.virtual-gift-section{padding:.75rem;margin:.75rem 0}.virtual-gift-section h3{font-size:1.1rem}.flower-bouquet{gap:.3rem;margin:.75rem 0}.flower{font-size:1.2rem}.flower:after{height:10px}.gift-message{font-size:.8rem}.gift-signature{font-size:.9rem}.gift-signature span{font-size:1rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.step-card:hover{transform:translateY(-5px);box-shadow:0 25px 50px #00000026}.interactive-heart:hover{transform:scale(1.1) rotate(5deg);box-shadow:0 15px 40px #ec489999}.step-icon-container:after{content:"";position:absolute;inset:-10px;background:linear-gradient(135deg,var(--icon-color),#fbbf24);border-radius:50%;z-index:-1;opacity:.3;filter:blur(20px);animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{opacity:.3;transform:scale(1)}to{opacity:.6;transform:scale(1.1)}}.confetti-piece{position:fixed;top:-10px;width:10px;height:10px;z-index:9999;animation:confetti-fall 4s linear forwards;pointer-events:none}@keyframes confetti-fall{0%{transform:translateY(-10px) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.bucket-list-button-container{margin:2rem 0;text-align:center}.bucket-list-button{background:linear-gradient(135deg,#8b5cf6,#a855f7);border:none;border-radius:50px;padding:1rem 2rem;color:#fff;font-weight:600;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;margin:0 auto;box-shadow:0 8px 25px #8b5cf64d;transition:all .3s ease;position:relative;overflow:hidden}.bucket-list-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.bucket-list-button:hover:before{left:100%}.bucket-list-button:hover{background:linear-gradient(135deg,#a855f7,#c084fc);transform:translateY(-2px);box-shadow:0 12px 35px #8b5cf666}.bucket-list-icon{width:24px;height:24px;color:#fff;z-index:1}.bucket-list-sparkle{width:20px;height:20px;color:#fbbf24;z-index:1;animation:sparkle 2s ease-in-out infinite}.bucket-list-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.bucket-list-content{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:2rem;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2);position:relative}.bucket-list-header{text-align:center;margin-bottom:2rem}.bucket-list-crown{width:50px;height:50px;color:#fbbf24;margin:0 auto 1rem;filter:drop-shadow(0 4px 8px rgba(251,191,36,.3))}.bucket-list-header h2{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem;background:linear-gradient(135deg,#8b5cf6,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.bucket-list-header p{font-size:1.1rem;color:#6b7280;margin-bottom:1.5rem}.completion-progress{margin-top:1.5rem}.progress-bar{width:100%;height:8px;background:#8b5cf61a;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#a855f7);border-radius:4px;transition:width .5s ease}.progress-text{font-size:.9rem;color:#6b7280;font-weight:500}.bucket-list-timeline{position:relative;margin:2rem 0;padding:0 1rem}.bucket-list-timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#8b5cf6,#a855f7,#ec4899);border-radius:2px;transform:translate(-50%)}.timeline-item{position:relative;margin-bottom:3rem;display:flex;align-items:center}.timeline-item:nth-child(odd){flex-direction:row}.timeline-item:nth-child(2n){flex-direction:row-reverse}.timeline-connector{position:relative;width:60px;height:60px;display:flex;align-items:center;justify-content:center;z-index:2}.timeline-line{position:absolute;width:100%;height:4px;background:linear-gradient(90deg,transparent,#8b5cf6,transparent)}.timeline-dot{width:20px;height:20px;border-radius:50%;border:4px solid white;box-shadow:0 0 0 4px #8b5cf633;position:relative;z-index:3}.timeline-item.completed .timeline-dot{box-shadow:0 0 0 4px #10b9814d;animation:pulse-glow 2s ease-in-out infinite}.timeline-content{background:#fff;border-radius:20px;padding:1.5rem;box-shadow:0 8px 25px #0000001a;border:2px solid transparent;transition:all .3s ease;cursor:pointer;flex:1;max-width:400px;position:relative;overflow:hidden}.timeline-content:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--goal-color),#a855f7);transform:scaleX(0);transition:transform .3s ease}.timeline-content:hover:before{transform:scaleX(1)}.timeline-item.completed .timeline-content{border-color:#10b981;background:linear-gradient(135deg,#10b9810d,#10b9811a)}.timeline-item.completed .timeline-content:before{background:linear-gradient(90deg,#10b981,#34d399);transform:scaleX(1)}.timeline-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.timeline-info{flex:1}.timeline-date{font-size:.8rem;color:#8b5cf6;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.timeline-body{margin-top:1rem}.timeline-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem}.goal-status{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:capitalize;padding:.25rem .5rem;background:#8b5cf61a;border-radius:12px}.timeline-item.completed .goal-status{background:#10b9811a;color:#10b981}.completion-badge{position:absolute;top:-10px;right:-10px;background:linear-gradient(135deg,#10b981,#34d399);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:.25rem;box-shadow:0 4px 15px #10b9814d}.completion-sparkle{width:16px;height:16px;color:#fff;animation:sparkle 2s ease-in-out infinite}.virtual-gift-section{margin:2rem 0;padding:2rem;background:linear-gradient(135deg,#ec48991a,#fbbf241a);border-radius:20px;border:2px solid rgba(236,72,153,.2);text-align:center;position:relative;overflow:hidden}.virtual-gift-section:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(236,72,153,.05) 0%,transparent 70%);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.virtual-gift-section h3{font-size:1.8rem;font-weight:700;color:#1f2937;margin-bottom:1.5rem;background:linear-gradient(135deg,#ec4899,#fbbf24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;z-index:1}.flower-bouquet{display:flex;justify-content:center;align-items:center;gap:1rem;margin:2rem 0;position:relative;z-index:1}.flower{font-size:3rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));position:relative}.flower:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:2px;height:20px;background:linear-gradient(180deg,#10b981,#34d399);border-radius:1px}.flower-1{animation-delay:0s}.flower-2{animation-delay:.5s}.flower-3{animation-delay:1s}.flower-4{animation-delay:1.5s}.flower-5{animation-delay:2s}.gift-message{font-size:1.1rem;color:#374151;line-height:1.6;margin:1.5rem 0;position:relative;z-index:1;font-style:italic}.gift-signature{font-size:1.2rem;color:#6b7280;font-weight:500;margin-top:1.5rem;position:relative;z-index:1}.gift-signature span{color:#ec4899;font-weight:700;font-size:1.4rem}.bucket-list-item{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 15px #0000001a;cursor:pointer;transition:all .3s ease;border:2px solid transparent;display:flex;align-items:center;gap:1rem;position:relative;overflow:hidden}.bucket-list-item:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--goal-color),#a855f7);transform:scaleX(0);transition:transform .3s ease}.bucket-list-item:hover:before{transform:scaleX(1)}.bucket-list-item.completed{border-color:#10b981;background:linear-gradient(135deg,#10b9810d,#10b9811a)}.bucket-list-item.completed:before{background:linear-gradient(90deg,#10b981,#34d399);transform:scaleX(1)}.goal-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.goal-emoji{font-size:1.5rem}.goal-content{flex:1}.goal-title{font-size:1.1rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.goal-description{font-size:.9rem;color:#6b7280;margin-bottom:.5rem;line-height:1.4}.goal-category{font-size:.75rem;color:#8b5cf6;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.goal-checkbox{width:24px;height:24px;border:2px solid #d1d5db;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease}.bucket-list-item.completed .goal-checkbox{background:#10b981;border-color:#10b981}.checkmark{color:#fff;font-weight:700;font-size:.9rem}.close-bucket-list{background:linear-gradient(135deg,#6b7280,#9ca3af);border:none;border-radius:50px;padding:.75rem 1.5rem;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.close-bucket-list:hover{background:linear-gradient(135deg,#9ca3af,#d1d5db);transform:translateY(-2px)}.gd2-page{background:radial-gradient(circle at 12% 18%,rgba(244,114,182,.28),transparent 32%),radial-gradient(circle at 88% 20%,rgba(168,85,247,.28),transparent 35%),radial-gradient(circle at 50% 90%,rgba(59,130,246,.2),transparent 40%),linear-gradient(160deg,#140f2d,#24153f 45%,#341a53)}.gd2-noise{position:fixed;inset:0;pointer-events:none;opacity:.12;background-image:radial-gradient(rgba(255,255,255,.2) .4px,transparent .4px),radial-gradient(rgba(255,255,255,.08) .4px,transparent .4px);background-size:8px 8px,11px 11px;background-position:0 0,4px 4px;z-index:1}.gd2-content{max-width:980px;gap:1rem}.gd2-hero{width:100%;padding:1.4rem 1.2rem;border-radius:20px;background:#ffffff1c;border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff6ff;box-shadow:0 16px 40px #05051459}.gd2-hero h1{margin:.6rem 0 .3rem;font-size:clamp(1.6rem,4.8vw,2.8rem);line-height:1.05;letter-spacing:.02em}.gd2-hero p{margin:0;color:#fff4ffe0;max-width:56ch;font-size:clamp(.92rem,2.5vw,1.08rem)}.gd2-hero-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border-radius:999px;font-size:.76rem;font-weight:700;background:#fbbf2426;color:#fde68a}.gd2-love-pill{margin-top:.95rem;display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .85rem;border-radius:999px;border:1px solid rgba(251,191,36,.4);background:#fbbf2421;color:#fff8df;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .2s ease,border-color .2s ease}.gd2-love-pill:hover{background:#fbbf2438;border-color:#fbbf24a6}.gd2-step{width:100%}.gd2-step-card{padding:1.3rem;border-radius:22px;background:#fffffff5;box-shadow:0 20px 45px #0a081959}.gd2-step-top{display:flex;align-items:center;gap:.85rem}.gd2-icon-ring{width:3rem;height:3rem;border-radius:999px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ec4899,#8b5cf6);box-shadow:0 10px 22px #db277759}.gd2-step-icon{color:#fff;width:1.35rem;height:1.35rem}.gd2-step-meta{flex:1}.gd2-step-meta span{display:inline-block;margin-bottom:.3rem;font-size:.76rem;font-weight:700;color:#7e22ce}.gd2-step-progress{height:6px;border-radius:999px;background:#f4e8ff;overflow:hidden}.gd2-step-progress-fill{height:100%;background:linear-gradient(90deg,#ec4899,#8b5cf6)}.gd2-step-card h2{margin:.95rem 0 .35rem;font-size:clamp(1.35rem,4vw,2.1rem);color:#2e1065}.gd2-step-card h3{margin:0;font-size:clamp(.95rem,2.5vw,1.07rem);color:#7c3aed;font-weight:600}.gd2-step-card p{margin:.85rem 0 0;line-height:1.65;color:#334155;font-size:clamp(.94rem,2.45vw,1.04rem)}.gd2-nav{margin-top:.8rem;display:grid;grid-template-columns:1fr;gap:.55rem}.gd2-nav-btn{min-height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:.4rem;font-weight:700;border:none;cursor:pointer}.gd2-nav-btn.ghost{background:#ffffff1f;color:#fdf4ff;border:1px solid rgba(255,255,255,.22)}.gd2-nav-btn.solid{background:linear-gradient(135deg,#ec4899,#8b5cf6);color:#fff}.gd2-nav-btn:disabled{opacity:.45;cursor:not-allowed}.gd2-indicators{display:flex;justify-content:center;gap:.45rem}.gd2-dot{width:9px;height:9px;border-radius:999px;border:none;background:#ffffff5c;cursor:pointer}.gd2-dot.active{width:22px;background:#f9a8d4}.gd2-panels{width:100%;display:grid;gap:.75rem}.gd2-bucket-btn{width:100%;border:none;padding:.85rem 1rem;border-radius:16px;background:linear-gradient(135deg,#312e81,#7c3aed);color:#fff;display:flex;align-items:center;justify-content:space-between;cursor:pointer;box-shadow:0 12px 28px #312e8159}.gd2-bucket-btn>div{display:flex;align-items:center;gap:.45rem;font-weight:600}.gd2-bucket-btn strong{font-size:.88rem;padding:.3rem .55rem;border-radius:999px;background:#fff3}.gd2-stats{display:grid;grid-template-columns:1fr;gap:.5rem}.gd2-stats>div{padding:.7rem .8rem;border-radius:14px;background:#ffffff1a;color:#f8ecff;display:flex;align-items:center;gap:.4rem;border:1px solid rgba(255,255,255,.17)}.gd2-overlay{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:.85rem;background:#080512ad;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.gd2-panel{width:min(960px,100%);max-height:min(92vh,800px);overflow-y:auto;overscroll-behavior:contain;padding:1.1rem;border-radius:20px;background:#fff;box-shadow:0 24px 48px #00000054;scroll-padding-top:.5rem}.gd2-panel-center{width:min(620px,100%);text-align:center}.gd2-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.gd2-panel-head h2{margin:0;font-size:clamp(1.2rem,3.3vw,1.9rem);color:#4c1d95}.gd2-panel-head p{margin:.2rem 0 0;color:#64748b}.gd2-close{width:2rem;height:2rem;min-width:2rem;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;display:grid;place-items:center;font-size:1.15rem;line-height:1;transition:background .15s ease,color .15s ease}.gd2-close:hover{background:#f1f5f9;color:#0f172a}.gd2-progress-row{margin:.9rem 0;display:grid;gap:.35rem}.gd2-progress-bar{height:8px;border-radius:999px;background:#f3e8ff;overflow:hidden}.gd2-progress-fill{height:100%;background:linear-gradient(90deg,#ec4899,#8b5cf6)}.gd2-progress-row span{font-size:.82rem;color:#6b21a8;font-weight:700}.gd2-goals-grid{display:grid;grid-template-columns:1fr;gap:.65rem}.gd2-goal{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:.45rem .65rem;align-items:start;padding:.8rem 2.1rem .8rem .8rem;border-radius:14px;border:1px solid #ece8ff;background:#faf8ff;cursor:pointer;transition:box-shadow .2s ease,border-color .2s ease}.gd2-goal:hover{border-color:#c4b5fd;box-shadow:0 4px 16px #8b5cf61f}.gd2-goal.done{background:linear-gradient(120deg,#ecfdf5,#f0fdf4);border-color:#86efac}.gd2-goal.done:hover{border-color:#4ade80;box-shadow:0 4px 16px #22c55e1f}.gd2-goal:focus-visible{outline:3px solid rgba(168,85,247,.32);outline-offset:2px}.gd2-goal-icon{width:2.2rem;height:2.2rem;border-radius:10px;display:grid;place-items:center;font-size:1.1rem;grid-row:1 / 3;align-self:center;flex-shrink:0}.gd2-goal-main{min-width:0}.gd2-goal-main h4{margin:0;font-size:.9rem;color:#312e81;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gd2-goal-main p{margin:.15rem 0 0;color:#475569;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gd2-goal-meta{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.gd2-goal-meta span{font-size:.68rem;font-weight:700;color:#7c3aed;background:#f3e8ff;padding:.15rem .4rem;border-radius:999px}.gd2-goal-meta em{font-style:normal;font-size:.66rem;color:#64748b}.gd2-check{position:absolute;top:.55rem;right:.55rem;width:1.35rem;height:1.35rem;border-radius:999px;background:#22c55e;color:#fff;display:grid;place-items:center;font-size:.7rem;font-weight:700;box-shadow:0 2px 6px #22c55e4d}.gd2-toast{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);z-index:1200;padding:.7rem .95rem;border-radius:14px;background:linear-gradient(120deg,#ec4899,#8b5cf6);color:#fff;display:flex;align-items:center;gap:.45rem;box-shadow:0 14px 30px #5b21b673;max-width:min(94vw,680px)}.gd2-toast p{margin:0;font-size:.86rem}.gd2-crown{width:2.25rem;height:2.25rem;color:#f59e0b}.gd2-primary{margin-top:.65rem;border:none;padding:.68rem 1.05rem;border-radius:12px;background:linear-gradient(135deg,#ec4899,#8b5cf6);color:#fff;font-weight:700;cursor:pointer}.gd2-panel h2{margin:.5rem 0 .3rem;color:#4c1d95}.gd2-panel p{color:#475569}.gd2-flower-row{display:flex;justify-content:center;gap:.6rem;font-size:clamp(1.6rem,6vw,2.4rem);margin:.75rem 0}.gd2-sign{font-weight:700;color:#7c3aed}@media (min-width: 480px){.gd2-goal{grid-template-columns:auto 1fr auto;grid-template-rows:auto;align-items:center}.gd2-goal-icon{grid-row:unset}.gd2-goal-meta{flex-direction:column;align-items:flex-end;gap:.2rem;flex-wrap:nowrap}}@media (min-width: 768px){.gd2-hero{padding:1.6rem 1.5rem}.gd2-nav{grid-template-columns:1fr auto 1fr;align-items:center}.gd2-stats,.gd2-goals-grid{grid-template-columns:1fr 1fr}.gd2-panel{padding:1.4rem}}.step-counter{display:inline-flex;align-items:center;justify-content:center;margin-bottom:.75rem;padding:.35rem .8rem;border-radius:999px;background:#ec48991a;color:#be185d;font-size:.82rem;font-weight:600}.step-progress-track{width:100%;max-width:360px;height:7px;margin:0 auto 1.5rem;background:#ec48991f;border-radius:999px;overflow:hidden}.step-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#ec4899,#f472b6)}.interactive-heart{margin:.5rem auto 0}.bucket-list-badge{font-size:.72rem;font-weight:700;padding:.2rem .45rem;border-radius:999px;background:#ffffff38}.overlay-close-button{position:absolute;top:.75rem;right:.75rem;width:2rem;height:2rem;border-radius:999px;border:1px solid rgba(107,114,128,.2);background:#fffc;color:#6b7280;font-size:1.25rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.overlay-close-button:hover{background:#fff;color:#1f2937;transform:scale(1.05)}.timeline-content:focus-visible{outline:3px solid rgba(139,92,246,.35);outline-offset:2px}@media (max-width: 768px){.girlfriend-day-content{padding:.9rem}.step-card{padding:1.4rem 1rem;border-radius:18px}.step-title{font-size:clamp(1.5rem,6vw,2rem)}.step-subtitle{font-size:.98rem}.step-message{font-size:.98rem;line-height:1.6}.step-navigation{position:sticky;bottom:.75rem;z-index:20;padding:.6rem;border-radius:16px;background:#11182740;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav-button{min-height:44px}.bucket-list-content{border-radius:18px;padding:1.1rem}.timeline-content{border-radius:14px}.welcome-content,.surprise-content{border-radius:18px;padding:1.5rem 1.1rem}}@media (max-width: 480px){.step-navigation{gap:.6rem}.nav-button{padding:.8rem .9rem;font-size:.88rem}.step-indicator{width:10px;height:10px}.overlay-close-button{top:.55rem;right:.55rem;width:1.8rem;height:1.8rem}}.app{min-height:100vh;background:linear-gradient(135deg,#fff5f7,#fce7f3);color:#4a4a4a;font-family:Poppins,sans-serif}.nav{position:fixed;top:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:.5rem;padding:1rem;background:#fffffff2;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 4px 25px #ec489926;border-bottom:1px solid rgba(236,72,153,.1);z-index:100;transition:all .3s ease;animation:nav-slide-down .6s ease-out}.nav.scrolled{background:#fffffffa;box-shadow:0 4px 30px #ec489933;padding:.8rem}@keyframes nav-slide-down{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.nav-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:none;border-radius:50px;background:transparent;color:#9d174d;font-family:Poppins,sans-serif;font-weight:500;font-size:.95rem;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;white-space:nowrap}.nav-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(236,72,153,.1),transparent);transition:left .5s ease}.nav-button:hover:before{left:100%}.nav-button span{position:relative;z-index:1;transition:all .3s ease}.nav-button:hover span{transform:translateY(-1px)}.nav-button:hover{background:#ec48991a;transform:translateY(-2px);box-shadow:0 4px 15px #ec489933}.nav-button.active{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff;box-shadow:0 4px 15px #ec48994d;transform:translateY(-1px)}.nav-icon{transition:transform .3s ease;position:relative;z-index:1}.nav-button:hover .nav-icon{transform:scale(1.1) rotate(5deg)}.nav-button.active .nav-icon{animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 5px rgba(255,255,255,.5))}50%{filter:drop-shadow(0 0 10px rgba(255,255,255,.8))}}.main-content{padding-top:5rem;min-height:calc(100vh - 5rem)}@media (max-width: 768px){.nav{padding:.75rem .5rem;gap:.25rem;justify-content:space-around}.nav-button{padding:.6rem .8rem;font-size:.8rem;gap:.3rem;flex:1;max-width:120px;justify-content:center}.nav-button span{font-size:.75rem}.nav-icon{width:16px;height:16px}}@media (max-width: 480px){.nav{padding:.6rem .25rem;gap:.2rem}.nav-button{padding:.5rem .6rem;font-size:.7rem;gap:.25rem;max-width:100px}.nav-button span{font-size:.7rem}.nav-icon{width:14px;height:14px}}@media (max-width: 360px){.nav{padding:.5rem .2rem;gap:.15rem}.nav-button{padding:.4rem .5rem;font-size:.65rem;gap:.2rem;max-width:90px}.nav-button span{font-size:.65rem}.nav-icon{width:12px;height:12px}}.nav-button{animation:nav-button-fade-in .6s ease-out}.nav-button:nth-child(1){animation-delay:.1s}.nav-button:nth-child(2){animation-delay:.2s}.nav-button:nth-child(3){animation-delay:.3s}@keyframes nav-button-fade-in{0%{opacity:0;transform:translateY(-20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{text-shadow:0 0 10px rgba(236,72,153,.3)}50%{text-shadow:0 0 20px rgba(236,72,153,.5)}}.birthday{text-align:center;padding:4rem 2rem}.birthday h1{font-size:3rem;margin-bottom:1rem;background:linear-gradient(45deg,var(--primary),var(--glow));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.birthday p{font-size:1.2rem;color:#fffc;max-width:600px;margin:0 auto}.pin-screen{min-height:100vh;display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at 0% 0%,rgba(251,207,232,.75) 0%,transparent 45%),radial-gradient(circle at 100% 100%,rgba(224,231,255,.55) 0%,transparent 42%),linear-gradient(145deg,#fff9fc,#f8f3ff 52%,#eef4ff);padding:1rem;position:relative;isolation:isolate;overflow:hidden}.pin-bg-orb{position:absolute;border-radius:999px;filter:blur(20px);z-index:-1;opacity:.5}.pin-bg-orb-one{width:300px;height:300px;top:-100px;left:-80px;background:radial-gradient(circle,#f9a8d4,#ec4899 70%,transparent)}.pin-bg-orb-two{width:280px;height:280px;bottom:-90px;right:-70px;background:radial-gradient(circle,#c4b5fd,#a78bfa 70%,transparent)}.pin-bg-grid{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(to right,rgba(219,39,119,.04) 1px,transparent 1px),linear-gradient(to bottom,rgba(219,39,119,.04) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:radial-gradient(circle at center,black 35%,transparent 85%);mask-image:radial-gradient(circle at center,black 35%,transparent 85%)}.pin-container{background:#ffffffc7;padding:2.1rem 2rem 1.6rem;border-radius:30px;border:1px solid rgba(255,255,255,.8);box-shadow:0 22px 48px #be185d21,inset 0 1px #ffffff80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;max-width:400px;text-align:center;transition:transform .45s ease,box-shadow .45s ease}.pin-container.unlocking{transform:scale(.98);box-shadow:0 28px 55px #ec489947}.pin-header{margin-bottom:1.65rem}.pin-header-badge{display:inline-flex;padding:.25rem .8rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;background:linear-gradient(130deg,#ec489926,#a855f724);color:#9d174d;border:1px solid rgba(190,24,93,.16);margin-bottom:.95rem}.pin-icon{color:#db2777;margin-bottom:.7rem;filter:drop-shadow(0 6px 14px rgba(190,24,93,.22))}.pin-header h1{font-family:Playfair Display,serif;font-size:2.1rem;color:#be185d;margin-bottom:.35rem;line-height:1.08}.pin-header p{font-family:Poppins,sans-serif;color:#9f1239;opacity:.9;font-size:.95rem}.pin-display{display:flex;justify-content:center;gap:1rem;margin-bottom:.7rem}.pin-dot{width:12px;height:12px;border-radius:50%;background:#ec48990f;border:1.8px solid rgba(219,39,119,.45);transition:all .25s ease}.pin-dot.filled{background:linear-gradient(145deg,#ec4899,#db2777);transform:scale(1.15);border-color:#db2777;box-shadow:0 0 0 5px #ec48991f}.pin-dot.error{border-color:#ef4444;background:#fb7185;animation:shake .45s ease-in-out}.pin-status{font-size:.87rem;font-weight:500;min-height:1.35rem;margin-bottom:1.45rem;transition:color .2s ease}.pin-status.normal{color:#9d174d;opacity:.88}.pin-status.error{color:#dc2626}.pin-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:.95rem;max-width:320px;margin:0 auto;padding:0 .8rem}.pin-key{aspect-ratio:1;border:1px solid rgba(236,72,153,.12);border-radius:50%;background:linear-gradient(145deg,#ffffffc7,#fce7f3ad);color:#be185d;font-family:Poppins,sans-serif;font-size:1.58rem;font-weight:600;cursor:pointer;transition:all .22s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px #ec48991f,inset 0 1px #ffffffb3}.pin-key:hover{background:linear-gradient(145deg,#ffffffeb,#fbcfe8e0);transform:translateY(-2px) scale(1.02);box-shadow:0 12px 24px #ec48992e}.pin-key:focus-visible{outline:2px solid rgba(219,39,119,.45);outline-offset:3px}.pin-key.delete{background:linear-gradient(145deg,#ffffff9e,#f8fafcf0);color:#9f1239}.pin-key.delete:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:0 6px 12px #ec489914}.pin-key.delete svg{width:24px;height:24px}.pin-key-spacer{grid-column:1}.pin-footer-note{font-size:.78rem;color:#9d174d;opacity:.7;margin-top:1.2rem}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (max-width: 768px){.pin-container{padding:1.9rem 1.4rem 1.4rem;margin:1rem;border-radius:26px}.pin-header h1{font-size:1.9rem}.pin-display{gap:.9rem;margin-bottom:.65rem}.pin-dot{width:12px;height:12px}.pin-status{margin-bottom:1.2rem}.pin-keypad{gap:.85rem;padding:0 .5rem}.pin-key{font-size:1.4rem}.pin-key.delete svg{width:20px;height:20px}}@media (max-width: 360px){.pin-container{padding:1.5rem 1rem 1.2rem}.pin-display{gap:.75rem;margin-bottom:.55rem}.pin-dot{width:10px;height:10px}.pin-status{font-size:.82rem;margin-bottom:1rem}.pin-keypad{gap:.7rem}.pin-key{font-size:1.2rem}.pin-key.delete svg{width:18px;height:18px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.-top-6{top:-1.5rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-0{left:0}.right-0{right:0}.top-0{top:0}.top-12{top:3rem}.top-20{top:5rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-8{margin-top:2rem}.flex{display:flex}.hidden{display:none}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.w-20{width:5rem}.w-3{width:.75rem}.w-32{width:8rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-full{width:100%}.max-w-md{max-width:28rem}.-translate-x-10{--tw-translate-x: -2.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-10{--tw-translate-y: -2.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-12{--tw-translate-y: -3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-16{--tw-translate-x: 4rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-16{--tw-translate-y: 4rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-3{--tw-translate-y: .75rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-around{justify-content:space-around}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-t-3xl{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem}.rounded-t-full{border-top-left-radius:9999px;border-top-right-radius:9999px}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-pink-300{--tw-bg-opacity: 1;background-color:rgb(249 168 212 / var(--tw-bg-opacity, 1))}.bg-pink-400{--tw-bg-opacity: 1;background-color:rgb(244 114 182 / var(--tw-bg-opacity, 1))}.bg-pink-500{--tw-bg-opacity: 1;background-color:rgb(236 72 153 / var(--tw-bg-opacity, 1))}.bg-pink-600{--tw-bg-opacity: 1;background-color:rgb(219 39 119 / var(--tw-bg-opacity, 1))}.bg-purple-300{--tw-bg-opacity: 1;background-color:rgb(216 180 254 / var(--tw-bg-opacity, 1))}.bg-purple-400{--tw-bg-opacity: 1;background-color:rgb(192 132 252 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity, 1))}.bg-yellow-300{--tw-bg-opacity: 1;background-color:rgb(253 224 71 / var(--tw-bg-opacity, 1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-pink-300{--tw-gradient-from: #f9a8d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 168 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-400{--tw-gradient-from: #f472b6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(244 114 182 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-300{--tw-gradient-from: #d8b4fe var(--tw-gradient-from-position);--tw-gradient-to: rgb(216 180 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.p-6{padding:1.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-pink-100{--tw-text-opacity: 1;color:rgb(252 231 243 / var(--tw-text-opacity, 1))}.text-pink-200{--tw-text-opacity: 1;color:rgb(251 207 232 / var(--tw-text-opacity, 1))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity, 1))}.text-pink-600{--tw-text-opacity: 1;color:rgb(219 39 119 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.opacity-30{opacity:.3}.opacity-90{opacity:.9}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#001529;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}button{font-family:inherit}@keyframes shine{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes flicker{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.95)}}.animate-flicker{animation:flicker 2s ease-in-out infinite}.blow-animation{animation:blow 1s ease-out forwards}@keyframes blow{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:0}}html{scroll-behavior:smooth}body{overflow-x:hidden;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}.card-front,.card-back{backface-visibility:hidden;transition:transform 1s;.transform-style-preserve-3d{transform-style:preserve-3d}.perspective-1000{perspective:1000px}.rotateX-60{transform:rotateX(60deg)}.animate-shine{animation:shine 3s linear infinite;background-size:200% 100%}@keyframes floatAnimation{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(5deg)}}.animate-float{animation:floatAnimation 3s ease-in-out infinite}}.card-back,.card-open .card-front{transform:rotateY(180deg)}.card-open .card-back{transform:rotateY(0)}.hover\:bg-pink-600:hover{--tw-bg-opacity: 1;background-color:rgb(219 39 119 / var(--tw-bg-opacity, 1))}@media (min-width: 768px){.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}}
