@charset "UTF-8";.navbar{position:fixed;top:0;left:0;right:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);z-index:1000}.navbar-container{max-width:1200px;margin:0 auto;padding:0 20px;height:50px;display:flex;align-items:center;justify-content:space-between}.navbar-logo{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:var(--primary-color);text-decoration:none;cursor:pointer;transition:all .3s ease}.navbar-logo:hover{transform:translateY(-2px)}.navbar-logo:hover .logo-heart-icon{transform:scale(1.15)}.navbar-logo .logo-heart-icon{width:32px;height:32px;animation:heartbeat 1.5s ease infinite;transition:transform .3s ease}.navbar-logo .logo-heart-icon svg{width:100%;height:100%;filter:drop-shadow(0 2px 6px rgba(255,107,157,.5))}.navbar-logo .logo-text{font-size:18px;letter-spacing:1px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}@media (max-width: 480px){.navbar-logo .logo-text{font-size:16px}}.navbar-toggle{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;padding:8px}.navbar-toggle span{width:25px;height:3px;background:var(--primary-color);border-radius:3px;transition:var(--transition)}.navbar-menu{display:flex;list-style:none;gap:40px}.navbar-item{position:relative}.navbar-link{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text-secondary);font-weight:500;font-size:16px;padding:8px 16px;border-radius:var(--radius-sm);transition:var(--transition)}.navbar-link .link-icon{font-size:20px}.navbar-link:hover,.navbar-link.active{color:var(--primary-color);background:var(--accent-color)}@media (max-width: 768px){.navbar-toggle{display:flex}.navbar-menu{position:absolute;top:80px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:20px;box-shadow:var(--shadow-md);max-height:0;overflow:hidden;opacity:0;transition:var(--transition)}.navbar-menu.active{max-height:500px;opacity:1}.navbar-item{width:100%}.navbar-link{width:100%;padding:16px;justify-content:center}}.layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:50px}.home .hero-main{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#fff}.home .hero-main .hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;background-image:var(--bg-hero-url);background-size:cover;background-position:center center;background-repeat:no-repeat;filter:brightness(.7);z-index:0}.home .hero-main .hero-bg:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,#2d2d2d66,#7f5a834d,#2d2d2d99)}.home .hero-main .hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,transparent 0%,rgba(0,0,0,.4) 100%);z-index:1}.home .hero-main .hero-content-wrapper{position:relative;z-index:2;width:100%;max-width:1200px;padding:40px 20px}.home .hero-main .hero-content{text-align:center}.home .hero-main .title-wrapper{position:relative;margin-bottom:40px}.home .hero-main .title-wrapper .title-decoration{width:200px;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.8) 50%,transparent 100%);margin:0 auto}.home .hero-main .title-wrapper .title-decoration.top{margin-bottom:30px}.home .hero-main .title-wrapper .title-decoration.bottom{margin-top:30px}.home .hero-main .title-avatars{display:flex;align-items:center;justify-content:center;gap:40px;margin-bottom:40px}@media (max-width: 768px){.home .hero-main .title-avatars{gap:20px;transform:scale(.85)}}.home .hero-main .title-avatars .avatar-item{position:relative;text-align:center}.home .hero-main .title-avatars .avatar-item .avatar-ring{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--primary-color));opacity:.3;animation:rotate 8s linear infinite;z-index:-1}.home .hero-main .title-avatars .avatar-item img{width:120px;height:120px;border-radius:50%;border:4px solid rgba(255,255,255,.9);box-shadow:0 0 30px #ff6b9d99,0 8px 30px #0006;object-fit:cover;transition:transform .4s ease}@media (max-width: 768px){.home .hero-main .title-avatars .avatar-item img{width:90px;height:90px}}.home .hero-main .title-avatars .avatar-item:hover img{transform:scale(1.1)}.home .hero-main .title-avatars .avatar-item .avatar-label{display:block;margin-top:12px;font-size:16px;font-weight:700;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.8);letter-spacing:2px}@media (max-width: 768px){.home .hero-main .title-avatars .avatar-item .avatar-label{font-size:14px}}.home .hero-main .title-avatars .heart-divider{position:relative;width:80px;height:80px}@media (max-width: 768px){.home .hero-main .title-avatars .heart-divider{width:60px;height:60px}}.home .hero-main .title-avatars .heart-divider .heart-shape{position:relative;width:100%;height:100%;animation:heartPulse 1.5s ease-in-out infinite}.home .hero-main .title-avatars .heart-divider .heart-shape svg{width:100%;height:100%;filter:drop-shadow(0 0 20px rgba(255,107,157,.8))}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles{position:absolute;top:0;right:0;bottom:0;left:0}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle{position:absolute;font-size:12px;animation:sparkleFloat 2s ease-in-out infinite;opacity:0}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(1){--angle: 0deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:0s}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(2){--angle: 45deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:.25s}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(3){--angle: 90deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:.5s}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(4){--angle: 135deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:.75s}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(5){--angle: 180deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:1s}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(6){--angle: 225deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:1.25s}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(7){--angle: 270deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:1.5s}.home .hero-main .title-avatars .heart-divider .heart-shape .heart-sparkles .sparkle:nth-child(8){--angle: 315deg;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-40px);animation-delay:1.75s}.home .hero-main .main-title{font-size:clamp(42px,7vw,80px);font-weight:900;line-height:1.2;margin:0;text-shadow:0 0 30px rgba(255,107,157,.8),0 0 60px rgba(255,107,157,.4),2px 2px 10px rgba(0,0,0,.8);letter-spacing:4px}.home .hero-main .main-title .title-highlight{display:block;background:linear-gradient(135deg,#d4af37,#b08968,#d4af37);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:clamp(48px,9vw,95px);margin-top:8px;animation:shimmer 3s infinite;font-weight:700}.home .hero-main .subtitle-wrapper{margin-bottom:30px}.home .hero-main .subtitle-wrapper .title-avatars.subtitle-version{margin-bottom:20px;margin-top:15px}.home .hero-main .subtitle-wrapper .title-avatars.subtitle-version .avatar-label{display:none}.home .hero-main .subtitle-wrapper .game-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 24px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50px;border:1px solid rgba(255,255,255,.3);margin-bottom:20px;font-size:14px;font-weight:600;letter-spacing:2px}.home .hero-main .subtitle-wrapper .game-badge .badge-icon{width:24px;height:24px;background-image:var(--game-icon-url);background-size:contain;background-position:center;background-repeat:no-repeat}.home .hero-main .subtitle-wrapper .subtitle{font-size:clamp(22px,4vw,32px);font-weight:700;margin:12px 0;text-shadow:0 2px 20px rgba(0,0,0,.8);letter-spacing:2px}.home .hero-main .subtitle-wrapper .subtitle-desc{font-size:clamp(15px,2vw,18px);opacity:.95;text-shadow:0 2px 10px rgba(0,0,0,.8);letter-spacing:2px;font-weight:300}.home .hero-main .subtitle-wrapper .love-declaration{margin-top:20px;padding:20px 30px;background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000004d;display:inline-block;position:relative;overflow:hidden}.home .hero-main .subtitle-wrapper .love-declaration:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,215,0,.1) 50%,transparent 70%);animation:shimmerMove 4s linear infinite}.home .hero-main .subtitle-wrapper .love-declaration .declaration-icon{margin:0 auto 12px;width:50px;height:50px;animation:sunflowerRotate 20s linear infinite}.home .hero-main .subtitle-wrapper .love-declaration .declaration-icon .sunflower-icon{width:100%;height:100%;filter:drop-shadow(0 4px 12px rgba(255,215,0,.5))}.home .hero-main .subtitle-wrapper .love-declaration .declaration-text{position:relative;z-index:1}.home .hero-main .subtitle-wrapper .love-declaration .declaration-text .declaration-poem{font-size:clamp(16px,3vw,20px);font-weight:500;color:#fffffff2;text-shadow:0 2px 8px rgba(0,0,0,.8);margin:5px 0;letter-spacing:2px;font-family:STKaiti,KaiTi,楷体,serif;line-height:1.6}.home .hero-main .subtitle-wrapper .love-declaration .declaration-text .declaration-meaning{font-size:clamp(13px,2vw,15px);color:#ffd700e6;text-shadow:0 2px 6px rgba(0,0,0,.8);margin-top:10px;font-weight:600;letter-spacing:1.5px;font-style:italic}@media (max-width: 768px){.home .hero-main .subtitle-wrapper .love-declaration{padding:15px 20px;margin-top:15px}.home .hero-main .subtitle-wrapper .love-declaration .declaration-icon{width:40px;height:40px;margin-bottom:10px}.home .hero-main .subtitle-wrapper .love-declaration .declaration-text .declaration-poem{font-size:clamp(14px,3vw,18px);margin:3px 0;letter-spacing:1.5px}.home .hero-main .subtitle-wrapper .love-declaration .declaration-text .declaration-meaning{font-size:clamp(12px,2vw,14px);margin-top:8px}}.home .hero-main .cta-buttons{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;margin-bottom:40px}.home .hero-main .cta-buttons .btn-primary,.home .hero-main .cta-buttons .btn-secondary{position:relative;display:inline-flex;align-items:center;gap:10px;padding:14px 32px;font-size:16px;font-weight:600;border-radius:50px;text-decoration:none;transition:all .3s ease;overflow:hidden;z-index:1}.home .hero-main .cta-buttons .btn-primary .btn-icon,.home .hero-main .cta-buttons .btn-secondary .btn-icon{font-size:24px}.home .hero-main .cta-buttons .btn-primary .btn-text,.home .hero-main .cta-buttons .btn-secondary .btn-text{letter-spacing:1px}.home .hero-main .cta-buttons .btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;box-shadow:0 8px 30px #b0896866;letter-spacing:.1em;font-weight:500}.home .hero-main .cta-buttons .btn-primary .btn-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.home .hero-main .cta-buttons .btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 40px #b0896880}.home .hero-main .cta-buttons .btn-primary:hover .btn-shine{left:100%}.home .hero-main .cta-buttons .btn-secondary{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:2px solid rgba(255,255,255,.5)}.home .hero-main .cta-buttons .btn-secondary:hover{background:#ffffff40;border-color:#fff;transform:translateY(-3px);box-shadow:0 12px 40px #ffffff4d}.home .hero-main .scroll-hint{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:14px;letter-spacing:2px;text-transform:uppercase;opacity:.8}.home .hero-main .scroll-hint .scroll-arrow{font-size:24px;animation:bounce 2s infinite}.home .hero-main .floating-elements{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1}.home .hero-main .floating-elements .floating-particle{position:absolute;font-size:20px}.home .stats-section{padding:80px 20px;background:var(--bg-secondary)}.home .stats-section .section-header{text-align:center;margin-bottom:50px}.home .stats-section .section-title{font-size:clamp(32px,5vw,42px);font-weight:800;margin-bottom:12px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home .stats-section .section-subtitle{font-size:16px;color:var(--text-secondary)}.home .stats-section .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:1100px;margin:0 auto}@media (min-width: 1024px){.home .stats-section .stats-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 480px) and (max-width: 1023px){.home .stats-section .stats-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media (max-width: 479px){.home .stats-section .stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.home .stats-section .stat-card{background:var(--bg-primary);padding:30px 20px;border-radius:16px;box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid rgba(176,137,104,.15);position:relative;overflow:hidden}.home .stats-section .stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--gold))}.home .stats-section .stat-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.home .stats-section .stat-card:hover .stat-icon-wrapper{transform:scale(1.1) rotate(10deg)}.home .stats-section .stat-card:hover .stat-icon-wrapper:before{opacity:.3}.home .stats-section .stat-card:hover .stat-icon-wrapper .stat-svg-icon{transform:scale(1.1)}.home .stats-section .stat-card.special{background:linear-gradient(135deg,#faf8f5,#fff);border:2px solid var(--gold);position:relative;overflow:hidden}.home .stats-section .stat-card.special:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(212,175,55,.1) 50%,transparent 70%);animation:shimmerMove 3s linear infinite}.home .stats-section .stat-card.special .stat-number{background:linear-gradient(135deg,var(--gold),var(--primary-color),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:42px}.home .stats-section .stat-card.special .stat-label{color:var(--gold);font-weight:700}.home .stats-section .stat-card .stat-icon-wrapper{width:70px;height:70px;margin:0 auto 20px;background:linear-gradient(135deg,#fff,#faf8f5);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 20px #b0896826,inset 0 1px 3px #fffc;border:2px solid rgba(176,137,104,.1);position:relative}.home .stats-section .stat-card .stat-icon-wrapper:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--primary-color));opacity:0;transition:opacity .4s ease;z-index:-1}.home .stats-section .stat-card .stat-icon-wrapper .stat-svg-icon{width:42px;height:42px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));transition:transform .4s ease}.home .stats-section .stat-card .stat-icon-wrapper .stat-icon{font-size:32px}.home .stats-section .stat-card .stat-icon-wrapper.glow{animation:iconGlow 2s ease-in-out infinite}.home .stats-section .stat-card .stat-content{text-align:center}.home .stats-section .stat-card .stat-number{font-size:36px;font-weight:900;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.home .stats-section .stat-card .stat-label{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.home .stats-section .stat-card .stat-date{font-size:13px;color:var(--text-light)}.home .characters-section{padding:100px 20px;background:var(--bg-primary);position:relative;overflow:hidden}.home .characters-section .characters-content{position:relative;z-index:1}.home .characters-section .characters-header{text-align:center;margin-bottom:70px}.home .characters-section .characters-grid{display:flex;align-items:center;justify-content:center;gap:60px;max-width:1000px;margin:0 auto;flex-wrap:wrap}@media (max-width: 768px){.home .characters-section .characters-grid{flex-direction:column;gap:30px}}.home .characters-section .character-card{position:relative;background:#fff;padding:40px 30px;border-radius:24px;box-shadow:var(--shadow-md);text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(176,137,104,.1);max-width:280px;flex:1;min-width:240px}@media (max-width: 768px){.home .characters-section .character-card{width:100%;max-width:340px}.home .characters-section .character-card:first-child{order:1}.home .characters-section .character-card:last-child{order:3}}.home .characters-section .character-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--gold));border-radius:24px 24px 0 0}.home .characters-section .character-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.home .characters-section .character-card:hover .character-avatar-wrapper{transform:scale(1.05)}.home .characters-section .character-card:hover .character-avatar-wrapper .character-avatar{box-shadow:0 12px 40px #b0896866}.home .characters-section .character-card .character-avatar-wrapper{position:relative;width:140px;height:140px;margin:0 auto 24px;transition:transform .4s ease}.home .characters-section .character-card .character-avatar-wrapper .character-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid white;box-shadow:0 8px 30px #b089684d;transition:all .4s ease;background:linear-gradient(135deg,#f5f5f5,#e8e8e8)}.home .characters-section .character-card .character-avatar-wrapper:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--gold),var(--secondary-color));opacity:.2;z-index:-1;animation:rotate 8s linear infinite}.home .characters-section .character-card .character-avatar-wrapper:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid transparent;background:linear-gradient(45deg,var(--gold),transparent,var(--primary-color)) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:.6}.home .characters-section .character-card .character-info .character-name{font-size:26px;font-weight:700;color:var(--text-primary);margin-bottom:8px;letter-spacing:.05em}.home .characters-section .character-card .character-info .character-id{font-size:14px;color:var(--primary-color);margin-bottom:12px;font-weight:600;opacity:.8}.home .characters-section .character-card .character-info .character-title{font-size:13px;color:var(--text-light);margin-bottom:16px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.home .characters-section .character-card .character-info .character-desc{font-size:14px;line-height:1.8;color:var(--text-secondary)}.home .characters-section .heart-connector{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}@media (max-width: 768px){.home .characters-section .heart-connector{width:100px;height:100px;order:2}}.home .characters-section .heart-connector .heart-canvas{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.home .characters-section .heart-connector .heart-canvas .heart-main{position:relative;width:60px;height:60px;transform:rotate(-45deg);animation:heartPulse 1.5s ease-in-out infinite}.home .characters-section .heart-connector .heart-canvas .heart-main:before,.home .characters-section .heart-connector .heart-canvas .heart-main:after{content:"";position:absolute;width:60px;height:60px;background:linear-gradient(135deg,#ff6b9d,#c06c84);border-radius:50%}.home .characters-section .heart-connector .heart-canvas .heart-main:before{top:-30px;left:0}.home .characters-section .heart-connector .heart-canvas .heart-main:after{left:30px;top:0}.home .characters-section .heart-connector .heart-canvas .heart-main{background:linear-gradient(135deg,#ff6b9d,#c06c84);box-shadow:0 0 30px #ff6b9d80}.home .characters-section .heart-connector .heart-canvas .heart-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle{position:absolute;width:4px;height:4px;background:var(--gold);border-radius:50%;opacity:0;animation:particleFloat 3s ease-in-out infinite}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(1){animation-delay:.2s;left:20%;top:30%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(2){animation-delay:.4s;left:80%;top:15%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(3){animation-delay:.6s;left:15%;top:70%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(4){animation-delay:.8s;left:85%;top:60%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(5){animation-delay:1s;left:40%;top:20%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(6){animation-delay:1.2s;left:60%;top:80%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(7){animation-delay:1.4s;left:25%;top:50%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(8){animation-delay:1.6s;left:75%;top:35%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(9){animation-delay:1.8s;left:50%;top:10%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(10){animation-delay:2s;left:10%;top:85%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(11){animation-delay:2.2s;left:90%;top:45%}.home .characters-section .heart-connector .heart-canvas .heart-particles .particle:nth-child(12){animation-delay:2.4s;left:45%;top:65%}.home .characters-section .heart-connector .heart-canvas .heart-glow{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;border-radius:50%;background:radial-gradient(circle,rgba(255,107,157,.3) 0%,rgba(255,107,157,.1) 50%,transparent 70%);animation:glowPulse 2s ease-in-out infinite}.home .characters-section .heart-connector .heart-canvas .heart-ring{position:absolute;top:-15px;right:-15px;bottom:-15px;left:-15px;border:2px solid transparent;border-radius:50%;border-top-color:var(--gold);border-right-color:var(--primary-color);opacity:.4;animation:rotate 4s linear infinite}.home .timeline-preview{padding:80px 20px;background:#fff}.home .timeline-preview .timeline-preview-content{max-width:1000px;margin:0 auto;text-align:center}.home .timeline-preview .timeline-items{display:flex;align-items:center;justify-content:center;margin:50px 0;flex-wrap:wrap;gap:0;position:relative}.home .timeline-preview .timeline-item{display:flex;flex-direction:column;align-items:center;gap:12px;position:relative}.home .timeline-preview .timeline-item .timeline-icon-wrapper{width:70px;height:70px;background:linear-gradient(135deg,#fff,#faf8f5);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px #b0896826,inset 0 1px 3px #fffc;border:2px solid rgba(176,137,104,.1);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.home .timeline-preview .timeline-item .timeline-icon-wrapper:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--primary-color));opacity:0;transition:opacity .4s ease;z-index:-1}.home .timeline-preview .timeline-item .timeline-icon-wrapper .timeline-svg-icon{width:42px;height:42px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));transition:transform .4s ease}.home .timeline-preview .timeline-item .timeline-icon-wrapper.glow{animation:iconGlow 2s ease-in-out infinite}.home .timeline-preview .timeline-item .timeline-content{text-align:center}.home .timeline-preview .timeline-item .timeline-content .timeline-date{display:block;font-size:15px;color:var(--primary-color);margin-bottom:5px;font-weight:700;letter-spacing:.5px}.home .timeline-preview .timeline-item .timeline-content .timeline-label{display:block;font-size:13px;color:var(--text-secondary);font-weight:500}.home .timeline-preview .timeline-item.future .timeline-icon-wrapper{border-color:var(--gold)}.home .timeline-preview .timeline-item.future .timeline-content .timeline-date{background:linear-gradient(135deg,var(--gold),var(--primary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home .timeline-preview .timeline-item.future .timeline-content .timeline-label{color:var(--gold)}.home .timeline-preview .timeline-item:hover .timeline-icon-wrapper{transform:scale(1.1) translateY(-5px)}.home .timeline-preview .timeline-item:hover .timeline-icon-wrapper:before{opacity:.3}.home .timeline-preview .timeline-item:hover .timeline-icon-wrapper .timeline-svg-icon{transform:scale(1.1)}.home .timeline-preview .timeline-connector{width:60px;height:3px;background:linear-gradient(90deg,rgba(176,137,104,.3),var(--primary-color),rgba(176,137,104,.3));position:relative;margin:0 10px}.home .timeline-preview .timeline-connector:after{content:"";position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid var(--primary-color);border-top:3px solid transparent;border-bottom:3px solid transparent}.home .timeline-preview .btn-outline{display:inline-block;padding:14px 36px;background:#fff;color:var(--primary-color);border:2px solid var(--primary-color);border-radius:50px;text-decoration:none;font-weight:600;font-size:15px;transition:all .3s ease}.home .timeline-preview .btn-outline:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #ff6b9d4d}.home .final-cta{padding:100px 20px;background:linear-gradient(135deg,var(--bg-dark),var(--secondary-color));color:#fff;text-align:center;position:relative;overflow:hidden}.home .final-cta:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><path d="M50 10 L61 35 L90 35 L67 52 L77 77 L50 60 L23 77 L33 52 L10 35 L39 35 Z" fill="rgba(255,255,255,0.05)"/></svg>');opacity:.1;animation:float 20s linear infinite}.home .final-cta .final-cta-content{position:relative;z-index:1;max-width:800px;margin:0 auto}.home .final-cta .cta-title{font-size:clamp(28px,5vw,42px);font-weight:800;margin-bottom:20px;line-height:1.4;text-shadow:0 4px 20px rgba(0,0,0,.3)}.home .final-cta .cta-title .cta-highlight{display:block;font-size:clamp(36px,6vw,54px);margin-top:12px}.home .final-cta .cta-desc{font-size:18px;line-height:1.8;margin-bottom:35px;opacity:.95;text-shadow:0 2px 10px rgba(0,0,0,.3)}.home .final-cta .btn-cta{display:inline-block;padding:18px 45px;background:#fff;color:var(--primary-color);border-radius:50px;text-decoration:none;font-weight:700;font-size:17px;transition:all .3s ease;box-shadow:0 10px 40px #0000004d}.home .final-cta .btn-cta:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 15px 50px #0006}@keyframes shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.2)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes heartPulse{0%,to{transform:rotate(-45deg) scale(1)}50%{transform:rotate(-45deg) scale(1.1)}}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@keyframes particleFloat{0%{opacity:0;transform:translate(0) scale(0)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(var(--tx, 30px),var(--ty, -50px)) scale(0)}}@keyframes sparkleFloat{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle, 0deg)) translateY(-30px) scale(0)}30%{opacity:1}70%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle, 0deg)) translateY(-50px) scale(1.5)}}@keyframes iconGlow{0%,to{box-shadow:0 8px 20px #d4af374d,inset 0 1px 3px #fffc}50%{box-shadow:0 8px 30px #d4af3799,inset 0 1px 3px #fffc,0 0 20px #d4af3766}}@keyframes sunflowerRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.1);opacity:.5}}@keyframes float{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@media (max-width: 968px){.home .hero-main .hero-bg{background-size:cover;background-position:center 35%}.home .hero-main .hero-content{padding:0 15px}.home .hero-main .main-title{letter-spacing:2px;font-size:clamp(36px,7vw,64px)!important}.home .hero-main .main-title .title-highlight{font-size:clamp(40px,8vw,72px)!important;margin-top:5px}.home .hero-main .subtitle-wrapper{margin-bottom:20px}.home .hero-main .subtitle-wrapper .title-avatars.subtitle-version{margin-bottom:15px;margin-top:10px;transform:scale(.9)}.home .hero-main .subtitle-wrapper .subtitle{font-size:clamp(18px,4vw,26px)!important;margin:8px 0}.home .hero-main .subtitle-wrapper .subtitle-desc{letter-spacing:1px;font-size:clamp(13px,2vw,16px)!important}.home .hero-main .cta-buttons{gap:12px;margin-bottom:20px}.home .hero-main .cta-buttons .btn-primary,.home .hero-main .cta-buttons .btn-secondary{padding:12px 24px;font-size:15px;flex:1;min-width:0;justify-content:center}.home .hero-main .cta-buttons .btn-primary .btn-text,.home .hero-main .cta-buttons .btn-secondary .btn-text{white-space:nowrap}.home .stats-section{padding:60px 20px}.home .stats-section .stat-card{padding:25px 16px}.home .stats-section .stat-card .stat-icon-wrapper{width:50px;height:50px}.home .stats-section .stat-card .stat-icon-wrapper .stat-icon{font-size:26px}.home .stats-section .stat-card .stat-number{font-size:32px}.home .stats-section .stat-card .stat-label{font-size:14px}.home .stats-section .stat-card .stat-date{font-size:12px}.home .characters-section{padding:60px 20px}.home .characters-section .characters-grid{grid-template-columns:1fr;gap:30px}.home .characters-section .characters-grid .heart-connector{transform:rotate(90deg)}.home .timeline-preview{padding:60px 20px}.home .timeline-preview .timeline-items{flex-direction:column}.home .timeline-preview .timeline-items .timeline-line{width:2px;height:30px}.home .final-cta{padding:80px 20px}}@media (max-width: 430px){.home .hero-main .hero-bg{background-size:cover;background-position:center center;transform:rotate(90deg) scale(1.5);transform-origin:center center;width:100vh;height:100vw;left:50%;top:50%;margin-left:-50vh;margin-top:-50vw}.home .hero-main .scroll-hint{font-size:12px}}@media (max-width: 375px){.home .hero-main .hero-bg{transform:rotate(90deg) scale(1.6)}}.timeline-page{min-height:calc(100vh - 80px);padding:60px 20px;background:linear-gradient(135deg,#ffeef8,#fff5f8)}.timeline-page .page-header{text-align:center;margin-bottom:70px}.timeline-page .page-title{font-size:clamp(36px,5vw,48px);font-weight:800;margin-bottom:16px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.timeline-page .page-subtitle{font-size:18px;color:var(--text-secondary)}.timeline{max-width:800px;margin:0 auto;position:relative}.timeline .timeline-item{display:grid;grid-template-columns:80px 1fr;gap:30px;margin-bottom:40px;position:relative}.timeline .timeline-item:last-child{margin-bottom:0}.timeline .timeline-item:last-child .timeline-line{display:none}.timeline .timeline-item .timeline-icon{display:flex;flex-direction:column;align-items:center;position:relative}.timeline .timeline-item .timeline-icon .icon-circle{width:80px;height:80px;background:linear-gradient(135deg,var(--accent-color),var(--primary-color));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;box-shadow:0 8px 24px #ff6b9d4d;position:relative;z-index:2;transition:all .3s ease}.timeline .timeline-item .timeline-icon .icon-circle:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));opacity:.3;z-index:-1;animation:pulse-ring 2s ease infinite}.timeline .timeline-item .timeline-line{position:absolute;left:40px;top:80px;width:3px;height:calc(100% + 40px);background:linear-gradient(to bottom,var(--primary-color),var(--accent-color));z-index:1}.timeline .timeline-item .timeline-card{background:#fff;padding:30px;border-radius:20px;box-shadow:0 8px 28px #ff6b9d1f;transition:all .3s ease;border:2px solid transparent;position:relative;overflow:hidden}.timeline .timeline-item .timeline-card:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(to bottom,var(--primary-color),var(--secondary-color))}.timeline .timeline-item .timeline-card:hover{box-shadow:0 12px 40px #ff6b9d33;border-color:var(--accent-color)}.timeline .timeline-item .timeline-card .card-date{display:inline-block;padding:6px 16px;background:linear-gradient(135deg,#ff6b9d1a,#c445691a);border-radius:20px;font-size:14px;font-weight:700;color:var(--primary-color);margin-bottom:16px;letter-spacing:.5px}.timeline .timeline-item .timeline-card .card-title{font-size:24px;font-weight:800;color:var(--text-primary);margin-bottom:14px;line-height:1.3}.timeline .timeline-item .timeline-card .card-description{font-size:16px;line-height:1.8;color:var(--text-secondary)}.timeline .timeline-item .timeline-card .card-image-tip{margin-top:16px;padding:12px 16px;background:#ff6b9d0d;border-radius:10px;border:1px dashed var(--accent-color);font-size:13px;color:var(--text-light)}.timeline-end{text-align:center;margin-top:80px;padding:50px 30px;background:#fff;border-radius:24px;box-shadow:0 10px 40px #ff6b9d26;max-width:600px;margin-left:auto;margin-right:auto}.timeline-end .end-icon{font-size:80px;margin-bottom:24px;animation:float 3s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(255,107,157,.3))}.timeline-end .end-text{font-size:36px;font-weight:900;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px}.timeline-end .end-subtitle{font-size:18px;color:var(--text-secondary);font-weight:500}@keyframes pulse-ring{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.1);opacity:.1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@media (max-width: 768px){.timeline-page{padding:40px 16px}.timeline .timeline-item{grid-template-columns:60px 1fr;gap:20px;margin-bottom:30px}.timeline .timeline-item .timeline-icon .icon-circle{width:60px;height:60px;font-size:28px}.timeline .timeline-item .timeline-line{left:30px;top:60px;height:calc(100% + 30px)}.timeline .timeline-item .timeline-card{padding:24px}.timeline .timeline-item .timeline-card .card-title{font-size:20px}.timeline .timeline-item .timeline-card .card-description{font-size:15px}.timeline-end{margin-top:60px;padding:40px 24px}.timeline-end .end-icon{font-size:60px}.timeline-end .end-text{font-size:28px}.timeline-end .end-subtitle{font-size:16px}.page-title{font-size:32px}}@media (max-width: 480px){.timeline .timeline-item{grid-template-columns:50px 1fr;gap:16px}.timeline .timeline-item .timeline-icon .icon-circle{width:50px;height:50px;font-size:24px}.timeline .timeline-item .timeline-line{left:25px;top:50px;width:2px}.timeline .timeline-item .timeline-card{padding:20px}.timeline .timeline-item .timeline-card .card-title{font-size:18px}}.gallery-page{min-height:calc(100vh - 80px);padding:60px 20px;background:linear-gradient(135deg,#ffeef8,#fff5f8)}.gallery-page .page-header{text-align:center;margin-bottom:50px}.gallery-page .page-title{font-size:48px;font-weight:800;margin-bottom:16px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gallery-page .page-subtitle{font-size:18px;color:var(--text-secondary)}.gallery-page .category-filter{display:flex;justify-content:center;gap:16px;margin-bottom:50px;flex-wrap:wrap}.gallery-page .category-filter .category-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;border:2px solid var(--accent-color);border-radius:50px;font-size:16px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:var(--transition)}.gallery-page .category-filter .category-btn .cat-icon{font-size:20px}.gallery-page .category-filter .category-btn:hover{border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.gallery-page .category-filter .category-btn.active{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border-color:transparent;box-shadow:var(--shadow-md)}.gallery-page .gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:30px;margin-bottom:60px}.gallery-page .photo-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:var(--transition)}.gallery-page .photo-card:hover{box-shadow:var(--shadow-lg)}.gallery-page .photo-card:hover .photo-overlay{opacity:1}.gallery-page .photo-card .photo-placeholder{width:100%;height:280px;background:linear-gradient(135deg,var(--accent-color),var(--primary-color));display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.gallery-page .photo-card .photo-emoji{font-size:100px;position:relative;z-index:1}.gallery-page .photo-card .photo-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition);z-index:2}.gallery-page .photo-card .photo-overlay .overlay-text{color:#fff;font-size:18px;font-weight:600}.gallery-page .photo-card .photo-info{padding:20px}.gallery-page .photo-card .photo-title{font-size:18px;font-weight:700;margin-bottom:8px;color:var(--text-primary)}.gallery-page .photo-card .photo-date{font-size:14px;color:var(--text-light)}.gallery-page .upload-hint{max-width:700px;margin:0 auto;padding:40px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;border:2px dashed var(--accent-color)}.gallery-page .upload-hint .hint-icon{font-size:48px;margin-bottom:20px}.gallery-page .upload-hint h3{font-size:24px;font-weight:700;color:var(--primary-color);margin-bottom:16px}.gallery-page .upload-hint p{font-size:16px;line-height:2;color:var(--text-secondary);text-align:left}.gallery-page .upload-hint p code{padding:2px 8px;background:var(--accent-color);color:var(--primary-color);border-radius:4px;font-family:Courier New,monospace}.photo-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.photo-modal .modal-content{background:#fff;border-radius:var(--radius-lg);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative}.photo-modal .modal-close{position:absolute;top:20px;right:20px;width:50px;height:50px;border:none;background:#ffffffe6;border-radius:50%;font-size:32px;cursor:pointer;color:var(--primary-color);transition:var(--transition);z-index:10;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md)}.photo-modal .modal-close:hover{background:var(--primary-color);color:#fff;transform:rotate(90deg)}.photo-modal .modal-photo{width:100%;height:400px;background:linear-gradient(135deg,var(--accent-color),var(--primary-color));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.photo-modal .modal-emoji{font-size:150px}.photo-modal .modal-tip{text-align:center;color:#fff;font-size:16px;opacity:.9}.photo-modal .modal-tip small{display:block;margin-top:8px;font-size:14px}.photo-modal .modal-info{padding:40px}.photo-modal .modal-title{font-size:32px;font-weight:700;color:var(--primary-color);margin-bottom:12px}.photo-modal .modal-date{font-size:16px;color:var(--text-light);margin-bottom:24px}.photo-modal .modal-description{font-size:18px;line-height:2;color:var(--text-secondary);padding:24px;background:var(--bg-primary);border-radius:var(--radius-md);border-left:4px solid var(--primary-color)}@media (max-width: 768px){.gallery-page{padding:40px 16px}.gallery-page .page-title{font-size:36px}.gallery-page .gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.gallery-page .photo-card .photo-placeholder{height:220px}.gallery-page .photo-emoji{font-size:80px}.gallery-page .upload-hint{padding:30px 20px}.photo-modal .modal-photo{height:300px}.photo-modal .modal-emoji{font-size:100px}.photo-modal .modal-info{padding:30px 20px}.photo-modal .modal-title{font-size:24px}}@media (max-width: 480px){.gallery-page .gallery-grid{grid-template-columns:1fr}.gallery-page .category-filter{gap:8px}.gallery-page .category-filter .category-btn{padding:8px 16px;font-size:14px}.gallery-page .category-filter .category-btn .cat-icon{font-size:16px}}.love-page{min-height:calc(100vh - 80px);padding:60px 20px;background:linear-gradient(135deg,#ffeef8,#fff5f8,#ffe8f0);position:relative;overflow:hidden}.love-page .love-bg-decoration{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0}.love-page .love-bg-decoration .decoration-circle{position:absolute;border-radius:50%;opacity:.1}.love-page .love-bg-decoration .decoration-circle.circle-1{width:400px;height:400px;top:-100px;right:-100px;background:radial-gradient(circle,#ff6b9d,transparent);animation:float 20s ease-in-out infinite}.love-page .love-bg-decoration .decoration-circle.circle-2{width:300px;height:300px;bottom:100px;left:-50px;background:radial-gradient(circle,#c06c84,transparent);animation:float 25s ease-in-out infinite reverse}.love-page .love-bg-decoration .decoration-circle.circle-3{width:200px;height:200px;top:50%;left:50%;background:radial-gradient(circle,#d4af37,transparent);animation:float 30s ease-in-out infinite}.love-page .love-letter{max-width:900px;margin:0 auto 60px;background:#fff;border-radius:var(--radius-lg);padding:50px 60px 60px;box-shadow:0 20px 60px #00000026;position:relative;z-index:1}.love-page .love-letter:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#ff6b9d,#c06c84,#7f5a83,#d4af37);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.love-page .love-letter:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(transparent,transparent 39px,rgba(212,175,55,.03) 39px,rgba(212,175,55,.03) 40px);pointer-events:none;border-radius:var(--radius-lg)}.love-page .letter-envelope{position:absolute;top:-45px;left:50%;transform:translate(-50%);z-index:2}.love-page .letter-envelope .envelope-emoji{font-size:60px;display:block;text-align:center;filter:drop-shadow(0 4px 12px rgba(255,107,157,.3));animation:envelopeBounce 3s ease-in-out infinite}.love-page .letter-header{text-align:center;margin-bottom:40px;padding-bottom:30px;position:relative;z-index:1}.love-page .letter-header .header-ornament{width:200px;height:2px;margin:0 auto;background:linear-gradient(90deg,transparent,#d4af37,transparent);position:relative}.love-page .letter-header .header-ornament.top{margin-bottom:20px}.love-page .letter-header .header-ornament.top:before,.love-page .letter-header .header-ornament.top:after{content:"✦";position:absolute;top:50%;transform:translateY(-50%);color:#d4af37;font-size:12px}.love-page .letter-header .header-ornament.top:before{left:-20px}.love-page .letter-header .header-ornament.top:after{right:-20px}.love-page .letter-header .header-ornament.bottom{margin-top:20px}.love-page .letter-header .header-ornament.bottom:before,.love-page .letter-header .header-ornament.bottom:after{content:"❈";position:absolute;top:50%;transform:translateY(-50%);color:#d4af37;font-size:14px}.love-page .letter-header .header-ornament.bottom:before{left:-20px}.love-page .letter-header .header-ornament.bottom:after{right:-20px}.love-page .letter-title{font-size:48px;font-weight:900;margin:20px 0;background:linear-gradient(135deg,#ff6b9d,#c06c84,#7f5a83);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:4px;text-shadow:0 2px 10px rgba(255,107,157,.2)}.love-page .letter-date{font-size:18px;color:#b08968;font-style:italic;font-family:Georgia,KaiTi,楷体,serif;letter-spacing:2px;font-weight:500}.love-page .letter-content{line-height:2.2;position:relative;z-index:1}.love-page .letter-text{font-size:18px;color:var(--text-primary);margin-bottom:32px;text-align:justify;line-height:2.4}.love-page .letter-text:first-child{font-size:20px;font-weight:600;margin-bottom:24px;text-align:left}.love-page .letter-text .letter-bold{color:var(--primary-color);font-weight:700;font-size:20px;display:block;margin:20px 0;padding:16px;background:#ff6b9d14;border-left:4px solid var(--primary-color);border-radius:4px}.love-page .letter-footer{margin-top:40px;padding-top:30px;text-align:center;position:relative;z-index:1}.love-page .letter-footer .footer-signature{margin-bottom:20px}.love-page .letter-footer .footer-signature .signature-text{font-size:16px;color:#999;margin-bottom:8px;font-style:italic}.love-page .letter-footer .footer-signature .signature-name{font-size:32px;font-weight:700;background:linear-gradient(135deg,#ff6b9d,#c06c84);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:KaiTi,楷体,cursive;letter-spacing:4px}.love-page .letter-footer .hearts-decoration{display:flex;justify-content:center;align-items:center;gap:20px}.love-page .letter-footer .hearts-decoration .heart-svg{width:40px;height:40px;filter:drop-shadow(0 2px 8px rgba(255,107,157,.4));animation:heartbeat 2s ease-in-out infinite}.love-page .letter-footer .hearts-decoration .heart-svg:nth-child(1){animation-delay:0s}.love-page .letter-footer .hearts-decoration .heart-svg:nth-child(2){animation-delay:.2s;transform:scale(1.2)}.love-page .letter-footer .hearts-decoration .heart-svg:nth-child(3){animation-delay:.4s}.love-page .love-postscript{max-width:900px;margin:0 auto;padding:50px 60px;background:linear-gradient(135deg,#fffffff2,#fffafaf2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000001a;border:2px solid rgba(212,175,55,.3);position:relative;z-index:1}.love-page .love-postscript:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#ff6b9d,#c06c84,#d4af37);border-radius:var(--radius-lg);z-index:-1;opacity:.1}.love-page .love-postscript .postscript-header{text-align:center;margin-bottom:30px}.love-page .love-postscript .postscript-header .ps-icon{width:100px;height:100px;margin:0 auto;filter:drop-shadow(0 4px 12px rgba(212,175,55,.3))}.love-page .love-postscript .postscript-content .postscript-text{font-size:18px;line-height:2;color:#555;margin-bottom:20px;text-align:center}.love-page .love-postscript .postscript-content .postscript-highlight{margin-top:30px;padding:25px 30px;background:linear-gradient(135deg,#ff6b9d1a,#d4af371a);border-radius:16px;border:2px solid rgba(212,175,55,.3);font-size:20px;font-weight:700;color:#c06c84;text-align:center;letter-spacing:2px;position:relative;overflow:hidden}.love-page .love-postscript .postscript-content .postscript-highlight:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,215,0,.1) 50%,transparent 70%);animation:shimmerMove 3s linear infinite}.love-page .love-postscript .postscript-content .postscript-highlight .highlight-icon{font-size:24px;margin:0 10px;animation:sparkle 2s ease-in-out infinite}.love-page .love-postscript .postscript-content .postscript-highlight .highlight-icon:first-child{animation-delay:0s}.love-page .love-postscript .postscript-content .postscript-highlight .highlight-icon:last-child{animation-delay:1s}@keyframes heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(1.1)}20%,40%{transform:scale(1)}}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(20px,-20px)}}@keyframes envelopeBounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-10px)}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@keyframes shimmerMove{0%{transform:translate(-100%) translateY(-100%) rotate(45deg)}to{transform:translate(100%) translateY(100%) rotate(45deg)}}@media (max-width: 768px){.love-page{padding:30px 16px}.love-page .love-letter{padding:40px 30px 50px}.love-page .letter-envelope{top:-35px}.love-page .letter-envelope .envelope-emoji{font-size:50px}.love-page .letter-header{margin-bottom:30px;padding-bottom:20px}.love-page .letter-title{font-size:36px}.love-page .letter-text{font-size:16px;line-height:2}.love-page .letter-text .letter-bold{font-size:18px}.love-page .love-postscript{padding:40px 30px}.love-page .love-postscript .postscript-content h3{font-size:24px}.love-page .love-postscript .postscript-content p{font-size:16px}.love-page .love-postscript .postscript-content p strong{font-size:18px}}@media (max-width: 480px){.love-page .love-letter{padding:40px 20px}.love-page .letter-title{font-size:28px}.love-page .hearts{font-size:32px;letter-spacing:4px}.love-page .love-postscript{padding:30px 20px}}.app{min-height:100vh;width:100%}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #b08968;--secondary-color: #7f5a83;--accent-color: #ddb892;--highlight-color: #a4978e;--bg-primary: #faf8f5;--bg-secondary: #ffffff;--bg-overlay: rgba(255, 255, 255, .95);--bg-dark: #2d2d2d;--text-primary: #2d2d2d;--text-secondary: #6b6b6b;--text-light: #999999;--text-white: #ffffff;--gold: #d4af37;--rose-gold: #b76e79;--shadow-sm: 0 2px 12px rgba(45, 45, 45, .08);--shadow-md: 0 4px 20px rgba(45, 45, 45, .12);--shadow-lg: 0 8px 32px rgba(45, 45, 45, .16);--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--transition: all .3s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--text-primary: #e5e5e5;--text-secondary: #b3b3b3}body{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans SC,sans-serif,"Apple Color Emoji","Segoe UI Emoji";line-height:1.6;color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.02em}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--secondary-color)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.section{padding:100px 0}.btn{padding:14px 36px;border:none;border-radius:var(--radius-md);font-size:15px;font-weight:500;cursor:pointer;transition:var(--transition);letter-spacing:.05em}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background:var(--primary-color);color:#fff}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:.02em;line-height:1.3}@media (max-width: 768px){.section{padding:80px 0}.container{padding:0 16px}}@media (max-width: 480px){.section{padding:60px 0}}
