/* Shared PHP -> React parity effects. Keep visual motion tasteful and accessible. */
.php-wallet-hero,.php-balance-row,.php-wallet-actions a,.php-wallet-usage,.php-cashback-banner,.php-trust-strip{animation:akWalletRise .42s both}
.php-balance-row:nth-child(2),.php-wallet-actions a:nth-child(2){animation-delay:.05s}.php-balance-row:nth-child(3),.php-wallet-actions a:nth-child(3){animation-delay:.1s}.php-wallet-actions a:nth-child(4){animation-delay:.15s}.php-wallet-actions a:nth-child(5){animation-delay:.2s}
.php-wallet-hero:before,.php-wallet-actions a:before,.php-cashback-banner:before{content:"";position:absolute;z-index:1;inset:-45% auto -45% -55%;width:34%;pointer-events:none;background:linear-gradient(100deg,transparent,#ffffffa8,transparent);transform:skewX(-18deg);animation:akWalletShine 3.3s ease-in-out infinite}
.php-wallet-hero,.php-wallet-actions a,.php-cashback-banner{position:relative;overflow:hidden}.php-wallet-hero>*,.php-wallet-actions a>*,.php-cashback-banner>*{position:relative;z-index:2}
.php-wallet-art{animation:akWalletFloat 3s ease-in-out infinite}.php-balance-icon{animation:akIconPulse 2.5s ease-in-out infinite}.php-balance-row:active{transform:scale(.985)}
.php-promo-overlay{overscroll-behavior:contain}.php-promo-sheet{scrollbar-width:thin}
.php-reward-pop{animation:akRewardPop .3s cubic-bezier(.2,.85,.25,1.08)}
.php-reward-pop .reward-day.today{animation:akRewardGlow 1.8s ease-in-out infinite}.php-reward-pop .reward-day.today svg,.php-reward-pop .reward-day.today .reward-coin{animation:akRewardFloat 2s ease-in-out infinite}
.php-reward-pop .reward-claim:not(:disabled){position:relative;overflow:hidden}.php-reward-pop .reward-claim:not(:disabled):after{content:"";position:absolute;inset:-60% auto -60% -45%;width:30%;background:linear-gradient(100deg,transparent,#fff9,transparent);transform:skewX(-18deg);animation:akWalletShine 2.4s ease-in-out infinite}
@keyframes akWalletRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes akWalletFloat{0%,100%{transform:skew(-4deg) translateY(0)}50%{transform:skew(-4deg) translateY(-5px)}}
@keyframes akWalletShine{0%,58%{left:-55%}82%,100%{left:135%}}
@keyframes akIconPulse{0%,100%{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.12);transform:scale(1.055)}}
@keyframes akRewardPop{from{opacity:0;transform:translateY(35px) scale(.96)}to{opacity:1;transform:none}}
@keyframes akRewardGlow{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 9px #ffc92899)}}
@keyframes akRewardFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-4px) rotate(2deg)}}
@media(prefers-reduced-motion:reduce){.php-wallet-hero,.php-balance-row,.php-wallet-actions a,.php-wallet-usage,.php-cashback-banner,.php-trust-strip,.php-wallet-art,.php-balance-icon,.php-reward-pop,.php-reward-pop .reward-day.today,.php-reward-pop .reward-day.today svg,.php-reward-pop .reward-day.today .reward-coin,.php-wallet-hero:before,.php-wallet-actions a:before,.php-cashback-banner:before,.php-reward-pop .reward-claim:after{animation:none!important;transition:none!important}}
