@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
.valentine-wrapper *,.valentine-wrapper :before,.valentine-wrapper :after{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.valentine-wrapper button,.valentine-wrapper a,.valentine-wrapper input{pointer-events:auto;outline:none}.valentine-wrapper{background:#0b0b12;min-height:100vh;margin:0;font-family:Montserrat,sans-serif;position:relative;overflow-x:hidden}.bg-canvas{z-index:1;background:radial-gradient(circle,#3d0a1b 0%,#15030b 60%,#050204 100%);animation:10s ease-in-out infinite alternate bgBreathe;position:fixed;inset:0}@keyframes bgBreathe{0%{filter:brightness()contrast(1.1)}to{filter:brightness(1.3)contrast()}}.entry-screen{z-index:10000;background:#050204;flex-direction:column;justify-content:center;align-items:center;transition:opacity 1.2s,transform 1.5s cubic-bezier(.77,0,.175,1),filter 1.2s;display:flex;position:fixed;inset:0}.cinematic-glow{z-index:-1;background:radial-gradient(circle,#9e1e4b26 0%,#05020400 70%);border-radius:50%;width:60vw;height:60vw;animation:6s infinite alternate slowPulse;position:absolute}@keyframes slowPulse{0%{opacity:.5;transform:scale(.8)}to{opacity:1;transform:scale(1.2)}}.entry-screen.hidden{opacity:0;visibility:hidden;pointer-events:none;filter:blur(20px);transform:scale(1.2)}.intro-content{text-align:center;z-index:2;flex-direction:column;align-items:center;display:flex}.intro-sub{color:#ff9fc7;letter-spacing:5px;text-transform:uppercase;opacity:0;margin-bottom:15px;font-size:.85rem;animation:1s .4s forwards fadeUpPro}.intro-title{background:linear-gradient(90deg,#fff,#ffb3d1,#ff4d94);-webkit-text-fill-color:transparent;opacity:0;text-shadow:0 10px 30px #ff4d9433;-webkit-background-clip:text;margin-bottom:40px;font-family:Dancing Script,cursive;font-size:4.5rem;animation:1.2s .8s forwards fadeUpPro;transform:translateY(20px)}.pro-enter-btn{color:#fff;letter-spacing:1px;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;background:#ffffff0d;border:1px solid #fff3;border-radius:50px;align-items:center;gap:12px;padding:14px 40px;font-family:Montserrat,sans-serif;font-size:1rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);animation:1s 1.4s forwards fadeUpPro;display:flex;box-shadow:0 4px 15px #0003}.pro-enter-btn:hover{background:#9e1e4b66;border-color:#ff4d94;transform:translateY(-5px)scale(1.05);box-shadow:0 10px 30px #ff4d944d}@keyframes fadeUpPro{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.magic-btn{z-index:1000;color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff4d94,#9e1e4b);border:none;border-radius:50px;padding:12px 25px;font-size:.9rem;font-weight:600;transition:all .5s cubic-bezier(.175,.885,.32,1.275);position:fixed;top:25px;right:25px;box-shadow:0 4px 20px #ff4d9466}.magic-btn:hover{transform:scale(1.1)rotate(2deg);box-shadow:0 8px 30px #ff4d94b3}.magic-btn:active{transform:scale(.95)}.music-control{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#14050c99;border:1px solid #ff4d944d;border-radius:50px;align-items:center;gap:12px;padding:12px 22px;transition:all 1s .5s;display:flex;position:fixed;bottom:25px;right:25px}.music-text{color:#ffb3d1;letter-spacing:2px;font-size:.7rem;font-weight:600}.visualizer{align-items:flex-end;gap:4px;height:18px;display:flex}.bar{background:#ff4d94;border-radius:10px;width:3px;height:100%;animation:1s ease-in-out infinite bounce}.bar:nth-child(2){height:60%;animation-delay:.2s}.bar:nth-child(3){height:80%;animation-delay:.4s}.bar:nth-child(4){height:40%;animation-delay:.1s}@keyframes bounce{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.music-control.paused .bar{opacity:.3;animation-play-state:paused}.hearts-container{pointer-events:none;z-index:999;position:fixed;inset:0;overflow:hidden}.falling-heart{will-change:transform;animation:linear forwards fall;position:absolute;top:-10%}@keyframes fall{0%{transform:translateY(0)rotate(0)scale(1)}to{transform:translateY(120vh)rotate(360deg)scale(1.2)}}.main-card-container{opacity:0;z-index:5;justify-content:center;align-items:center;min-height:100vh;padding:50px 20px;transition:opacity 1.5s .8s,transform 1.5s cubic-bezier(.175,.885,.32,1) .8s;display:flex;position:relative;transform:scale(.95)translateY(30px)}.main-card-container.visible{opacity:1;transform:scale(1)translateY(0)}.glass-card{-webkit-backdrop-filter:blur(20px);background:#1e0a148c;border:1px solid #ffb3d126;border-radius:40px;max-width:780px;padding:60px 50px;box-shadow:0 30px 60px #00000080,inset 0 1px #ffffff1a}.card-header{text-align:center;margin-bottom:40px}.date-badge{color:#ff9fc7;letter-spacing:2px;background:#ff4d9426;border:1px solid #ff4d944d;border-radius:30px;margin-bottom:20px;padding:6px 16px;font-size:.75rem;display:inline-block}.main-title{color:#fff;text-shadow:0 4px 15px #0000004d;margin:0 0 10px;font-family:Playfair Display,serif;font-size:3.2rem}.for-text{color:#ff4d94;letter-spacing:1px;font-family:Montserrat,sans-serif;font-weight:600}.sinhala-para{color:#f1d6e3;opacity:0;margin-bottom:25px;font-family:Noto Serif Sinhala,serif;font-size:1.35rem;line-height:2.1;transform:translateY(15px)}.main-card-container.visible .sinhala-para{animation:.8s forwards fadeUpPro}.p-delay-1{animation-delay:1.2s!important}.p-delay-2{animation-delay:1.5s!important}.p-delay-3{animation-delay:1.8s!important}.p-delay-4{animation-delay:2.1s!important}.poem-box{opacity:0;background:linear-gradient(90deg,#9e1e4b33,#0000);border-left:3px solid #ff4d94;border-radius:20px;margin:40px 0;padding:30px}.main-card-container.visible .poem-box{animation:1s 2s forwards revealRight}@keyframes revealRight{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.poem-text{color:#ffb3d1;font-family:Noto Serif Sinhala,serif;font-size:1.45rem;font-style:italic;line-height:2}.signature-section{text-align:center;margin-top:50px;position:relative}.signature-section:before{content:"";background:linear-gradient(90deg,#0000,#ff4d94,#0000);width:100px;height:1px;position:absolute;top:-25px;left:50%;transform:translate(-50%)}.forever-text{color:#aaa;margin-bottom:10px;font-family:Montserrat,sans-serif;font-size:.9rem}.signature-name{color:#fff;text-shadow:0 0 20px #ff4d9480;font-family:Noto Serif Sinhala,serif;font-size:2rem}.card-footer{text-align:center;color:#ffffff4d;letter-spacing:2px;text-transform:uppercase;margin-top:40px;font-size:.75rem}@media (max-width:768px){.intro-title{font-size:3.2rem}.main-title{font-size:2.4rem}.glass-card{padding:40px 30px}.sinhala-para,.poem-text{font-size:1.15rem;line-height:1.9}.magic-btn{padding:10px 18px;font-size:.8rem;top:20px;right:20px}.music-control{padding:10px 16px;bottom:20px;right:20px}}
