/* Marketing motion: each chapter assembles once; decorative planes follow native scroll.
   All curves reuse website.css tokens. Reading surfaces and controls remain stationary. */
.page-scroll-meter{position:fixed;inset:0 0 auto;height:3px;z-index:90;pointer-events:none;overflow:hidden;background:#00ff4106}
.page-scroll-meter>i{display:block;width:100%;height:100%;background:var(--green);transform:scaleX(0);transform-origin:left center;box-shadow:0 0 12px #00ff4155}
.motion-line-window{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}
.motion-line{display:block;transform-origin:left bottom}
.motion-ready [data-motion-reveal]{transition:transform 680ms var(--ease-out),opacity 600ms var(--ease-out);transition-delay:var(--reveal-delay,0ms)}
.motion-ready [data-motion-reveal="line"]{transition-duration:720ms,550ms}
.motion-ready [data-motion-reveal="cabinet"]{transition-duration:800ms,650ms;transform-origin:center bottom}
.motion-ready [data-motion-reveal="character"]{transition-duration:850ms,600ms;transform-origin:center bottom}
.motion-ready [data-motion-reveal="surface"]{transition-duration:300ms,300ms}
.motion-enabled [data-motion-reveal]:not([data-motion-visible]){opacity:0;transform:translate3d(0,24px,0)}
.motion-enabled [data-motion-reveal="line"]:not([data-motion-visible]){transform:translate3d(0,108%,0) rotate(2deg)}
.motion-enabled [data-motion-reveal="cabinet"]:not([data-motion-visible]){transform:perspective(1100px) translate3d(0,30px,0) rotateX(5deg) scale(.97)}
.motion-enabled [data-motion-reveal="left"]:not([data-motion-visible]){transform:translate3d(-28px,18px,0)}
.motion-enabled [data-motion-reveal="right"]:not([data-motion-visible]){transform:translate3d(28px,18px,0)}
.motion-enabled [data-motion-reveal="character"]:not([data-motion-visible]){transform:translate3d(0,65px,0) scale(.96)}
.motion-enabled [data-motion-reveal="surface"]:not([data-motion-visible]){transform:none}
.motion-ready [data-motion-visible]{opacity:1;transform:none}
.motion-ready [data-motion-instant]{transition:none!important}
.hero-arena .hero-fighter,.hero-arena .market-ghost,.hero-arena .arena-watermark{backface-visibility:hidden}
.motion-enabled .hero-arena:not(.sprite-offscreen) .hero-fighter,.motion-enabled .hero-arena:not(.sprite-offscreen) .market-ghost{will-change:transform}
.hero-arena .arena-bottom>span{position:relative;opacity:.48}
.hero-arena .arena-bottom>span:first-child{opacity:1}
.hero-arena .arena-bottom>span::after{content:'';position:absolute;inset:auto 0 -7px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left center}
.hero-arena .arena-bottom>span[data-flow-active]::after{transform:scaleX(1)}
.world-strip{position:relative;isolation:isolate}
.market-flow-track{position:absolute;inset:auto 0 0;height:1px;background:#23412d;pointer-events:none;overflow:visible}
.market-flow-track>i{position:absolute;inset:0;background:var(--green);transform:scaleX(0);transform-origin:left center}
.market-flow-signal{position:absolute;bottom:-3px;left:0;width:7px;height:7px;background:var(--green);box-shadow:0 0 15px #00ff4190;transform:translate3d(0,0,0) rotate(45deg);opacity:0}
.world-strip .market-flow-stage{position:relative}
.world-strip .market-flow-stage::before{content:'';position:absolute;inset:-12px -13px;border:1px solid #00ff4127;background:#00ff4105;opacity:0;pointer-events:none}
.world-strip .market-flow-stage[data-flow-active]::before{opacity:1}
.section-heading{position:relative}
.chapter-trace{position:absolute;left:0;bottom:-16px;width:42px;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left center;pointer-events:none;transition:transform 650ms var(--ease-in-out)}
.chapter-trace[data-motion-visible]{transform:scaleX(1)}
.roster-stage{isolation:isolate}
.roster-stage::after{content:'';position:absolute;left:48%;right:6%;bottom:16px;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.28;pointer-events:none}
.npc-card .roster-stage::after{background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.motion-enabled .roster-card:not(.sprite-offscreen) .roster-watermark{will-change:transform}
.motion-disabled [data-motion-reveal],.page-hidden [data-motion-reveal],.motion-paused [data-motion-reveal]{transition:none!important}
.motion-disabled .chapter-trace,.page-hidden .chapter-trace,.motion-paused .chapter-trace{transition:none!important}
.motion-paused .page-scroll-meter,.motion-disabled .market-flow-signal{opacity:0}
.motion-paused .hero-fighter,.motion-paused .market-ghost,.motion-paused .roster-watermark,.page-hidden .hero-fighter,.page-hidden .market-ghost,.page-hidden .roster-watermark{will-change:auto!important}
@media(max-width:760px){
 .page-scroll-meter{height:2px}
 .motion-ready [data-motion-reveal]{transition-duration:550ms,450ms}
 .motion-ready [data-motion-reveal="line"]{transition-duration:650ms,500ms}
 .motion-ready [data-motion-reveal="character"]{transition-duration:700ms,500ms}
 .motion-enabled [data-motion-reveal="cabinet"]:not([data-motion-visible]){transform:translate3d(0,18px,0) scale(.98)}
 .motion-enabled [data-motion-reveal="left"]:not([data-motion-visible]),.motion-enabled [data-motion-reveal="right"]:not([data-motion-visible]){transform:translate3d(0,20px,0)}
 .chapter-trace{bottom:-12px;width:30px}
 .world-strip .market-flow-stage::before{inset:-5px -8px}
 .roster-stage::after{left:51%;right:4%;bottom:15px}
}
@media(prefers-reduced-motion:reduce){
 .page-scroll-meter,.market-flow-track{display:none}
 [data-motion-reveal]{opacity:1!important;transform:none!important;transition:none!important}
 .chapter-trace{transform:scaleX(1);transition:none}
 .world-strip .market-flow-stage::before{display:none}
 .hero-arena .hero-fighter,.hero-arena .market-ghost,.hero-arena .roster-watermark{will-change:auto!important}
}
/* Confine the moving signal even if the viewport changes while this strip is offscreen. */
.market-flow-track{height:9px;bottom:0;overflow:hidden;background:linear-gradient(to top,#23412d 0 1px,transparent 1px)}
.market-flow-track>i{inset:auto 0 0;height:1px}
