/* animations.css — scroll-gedreven beweging (reveal + balken vollopen + scrub).
   JS zet .is-on; timing en eindtoestanden staan hier. Volledige terugval onder
   prefers-reduced-motion. Overgenomen uit _modulair. */

/* A. reveal-on-scroll */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .55s cubic-bezier(.2,.8,.2,1);}
.reveal.is-on{opacity:1;transform:none;}

/* B. balken vollopen (findings + rowgauge) */
.finding .fmeter > i{transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,1,.3,1);}
.finding.is-on .fmeter > i{transform:scaleX(1);}

/* C. scrub-tekst: woorden lichten op (bij laden) */
.scrub-load .word{opacity:.22;transition:opacity .5s ease;}
.scrub-load .word.accent{color:var(--accent);}
.scrub-load.is-on .word{opacity:1;}

/* wizard: nieuwe vraagkaart faadt in */
.qcard.q-enter{animation:qfade .3s ease;}
@keyframes qfade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}

@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
  .finding .fmeter > i{transition:none;transform:scaleX(1);}
  .scrub-load .word{opacity:1;transition:none;}
  .progbar > i{transition:none;}
  .qcard.q-enter{animation:none;}
}
