*{margin:0;padding:0;box-sizing:border-box}body{font-family:Comic Sans MS,cursive,sans-serif;background:linear-gradient(45deg,#ffb6c1,pink,#ffe4e1);min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-x:hidden}.container{text-align:center;background:#ffffffe6;padding:40px;border-radius:30px;box-shadow:0 20px 40px #ff69b44d;border:3px solid #FF69B4;max-width:600px;position:relative;animation:bounce 2s ease-in-out infinite alternate}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}h1{color:#ff1493;font-size:3rem;margin-bottom:20px;text-shadow:2px 2px 4px rgba(255,20,147,.3);animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{text-shadow:2px 2px 4px rgba(255,20,147,.3)}to{text-shadow:2px 2px 20px rgba(255,20,147,.8)}}.hello-kitty{font-size:4rem;margin:20px 0;animation:wiggle 1s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.message{color:#c71585;font-size:1.5rem;margin:20px 0;line-height:1.6}.balloons{display:flex;justify-content:space-around;margin:30px 0}.balloon{font-size:3rem;animation:float 3s ease-in-out infinite;cursor:pointer;transition:transform .3s ease}.balloon:hover{transform:scale(1.2)}.balloon:nth-child(1){animation-delay:0s}.balloon:nth-child(2){animation-delay:1s}.balloon:nth-child(3){animation-delay:2s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.cake{font-size:5rem;margin:20px 0;cursor:pointer;transition:all .3s ease}.cake:hover{transform:scale(1.1);filter:brightness(1.2)}.confetti{position:fixed;width:10px;height:10px;background:#ff69b4;animation:confetti-fall 3s linear infinite;z-index:1000}@keyframes confetti-fall{0%{transform:translateY(-100vh) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.heart-button{background:linear-gradient(45deg,#ff69b4,#ff1493);color:#fff;border:none;padding:15px 30px;font-size:1.2rem;border-radius:50px;cursor:pointer;margin:20px 10px;transition:all .3s ease;box-shadow:0 5px 15px #ff149366;font-family:Comic Sans MS,cursive,sans-serif}.heart-button:hover{transform:translateY(-3px);box-shadow:0 10px 25px #ff149399}.music-note{position:fixed;font-size:2rem;color:#ff69b4;animation:musical 4s linear infinite;z-index:1000}@keyframes musical{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(-200px) rotate(360deg);opacity:0}}.stars{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.star{position:absolute;color:gold;font-size:1.5rem;animation:twinkle 2s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.love-section,.message-editor-section,.gift-section,.wishes-section,.memories-section,.countdown-section{max-width:900px;margin:60px auto;padding:40px;background:#fffffff2;border-radius:25px;box-shadow:0 15px 35px #ff69b433;border:2px solid #FFB6C1}.section-title{color:#ff1493;font-size:2.5rem;text-align:center;margin-bottom:30px;text-shadow:1px 1px 3px rgba(255,20,147,.3);animation:glow 3s ease-in-out infinite alternate}.love-container{display:flex;align-items:center;gap:30px}.love-message{flex:1}.love-text{font-size:1.3rem;line-height:1.8;color:#8b008b;text-align:justify}.signature{font-weight:700;color:#ff1493;font-size:1.4rem;display:block;text-align:right;margin-top:20px}.love-animation{display:flex;flex-direction:column;gap:20px}.heart-float{font-size:3rem;animation:heartFloat 3s ease-in-out infinite}.heart-float:nth-child(2){animation-delay:1s}.heart-float:nth-child(3){animation-delay:2s}@keyframes heartFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-15px) scale(1.1)}}.editor-container{text-align:center}.message-textarea{width:100%;min-height:200px;padding:20px;border:3px solid #FFB6C1;border-radius:15px;font-size:1.2rem;font-family:Comic Sans MS,cursive,sans-serif;background:#fff0f5cc;color:#8b008b;resize:vertical;margin-bottom:20px}.message-textarea:focus{outline:none;border-color:#ff69b4;box-shadow:0 0 15px #ff69b480}.editor-buttons{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;margin-bottom:20px}.message-preview{background:#ffb6c14d;padding:20px;border-radius:15px;border:2px solid #FFB6C1;font-size:1.2rem;color:#8b008b;line-height:1.6;text-align:left}.hidden{display:none}.gift-container{text-align:center}.gift-box{width:200px;height:200px;margin:0 auto 20px;cursor:pointer;transition:all .3s ease;position:relative}.gift-wrap{width:100%;height:100%;background:linear-gradient(45deg,#ff69b4,#ffb6c1);border-radius:15px;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px #ff69b466;animation:giftPulse 2s ease-in-out infinite}@keyframes giftPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.gift-ribbon{position:absolute;width:20px;height:100%;background:gold;left:50%;transform:translate(-50%)}.gift-ribbon:before{content:"";position:absolute;width:100%;height:20px;background:gold;top:50%;left:-90px;width:200px;transform:translateY(-50%)}.gift-bow{position:absolute;top:-10px;left:50%;transform:translate(-50%);font-size:3rem;z-index:2}.gift-emoji{font-size:4rem;z-index:1}.gift-instruction{font-size:1.3rem;color:#c71585;margin-bottom:30px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.single-gift{background:#ffb6c14d;padding:30px;border-radius:20px;border:2px solid #FFB6C1;text-align:center;margin:30px 0;animation:giftGlow 3s ease-in-out infinite alternate}@keyframes giftGlow{0%{box-shadow:0 5px 20px #ff69b44d;background:#ffb6c14d}to{box-shadow:0 10px 30px #ff69b480;background:#ff69b433}}.gift-icon{font-size:3rem;margin-bottom:10px}.single-gift h4{color:#ff1493;margin-bottom:15px;font-size:1.8rem;text-shadow:1px 1px 3px rgba(255,20,147,.3)}.single-gift p{color:#8b008b;font-size:1.2rem;line-height:1.6;font-style:italic}.gift-claimed{text-align:center;padding:30px;background:#ffd70033;border-radius:15px;border:2px solid #FFD700;margin-top:20px}.confetti-explosion{font-size:2rem;animation:bounce 1s ease-in-out infinite}.wishes-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px}.wish-card{background:#fff0f5cc;padding:25px;border-radius:20px;border:2px solid #FFB6C1;text-align:center;transition:all .3s ease;cursor:pointer}.wish-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #ff69b44d;background:#ffb6c166}.wish-icon{font-size:3rem;margin-bottom:15px;animation:float 3s ease-in-out infinite}.wish-card h3{color:#ff1493;margin-bottom:15px;font-size:1.4rem}.wish-card p{color:#8b008b;line-height:1.6;font-size:1.1rem}.memories-gallery{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:25px;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto}.memory-frame{aspect-ratio:1;background:#fff0f5cc;border:3px solid #FFB6C1;border-radius:20px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;cursor:pointer;box-shadow:0 8px 20px #ff69b433;height:250px}.memory-frame:hover{transform:scale(1.08);border-color:#ff69b4;box-shadow:0 15px 35px #ff69b466}@media (max-width: 768px){.memories-gallery{grid-template-columns:1fr;grid-template-rows:repeat(4,1fr);gap:20px;max-width:350px}.memory-frame{height:200px}}@media (min-width: 769px) and (max-width: 1024px){.memories-gallery{max-width:500px}.memory-frame{height:220px}}.memory-placeholder{text-align:center;color:#c71585}.memory-emoji{font-size:3rem;display:block;margin-bottom:10px}.memory-frame-special{position:relative;overflow:hidden}.memory-image{width:100%;height:100%;object-fit:cover;border-radius:12px;transition:all .3s ease}.memory-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#ff69b4e6);color:#fff;padding:15px 10px 10px;text-align:center;transform:translateY(100%);transition:all .3s ease}.memory-frame-special:hover .memory-overlay{transform:translateY(0)}.memory-frame-special:hover .memory-image{transform:scale(1.1);filter:brightness(1.1)}.memory-overlay .memory-emoji{font-size:2rem;margin-bottom:5px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.memory-overlay p{font-size:1rem;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.7);margin:0;color:#fff}.countdown-container{text-align:center}.countdown-display{display:flex;justify-content:center;gap:30px;margin-bottom:20px;flex-wrap:wrap}.countdown-unit{background:#ffb6c166;padding:20px;border-radius:15px;border:2px solid #FFB6C1;min-width:100px}.countdown-number{display:block;font-size:3rem;font-weight:700;color:#ff1493;text-shadow:1px 1px 3px rgba(255,20,147,.3)}.countdown-label{display:block;font-size:1.2rem;color:#8b008b;margin-top:5px}.countdown-message{font-size:1.4rem;color:#c71585;font-style:italic}@media (max-width: 768px){.container,.love-section,.message-editor-section,.gift-section,.wishes-section,.memories-section,.countdown-section{padding:20px;margin:30px 20px}h1,.section-title{font-size:2rem}.hello-kitty{font-size:3rem}.message{font-size:1.2rem}.cake{font-size:4rem}.heart-button{font-size:1rem;padding:12px 24px}.love-container{flex-direction:column;gap:20px}.love-text{font-size:1.1rem}.editor-buttons{flex-direction:column;align-items:center}.countdown-display{gap:15px}.countdown-unit{min-width:80px;padding:15px}.countdown-number{font-size:2rem}.gift-options{grid-template-columns:1fr}.hello-kitty-decoration,.section-hello-kitty{display:none}.hello-kitty-center{width:80px}}.hello-kitty-decoration{position:fixed;width:120px;height:auto;z-index:10;opacity:.8;pointer-events:none;animation:kittyFloat 4s ease-in-out infinite}.hk-top-left{top:20px;left:20px;animation-delay:0s;transform:rotate(-10deg)}.hk-top-right{top:20px;right:20px;animation-delay:1s;transform:rotate(10deg)}.hk-bottom-left{bottom:20px;left:20px;animation-delay:2s;transform:rotate(5deg)}.hk-bottom-right{bottom:20px;right:20px;animation-delay:3s;transform:rotate(-5deg)}@keyframes kittyFloat{0%,to{transform:translateY(0) rotate(var(--rotation, 0deg)) scale(1);opacity:.8}50%{transform:translateY(-20px) rotate(var(--rotation, 0deg)) scale(1.05);opacity:.9}}.hello-kitty-center{width:100px;height:auto;margin:10px 0;animation:centerKitty 3s ease-in-out infinite;filter:drop-shadow(0 5px 15px rgba(255,105,180,.3))}@keyframes centerKitty{0%,to{transform:rotate(-5deg) scale(1)}50%{transform:rotate(5deg) scale(1.1)}}.section-hello-kitty{position:absolute;width:80px;height:auto;opacity:.7;animation:sectionKitty 3s ease-in-out infinite;filter:drop-shadow(0 3px 10px rgba(255,105,180,.2))}.hk-love-left{top:-10px;left:-10px;animation-delay:0s;transform:rotate(-15deg)}.hk-love-right{top:-10px;right:-10px;animation-delay:1.5s;transform:rotate(15deg)}.hk-gift-left{top:10px;left:-20px;animation-delay:.5s;transform:rotate(-10deg)}.hk-gift-right{top:10px;right:-20px;animation-delay:2s;transform:rotate(10deg)}@keyframes sectionKitty{0%,to{transform:rotate(var(--section-rotation, 0deg)) scale(1);opacity:.7}50%{transform:rotate(var(--section-rotation, 0deg)) scale(1.08);opacity:.85}}.hk-love-left{--section-rotation: -15deg}.hk-love-right{--section-rotation: 15deg}.hk-gift-left{--section-rotation: -10deg}.hk-gift-right{--section-rotation: 10deg}.hk-top-left{--rotation: -10deg}.hk-top-right{--rotation: 10deg}.hk-bottom-left{--rotation: 5deg}.hk-bottom-right{--rotation: -5deg}.hello-kitty-center:hover,.section-hello-kitty:hover{transform:scale(1.2) rotate(0);opacity:1;filter:drop-shadow(0 8px 25px rgba(255,105,180,.5));transition:all .3s ease;cursor:pointer}.love-section,.gift-section{position:relative;overflow:visible}
