/* Light entrance animation: only opacity + transform (GPU-friendly), no blur, no per-card stagger. */
@keyframes ent-up{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes ent-fade{from{opacity:0}to{opacity:1}}
#app[data-enter="first"] .sidebar{animation:ent-fade .4s ease-out both}
#app[data-enter="first"] .topbar{animation:ent-fade .4s ease-out .05s both}
#app[data-enter] .content>.page-heading,
#app[data-enter] .content>.hero,
#app[data-enter] .content>section:nth-of-type(-n+3),
#app[data-enter] .content>.panel:nth-of-type(-n+3),
#app[data-enter] .content>div:nth-of-type(-n+3){animation:ent-up .42s cubic-bezier(.22,.8,.3,1) both}
#app[data-enter] .content>:nth-child(2){animation-delay:.05s}
#app[data-enter] .content>:nth-child(3){animation-delay:.1s}
#app[data-enter] .content>:nth-child(4){animation-delay:.14s}
.entrance-curtain{display:none!important}
@media(prefers-reduced-motion:reduce){#app[data-enter] *{animation:none!important}}
