@import"https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;700&family=Outfit:wght@300;400;600;700&display=swap";:root{--bg-dark: #1a0011;--bg-mid: #2d0a1e;--bg-light: #3d0f2f;--pink-primary: #ff3366;--pink-secondary: #ff6b9d;--pink-light: rgba(255, 200, 220, .9);--pink-faint: rgba(255, 180, 200, .8);--pink-glow: rgba(255, 100, 150, .3);--glass-bg: linear-gradient(145deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .02));--glass-border: rgba(255, 100, 150, .2)}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-dark) 0%,var(--bg-mid) 25%,var(--bg-light) 50%,var(--bg-dark) 100%);font-family:Outfit,sans-serif;overflow:hidden;position:relative}#root{width:100%;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center}.floating-hearts-bg{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.floating-heart{position:absolute;font-size:20px;opacity:0;animation:floatUp linear infinite;filter:blur(.5px)}@keyframes floatUp{0%{transform:translateY(100vh) rotate(0) scale(.5);opacity:0}10%{opacity:.6}90%{opacity:.4}to{transform:translateY(-10vh) rotate(360deg) scale(1.2);opacity:0}}.btn{padding:14px 40px;border:none;border-radius:50px;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600;cursor:pointer;position:relative;letter-spacing:.5px}.btn-yes{background:linear-gradient(135deg,#f36,#ff6b9d);color:#fff;box-shadow:0 8px 25px #f366,0 0 40px #ff33661a;transition:transform .2s ease,box-shadow .2s ease}.btn-yes:hover{transform:scale(1.08);box-shadow:0 12px 35px #ff336680,0 0 60px #f363}.btn-no{background:linear-gradient(135deg,#555,#777);color:#ffffffe6;box-shadow:0 5px 15px #0000004d;-webkit-user-select:none;user-select:none}.btn-no:hover{background:linear-gradient(135deg,#666,#888)}.btn-no.smooth-move{transition:left .35s cubic-bezier(.22,.61,.36,1),top .35s cubic-bezier(.22,.61,.36,1),font-size .3s ease,padding .3s ease,opacity .3s ease}.thought-bubble{position:fixed;background:#fffffff2;color:#333;padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600;z-index:10000;pointer-events:none;opacity:0;transform:translateY(5px);transition:all .3s ease;box-shadow:0 4px 15px #0003;white-space:nowrap}.thought-bubble.visible{opacity:1;transform:translateY(0)}.tease-text{color:#ff96b4b3;font-size:.9rem;margin-top:20px;min-height:24px;font-style:italic;transition:opacity .3s ease;position:absolute;bottom:-40px;left:50%;transform:translate(-50%);white-space:nowrap}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:102;overflow:hidden}.confetti-piece{position:absolute;width:10px;height:10px;top:-10px;animation:confettiFall linear forwards}@keyframes confettiFall{0%{transform:translateY(-10px) rotate(0);opacity:1}to{transform:translateY(110vh) rotate(720deg);opacity:.5}}.celebration{position:fixed;top:0;left:0;width:100%;height:100%;z-index:100;display:none;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(135deg,#1a0011,#2d0a1e,#3d0f2f)}.celebration.active{display:flex;animation:celebrationIn .6s ease forwards}@keyframes celebrationIn{0%{opacity:0}to{opacity:1}}.celebration-content{text-align:center;z-index:101;animation:bounceIn .8s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes bounceIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.celebration-heart{font-size:100px;display:block;margin-bottom:20px;animation:heartbeat 1s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.1)}}.celebration-title{font-family:Dancing Script,cursive;font-size:3.5rem;color:#fff;margin-bottom:15px;text-shadow:0 0 60px rgba(255,100,150,.5)}.celebration-subtitle{font-size:1.4rem;color:#ffc8dce6;font-weight:300;max-width:500px;line-height:1.6}.card{position:relative;z-index:10;background:linear-gradient(145deg,#ffffff14,#ffffff05);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,100,150,.2);border-radius:30px;padding:50px 60px;text-align:center;max-width:550px;width:90%;box-shadow:0 25px 60px #c8005026,0 0 120px #ff32640d,inset 0 1px #ffffff1a;animation:cardAppear 1s cubic-bezier(.175,.885,.32,1.275) forwards;opacity:0;transform:scale(.8) translateY(20px)}.card:before{content:"";position:absolute;inset:-2px;border-radius:31px;background:linear-gradient(135deg,rgba(255,100,150,.4),transparent 40%,transparent 60%,rgba(255,50,100,.3));z-index:-1;opacity:.6}@keyframes cardAppear{to{opacity:1;transform:scale(1) translateY(0)}}.heart-icon{font-size:72px;display:block;margin-bottom:10px;animation:heartbeatIcon 1.2s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(255,50,100,.5))}@keyframes heartbeatIcon{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.1)}}.subtitle{font-family:Dancing Script,cursive;color:#ffb4c8cc;font-size:1.2rem;margin-bottom:5px;animation:fadeInUp .8s .3s ease forwards;opacity:0}.title{font-family:Dancing Script,cursive;color:#fff;font-size:2.8rem;font-weight:700;margin-bottom:8px;line-height:1.2;animation:fadeInUp .8s .5s ease forwards;opacity:0;text-shadow:0 0 40px rgba(255,100,150,.3)}.question{color:#ffc8dce6;font-size:1.3rem;font-weight:300;margin-bottom:35px;animation:fadeInUp .8s .7s ease forwards;opacity:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.buttons{display:flex;gap:20px;justify-content:center;align-items:center;animation:fadeInUp .8s .9s ease forwards;opacity:0;position:relative;min-height:60px}
