/* Shared light-weight route transitions for the approved dashboard and trading page. */
@media(prefers-reduced-motion:no-preference){
 html{scroll-behavior:smooth}
 body.route-enter main,body.route-enter .shell{animation:routeIn .22s ease-out both}
 body.route-leaving main,body.route-leaving .shell{opacity:.84;transform:translateY(3px);transition:opacity .12s ease,transform .12s ease}
 .bottom a,.bottom-nav a,.bottom-nav button{transition:background-color .15s ease,filter .15s ease,transform .15s ease}
 .bottom a:active,.bottom-nav a:active,.bottom-nav button:active{filter:brightness(1.2);transform:scale(.97)}
 @keyframes routeIn{from{opacity:.75;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
}
/* Keep fixed dashboard nav anchored to viewport: transformed ancestors trap fixed descendants. */
@media(prefers-reduced-motion:no-preference){
 body.route-enter .shell,body.route-leaving .shell{animation:none!important;transform:none!important;filter:none!important;contain:none!important}
}
#dashboard:not(.hidden) .bottom-nav{position:fixed!important;bottom:calc(7px + env(safe-area-inset-bottom))!important;left:4px!important;right:4px!important;z-index:9999!important}
