/* Animation 01 A, in-place reveal. Decorative only: nothing travels. Each step cell has its own clipped overlay
   that lights in place; anim.js writes transform/opacity. Overlays sit under the Ora outline (z 5) and above
   the row dividers (z 3); position:relative on the step cells only creates their containing block. */
.ax{position:absolute;inset:0;z-index:4;pointer-events:none}
.ax span{position:absolute;left:0;top:0;pointer-events:none}
/* each overlay is a child of its own step cell (inset 0, inherited radius), so it paints and pixel-snaps with
   the cell box itself: edge to edge, over the cell's side lines and its top divider, under the Ora outline */
.tbl > .rw:not(.rw--h):not(.rw--res) > .cl{position:relative}
.ax__c{position:absolute;inset:0;z-index:4;overflow:hidden;border-radius:inherit;pointer-events:none}
.ax__c > span{position:absolute;left:0;top:0;pointer-events:none}
.ax__g,.ax__w,.ax__s{inset:0;width:100%;height:100%;opacity:0}
/* glow: a full-bleed fill, slightly stronger on the badge side; no inner frame line */
.ax__c--a .ax__g{background:linear-gradient(90deg,rgba(255,255,255,.11),rgba(255,255,255,.075))}
.ax__c--ag .ax__g{background:linear-gradient(90deg,rgba(216,147,175,.20),rgba(216,147,175,.13))}
.ax__c--fl .ax__g{background:linear-gradient(90deg,rgba(140,197,212,.18),rgba(140,197,212,.12))}
/* Flow: one crisp sweep, left to right */
.ax__w{transform-origin:0 50%;background:linear-gradient(90deg,rgba(140,197,212,0),rgba(140,197,212,.16) 85%,rgba(140,197,212,.34))}
/* Agent: a soft light band passes through while it reasons */
.ax__s{width:42%;background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.07) 45%,rgba(255,255,255,.10) 50%,rgba(255,255,255,.07) 55%,rgba(255,255,255,0))}
.ax__c--ag .ax__s{background:linear-gradient(100deg,rgba(216,147,175,0),rgba(216,147,175,.13) 45%,rgba(216,147,175,.19) 50%,rgba(216,147,175,.13) 55%,rgba(216,147,175,0))}
/* pulse rings, sized and centered by anim.js; they scale in place */
.ax__rg{border-radius:50%;border:1.5px solid currentColor;opacity:0;will-change:transform,opacity}
.ax__rg--req{color:rgba(255,255,255,.7)}
.ax__rg--a{color:#AEB3C1}
.ax__rg--b{color:#D893AF}
.ax__rg--risk{color:#F05742}
