html,body,#app{min-height:100dvh}body{margin:0;font-family:Inter,sans-serif;overflow-x:hidden;-webkit-tap-highlight-color:transparent}button,input{font:inherit}.custom-scrollbar::-webkit-scrollbar,.hide-scrollbar::-webkit-scrollbar{display:none}.pb-safe{padding-bottom:calc(env(safe-area-inset-bottom) + 16px)}.ios-blur{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.card-shadow{box-shadow:0 4px 12px #0000000d}.loading-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.spinner-ring{border-top-color:#005f9e;animation:spin .8s linear infinite}.shimmer{background:linear-gradient(90deg,#f3f3f6 25%,#edeef1,#f3f3f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.success-pop{animation:pop .4s cubic-bezier(.175,.885,.32,1.275)}.payout-pending-glow{animation:pulse-opacity 2s infinite ease-in-out}.check-item{transition:all .5s ease-in-out;opacity:0;transform:translateY(10px)}.check-item.visible{opacity:1;transform:translateY(0)}.security-lock-icon{transform-origin:center;will-change:transform,opacity}.security-lock-enter-active{animation:unlock-reveal .36s cubic-bezier(.22,1,.36,1)}.security-lock-leave-active{transition:opacity .14s cubic-bezier(.25,1,.5,1),transform .14s cubic-bezier(.25,1,.5,1)}.security-lock-leave-to{opacity:0;transform:translateY(2px) scale(.92)}.route-step-enter-active,.route-step-leave-active{transition:opacity .22s cubic-bezier(.25,1,.5,1),transform .22s cubic-bezier(.25,1,.5,1)}.route-step-enter-from{opacity:0;transform:translateY(10px)}.route-step-leave-to{opacity:0;transform:translateY(-6px)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes pulse-opacity{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}@keyframes unlock-reveal{0%{opacity:0;transform:translateY(4px) scale(.88) rotate(-8deg)}60%{opacity:1;transform:translateY(0) scale(1.05) rotate(2deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@media (prefers-reduced-motion: reduce){.security-lock-icon,.security-lock-enter-active,.security-lock-leave-active,.route-step-enter-active,.route-step-leave-active{animation:none;transition:none;will-change:auto}}
