:root{--bg-page: #141418;--screen-home: #0a0c12;--screen-grave: #0a0e16;--screen-night: #06070c;--screen-mygrave: #070a10;--screen-river: #070a12;--surface-card: rgba(255, 255, 255, .025);--border-hairline: rgba(255, 255, 255, .07);--border-control: rgba(255, 255, 255, .12);--text-primary: #f4f4fa;--text-body: #c2c6d2;--text-secondary: #9aa3b0;--text-dim: #7a7a88;--accent-moon: #e8c9a0;--accent-moon-glow: rgba(232, 201, 160, .5);--accent-silver: #c9d4e0;--nav-inactive: #6a6776;--mask-top: linear-gradient( 180deg, rgba(8, 9, 14, .55) 0%, rgba(8, 9, 14, .1) 30%, var(--screen-home) 100% );--mask-bottom: linear-gradient(transparent, var(--screen-home) 40%);--mask-detail: linear-gradient( 180deg, rgba(10, 14, 22, .5) 0%, transparent 22%, transparent 60%, rgba(10, 14, 22, .85) 100% );--font-serif-sc: "Noto Serif SC", serif;--font-serif-latin: "Cormorant Garamond", serif;--font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Source Han Sans SC", "Microsoft YaHei", sans-serif;--radius-screen: 36px;--radius-card: 14px;--radius-control: 11px}*{box-sizing:border-box}body{margin:0;background:var(--bg-page);font-family:var(--font-sans);color:#ececf2;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.pne{pointer-events:none}.riverscroll{-ms-overflow-style:none;scrollbar-width:none}.riverscroll::-webkit-scrollbar{display:none}@keyframes fglow{0%,to{opacity:.55}50%{opacity:1}}@keyframes bob{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(1deg)}}@keyframes sway{0%,to{transform:translate(0)}25%{transform:translate(var(--sway-amp, 5px))}75%{transform:translate(calc(-1 * var(--sway-amp, 5px)))}}@keyframes rippleRing{0%{transform:scale(.8);opacity:.5}to{transform:scale(2.7);opacity:0}}@keyframes riverDrift{0%{background-position:0 0}to{background-position:0 220px}}@keyframes ripple{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes riseIn{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes dotpulse{0%,80%,to{opacity:.22}40%{opacity:.95}}@keyframes countpulse{0%{opacity:.4}to{opacity:1}}@keyframes tick{0%{transform:scale(1)}40%{transform:scale(1.28);color:#f1ddbe}to{transform:scale(1)}}@keyframes ghostFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}@keyframes badgePop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.18)}to{transform:scale(1);opacity:1}}@keyframes marqueeY{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.marquee-track:hover{animation-play-state:paused}@keyframes riverFlow{0%{background-position:0 0}to{background-position:0 64px}}@keyframes tendFloat{0%{opacity:0;transform:translate(-50%,8px)}18%{opacity:1;transform:translate(-50%)}72%{opacity:1;transform:translate(-50%,-5px)}to{opacity:0;transform:translate(-50%,-13px)}}@keyframes ghostBob{0%,to{transform:translateY(0) rotate(-2.5deg)}50%{transform:translateY(-7px) rotate(2.5deg)}}@keyframes crestShimmer{0%,to{transform:scale(1);opacity:.82}50%{transform:scale(1.09);opacity:1}}@keyframes moodDrop{0%{opacity:0;transform:translate(-50%,-8px) scale(.78)}16%{opacity:1;transform:translate(-50%) scale(1)}68%{opacity:1;transform:translate(-50%,26px) scale(1)}to{opacity:0;transform:translate(-50%,46px) scale(.96)}}@keyframes ghostLift{0%{transform:translateY(0) scale(1)}32%{transform:translateY(-13px) scale(1.09)}66%{transform:translateY(-5px) scale(1.04)}to{transform:translateY(0) scale(1)}}@keyframes ghostSweep{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-8px) rotate(-10deg)}75%{transform:translate(8px) rotate(10deg)}}@keyframes ghostPluck{0%,to{transform:translateY(0) scaleY(1)}42%{transform:translateY(10px) scaleY(.88)}64%{transform:translateY(-4px) scaleY(1.03)}}@keyframes ghostDrift{0%,to{transform:translate(-9px)}50%{transform:translate(9px)}}@keyframes ghostPop{0%{transform:translateY(0) scale(1)}35%{transform:translateY(-12px) scale(1.12)}60%{transform:translateY(2px) scale(.96)}to{transform:translateY(0) scale(1)}}@keyframes partRise{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}22%{opacity:1}to{opacity:0;transform:translate(-50%,-185%) scale(1.05)}}@keyframes goddessRise{0%{opacity:0;transform:translate(-50%,-50%) translateY(20px) scale(.6)}24%{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1.15)}74%{opacity:1;transform:translate(-50%,-50%) translateY(-6px) scale(1.15)}to{opacity:0;transform:translate(-50%,-50%) translateY(-14px) scale(1.02)}}@keyframes haloSpin{0%,to{opacity:.55;transform:translate(-50%) rotate(-10deg) scale(1)}50%{opacity:1;transform:translate(-50%) rotate(10deg) scale(1.1)}}@keyframes moonbeam{0%{opacity:0;transform:scaleY(.15)}30%{opacity:.85;transform:scaleY(1)}74%{opacity:.7;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}@keyframes graveReceive{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}44%{opacity:1;transform:translate(-50%,-50%) scale(1)}80%{opacity:.9;transform:translate(-50%,-50%) scale(1.06)}to{opacity:0;transform:translate(-50%,-50%) scale(1.16)}}@keyframes flowerConjure{0%{opacity:0;transform:scale(0) rotate(-50deg)}60%{opacity:1;transform:scale(1.18) rotate(10deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes flowerDrop{0%{transform:translate(-50%)}24%{transform:translate(-50%)}74%{transform:translate(-50%,var(--drop));animation-timing-function:cubic-bezier(.45,0,.85,.5)}86%{transform:translate(-50%,calc(var(--drop) - 13px))}to{transform:translate(-50%,var(--drop))}}@keyframes landRing{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}30%{opacity:.85}to{opacity:0;transform:translate(-50%,-50%) scale(1.7)}}@keyframes droneArrive{0%{opacity:0;left:-16%;top:30%}12%{opacity:1}40%{left:42%;top:40%}56%{left:58%;top:50%}64%{left:59%;top:53%}78%{left:59%;top:51%}90%{left:73%;top:40%}to{opacity:0;left:118%;top:30%}}@keyframes lampReceive{0%,46%{opacity:0;transform:translate(-50%,-50%) scale(.3)}64%{opacity:1;transform:translate(-50%,-50%) scale(1)}82%{opacity:.9;transform:translate(-50%,-50%) scale(1.06)}to{opacity:0;transform:translate(-50%,-50%) scale(1.14)}}@keyframes droneBob{0%,to{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(-6deg) translateY(-5px)}}@keyframes lanternSwing{0%,to{transform:translate(-50%) rotate(-8deg)}50%{transform:translate(-50%) rotate(8deg)}}@keyframes heartGrow{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}28%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(2.6)}}@keyframes clothWipe{0%{opacity:0;transform:translate(-14px) rotate(-8deg)}14%{opacity:1}30%{transform:translate(14px) rotate(8deg)}50%{transform:translate(-12px) rotate(-7deg)}70%{transform:translate(12px) rotate(7deg)}86%{opacity:1;transform:translate(-5px) rotate(-3deg)}to{opacity:0;transform:translate(0) rotate(0)}}@keyframes dustLift{0%{opacity:0;transform:translate(0) scale(.5)}28%{opacity:.9}to{opacity:0;transform:translate(var(--dx, 0),-26px) scale(1)}}@keyframes wipeShine{0%,64%{opacity:0;transform:translate(-50%,-50%) scale(.6)}82%{opacity:.8;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.1)}}@keyframes grassYank{0%{opacity:0;transform:translateY(0) scaleY(.4) rotate(0)}22%{opacity:1;transform:translateY(0) scaleY(1) rotate(0)}46%{transform:translateY(2px) scaleY(1) rotate(-5deg)}60%{transform:translateY(-18px) scaleY(1.05) rotate(9deg)}to{opacity:0;transform:translateY(-44px) scale(.9) rotate(26deg)}}@keyframes soilPuff{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}40%{opacity:.7}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}@keyframes mistScatter{0%,to{opacity:.9}48%,52%{opacity:.12}}@keyframes markReveal{0%,to{opacity:.32;filter:blur(2.5px);transform:translateY(3px)}50%{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes shoreReveal{0%,to{opacity:.45;transform:translate(-50%) scaleX(.9)}50%{opacity:1;transform:translate(-50%) scaleX(1.06)}}@keyframes moonBreathe{0%,to{transform:scale(1);opacity:.82}50%{transform:scale(1.06);opacity:1}}@keyframes mistDriftA{0%{transform:translate(0) scale(1)}50%{transform:translate(42px,-8px) scale(1.14)}to{transform:translate(0) scale(1)}}@keyframes mistDriftB{0%{transform:translate(0) scale(1.06)}50%{transform:translate(-48px,7px) scale(1)}to{transform:translate(0) scale(1.06)}}@keyframes mistDriftC{0%{transform:translate(0) scale(1)}50%{transform:translate(28px,11px) scale(1.16)}to{transform:translate(0) scale(1)}}@keyframes screenEnter{0%{opacity:0;transform:scale(1.02);filter:blur(9px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes screenExit{0%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(.985);filter:blur(7px)}}@keyframes screenReveal{0%{transform:scale(1.035);filter:blur(7px)}to{transform:scale(1);filter:blur(0)}}.screen-enter{animation:screenEnter .52s cubic-bezier(.25,.8,.3,1) both}.screen-exit{animation:screenExit .46s ease both;pointer-events:none}.screen-reveal{animation:screenReveal .9s cubic-bezier(.22,.75,.25,1) both}@keyframes veilIn{0%{opacity:0}to{opacity:1}}@keyframes veilOut{0%{opacity:1}to{opacity:0}}@keyframes veilTitle{0%{opacity:0;transform:translateY(12px);letter-spacing:3px}to{opacity:1;transform:translateY(0);letter-spacing:8px}}@keyframes staggerRise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.stagger-rise>*{animation:staggerRise .55s cubic-bezier(.22,.75,.25,1) both}.stagger-rise>*:nth-child(1){animation-delay:.05s}.stagger-rise>*:nth-child(2){animation-delay:.13s}.stagger-rise>*:nth-child(3){animation-delay:.21s}.stagger-rise>*:nth-child(4){animation-delay:.29s}.stagger-rise>*:nth-child(5){animation-delay:.37s}.stagger-rise>*:nth-child(n+6){animation-delay:.45s}.tap{transition:transform .18s cubic-bezier(.3,.7,.4,1.4)}.tap:active{transform:scale(.92)}.tap-soft{transition:transform .22s ease}.tap-soft:active{transform:scale(.98)}@keyframes kenburns{0%{transform:scale(1)}to{transform:scale(1.07) translateY(-4px)}}@keyframes pillGlow{0%,to{box-shadow:0 8px 24px -10px #000000b3,0 0 12px #e8c9a01a}50%{box-shadow:0 8px 24px -10px #000000b3,0 0 26px #e8c9a052}}.chat-pill{animation:pillGlow 3.2s ease-in-out infinite;transition:transform .18s ease}.chat-pill:active{transform:translate(-50%) scale(.95)!important}@keyframes navPop{0%{transform:scale(.75);opacity:.3}55%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}button.ub{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit;letter-spacing:inherit;line-height:inherit;display:block;cursor:pointer;-webkit-tap-highlight-color:transparent}button.ub:disabled{cursor:default}button.ub:focus-visible{outline:2px solid rgba(232,201,160,.65);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
