/* A single opening sequence; independent of app and API rendering. */
.jaypay-splash{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#e8ecd9;color:#151715;animation:jaypay-splash-exit .4s 3.15s cubic-bezier(.4,0,.2,1) both;pointer-events:auto}
.splash-words{display:flex;flex-direction:column;align-items:center;gap:3px;padding:30px;width:100%;font-family:Jakarta,Manrope,sans-serif;font-weight:800;font-size:clamp(64px,16vw,142px);letter-spacing:-.075em;line-height:1.1}
.splash-word{display:block;will-change:transform,opacity}
.splash-shop{color:#297044;animation:jaypay-shop .7s .15s cubic-bezier(.16,1,.3,1) both}
.splash-earn{color:#d62e36;animation:jaypay-earn .7s .95s cubic-bezier(.16,1,.3,1) both}
.splash-grow{color:#151715;animation:jaypay-grow .7s 1.75s cubic-bezier(.16,1,.3,1) both}
.splash-line{position:absolute;bottom:max(48px,env(safe-area-inset-bottom));left:50%;width:44px;height:3px;border-radius:2px;background:#a3b08c;transform:translateX(-50%);transform-origin:center;animation:jaypay-line 3.1s linear both}
@keyframes jaypay-shop{0%{opacity:0;transform:translateX(-100vw)}100%{opacity:1;transform:translateX(0)}}
@keyframes jaypay-earn{0%{opacity:0;transform:scale(.25)}65%{opacity:1;transform:scale(1.09)}100%{opacity:1;transform:scale(1)}}
@keyframes jaypay-grow{0%{opacity:0;transform:translateX(100vw)}100%{opacity:1;transform:translateX(0)}}
@keyframes jaypay-line{from{transform:translateX(-50%) scaleX(.15);opacity:.35}to{transform:translateX(-50%) scaleX(1);opacity:1}}
@keyframes jaypay-splash-exit{to{opacity:0;visibility:hidden}}
@media(prefers-reduced-motion:reduce){.jaypay-splash{animation:jaypay-splash-exit .2s .65s both}.splash-word,.splash-line{animation:none}.splash-word{will-change:auto}}
