/* Cyber Pusa — scroll motion hooks (js/scroll.js).
 * Hidden start states are set by scroll.js itself, so if it never runs nothing stays hidden.
 */

/* section rule draws left → right */
.label {
  border-bottom-color: transparent;
  background: linear-gradient(var(--hair), var(--hair)) 0 100% / var(--rule, 100%) 1px no-repeat;
}

/* the vow, split into lines and wiped in like a brush stroke */
.vow__line {
  display: block;
  width: fit-content;
  -webkit-mask-image: linear-gradient(90deg, #000 calc(var(--wipe, 120%) - 20%), transparent var(--wipe, 120%));
          mask-image: linear-gradient(90deg, #000 calc(var(--wipe, 120%) - 20%), transparent var(--wipe, 120%));
}
.js.motion .tiles.is-waiting .pcol, .js.motion .tiles.is-waiting .psum__item { opacity: 0; }
