/* ================================================================
   emit スクロール演出（トップ #emit-top・下層 #emit-lower 共通）
   2026-09-08 作成。手書きファイル（生成物ではない）。

   考え方
   ・隠す指定は html.emit-motion が付いているときだけ効く。
     この印は motion.js が最初に付けるので、**JSが動かない環境では最初から全部見えている**。
     （CSSだけで隠すと、JSが止まったとき本文が永久に出てこない）
   ・OSの「視差効果を減らす」設定では動かさない。
   ・ファーストビューは対象外（motion.js 側で除外）。読み込み直後に消えて見えるのを防ぐため。
   ================================================================ */

html.emit-motion .emit-reveal{
  opacity:0;
  transform:translateY(18px);
  will-change:opacity, transform;
}
html.emit-motion .emit-reveal.is-in{
  opacity:1;
  transform:none;
  transition:opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--emit-reveal-delay, 0ms);
}
/* 出たあとは will-change を外す（描画を無駄に抱えない） */
html.emit-motion .emit-reveal.is-done{ will-change:auto; }

/* 動きを減らす設定の人には出しっぱなしにする */
@media (prefers-reduced-motion: reduce){
  html.emit-motion .emit-reveal{ opacity:1; transform:none; }
  html.emit-motion .emit-reveal.is-in{ transition:none; }
}
