/* ==========================================================================
   utility.css — 小さな道具（u-）と、出現の動き
   ========================================================================== */

/* 本文へ移動（キーボードで最初に出るリンク） */
.u-skip { position: absolute; left: 8px; top: -80px; z-index: 100; padding: 8px 14px; border-radius: 6px; background: var(--c-ink); color: #fff; text-decoration: none; }
.u-skip:focus { top: 8px; }

/* 見えないが、読み上げには届く */
.u-vh { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

/* 出現（JS が動いたときだけ隠す。動かなければ最初から全部見える） */
.js [data-reveal] { opacity: 0; transform: translateY(16px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.js [data-reveal].is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .js [data-reveal] { opacity: 1; transform: none; transition: none; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
