@font-face{font-family:satoshi;src:url(../media/Satoshi_Light-s.p.0lx670_9j82xu.woff2)format("woff2");font-display:swap;font-weight:300}@font-face{font-family:satoshi;src:url(../media/Satoshi_Regular-s.p.049.kwhs-b7lf.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:satoshi;src:url(../media/Satoshi_Medium-s.p.0hq2a81xn4_re.woff2)format("woff2");font-display:swap;font-weight:500}@font-face{font-family:satoshi;src:url(../media/Satoshi_Bold-s.p.0yt9gwi-.i49f.woff2)format("woff2");font-display:swap;font-weight:700}@font-face{font-family:satoshi;src:url(../media/Satoshi_Black-s.p.0mxjq567rs1on.woff2)format("woff2");font-display:swap;font-weight:900}@font-face{font-family:satoshi Fallback;src:local(Arial);ascent-override:102.23%;descent-override:24.29%;line-gap-override:10.12%;size-adjust:98.8%}.satoshi_3a85e86-module__iIv1Jq__className{font-family:satoshi,satoshi Fallback}.satoshi_3a85e86-module__iIv1Jq__variable{--font-satoshi:"satoshi", "satoshi Fallback"}
:root{--bg:#0a0a0a;--bg2:#141414;--glass-bg:#ffffff0a;--glass-bg-hover:#ffffff12;--glass-border:#ffffff14;--glass-border-hover:#ffffff26;--pink:#f0b0c8;--pink-strong:#e891b2;--pink-deep:#d4789a;--pink-glow:#f0b0c833;--text:#fff;--text-2:#fff9;--text-3:#ffffff59;--grad-pink:linear-gradient(135deg, #f0b0c8, #e891b2);--grad-surface:linear-gradient(160deg, #ffffff0d, #ffffff05);--r-sm:12px;--r-md:16px;--r-lg:24px;--r-pill:999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-satoshi,"Satoshi"), -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;background:var(--bg);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}.site-logo{letter-spacing:-.03em;color:#ffffffb3;z-index:100;font-size:1.05rem;font-weight:700;text-decoration:none;transition:color .15s;position:fixed;top:24px;left:50%;transform:translate(-50%)}.site-logo:hover{color:var(--text)}@media (max-width:640px){.site-logo{font-size:.95rem;top:16px}}.screen{opacity:0;visibility:hidden;z-index:1;justify-content:center;align-items:center;padding:24px;transition:opacity .4s,visibility .4s;display:flex;position:fixed;inset:0}.screen.active{opacity:1;visibility:visible;z-index:10}.floating-hearts{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.floating-heart{opacity:.35;animation:8s linear infinite floatUp;position:absolute}@keyframes floatUp{0%{opacity:.35;transform:translateY(0)rotate(0)}85%{opacity:.35}to{opacity:0;transform:translateY(-110vh)rotate(360deg)}}.intro-wrapper{flex-direction:column;align-items:center;width:100%;display:flex}.intro-screen{flex-direction:column;justify-content:center;align-items:center;overflow-y:auto}.intro-content{text-align:center;max-width:480px;animation:.5s ease-out fadeInUp}.badge{background:var(--grad-pink);color:var(--bg);border-radius:var(--r-pill);letter-spacing:.02em;margin-bottom:20px;padding:5px 16px;font-size:.8rem;font-weight:700;display:inline-block}.title{letter-spacing:-.035em;background:var(--grad-pink);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:16px;font-size:3.2rem;font-weight:900;line-height:1.1}.subtitle{color:var(--text-2);margin-bottom:32px;font-size:1.05rem;font-weight:400;line-height:1.7}.btn{border-radius:var(--r-pill);cursor:pointer;letter-spacing:-.01em;border:none;align-items:center;gap:8px;padding:13px 32px;font-family:inherit;font-size:.95rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--grad-pink);color:var(--bg);box-shadow:0 4px 24px #f0b0c840}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 32px #f0b0c866}.btn-arrow{transition:transform .15s}.btn-primary:hover .btn-arrow{transform:translate(3px)}.btn-ghost{border:1px solid var(--glass-border);color:var(--text-2);-webkit-backdrop-filter:blur(8px);background:#ffffff0a}.btn-ghost:hover{color:var(--text);border-color:var(--glass-border-hover);background:#ffffff14}.btn-back{border:1px solid var(--glass-border);color:var(--text-3);border-radius:var(--r-pill);cursor:pointer;z-index:100;background:#ffffff0a;align-items:center;gap:6px;margin-top:24px;padding:10px 20px;font-family:inherit;font-size:.85rem;transition:all .15s;display:inline-flex;position:relative}.btn-back:hover{color:var(--text-2);background:#ffffff14}.card{background:var(--grad-surface);border:1px solid var(--glass-border);border-radius:var(--r-lg);text-align:center;-webkit-backdrop-filter:blur(20px);width:100%;max-width:420px;padding:44px 36px;animation:.5s ease-out fadeInUp}.card-title{letter-spacing:-.025em;margin-bottom:8px;font-size:1.8rem;font-weight:700}.card-subtitle{color:var(--text-2);margin-bottom:28px;font-size:.9rem;font-weight:400}.input-group{margin-bottom:24px}.text-input{border:1px solid var(--glass-border);border-radius:var(--r-sm);width:100%;color:var(--text);background:#ffffff08;outline:none;padding:14px 20px;font-family:inherit;font-size:1rem;transition:all .15s}.text-input:focus{border-color:var(--pink);box-shadow:0 0 0 3px #f0b0c81a}.text-input::placeholder{color:var(--text-3)}.link-screen{align-items:flex-start;padding:24px;overflow-y:auto}.link-wrapper{width:100%;max-width:440px;margin:auto;padding:24px 0}.link-wrapper .card{padding:32px 28px}.link-section{margin-bottom:20px}.link-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;text-align:left;margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.link-meta{text-align:left;gap:8px;display:grid}.link-meta span{border:1px solid var(--glass-border);border-radius:var(--r-sm);color:var(--text-2);background:#ffffff08;padding:12px 14px;font-size:.9rem}.link-container{gap:8px;display:flex}.link-input{border:1px solid var(--glass-border);border-radius:var(--r-sm);color:var(--text);background:#ffffff08;flex:1;padding:12px 14px;font-family:inherit;font-size:.85rem}.copy-btn{background:var(--grad-pink);color:var(--bg);border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;border:none;padding:12px 20px;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .15s}.copy-btn:hover{box-shadow:0 4px 16px #f0b0c84d}.share-buttons{justify-content:center;gap:8px;margin-bottom:16px;display:flex}.share-btn{border:1px solid var(--glass-border);border-radius:var(--r-pill);cursor:pointer;color:var(--text-2);background:#ffffff08;padding:9px 18px;font-family:inherit;font-size:.85rem;font-weight:500;transition:all .15s}.share-btn:hover{color:var(--text);border-color:var(--glass-border-hover);background:#ffffff12}.link-actions{text-align:center;margin-top:16px}.question-screen{background:radial-gradient(at 50% 20%,#f0b0c80f 0%,#0000 60%);padding-top:48px;padding-bottom:48px;overflow-y:auto}.question-container{text-align:center;width:100%;max-width:560px;animation:.5s ease-out fadeInUp}.question-from{color:var(--text-2);margin-bottom:32px;font-size:1.1rem;font-weight:400}.highlight-name{background:var(--grad-pink);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.3rem;font-weight:700}.question-box{background:var(--grad-surface);border:1px solid var(--glass-border);border-radius:var(--r-lg);-webkit-backdrop-filter:blur(20px);margin-bottom:40px;padding:48px 36px;box-shadow:0 0 60px #f0b0c814}.valentine-question{letter-spacing:-.03em;background:var(--grad-pink);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.8rem;font-weight:900;line-height:1.15}.button-container{justify-content:center;align-items:center;gap:16px;min-height:70px;display:flex;position:relative}.btn-yes{background:var(--grad-pink);color:var(--bg);z-index:1;padding:18px 48px;font-size:1.15rem;font-weight:700;animation:2s ease-in-out infinite subtlePulse;position:relative;box-shadow:0 8px 32px #f0b0c84d}@keyframes subtlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.btn-yes:hover{transform:scale(1.06);box-shadow:0 12px 40px #f0b0c873}.btn-no{border:1px solid var(--glass-border);color:var(--text-3);background:#ffffff0a;padding:18px 48px;font-size:1.15rem;transition:all .12s}.btn-no:hover{cursor:not-allowed}.tease-text{color:var(--pink);min-height:28px;margin-top:20px;font-size:.95rem;font-weight:500;animation:.3s fadeIn}.success-screen{background:radial-gradient(ellipse at 50% 25%, #f0b0c812 0%, var(--bg) 65%);align-items:flex-start;padding-top:48px;padding-bottom:48px;overflow-y:auto}.celebration-container{text-align:center;z-index:5;width:100%;padding-top:48px;position:relative}.success-content{animation:.5s ease-out zoomIn}.success-title{letter-spacing:-.035em;background:var(--grad-pink);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:16px;font-size:3.5rem;font-weight:900}.success-message{color:var(--text-2);max-width:460px;margin:0 auto 32px;font-size:1.1rem;font-weight:400;line-height:1.7}.success-message strong{color:var(--pink);font-weight:700}.love-meter{border:1px solid var(--glass-border);border-radius:var(--r-pill);background:#ffffff0a;max-width:280px;margin:0 auto 32px;padding:3px;position:relative}.meter-fill{background:var(--grad-pink);border-radius:var(--r-pill);height:26px;animation:2s forwards fillMeter}.meter-text{color:var(--bg);font-size:.8rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.romantic-quote{background:var(--grad-surface);border:1px solid var(--glass-border);border-radius:var(--r-md);-webkit-backdrop-filter:blur(12px);max-width:400px;margin:0 auto;padding:28px 32px}.romantic-quote-text{color:var(--text-2);margin-bottom:8px;font-size:1.2rem;font-style:italic;font-weight:300;line-height:1.6}.romantic-quote-author{color:var(--text-3);font-size:.8rem;font-weight:500}.whats-next-section{width:100%;max-width:460px;margin:36px auto 0;padding:0 12px}.whats-next-title{letter-spacing:-.02em;color:var(--text);text-align:center;margin-bottom:16px;font-size:1.3rem;font-weight:700}.followup-card{background:var(--grad-surface);border:1px solid var(--glass-border);border-radius:var(--r-md);margin-bottom:10px;transition:all .15s;overflow:hidden}.followup-card:hover{border-color:var(--glass-border-hover)}.followup-header{cursor:pointer;justify-content:space-between;align-items:center;padding:14px 18px;transition:background .15s;display:flex}.followup-header:hover{background:#ffffff08}.followup-label{color:var(--text);font-size:.9rem;font-weight:600}.followup-toggle{color:var(--text-3);font-size:.8rem;transition:transform .2s}.followup-card.open .followup-toggle{transform:rotate(180deg)}.followup-content{padding:16px 18px;animation:.25s slideDown;display:none}.followup-card.open .followup-content{display:block}.quote-display{text-align:center;padding:8px 0}.quote-text{color:var(--text-2);margin-bottom:6px;font-size:1.15rem;font-style:italic;font-weight:300;line-height:1.5}.quote-author{color:var(--text-3);font-size:.8rem}.quote-actions{justify-content:center;gap:8px;margin-top:14px;display:flex}.btn-copy,.btn-refresh{border-radius:var(--r-pill);cursor:pointer;border:none;padding:8px 18px;font-family:inherit;font-size:.8rem;font-weight:600;transition:all .15s}.btn-copy{background:var(--grad-pink);color:var(--bg)}.btn-copy:hover{box-shadow:0 4px 16px #f0b0c84d}.btn-refresh{border:1px solid var(--glass-border);color:var(--text-2);background:#ffffff0a}.btn-refresh:hover{background:#ffffff14}.date-ideas-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.date-idea-card{border:1px solid var(--glass-border);border-radius:var(--r-sm);text-align:center;cursor:pointer;background:#ffffff08;padding:16px 12px;transition:all .15s}.date-idea-card:hover{border-color:var(--glass-border-hover);background:#ffffff0f}.date-idea-card.selected{background:var(--grad-pink);color:var(--bg);border-color:var(--pink)}.date-idea-title{margin-bottom:4px;font-size:.85rem;font-weight:600}.date-idea-desc{color:var(--text-3);font-size:.75rem;line-height:1.3}.date-idea-card.selected .date-idea-desc{color:#0a0a0a99}.reply-templates{flex-direction:column;gap:8px;display:flex}.reply-template{border:1px solid var(--glass-border);border-radius:var(--r-sm);cursor:pointer;background:#ffffff08;align-items:center;gap:12px;padding:12px 14px;transition:all .15s;display:flex}.reply-template:hover{border-color:var(--glass-border-hover);background:#ffffff0f}.reply-template.copied{background:#22c55e14;border-color:#22c55e40}.reply-text{color:var(--text-2);flex:1;font-size:.85rem;line-height:1.4}.reply-copy-hint{color:var(--text-3);flex-shrink:0;font-size:.75rem;font-weight:600;transition:color .15s}.reply-template:hover .reply-copy-hint{color:var(--pink)}.reply-template.copied .reply-copy-hint{color:#22c55e}.fireworks{pointer-events:none;z-index:1000;position:fixed;inset:0}.firework{border-radius:50%;width:6px;height:6px;animation:1s ease-out forwards explode;position:absolute}.sparkle-particle{color:var(--pink);font-size:14px;animation:2s ease-out forwards sparkleFloat;position:absolute}.hearts-rain{pointer-events:none;z-index:999;position:fixed;inset:0}.rain-heart{color:var(--pink);opacity:.5;animation:4s linear forwards rainDrop;position:absolute}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes fillMeter{0%{width:0}to{width:100%}}@keyframes explode{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(20)}}@keyframes sparkleFloat{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-180px)scale(0)}}@keyframes rainDrop{0%{opacity:.5;transform:translateY(-40px)}to{opacity:0;transform:translateY(100vh)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-8px)}80%{transform:translate(8px)}}@keyframes confettiFall{0%{opacity:.8;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@media (max-width:640px){.title{font-size:2.4rem}.subtitle{font-size:.95rem}.card{padding:32px 24px}.card-title{font-size:1.5rem}.valentine-question{font-size:2rem}.question-box{padding:36px 24px}.success-title{font-size:2.4rem}.success-message{padding:0 16px;font-size:1rem}.share-buttons{flex-direction:column;align-items:center}.share-btn{text-align:center;width:100%;max-width:200px}.link-container{flex-direction:column}.date-ideas-grid{grid-template-columns:1fr}.quote-actions{flex-direction:column}.btn-copy,.btn-refresh{justify-content:center;width:100%}.btn-yes{padding:16px 40px;font-size:1.05rem}.btn-no{padding:14px 36px;font-size:1.05rem}.button-container{min-height:120px}.romantic-quote{margin:0 16px;padding:20px}}@media (max-width:380px){.title{font-size:2rem}.valentine-question{font-size:1.7rem}.success-title{font-size:2rem}.card{border-radius:20px;padding:28px 20px}.question-box{border-radius:20px;padding:28px 16px}.highlight-name{margin-top:4px;font-size:1.1rem;display:block}}@media (max-height:500px) and (orientation:landscape){.screen{padding:12px;overflow-y:auto}.title,.success-title{font-size:2rem}.card{padding:20px}.question-box{margin-bottom:24px;padding:20px}.valentine-question{font-size:1.8rem}.button-container{min-height:70px}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}
