/* App feel: smooth page-to-page transitions + touch polish. Visual only — no effect on content or SEO. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:af-out .16s ease-in both}
::view-transition-new(root){animation:af-in .28s cubic-bezier(.2,.7,.2,1) both}
@keyframes af-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes af-in{from{opacity:0;transform:translateY(12px)}}
@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}

html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
a,button,[role=button],label,summary,.btn{touch-action:manipulation}
/* press feedback on touch screens */
@media (hover:none){
  button:active,.btn:active,[role=button]:active{transform:scale(.97);transition:transform .08s}
}
/* installed app (no browser bar): keep content clear of the notch / home indicator */
@media (display-mode:standalone){
  body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
}
