:root{--color-sky: #1B2A4A;--color-sky-deep: #0F1B33;--color-gold: #F5C86B;--color-gold-soft: #E8B84F;--color-jade: #F0EDE4;--color-jade-dim: rgba(240, 237, 228, .7);--text-hero: clamp(3rem, 8vw, 7rem);--text-sub: clamp(1rem, 2.2vw, 1.25rem);--text-meta: clamp(.75rem, 1.2vw, .9rem);--text-wish: clamp(1.4rem, 3vw, 2.4rem);--dur-slow: 4s;--dur-norm: 1.5s;--dur-fast: 1s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-gentle: cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;font-family:"Noto Serif SC",ZCOOL XiaoWei,serif;color:var(--color-jade)}.poster{position:relative;width:100vw;height:100vh;overflow:hidden;background:radial-gradient(ellipse 80% 60% at 50% 110%,rgba(245,200,107,.06) 0%,transparent 60%),linear-gradient(180deg,var(--color-sky) 0%,var(--color-sky-deep) 100%)}.stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.star{position:absolute;width:2px;height:2px;background:var(--color-jade);border-radius:50%;opacity:.3}.moon-wrap{position:absolute;top:12%;left:50%;transform:translate(-50%,-50%);width:220px;height:220px;pointer-events:none}.moon{width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 50% 50%,#fff8e0,#f8e8a0,#f5c86b 60%,#d4a843);box-shadow:0 0 30px #f5c86b8c,0 0 70px #f5c86b59,0 0 140px #f5c86b33,0 0 240px #f5c86b1f}.clouds{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.cloud{position:absolute;color:var(--color-jade);opacity:.18;filter:drop-shadow(0 0 12px rgba(245,200,107,.08))}.lanterns{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.lantern{position:absolute;top:0}.content{position:relative;z-index:10;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 24px;text-align:center}.title-block{margin-bottom:40px}.title-main{font-family:ZCOOL XiaoWei,"Noto Serif SC",serif;font-size:var(--text-hero);font-weight:400;color:var(--color-gold);letter-spacing:.12em;line-height:1.1;text-shadow:0 2px 20px rgba(245,200,107,.3);margin-bottom:16px}.title-sub{font-size:var(--text-sub);color:var(--color-jade);letter-spacing:.4em;line-height:1.6;opacity:.9}.title-date{font-size:var(--text-meta);color:var(--color-jade-dim);letter-spacing:.25em;margin-top:10px}.title-decor{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:14px;color:var(--color-gold);opacity:.6;font-size:.7rem;letter-spacing:.5em}.title-decor-line{width:48px;height:1px;background:var(--color-gold);opacity:.5}.wish-block{width:100%;max-width:480px;margin-top:8px}.wish-display{font-family:ZCOOL XiaoWei,"Noto Serif SC",serif;font-size:var(--text-wish);color:var(--color-gold);letter-spacing:.08em;line-height:1.5;min-height:2.5em;display:flex;align-items:center;justify-content:center;padding:16px 20px;border-top:1px solid rgba(245,200,107,.3);border-bottom:1px solid rgba(245,200,107,.3);margin-bottom:16px}.wish-default{color:var(--color-jade-dim);font-size:.85em}.wish-input{width:100%;background:#f0ede40a;border:1px solid rgba(240,237,228,.15);border-radius:4px;color:var(--color-jade);font-family:"Noto Serif SC",serif;font-size:.95rem;padding:12px 16px;text-align:center;outline:none;transition:border-color var(--dur-fast) var(--ease-gentle),background var(--dur-fast) var(--ease-gentle)}.wish-input::placeholder{color:var(--color-jade-dim);font-size:.85rem}.wish-input:focus{border-color:#f5c86b80;background:#f0ede412}.corner-mark{position:absolute;bottom:20px;left:50%;transform:translate(-50%);z-index:10;font-size:.65rem;color:var(--color-jade-dim);letter-spacing:.4em;opacity:.5}@media (prefers-reduced-motion: no-preference){@keyframes twinkle{0%,to{opacity:.3}50%{opacity:1}}@keyframes moonGlow{0%,to{box-shadow:0 0 30px #f5c86b8c,0 0 70px #f5c86b59,0 0 140px #f5c86b33,0 0 240px #f5c86b1f}50%{box-shadow:0 0 35px #f5c86ba6,0 0 80px #f5c86b6b,0 0 160px #f5c86b3d,0 0 260px #f5c86b26}}@keyframes sway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(3deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.moon-wrap .moon{animation:moonGlow var(--dur-slow) ease-in-out infinite}.star{animation:twinkle var(--dur-slow) ease-in-out infinite}.lantern{transform-origin:top center;animation:sway 5s ease-in-out infinite}.title-block>*{animation:fadeUp var(--dur-norm) var(--ease-out-expo) both}.title-block .title-main{animation-delay:.2s}.title-block .title-sub{animation-delay:.5s}.title-block .title-date{animation-delay:.8s}.title-block .title-decor{animation-delay:1.1s}.wish-block{animation:fadeUp var(--dur-norm) var(--ease-out-expo) both;animation-delay:1.3s}}.poster.is-desktop .moon-wrap{top:18%;left:78%;width:280px;height:280px}.poster.is-desktop .content{align-items:flex-start;justify-content:center;padding:0 10%;text-align:left}.poster.is-desktop .title-block{margin-bottom:48px}.poster.is-desktop .title-main{font-size:clamp(3.5rem,9vw,7.5rem);letter-spacing:.08em}.poster.is-desktop .title-sub{letter-spacing:.3em}.poster.is-desktop .title-decor{justify-content:flex-start}.poster.is-desktop .wish-block{max-width:560px;margin-top:12px}.poster.is-desktop .wish-display{justify-content:flex-start;padding:20px 24px}.poster.is-desktop .corner-mark{left:10%;transform:none;bottom:28px}
