@import"https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap";:root{--ana-dark: #0a1a0f;--ana-dark-alt: #1f462b;--ana-green-light: #86efac;--ana-green: #4ade80;--ana-green-dark: #0a863a;--ana-red-light: #fca5a5;--ana-red: #ef4444;--ana-red-dark: #991b1b;--ana-rose: #fb7185;--ana-cream: #fef3c7;--ana-gold: #fbbf24;--ana-text: #f0fdf4;--ana-muted: #bbf7d0}.ana-page{background-color:var(--ana-dark);color:var(--ana-text);font-family:Inter,sans-serif;overflow-x:hidden}.ana-page *{box-sizing:border-box}.font-dancing{font-family:Dancing Script,cursive}.font-playfair{font-family:Playfair Display,serif}.entrance-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#1a0f0f,#0a0505 70%,#000);transition:opacity .8s ease,transform .8s ease}.entrance-gate.exiting{opacity:0;transform:scale(1.1);pointer-events:none}.gate-sparkle{position:absolute;width:3px;height:3px;background:var(--ana-gold);border-radius:50%;animation:sparkle-float var(--duration, 4s) ease-in-out infinite;animation-delay:var(--delay, 0s);opacity:0}@keyframes sparkle-float{0%,to{opacity:0;transform:translate(0) scale(0)}20%{opacity:1;transform:translate(var(--dx, 10px),var(--dy, -20px)) scale(1)}80%{opacity:.6;transform:translate(calc(var(--dx, 10px) * 2),calc(var(--dy, -20px) * 3)) scale(.5)}}.gate-btn{position:relative;padding:16px 48px;border:2px solid var(--ana-red);background:transparent;color:var(--ana-cream);font-family:Dancing Script,cursive;font-size:1.5rem;border-radius:50px;cursor:pointer;overflow:hidden;transition:all .4s ease}.gate-btn:hover{background:var(--ana-red);color:#fff;box-shadow:0 0 40px #ef444466;transform:scale(1.05)}.gate-btn:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:52px;background:linear-gradient(45deg,var(--ana-red),var(--ana-green),var(--ana-gold),var(--ana-red));background-size:300% 300%;animation:gradient-border 3s ease infinite;z-index:-1;opacity:.6}@keyframes gradient-border{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.floating-particle{position:absolute;pointer-events:none;animation:float-up var(--duration, 8s) linear infinite;animation-delay:var(--delay, 0s);opacity:0}@keyframes float-up{0%{opacity:0;transform:translateY(100vh) rotate(0) scale(var(--scale, 1))}10%{opacity:var(--max-opacity, .6)}90%{opacity:var(--max-opacity, .6)}to{opacity:0;transform:translateY(-100px) rotate(360deg) scale(var(--scale, 1))}}.floating-leaf{color:var(--ana-green);font-size:var(--size, 20px);filter:blur(var(--blur, 0px))}.floating-heart{color:var(--ana-red-light);font-size:var(--size, 16px);filter:blur(var(--blur, 0px))}.hero-bg{background:radial-gradient(ellipse at 20% 50%,rgba(22,101,52,.15) 0%,transparent 60%),radial-gradient(ellipse at 80% 50%,rgba(153,27,27,.12) 0%,transparent 60%),radial-gradient(ellipse at 50% 0%,rgba(74,222,128,.08) 0%,transparent 50%),var(--ana-dark)}.counter-box{background:#0f1f14cc;border:1px solid rgba(74,222,128,.2);border-radius:12px;padding:16px 12px;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:80px;transition:all .3s ease}.counter-box:hover{border-color:var(--ana-green);box-shadow:0 0 20px #4ade8026;transform:translateY(-2px)}.counter-value{font-size:2.5rem;font-weight:800;font-variant-numeric:tabular-nums;background:linear-gradient(135deg,var(--ana-green-light),var(--ana-green));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1}.counter-label{font-size:.7rem;text-transform:uppercase;letter-spacing:2px;color:var(--ana-muted);margin-top:8px;font-weight:600}.scroll-indicator{animation:bounce-gentle 2s ease-in-out infinite}@keyframes bounce-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}.scroll-reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}.scroll-reveal-left{opacity:0;transform:translate(-60px);transition:opacity .8s ease,transform .8s ease}.scroll-reveal-left.revealed{opacity:1;transform:translate(0)}.scroll-reveal-right{opacity:0;transform:translate(60px);transition:opacity .8s ease,transform .8s ease}.scroll-reveal-right.revealed{opacity:1;transform:translate(0)}.timeline-line{position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,transparent,var(--ana-green),var(--ana-red),var(--ana-green),transparent);transform:translate(-50%)}.timeline-dot{width:16px;height:16px;border-radius:50%;background:var(--ana-red);border:3px solid var(--ana-dark);box-shadow:0 0 15px #ef444480;position:absolute;left:50%;transform:translate(-50%);z-index:2}.timeline-card{background:#0f1f1499;border:1px solid rgba(74,222,128,.15);border-radius:16px;padding:32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .4s ease;position:relative}.timeline-card:hover{border-color:var(--ana-green);box-shadow:0 0 30px #4ade801a;transform:translateY(-4px)}.timeline-date{display:inline-block;background:linear-gradient(135deg,var(--ana-red-dark),var(--ana-red));color:#fff;font-size:.75rem;font-weight:700;padding:4px 14px;border-radius:20px;letter-spacing:1px;font-family:Fira Code,monospace}.sketch-section{background:radial-gradient(ellipse at center,rgba(22,101,52,.08) 0%,transparent 70%),var(--ana-dark)}.sketch-path{fill:none;stroke:var(--ana-cream);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:stroke-dashoffset .05s linear}.sketch-path-green{fill:none;stroke:var(--ana-green);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:stroke-dashoffset .05s linear}.sketch-fill-green{fill:var(--ana-green);stroke:var(--ana-green);stroke-width:2;transition:opacity .5s ease}.sketch-fill-red{fill:var(--ana-red);stroke:var(--ana-red);stroke-width:1.5;transition:opacity .5s ease}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:380px;gap:24px}@media(max-width:768px){.photo-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:270px;gap:16px}}@media(max-width:480px){.photo-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:240px;gap:12px}}.photo-card{position:relative;background:#faf6f0;padding:12px 12px 36px;border-radius:2px;box-shadow:0 10px 25px #00000073,inset 0 0 12px #0000000a;transition:all .4s cubic-bezier(.175,.885,.32,1.275);cursor:pointer;z-index:1}@media(max-width:480px){.photo-card{padding:8px 8px 26px}}.photo-card:hover{transform:scale(1.05) rotate(0)!important;box-shadow:0 25px 50px #0009,0 0 25px #4ade8033;z-index:20}.photo-card:before{content:"";position:absolute;top:-12px;left:50%;transform:translate(-50%) rotate(-2deg);width:70px;height:22px;background-color:#fef3c740;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-left:1px dashed rgba(0,0,0,.12);border-right:1px dashed rgba(0,0,0,.12);box-shadow:0 1px 3px #0000000d;z-index:2}@media(max-width:480px){.photo-card:before{width:50px;height:16px;top:-8px}}.photo-card img{width:100%;height:100%;object-fit:cover;border:1px solid rgba(0,0,0,.08);border-radius:1px;transition:transform .4s ease}.photo-card.span-2{grid-column:span 2}@media(max-width:768px){.photo-card.span-2{grid-column:span 2}}.photo-caption{position:absolute;bottom:6px;left:4px;right:4px;font-family:Dancing Script,cursive;font-size:1.1rem;font-weight:700;color:#2c2520;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:480px){.photo-caption{font-size:.85rem;bottom:4px}}.sweet-card{background:#0f1f1499;border:1px solid rgba(74,222,128,.15);border-radius:16px;padding:28px 24px;text-align:center;cursor:pointer;transition:all .4s ease;position:relative;overflow:hidden}.sweet-card:hover{border-color:var(--ana-gold);transform:translateY(-6px);box-shadow:0 15px 30px #0000004d}.sweet-card.active{border-color:var(--ana-red);background:#991b1b26;box-shadow:0 0 25px #ef444426}.sweet-emoji{font-size:3rem;display:block;margin-bottom:12px;transition:transform .3s ease}.sweet-card:hover .sweet-emoji{transform:scale(1.2) rotate(10deg)}.sweet-message{font-style:italic;color:var(--ana-cream);font-size:.9rem;line-height:1.6;margin-top:12px;padding-top:12px;border-top:1px solid rgba(239,68,68,.2);animation:fadeInUp-small .4s ease}@keyframes fadeInUp-small{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.love-letter{background:linear-gradient(135deg,#0f1f14cc,#1a0a0a99);border:1px solid rgba(239,68,68,.2);border-radius:20px;padding:48px 40px;max-width:700px;margin:0 auto;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(max-width:640px){.love-letter{padding:32px 24px}}.love-letter:before{content:'"';position:absolute;top:-10px;left:24px;font-family:Playfair Display,serif;font-size:6rem;color:var(--ana-red);opacity:.15;line-height:1}.love-letter p{font-family:Playfair Display,serif;font-size:1.1rem;line-height:1.9;color:var(--ana-cream);margin-bottom:16px}.love-letter .signature{font-family:Dancing Script,cursive;font-size:1.5rem;color:var(--ana-red-light);text-align:right;margin-top:32px}.gift-container{display:flex;flex-direction:column;align-items:center;gap:24px}.gift-box{width:160px;height:160px;position:relative;cursor:pointer;animation:gift-wobble 3s ease-in-out infinite;transition:transform .3s ease}.gift-box:hover{transform:scale(1.1)}@keyframes gift-wobble{0%,to{transform:rotate(-2deg)}25%{transform:rotate(2deg)}50%{transform:rotate(-1deg)}75%{transform:rotate(1deg)}}.gift-box-body{width:100%;height:75%;background:linear-gradient(135deg,var(--ana-red),var(--ana-red-dark));border-radius:8px;position:absolute;bottom:0;box-shadow:0 10px 30px #ef44444d}.gift-box-lid{width:110%;height:30%;background:linear-gradient(135deg,var(--ana-red),#dc2626);border-radius:8px;position:absolute;top:0;left:-5%;transition:transform .5s ease;z-index:2}.gift-box.opened .gift-box-lid{transform:translateY(-40px) rotate(-15deg)}.gift-ribbon-v{position:absolute;width:20px;height:75%;background:var(--ana-gold);left:50%;bottom:0;transform:translate(-50%);z-index:1}.gift-ribbon-h{position:absolute;width:110%;height:20px;background:var(--ana-gold);top:10%;left:-5%;z-index:3}.gift-bow{position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:2.5rem;z-index:4;animation:bow-bounce 1.5s ease-in-out infinite}@keyframes bow-bounce{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.1)}}.gift-glow{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;border-radius:20px;background:radial-gradient(circle,rgba(239,68,68,.2),transparent);animation:gift-pulse-glow 2s ease-in-out infinite}@keyframes gift-pulse-glow{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.confetti-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:90;overflow:hidden}.confetti-piece{position:absolute;top:-20px;border-radius:2px;animation:confetti-fall var(--fall-duration, 3s) ease-out forwards;animation-delay:var(--fall-delay, 0s)}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0) rotate(0) scale(1)}to{opacity:0;transform:translateY(100vh) rotate(var(--rotate-end, 720deg)) scale(.5)}}.coupon-card{background:linear-gradient(135deg,#0f1f14e6,#1665344d);border:2px dashed var(--ana-green);border-radius:16px;padding:28px 24px;text-align:center;position:relative;overflow:hidden;animation:coupon-pop .5s ease backwards}.coupon-card:nth-child(1){animation-delay:.3s}.coupon-card:nth-child(2){animation-delay:.6s}.coupon-card:nth-child(3){animation-delay:.9s}@keyframes coupon-pop{0%{opacity:0;transform:scale(.5) rotate(-5deg)}70%{transform:scale(1.05) rotate(1deg)}to{opacity:1;transform:scale(1) rotate(0)}}.coupon-card:before{content:"";position:absolute;top:-1px;left:20%;right:20%;height:2px;background:repeating-linear-gradient(90deg,transparent,transparent 4px,var(--ana-dark) 4px,var(--ana-dark) 8px)}.coupon-emoji{font-size:2.5rem;margin-bottom:12px}.coupon-title{font-family:Dancing Script,cursive;font-size:1.4rem;color:var(--ana-gold);margin-bottom:8px}.coupon-desc{font-size:.9rem;color:var(--ana-muted);line-height:1.5}.music-btn{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;background:#0f1f14cc;border:1px solid var(--ana-green);color:var(--ana-green);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;box-shadow:0 0 15px #4ade8026}.music-btn:hover{background:var(--ana-green);color:var(--ana-dark);box-shadow:0 0 25px #4ade8066}.music-btn.playing{animation:music-pulse 2s ease-in-out infinite}@keyframes music-pulse{0%,to{box-shadow:0 0 15px #4ade8026}50%{box-shadow:0 0 25px #4ade8066,0 0 40px #4ade8026}}.section-divider{height:2px;background:linear-gradient(90deg,transparent,var(--ana-green),var(--ana-red),var(--ana-green),transparent);max-width:300px;margin:0 auto;opacity:.4}.quote-box{background:#0f1f1480;border-left:4px solid var(--ana-gold);border-radius:0 12px 12px 0;padding:32px;position:relative}.quote-box:after{content:"★";position:absolute;top:-12px;left:-14px;font-size:1.5rem;color:var(--ana-gold)}.parallax-bg-leaves{background-image:radial-gradient(ellipse at 10% 20%,rgba(74,222,128,.06) 0%,transparent 50%),radial-gradient(ellipse at 90% 80%,rgba(239,68,68,.05) 0%,transparent 50%);background-attachment:fixed;background-size:cover}@media(max-width:768px){.timeline-line,.timeline-dot{left:20px}.counter-value{font-size:1.8rem}.counter-box{min-width:60px;padding:12px 8px}}.ana-footer{background:linear-gradient(to top,rgba(153,27,27,.1),var(--ana-dark));border-top:1px solid rgba(239,68,68,.15);padding:64px 24px;text-align:center}
