/* Module animations, ported from the previous build by tools/port_anims.py.
   Motion is unchanged. The palette is remapped here, on the panel, so the
   animations read in Clinic Conductor's colours: ink panel, gold for the
   Clinic Conductor gate, sage for resolved, coral for anything held or
   rejected. Every accent measures 5.9 to 8.9 to 1 against the ink panel. */
.od-wrap,.anim{
  --panel:#0F2540; --panel-2:#173454; --panel-line:rgba(250,240,227,.17); --panel-sub:#B3C1D0;
  --pulse:#FCBF53; --sig-green:#88BFB7; --alert:#FE9B73;
  --font-text:"Figtree","Helvetica Neue",Arial,sans-serif;
  --on-dark-soft:#BCC7D4;
}
.od-wrap{margin:0;border-radius:18px;border:1px solid rgba(17,41,68,.2);
  padding:22px clamp(14px,3vw,26px) 18px;overflow:hidden;
  background:radial-gradient(120% 110% at 80% 0,rgba(254,155,115,.16),transparent 55%),
             radial-gradient(90% 90% at 0% 100%,rgba(136,191,183,.14),transparent 60%),
             linear-gradient(160deg,#173454,#0F2540)}
.od-wrap figcaption{margin-top:16px;text-align:left;font-size:.95rem;line-height:1.55;color:#C7D2DE;max-width:70ch}
/* panels keep a readable scale on a phone and scroll sideways instead */

@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .anim .a-row,.od-wrap:not(.is-ctl) .anim .a-row-t,.od-wrap:not(.is-ctl) .anim .a-src,.od-wrap:not(.is-ctl) .anim .a-src-t{opacity:1!important}.od-wrap:not(.is-ctl) .anim .a-rtick,.od-wrap:not(.is-ctl) .anim .a-ptick,.od-wrap:not(.is-ctl) .anim .a-qtick{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .anim .a-line{transform:scaleX(1)!important}.od-wrap:not(.is-ctl) .anim .a-flagdot,.od-wrap:not(.is-ctl) .anim .a-flagwrap{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .anim .a-x--big,.od-wrap:not(.is-ctl) .anim .a-deny{opacity:1!important}.od-wrap:not(.is-ctl) .anim .blocked{opacity:1!important}.od-wrap:not(.is-ctl) .anim .a-wv{transform:none!important}.od-wrap:not(.is-ctl) .anim .fdoc,.od-wrap:not(.is-ctl) .anim .a-token{opacity:0!important}.od-wrap:not(.is-ctl) .anim .vcall{opacity:0!important}.od-wrap:not(.is-ctl) .anim .vcall.v0{opacity:1!important}
}

.od-wrap figcaption{margin-top:14px;text-align:center;font-family:var(--font-text);font-size:13.5px;color:var(--text-soft)}
@media (max-width:760px){
  .od-stage{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:10px;margin:0 -4px}
  .od-stage .anim{min-width:720px}
  .od-wrap::before{content:"Swipe across the drawing to follow the full sequence";display:block;
    font-family:var(--font-text);font-size:11px;font-weight:700;letter-spacing:.06em;
    text-transform:uppercase;color:var(--panel-sub);margin-bottom:12px}
}
.anim{width:100%;height:auto;display:block}
.anim text{font-family:var(--font-text)}
.anim .a-mini{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;fill:var(--panel-sub)}
.anim .a-rail{fill:none;stroke:var(--panel-line);stroke-width:2;stroke-linecap:round}
.anim .a-rail--flow{stroke:var(--pulse);stroke-opacity:.6;stroke-dasharray:5 7;animation:flowdash 1.1s linear infinite}
.anim .a-tick{fill:none;stroke:var(--sig-green);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.anim .a-x{fill:none;stroke:var(--alert);stroke-width:2.6;stroke-linecap:round}
.anim .a-x--big{stroke-width:3.4}
.anim .a-doc{fill:#E9EFF5;stroke:#9DB0C2;stroke-width:1}
.anim .a-doc-l{stroke:#7D93A8;stroke-width:1.6;stroke-linecap:round;fill:none}
.anim .a-src{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1.2}
.anim .a-src-t{font-size:12px;font-weight:600;fill:#D6E0EA}
.anim .a-src--ok{stroke:var(--sig-green)}
.anim .a-gate{fill:var(--panel);stroke:var(--pulse);stroke-width:1.4}
.anim .a-gate-t{font-size:13px;font-weight:700;fill:var(--pulse)}
.anim .a-gate-s{font-size:9.5px;fill:var(--panel-sub)}
.anim .a-rail--bad{stroke:var(--alert);stroke-opacity:.7;stroke-dasharray:4 5}
.anim .a-out{fill:var(--panel-2);stroke-width:1.3}
.anim .a-out--ok{stroke:var(--sig-green)}
.anim .a-out-t{font-size:12px;font-weight:600;fill:#fff}
.anim .a-zone{fill:rgba(255,255,255,.03);stroke:var(--panel-line);stroke-width:1.2;stroke-dasharray:5 5}
.anim .a-zone-t{font-size:12px;font-weight:700;fill:#CBD7E3;letter-spacing:.04em}
.anim .a-store{fill:var(--panel-2);stroke:var(--sig-green);stroke-width:1.2}
.anim .a-store-t{font-size:11.5px;font-weight:600;fill:#D6E0EA}
.anim .a-store-s{font-size:9.5px;fill:var(--sig-green)}
.anim .a-lock{fill:none;stroke:var(--sig-green);stroke-width:1.8;stroke-linejoin:round}
.anim .a-band{stroke:var(--pulse);stroke-width:2;stroke-dasharray:6 6;fill:none;animation:flowdash 1.3s linear infinite}
.anim .a-band-t{font-size:11px;font-weight:600;fill:var(--pulse)}
.anim .a-token{fill:var(--pulse)}
.anim .a-deny{font-size:10.5px;font-weight:600;fill:var(--alert)}
@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .an-fax .fx-chip,.od-wrap:not(.is-ctl) .an-fax .fx-v0{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-fax .fx-v1,.od-wrap:not(.is-ctl) .an-fax .fx-scan{opacity:0!important}.od-wrap:not(.is-ctl) .an-fax .c10,.od-wrap:not(.is-ctl) .an-fax .c11,.od-wrap:not(.is-ctl) .an-fax .c12,.od-wrap:not(.is-ctl) .an-fax .c13{opacity:0!important}.od-wrap:not(.is-ctl) .an-intake .ib,.od-wrap:not(.is-ctl) .an-intake .if-row,.od-wrap:not(.is-ctl) .an-intake .if-t,.od-wrap:not(.is-ctl) .an-intake .if-tick{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-intake .il-t{opacity:0!important}.od-wrap:not(.is-ctl) .an-intake .l0{opacity:1!important}.od-wrap:not(.is-ctl) .an-proc .pr-node,.od-wrap:not(.is-ctl) .an-proc .pr-lbl{opacity:1!important}.od-wrap:not(.is-ctl) .an-proc .pr-ring{opacity:0!important}.od-wrap:not(.is-ctl) .an-reports .rp-cell.cool{opacity:.16!important}.od-wrap:not(.is-ctl) .an-reports .rp-cell.hot{opacity:1!important;fill:var(--alert)!important}.od-wrap:not(.is-ctl) .an-reports .rp-out,.od-wrap:not(.is-ctl) .an-reports .rp-out-t,.od-wrap:not(.is-ctl) .an-reports .rp-dot,.od-wrap:not(.is-ctl) .an-reports .rp-count--ok{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-forms .fm-fly{opacity:0!important}.od-wrap:not(.is-ctl) .an-forms .fm-dest-v,.od-wrap:not(.is-ctl) .an-forms .fm-tick{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-voice .vc-call{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-voice .vc-h{fill:var(--pulse)!important}.od-wrap:not(.is-ctl) .an-voice .vc-tot{opacity:1!important}.od-wrap:not(.is-ctl) .an-voice .vc-w{transform:none!important}
}
.anim{width:100%;height:auto;display:block}
.anim text{font-family:var(--font-text)}
.anim .a-src{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1.2}
.anim .a-src-t{font-size:12px;font-weight:600;fill:#D6E0EA}
.anim .a-src--ok{stroke:var(--sig-green)}
.anim .a-gate{fill:var(--panel);stroke:var(--pulse);stroke-width:1.4}
.anim .a-gate-t{font-size:13px;font-weight:700;fill:var(--pulse)}
.anim .a-gate-s{font-size:9.5px;fill:var(--panel-sub)}
.anim .a-rail{fill:none;stroke:var(--panel-line);stroke-width:2;stroke-linecap:round}
.anim .a-rail--flow{stroke:var(--pulse);stroke-opacity:.75;stroke-dasharray:5 7;animation:flowdash 1.1s linear infinite}
.anim .a-rail--ok{stroke:var(--sig-green);stroke-opacity:.6}
.anim .a-rail--bad{stroke:var(--alert);stroke-opacity:.7;stroke-dasharray:4 5}
.anim .a-doc{fill:#E9EFF5;stroke:#9DB0C2;stroke-width:1}
.anim .a-doc-l{stroke:#7D93A8;stroke-width:1.6;stroke-linecap:round;fill:none}
.anim .a-tick{fill:none;stroke:var(--sig-green);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.anim .a-x{fill:none;stroke:var(--alert);stroke-width:2.6;stroke-linecap:round}
.anim .a-x--big{stroke-width:3.4}
.anim .a-lane{font-size:12px;font-weight:600;fill:#CBD7E3}
.anim .a-lane--bad{fill:var(--alert);font-size:11px}
.anim .a-row{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1}
.anim .a-row-t{font-size:11.5px;font-weight:600;fill:#D6E0EA}
.anim .a-card{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1.2}
.anim .a-card-t{font-size:9px;font-weight:700;fill:var(--pulse);letter-spacing:.03em;text-transform:uppercase}
.anim .a-line{fill:#5E7489;transform-origin:left center}
.anim .a-flagdot{fill:var(--alert)}
.anim .a-flag{fill:none;stroke:var(--pulse);stroke-width:1.2;stroke-dasharray:4 4}
.anim .a-flag-t{font-size:11px;font-weight:600;fill:var(--pulse)}
.anim .a-zone{fill:rgba(255,255,255,.03);stroke:var(--panel-line);stroke-width:1.2;stroke-dasharray:5 5}
.anim .a-zone-t{font-size:12px;font-weight:700;fill:#CBD7E3;letter-spacing:.04em}
.anim .a-store{fill:var(--panel-2);stroke:var(--sig-green);stroke-width:1.2}
.anim .a-store-t{font-size:11.5px;font-weight:600;fill:#D6E0EA}
.anim .a-store-s{font-size:9.5px;fill:var(--sig-green)}
.anim .a-lock{fill:none;stroke:var(--sig-green);stroke-width:1.8;stroke-linejoin:round}
.anim .a-band{stroke:var(--pulse);stroke-width:2;stroke-dasharray:6 6;fill:none;animation:flowdash 1.3s linear infinite}
.anim .a-band-t{font-size:11px;font-weight:600;fill:var(--pulse)}
.anim .a-token{fill:var(--pulse)}
.anim .a-barrier{stroke:var(--alert);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:6 5}
.anim .a-deny{font-size:10.5px;font-weight:600;fill:var(--alert)}
.anim .a-wv{fill:var(--pulse);opacity:.8}
.anim .a-intent{font-size:12.5px;font-weight:600;fill:#D6E0EA}
.anim .a-out{fill:var(--panel-2);stroke-width:1.3}
.anim .a-out--ok{stroke:var(--sig-green)}
.anim .a-out--route{stroke:var(--pulse)}
.anim .a-out-t{font-size:12px;font-weight:600;fill:#fff}
.an-fax .fdoc{opacity:0}
.an-fax .f0{animation:fx0 17s linear infinite}
.an-fax .f1{animation:fx1 17s linear infinite}
.an-fax .f2{animation:fx2 17s linear infinite}
.an-fax .f3{animation:fx3 17s linear infinite}
.an-fax .f4{animation:fx4 17s linear infinite}
.an-fax .fdoc .a-tick,.an-fax .fdoc .a-x{opacity:0;transform:translate(0px,34px)}
.an-fax .f0 .a-tick,.an-fax .f0 .a-x{animation:stamp 17s linear 0s infinite}
.an-fax .f1 .a-tick,.an-fax .f1 .a-x{animation:stamp 17s linear 3.23s infinite}
.an-fax .f2 .a-tick,.an-fax .f2 .a-x{animation:stamp 17s linear 6.46s infinite}
.an-fax .f3 .a-tick,.an-fax .f3 .a-x{animation:stamp 17s linear 9.69s infinite}
.an-fax .f4 .a-tick,.an-fax .f4 .a-x{animation:stamp 17s linear 12.92s infinite}
.an-intake .a-row,.an-intake .a-row-t{opacity:.3;animation:rowon 13s ease infinite}
.an-intake .r1,.an-intake .r1{animation-delay:.9s}
.an-intake .r2{animation-delay:1.8s}
.an-intake .r3{animation-delay:2.7s}
.an-intake .a-rtick{opacity:0;transform-box:fill-box;transform-origin:center;animation:tickon 13s ease infinite}
.an-intake .a-rtick.r1{animation-delay:.9s}
.an-intake .a-rtick.r2{animation-delay:1.8s}
.an-intake .a-rtick.r3{animation-delay:2.7s}
.an-intake .a-src.s1,.an-intake .a-src-t.s1{animation:pulsein 13s ease 1.4s infinite}
.an-proc .a-row,.an-proc .a-row-t{opacity:.3;animation:rowon 13s ease infinite}
.an-proc .p1{animation-delay:.7s}
.an-proc .p2{animation-delay:1.4s}
.an-proc .p3{animation-delay:2.1s}
.an-proc .a-ptick{opacity:0;transform-box:fill-box;transform-origin:center;animation:tickon 13s ease infinite}
.an-proc .a-ptick.p1{animation-delay:.7s}
.an-proc .a-ptick.p2{animation-delay:1.4s}
.an-proc .a-ptick.p3{animation-delay:2.1s}
.an-proc .a-flagwrap{opacity:0;transform-box:fill-box;transform-origin:center;animation:popin 13s ease infinite}
.an-reports .a-src,.an-reports .a-src-t{opacity:.35;animation:pulsein 14s ease infinite}
.an-reports .g1{animation-delay:.5s}
.an-reports .g2{animation-delay:1s}
.an-reports .g3{animation-delay:1.5s}
.an-reports .g4{animation-delay:2s}
.an-reports .a-line{transform:scaleX(0);animation:linedraw 14s ease infinite}
.an-reports .l1{animation-delay:.45s}
.an-reports .l2{animation-delay:.9s}
.an-reports .l3{animation-delay:1.35s}
.an-reports .l4{animation-delay:1.8s}
.an-reports .a-flagdot{opacity:0;transform-box:fill-box;transform-origin:center;animation:popin 14s ease infinite}
.an-reports .d1{animation-delay:.4s}
.an-forms .a-row,.an-forms .a-row-t{opacity:.3;animation:rowon 13s ease infinite}
.an-forms .q1{animation-delay:.6s}
.an-forms .q2{animation-delay:1.2s}
.an-forms .w0{animation-delay:2.6s}
.an-forms .w1{animation-delay:3.1s}
.an-forms .w2{animation-delay:3.6s}
.an-forms .a-qtick{opacity:0;transform-box:fill-box;transform-origin:center;animation:tickon 13s ease infinite}
.an-forms .a-qtick.q1{animation-delay:.6s}
.an-forms .a-qtick.q2{animation-delay:1.2s}
.an-voice .a-wv{transform-box:fill-box;transform-origin:center;animation:wv .7s ease-in-out infinite}
.an-voice .w1{animation-delay:.1s}
.an-voice .w2{animation-delay:.2s}
.an-voice .w3{animation-delay:.3s}
.an-voice .w4{animation-delay:.15s}
.an-voice .w5{animation-delay:.25s}
.an-voice .w6{animation-delay:.05s}
.an-voice .vcall{opacity:0;animation:callcycle 13.5s ease infinite}
.an-voice .v1{animation-delay:4.5s}
.an-voice .v2{animation-delay:9s}
.an-forms .fa-act{font-size:12.5px;font-weight:600;fill:#D6E0EA;opacity:0}
.an-forms .pf-dev{fill:var(--panel);stroke:var(--panel-line);stroke-width:1.6}
.an-forms .pf-notch{fill:var(--panel-line)}
.an-forms .pf-scr{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1}
.an-forms .pf-hdr{font-size:9.5px;font-weight:700;fill:var(--panel-sub)}
.an-forms .pf-lang{fill:none;stroke:var(--pulse);stroke-width:1}
.an-forms .pf-lang-t{font-size:8.5px;font-weight:700;fill:var(--pulse);opacity:0}
.an-forms .pf-row{fill:none;stroke:var(--panel-line);stroke-width:1}
.an-forms .pf-lab{font-size:8px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;fill:var(--panel-sub)}
.an-forms .pf-val{font-size:10.5px;font-weight:700;fill:#fff;opacity:0}
.an-forms .pf-send{fill:none;stroke:var(--pulse);stroke-width:1.2;opacity:.3;animation:faSend 28s ease infinite}
.an-forms .pf-send-t{font-size:10px;font-weight:700;fill:var(--pulse);opacity:.3;animation:faSend 28s ease infinite}
.an-forms .vl-box{fill:var(--panel);stroke:var(--pulse);stroke-width:1.4}
.an-forms .vl-t{font-size:13px;font-weight:700;fill:var(--pulse)}
.an-forms .vl-s{font-size:9.5px;fill:var(--panel-sub)}
.an-forms .vl-ex{opacity:0}
.an-forms .vl-ex rect{fill:var(--panel);stroke-width:1.2}
.an-forms .vl-ex text{font-size:11px;font-weight:700}
.an-forms .vl-ex-s{font-size:9px!important;font-weight:400!important;fill:var(--panel-sub)!important}
.an-forms .vl-ex--warn rect{stroke:var(--pulse);stroke-dasharray:5 4}
.an-forms .vl-ex--warn text{fill:var(--pulse)}
.an-forms .vl-ex--ok rect{stroke:var(--sig-green)}
.an-forms .vl-ex--ok text{fill:var(--sig-green)}
.an-forms .vl-ex--warn{animation:faWarn 28s ease infinite}
.an-forms .vl-ex--ok{animation:faOk 28s ease infinite}
.an-forms .ds-box{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1;opacity:.35}
.an-forms .ds-n{font-size:12px;font-weight:700;fill:#D6E0EA}
.an-forms .ds-m{font-size:10.5px;fill:var(--sig-green);opacity:0}
.an-forms .ds-tick{opacity:0;transform-box:fill-box;transform-origin:center}
.an-forms .dr0,.an-forms .dr1,.an-forms .dr2{opacity:0}
.an-forms .fa-sum{font-size:12px;font-weight:700;fill:var(--sig-green);opacity:0;animation:faSum 28s ease infinite}
.an-forms .a0{animation:faAct0 28s ease infinite}
.an-forms .a1{animation:faAct1 28s ease infinite}
.an-forms .a2{animation:faAct2 28s ease infinite}
.an-forms .a3{animation:faAct3 28s ease infinite}
.an-forms .a4{animation:faAct4 28s ease infinite}
.an-forms .pf-val.p0{animation:faVal0 28s ease infinite}
.an-forms .pf-row.p0{animation:faRow0 28s ease infinite}
.an-forms .pf-val.p1{animation:faVal1 28s ease infinite}
.an-forms .pf-row.p1{animation:faRow1 28s ease infinite}
.an-forms .pf-val.p2{animation:faVal2 28s ease infinite}
.an-forms .pf-row.p2{animation:faRow2 28s ease infinite}
.an-forms .pf-val.p3{animation:faVal3 28s ease infinite}
.an-forms .pf-row.p3{animation:faRow3 28s ease infinite}
.an-forms .dr0{animation:faRail0 28s ease infinite}
.an-forms .ds-box.d0{animation:faDest0 28s ease infinite}
.an-forms .ds-m.d0{animation:faMap0 28s ease infinite}
.an-forms .ds-tick.d0{animation:faTick0 28s ease infinite}
.an-forms .dr1{animation:faRail1 28s ease infinite}
.an-forms .ds-box.d1{animation:faDest1 28s ease infinite}
.an-forms .ds-m.d1{animation:faMap1 28s ease infinite}
.an-forms .ds-tick.d1{animation:faTick1 28s ease infinite}
.an-forms .dr2{animation:faRail2 28s ease infinite}
.an-forms .ds-box.d2{animation:faDest2 28s ease infinite}
.an-forms .ds-m.d2{animation:faMap2 28s ease infinite}
.an-forms .ds-tick.d2{animation:faTick2 28s ease infinite}
@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .an-forms .fa-act{opacity:0!important;animation:none!important}.od-wrap:not(.is-ctl) .an-forms .a4{opacity:1!important}.od-wrap:not(.is-ctl) .an-forms *{animation:none!important}.od-wrap:not(.is-ctl) .an-forms .pf-val,.od-wrap:not(.is-ctl) .an-forms .ds-m,.od-wrap:not(.is-ctl) .an-forms .ds-tick,.od-wrap:not(.is-ctl) .an-forms .fa-sum,.od-wrap:not(.is-ctl) .an-forms .ds-box,.od-wrap:not(.is-ctl) .an-forms .pf-send,.od-wrap:not(.is-ctl) .an-forms .pf-send-t,.od-wrap:not(.is-ctl) .an-forms .vl-ex--ok,.od-wrap:not(.is-ctl) .an-forms .dr0,.od-wrap:not(.is-ctl) .an-forms .dr1,.od-wrap:not(.is-ctl) .an-forms .dr2{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-forms .vl-ex--warn,.od-wrap:not(.is-ctl) .an-forms .pf-lang-t{opacity:0!important}.od-wrap:not(.is-ctl) .an-forms .g0{opacity:1!important}.od-wrap:not(.is-ctl) .an-forms .pf-row{stroke:var(--sig-green)!important}
}
.an-fax .fx-act{font-size:12.5px;font-weight:600;fill:#D6E0EA;opacity:0}
.an-fax .fx-cap{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;fill:var(--panel-sub)}
.an-fax .fx-in{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1;opacity:0}
.an-fax .fx-ct{font-size:16px;font-weight:700;fill:var(--pulse);opacity:0}
.an-fax .fx-bench{fill:rgba(255,255,255,.025);stroke:var(--panel-line);stroke-width:1.2;opacity:.3;animation:fxBench 28s ease infinite}
.an-fax .fx-page{fill:#E9EFF5;stroke:#9DB0C2;stroke-width:1;opacity:0;animation:fxPage 28s ease infinite}
.an-fax .fx-tl{fill:#A9BBCB;opacity:0;animation:fxPage 28s ease infinite}
.an-fax .fx-hand{fill:none;stroke:#5E7A96;stroke-width:1.6;stroke-linecap:round;opacity:0;animation:fxPage 28s ease infinite}
.an-fax .fx-scan{fill:var(--pulse);opacity:0;animation:fxScan 28s ease-in-out infinite}
.an-fax .fx-bchip rect{fill:var(--panel);stroke:var(--sig-green);stroke-width:1}
.an-fax .fx-bchip text{font-size:8px;font-weight:700;fill:var(--sig-green)}
.an-fax .fx-bchip{opacity:0}
.an-fax .b0{animation:fxB0 28s ease infinite}
.an-fax .b1{animation:fxB1 28s ease infinite}
.an-fax .fx-f rect{fill:var(--panel-2);stroke:var(--pulse);stroke-width:1}
.an-fax .fx-f-l{font-size:8.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;fill:var(--panel-sub)}
.an-fax .fx-f-v{font-size:11.5px;font-weight:700;fill:#fff}
.an-fax .fx-f{opacity:0}
.an-fax .fx-v rect{fill:var(--panel);stroke-width:1.3}
.an-fax .fx-v-t{font-size:11.5px;font-weight:700}
.an-fax .fx-v-s{font-size:9px;fill:var(--panel-sub)}
.an-fax .fx-v{opacity:0}
.an-fax .fx-v--ok rect{stroke:var(--sig-green)}
.an-fax .fx-v--ok .fx-v-t{fill:var(--sig-green)}
.an-fax .fx-v--warn rect{stroke:var(--pulse);stroke-dasharray:5 4}
.an-fax .fx-v--warn .fx-v-t{fill:var(--pulse)}
.an-fax .fx-v--bad rect{stroke:var(--panel-line)}
.an-fax .fx-v--bad .fx-v-t{fill:var(--panel-sub)}
.an-fax .fx-v--alert rect{stroke:var(--alert)}
.an-fax .fx-v--alert .fx-v-t{fill:var(--alert)}
.an-fax .fx-rule{stroke:var(--panel-line);stroke-width:1}
.an-fax .fx-tally{font-size:11px;font-weight:700;fill:var(--sig-green);opacity:0;animation:fxTally 28s ease infinite}
.an-fax .q0{animation:fxAct0 28s ease infinite}
.an-fax .q1{animation:fxAct1 28s ease infinite}
.an-fax .q2{animation:fxAct2 28s ease infinite}
.an-fax .q3{animation:fxAct3 28s ease infinite}
.an-fax .q4{animation:fxAct4 28s ease infinite}
.an-fax .i0{animation:fxIn0 28s ease infinite}
.an-fax .i1{animation:fxIn1 28s ease infinite}
.an-fax .i2{animation:fxIn2 28s ease infinite}
.an-fax .i3{animation:fxIn3 28s ease infinite}
.an-fax .i4{animation:fxIn4 28s ease infinite}
.an-fax .i5{animation:fxIn5 28s ease infinite}
.an-fax .k0{animation:fxCt0 28s ease infinite}
.an-fax .k1{animation:fxCt1 28s ease infinite}
.an-fax .k2{animation:fxCt2 28s ease infinite}
.an-fax .k3{animation:fxCt3 28s ease infinite}
.an-fax .f0{animation:fxF0 28s ease infinite}
.an-fax .f1{animation:fxF1 28s ease infinite}
.an-fax .f2{animation:fxF2 28s ease infinite}
.an-fax .f3{animation:fxF3 28s ease infinite}
.an-fax .f4{animation:fxF4 28s ease infinite}
.an-fax .f5{animation:fxF5 28s ease infinite}
.an-fax .v0{animation:fxV0 28s ease infinite}
.an-fax .v1{animation:fxV1 28s ease infinite}
.an-fax .v2{animation:fxV2 28s ease infinite}
.an-fax .v3{animation:fxV3 28s ease infinite}
@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .an-fax *{animation:none!important}.od-wrap:not(.is-ctl) .an-fax .fx-act{opacity:0!important}.od-wrap:not(.is-ctl) .an-fax .q4{opacity:1!important}.od-wrap:not(.is-ctl) .an-fax .fx-in,.od-wrap:not(.is-ctl) .an-fax .fx-page,.od-wrap:not(.is-ctl) .an-fax .fx-tl,.od-wrap:not(.is-ctl) .an-fax .fx-bchip,.od-wrap:not(.is-ctl) .an-fax .fx-f,.od-wrap:not(.is-ctl) .an-fax .fx-v,.od-wrap:not(.is-ctl) .an-fax .fx-tally,.od-wrap:not(.is-ctl) .an-fax .fx-bench{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-fax .fx-ct{opacity:0!important}.od-wrap:not(.is-ctl) .an-fax .k3{opacity:1!important}.od-wrap:not(.is-ctl) .an-fax .fx-scan{opacity:0!important}
}
.an-voice .vo-act{font-size:12.5px;font-weight:600;fill:#D6E0EA;opacity:0}
.an-voice .vo-cap{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;fill:var(--panel-sub)}
.an-voice .vo-lane{opacity:0}
.an-voice .vo-l{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:1}
.an-voice .vo-l--ok{stroke:var(--sig-green)}
.an-voice .vo-l--alert{stroke:var(--alert)}
.an-voice .vo-l--gold{stroke:var(--pulse)}
.an-voice .vo-dot--ok{fill:var(--sig-green)}
.an-voice .vo-dot--alert{fill:var(--alert)}
.an-voice .vo-dot--gold{fill:var(--pulse)}
.an-voice .vo-n{font-size:10px;font-weight:700;fill:#D6E0EA}
.an-voice .vo-s{font-size:8.5px;font-weight:700}
.an-voice .vo-s--ok{fill:var(--sig-green)}
.an-voice .vo-s--alert{fill:var(--alert)}
.an-voice .vo-s--gold{fill:var(--pulse)}
.an-voice .vo-card{fill:rgba(255,255,255,.025);stroke:var(--panel-line);stroke-width:1.2;opacity:.3;animation:voCard 26s ease infinite}
.an-voice .vo-b{opacity:0}
.an-voice .vo-b rect{stroke-width:1}
.an-voice .vo-b--c rect{fill:var(--panel);stroke:var(--panel-line)}
.an-voice .vo-b--a rect{fill:var(--panel-2);stroke:var(--pulse)}
.an-voice .vo-bt{font-size:10px;fill:#D6E0EA}
.an-voice .vo-b--a .vo-bt{fill:#fff}
.an-voice .vo-o{opacity:0}
.an-voice .vo-o rect{fill:var(--panel);stroke-width:1.3}
.an-voice .vo-o-t{font-size:11px;font-weight:700}
.an-voice .vo-o-s{font-size:9px;fill:var(--panel-sub)}
.an-voice .vo-o--ok rect{stroke:var(--sig-green)}
.an-voice .vo-o--ok .vo-o-t{fill:var(--sig-green)}
.an-voice .vo-o--alert rect{stroke:var(--alert)}
.an-voice .vo-o--alert .vo-o-t{fill:var(--alert)}
.an-voice .vo-o--gold rect{stroke:var(--pulse)}
.an-voice .vo-o--gold .vo-o-t{fill:var(--pulse)}
.an-voice .vo-rule{stroke:var(--panel-line);stroke-width:1}
.an-voice .vo-tally{font-size:11px;font-weight:700;fill:var(--sig-green);opacity:0;animation:voTally 26s ease infinite}
.an-voice .q0{animation:voAct0 26s ease infinite}
.an-voice .q1{animation:voAct1 26s ease infinite}
.an-voice .q2{animation:voAct2 26s ease infinite}
.an-voice .q3{animation:voAct3 26s ease infinite}
.an-voice .q4{animation:voAct4 26s ease infinite}
.an-voice .l0{animation:voLane0 26s ease infinite}
.an-voice .l1{animation:voLane1 26s ease infinite}
.an-voice .l2{animation:voLane2 26s ease infinite}
.an-voice .l3{animation:voLane3 26s ease infinite}
.an-voice .l4{animation:voLane4 26s ease infinite}
.an-voice .l5{animation:voLane5 26s ease infinite}
.an-voice .t0{animation:voB0 26s ease infinite}
.an-voice .t1{animation:voB1 26s ease infinite}
.an-voice .t2{animation:voB2 26s ease infinite}
.an-voice .t3{animation:voB3 26s ease infinite}
.an-voice .o0{animation:voO0 26s ease infinite}
.an-voice .o1{animation:voO1 26s ease infinite}
.an-voice .o2{animation:voO2 26s ease infinite}
.an-voice .o3{animation:voO3 26s ease infinite}
@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .an-voice *{animation:none!important}.od-wrap:not(.is-ctl) .an-voice .vo-act{opacity:0!important}.od-wrap:not(.is-ctl) .an-voice .q4{opacity:1!important}.od-wrap:not(.is-ctl) .an-voice .vo-lane,.od-wrap:not(.is-ctl) .an-voice .vo-b,.od-wrap:not(.is-ctl) .an-voice .vo-o,.od-wrap:not(.is-ctl) .an-voice .vo-card,.od-wrap:not(.is-ctl) .an-voice .vo-tally{opacity:1!important;transform:none!important}
}
.an-intake .in-act{font-size:12.5px;font-weight:600;fill:#D6E0EA;opacity:0}
.an-intake .in-cap{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;fill:var(--panel-sub)}
.an-intake .in-zoom{fill:rgba(255,255,255,.025);stroke:var(--panel-line);stroke-width:1.2}
.an-intake .in-rail{stroke:var(--panel-line);stroke-width:1.5;stroke-dasharray:4 4}
.an-intake .in-step{opacity:0}
.an-intake .in-node{fill:var(--panel);stroke:var(--pulse);stroke-width:2.2}
.an-intake .in-time{font-size:10px;font-weight:700;fill:var(--pulse);font-variant-numeric:tabular-nums}
.an-intake .in-l1{font-size:10.5px;font-weight:700;fill:#fff}
.an-intake .in-l2{font-size:9px;fill:var(--panel-sub)}
.an-intake .in-axis{stroke:var(--panel-line);stroke-width:1.5}
.an-intake .in-tick{stroke:var(--panel-line);stroke-width:1}
.an-intake .in-tl{font-size:9px;fill:var(--panel-sub);font-variant-numeric:tabular-nums}
.an-intake .in-done{fill:var(--sig-green);opacity:0;animation:inDone 24s ease infinite}
.an-intake .in-call{opacity:0;animation:inCall 24s ease infinite}
.an-intake .in-call rect{fill:var(--panel);stroke:var(--alert);stroke-width:1.2}
.an-intake .in-call text{font-size:10px;font-weight:700;fill:var(--alert)}
.an-intake .in-drop{stroke:var(--alert);stroke-width:1.2;opacity:0;animation:inCall 24s ease infinite}
.an-intake .in-rule{stroke:var(--panel-line);stroke-width:1}
.an-intake .in-tally{font-size:11px;font-weight:700;fill:var(--sig-green);opacity:0;animation:inTally 24s ease infinite}
.an-intake .q0{animation:inAct0 24s ease infinite}
.an-intake .q1{animation:inAct1 24s ease infinite}
.an-intake .q2{animation:inAct2 24s ease infinite}
.an-intake .q3{animation:inAct3 24s ease infinite}
.an-intake .q4{animation:inAct4 24s ease infinite}
.an-intake .s0{animation:inStep0 24s ease infinite}
.an-intake .s1{animation:inStep1 24s ease infinite}
.an-intake .s2{animation:inStep2 24s ease infinite}
.an-intake .s3{animation:inStep3 24s ease infinite}
.an-intake .s4{animation:inStep4 24s ease infinite}
@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .an-intake *{animation:none!important}.od-wrap:not(.is-ctl) .an-intake .in-act{opacity:0!important}.od-wrap:not(.is-ctl) .an-intake .q4{opacity:1!important}.od-wrap:not(.is-ctl) .an-intake .in-step,.od-wrap:not(.is-ctl) .an-intake .in-done,.od-wrap:not(.is-ctl) .an-intake .in-call,.od-wrap:not(.is-ctl) .an-intake .in-drop,.od-wrap:not(.is-ctl) .an-intake .in-tally{opacity:1!important;transform:none!important}
}
.an-proc .pc-act{font-size:12.5px;font-weight:600;fill:#D6E0EA;opacity:0}
.an-proc .pc-cap{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;fill:var(--panel-sub)}
.an-proc .pc-trig{fill:var(--panel-2);stroke:var(--pulse);stroke-width:1.4;opacity:0;animation:pcTrig 26s ease infinite}
.an-proc .pc-tt{font-size:13px;font-weight:700;fill:var(--pulse);opacity:0;animation:pcTrig 26s ease infinite}
.an-proc .pc-ts{font-size:10px;fill:var(--panel-sub);opacity:0;animation:pcTrig 26s ease infinite}
.an-proc .pc-g{opacity:0}
.an-proc .pc-g rect{fill:var(--panel);stroke-width:1.2}
.an-proc .pc-g-t{font-size:11.5px;font-weight:700}
.an-proc .pc-g-s{font-size:9px;fill:var(--panel-sub)}
.an-proc .pc-g--ok rect{stroke:var(--sig-green)}
.an-proc .pc-g--ok .pc-g-t{fill:var(--sig-green)}
.an-proc .pc-g--slow rect{stroke:var(--pulse)}
.an-proc .pc-g--slow .pc-g-t{fill:var(--pulse)}
.an-proc .pc-tick{transform-box:fill-box;transform-origin:center}
.an-proc .pc-g--ok .pc-tick path{stroke:var(--sig-green)}
.an-proc .pc-g--slow .pc-tick path{stroke:var(--pulse)}
.an-proc .pc-d{opacity:0}
.an-proc .pc-d rect{fill:var(--panel-2);stroke-width:1.2}
.an-proc .pc-d-t{font-size:11.5px;font-weight:700;fill:#D6E0EA}
.an-proc .pc-d-s{font-size:9px;fill:var(--panel-sub)}
.an-proc .pc-d--ok rect{stroke:var(--sig-green)}
.an-proc .pc-d--retry rect{stroke:var(--pulse);stroke-dasharray:5 4}
.an-proc .pc-d--retry .pc-d-s{fill:var(--pulse)}
.an-proc .pc-d--hold rect{stroke:var(--alert)}
.an-proc .pc-d--hold .pc-d-t{fill:var(--alert)}
.an-proc .pc-d--hold .pc-d-s{fill:var(--alert)}
.an-proc .pc-rule{stroke:var(--panel-line);stroke-width:1}
.an-proc .pc-tally{font-size:11px;font-weight:700;fill:var(--sig-green);opacity:0;animation:pcTally 26s ease infinite}
.an-reports .rp-act{font-size:12.5px;font-weight:600;fill:#D6E0EA;opacity:0}
.an-reports .rp-cap{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;fill:var(--panel-sub)}
.an-reports .rp-c{fill:var(--panel-2);stroke:var(--panel-line);stroke-width:.6;opacity:0;animation:rpCell 26s ease infinite}
.an-reports .rp-c--o{animation:rpCell 26s ease infinite,rpOut 26s ease infinite}
.an-reports .rp-c--k{animation:rpCell 26s ease infinite,rpKey 26s ease infinite}
.an-reports .rp-count{font-size:17px;font-weight:700;fill:var(--pulse);opacity:0}
.an-reports .rp-r{opacity:0}
.an-reports .rp-r rect{fill:var(--panel);stroke:var(--alert);stroke-width:1.1}
.an-reports .rp-dot{fill:var(--alert)}
.an-reports .rp-n{font-size:12px;font-weight:700;fill:#fff}
.an-reports .rp-v{font-size:12px;font-weight:700;fill:var(--alert)}
.an-reports .rp-ctx{font-size:9px;fill:var(--panel-sub);opacity:0}
.an-reports .rp-rule{stroke:var(--panel-line);stroke-width:1}
.an-reports .rp-tally{font-size:11px;font-weight:700;fill:var(--sig-green);opacity:0;animation:rpTally 26s ease infinite}
.an-proc .q0{animation:pcAct0 26s ease infinite}
.an-reports .q0{animation:rpAct0 26s ease infinite}
.an-proc .q1{animation:pcAct1 26s ease infinite}
.an-reports .q1{animation:rpAct1 26s ease infinite}
.an-proc .q2{animation:pcAct2 26s ease infinite}
.an-reports .q2{animation:rpAct2 26s ease infinite}
.an-proc .q3{animation:pcAct3 26s ease infinite}
.an-reports .q3{animation:rpAct3 26s ease infinite}
.an-proc .q4{animation:pcAct4 26s ease infinite}
.an-reports .q4{animation:rpAct4 26s ease infinite}
.an-proc .g0{animation:pcG0 26s ease infinite}
.an-proc .g1{animation:pcG1 26s ease infinite}
.an-proc .g2{animation:pcG2 26s ease infinite}
.an-proc .g3{animation:pcG3 26s ease infinite}
.an-proc .d0{animation:pcD0 26s ease infinite}
.an-proc .d1{animation:pcD1 26s ease infinite}
.an-proc .d2{animation:pcD2 26s ease infinite}
.an-proc .d3{animation:pcD3 26s ease infinite}
.an-proc .d4{animation:pcD4 26s ease infinite}
.an-reports .n0{animation:rpN0 26s ease infinite}
.an-reports .n1{animation:rpN1 26s ease infinite}
.an-reports .n2{animation:rpN2 26s ease infinite}
.an-reports .r0{animation:rpR0 26s ease infinite}
.an-reports .c0{animation:rpC0 26s ease infinite}
.an-reports .r1{animation:rpR1 26s ease infinite}
.an-reports .c1{animation:rpC1 26s ease infinite}
.an-reports .r2{animation:rpR2 26s ease infinite}
.an-reports .c2{animation:rpC2 26s ease infinite}
.an-reports .r3{animation:rpR3 26s ease infinite}
.an-reports .c3{animation:rpC3 26s ease infinite}
.an-reports .r4{animation:rpR4 26s ease infinite}
.an-reports .c4{animation:rpC4 26s ease infinite}
.an-reports .r5{animation:rpR5 26s ease infinite}
.an-reports .c5{animation:rpC5 26s ease infinite}
@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .an-proc *,.od-wrap:not(.is-ctl) .an-reports *{animation:none!important}.od-wrap:not(.is-ctl) .an-proc .pc-act,.od-wrap:not(.is-ctl) .an-reports .rp-act{opacity:0!important}.od-wrap:not(.is-ctl) .an-proc .q4,.od-wrap:not(.is-ctl) .an-reports .q4{opacity:1!important}.od-wrap:not(.is-ctl) .an-proc .pc-trig,.od-wrap:not(.is-ctl) .an-proc .pc-tt,.od-wrap:not(.is-ctl) .an-proc .pc-ts,.od-wrap:not(.is-ctl) .an-proc .pc-g,.od-wrap:not(.is-ctl) .an-proc .pc-d,.od-wrap:not(.is-ctl) .an-proc .pc-tally{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-reports .rp-c,.od-wrap:not(.is-ctl) .an-reports .rp-r,.od-wrap:not(.is-ctl) .an-reports .rp-ctx,.od-wrap:not(.is-ctl) .an-reports .rp-tally{opacity:1!important;transform:none!important}.od-wrap:not(.is-ctl) .an-reports .rp-c--o{fill:var(--pulse)!important}.od-wrap:not(.is-ctl) .an-reports .rp-c--k{fill:var(--alert)!important}.od-wrap:not(.is-ctl) .an-reports .rp-count{opacity:0!important}.od-wrap:not(.is-ctl) .an-reports .n2{opacity:1!important}
}
.an-intake .in-lang{fill:none;stroke:var(--pulse);stroke-width:1;opacity:0}
.an-intake .in-lang-fill{fill:var(--pulse);opacity:0;animation:inLangFill 24s ease infinite}
.an-intake .in-lang-t{font-size:9px;font-weight:700;fill:var(--pulse);opacity:0}
.an-intake .in-lang-t.g6{fill:var(--panel)}
.an-intake .in-lang-t.g0{animation:inLang0 24s ease infinite}
.an-intake .in-lang-t.g1{animation:inLang1 24s ease infinite}
.an-intake .in-lang-t.g2{animation:inLang2 24s ease infinite}
.an-intake .in-lang-t.g3{animation:inLang3 24s ease infinite}
.an-intake .in-lang-t.g4{animation:inLang4 24s ease infinite}
.an-intake .in-lang-t.g5{animation:inLang5 24s ease infinite}
.an-intake .in-lang-t.g6{animation:inLang6 24s ease infinite}
@media (prefers-reduced-motion:reduce){.od-wrap:not(.is-ctl) .an-intake .in-lang{opacity:1!important}.od-wrap:not(.is-ctl) .an-intake .in-lang-t{opacity:0!important}.od-wrap:not(.is-ctl) .an-intake .in-lang-t.g6{opacity:1!important}.od-wrap:not(.is-ctl) .an-intake .in-lang-fill{opacity:1!important}
}
.an-forms .g0{animation:faLang0 28s ease infinite}
.an-forms .g1{animation:faLang1 28s ease infinite}
.an-forms .g2{animation:faLang2 28s ease infinite}
.an-forms .g3{animation:faLang3 28s ease infinite}
.an-forms .g4{animation:faLang4 28s ease infinite}
.an-forms .g5{animation:faLang5 28s ease infinite}

@keyframes callcycle{0%,3%{opacity:0}8%,28%{opacity:1}33%,100%{opacity:0}}
@keyframes faAct0{0%{opacity:0}2%,15%{opacity:1}17%,100%{opacity:0}}
@keyframes faAct1{0%,17%{opacity:0}19%,43%{opacity:1}45%,100%{opacity:0}}
@keyframes faAct2{0%,45%{opacity:0}47%,59%{opacity:1}61%,100%{opacity:0}}
@keyframes faAct3{0%,61%{opacity:0}63%,83%{opacity:1}85%,100%{opacity:0}}
@keyframes faAct4{0%,85%{opacity:0}87%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faDest0{0%,64%{opacity:.35}68%,99.4%{opacity:1}99.6%,100%{opacity:.35}}
@keyframes faDest1{0%,68%{opacity:.35}72%,99.4%{opacity:1}99.6%,100%{opacity:.35}}
@keyframes faDest2{0%,72%{opacity:.35}76%,99.4%{opacity:1}99.6%,100%{opacity:.35}}
@keyframes faLang0{0%,17%{opacity:0}18%,21%{opacity:1}22%,100%{opacity:0}}
@keyframes faLang1{0%,24%{opacity:0}25%,30%{opacity:1}31%,100%{opacity:0}}
@keyframes faLang2{0%,31%{opacity:0}32%,37%{opacity:1}38%,100%{opacity:0}}
@keyframes faLang3{0%,38%{opacity:0}39%,44%{opacity:1}45%,100%{opacity:0}}
@keyframes faLang4{0%,37%{opacity:0}38%,41%{opacity:1}42%,100%{opacity:0}}
@keyframes faLang5{0%,42%{opacity:0}43%,46%{opacity:1}47%,100%{opacity:0}}
@keyframes faMap0{0%,65%{opacity:0}69%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faMap1{0%,69%{opacity:0}73%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faMap2{0%,73%{opacity:0}77%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faOk{0%,58%{opacity:0}61%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faRail0{0%,63%{opacity:0}66%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faRail1{0%,67%{opacity:0}70%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faRail2{0%,71%{opacity:0}74%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faRow0{0%,17%{stroke:var(--panel-line)}20%,99.4%{stroke:var(--sig-green)}99.6%,100%{stroke:var(--panel-line)}}
@keyframes faRow1{0%,22%{stroke:var(--panel-line)}25%,99.4%{stroke:var(--sig-green)}99.6%,100%{stroke:var(--panel-line)}}
@keyframes faRow2{0%,27%{stroke:var(--panel-line)}30%,99.4%{stroke:var(--sig-green)}99.6%,100%{stroke:var(--panel-line)}}
@keyframes faRow3{0%,32%{stroke:var(--panel-line)}35%,99.4%{stroke:var(--sig-green)}99.6%,100%{stroke:var(--panel-line)}}
@keyframes faSend{0%,36%{opacity:.3}40%,99.4%{opacity:1}99.6%,100%{opacity:.3}}
@keyframes faSum{0%,85%{opacity:0}88%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faTick0{0%,65%{opacity:0;transform:scale(.5)}69%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0;transform:scale(.5)}}
@keyframes faTick1{0%,69%{opacity:0;transform:scale(.5)}73%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0;transform:scale(.5)}}
@keyframes faTick2{0%,73%{opacity:0;transform:scale(.5)}77%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0;transform:scale(.5)}}
@keyframes faVal0{0%,17%{opacity:0}20%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faVal1{0%,22%{opacity:0}25%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faVal2{0%,27%{opacity:0}30%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faVal3{0%,32%{opacity:0}35%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes faWarn{0%,46%{opacity:0}49%,56%{opacity:1}58%,100%{opacity:0}}
@keyframes flowdash{to{stroke-dashoffset:-30}}
@keyframes fx0{0%,1%{opacity:0;transform:translate(58px,86px)}4%{opacity:1;transform:translate(58px,86px)}11%{opacity:1;transform:translate(352px,86px)}15%{opacity:1;transform:translate(352px,86px)}23%{opacity:1;transform:translate(508px,32px)}27%{opacity:0;transform:translate(508px,32px)}100%{opacity:0;transform:translate(58px,86px)}}
@keyframes fx1{0%,20%{opacity:0;transform:translate(58px,86px)}23%{opacity:1;transform:translate(58px,86px)}30%{opacity:1;transform:translate(352px,86px)}34%{opacity:1;transform:translate(352px,86px)}42%{opacity:1;transform:translate(508px,156px)}46%{opacity:0;transform:translate(508px,156px)}100%{opacity:0;transform:translate(58px,86px)}}
@keyframes fx2{0%,39%{opacity:0;transform:translate(58px,86px)}42%{opacity:1;transform:translate(58px,86px)}49%{opacity:1;transform:translate(352px,86px)}53%{opacity:1;transform:translate(352px,86px)}61%{opacity:1;transform:translate(508px,70px)}65%{opacity:0;transform:translate(508px,70px)}100%{opacity:0;transform:translate(58px,86px)}}
@keyframes fx3{0%,56%{opacity:0;transform:translate(58px,86px)}59%{opacity:1;transform:translate(58px,86px)}66%{opacity:1;transform:translate(352px,86px)}70%{opacity:1;transform:translate(352px,86px)}78%{opacity:1;transform:translate(508px,156px)}82%{opacity:0;transform:translate(508px,156px)}100%{opacity:0;transform:translate(58px,86px)}}
@keyframes fx4{0%,73%{opacity:0;transform:translate(58px,86px)}76%{opacity:1;transform:translate(58px,86px)}83%{opacity:1;transform:translate(352px,86px)}87%{opacity:1;transform:translate(352px,86px)}95%{opacity:1;transform:translate(508px,108px)}99%,100%{opacity:0;transform:translate(508px,108px)}}
@keyframes fxAct0{0%{opacity:0}2%,15%{opacity:1}17%,100%{opacity:0}}
@keyframes fxAct1{0%,17%{opacity:0}19%,41%{opacity:1}43%,100%{opacity:0}}
@keyframes fxAct2{0%,43%{opacity:0}45%,59%{opacity:1}61%,100%{opacity:0}}
@keyframes fxAct3{0%,61%{opacity:0}63%,83%{opacity:1}85%,100%{opacity:0}}
@keyframes fxAct4{0%,85%{opacity:0}87%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes fxB0{0%,33%{opacity:0}36%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes fxB1{0%,37%{opacity:0}40%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes fxBench{0%,17%{opacity:.3}21%,99.4%{opacity:1}99.6%,100%{opacity:.3}}
@keyframes fxCt0{0%,3%{opacity:0}4%,6%{opacity:1}7%,100%{opacity:0}}
@keyframes fxCt1{0%,7%{opacity:0}8%,10%{opacity:1}11%,100%{opacity:0}}
@keyframes fxCt2{0%,11%{opacity:0}12%,14%{opacity:1}15%,100%{opacity:0}}
@keyframes fxCt3{0%,15%{opacity:0}16%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes fxF0{0%,44.0%{opacity:0;transform:translateX(-6px)}46.5%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxF1{0%,46.2%{opacity:0;transform:translateX(-6px)}48.7%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxF2{0%,48.4%{opacity:0;transform:translateX(-6px)}50.9%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxF3{0%,50.6%{opacity:0;transform:translateX(-6px)}53.1%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxF4{0%,52.8%{opacity:0;transform:translateX(-6px)}55.3%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxF5{0%,55.0%{opacity:0;transform:translateX(-6px)}57.5%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxIn0{0%,2.0%{opacity:0;transform:translateY(-6px)}4.0%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxIn1{0%,4.4%{opacity:0;transform:translateY(-6px)}6.4%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxIn2{0%,6.8%{opacity:0;transform:translateY(-6px)}8.8%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxIn3{0%,9.2%{opacity:0;transform:translateY(-6px)}11.2%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxIn4{0%,11.6%{opacity:0;transform:translateY(-6px)}13.6%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxIn5{0%,14.0%{opacity:0;transform:translateY(-6px)}16.0%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxPage{0%,17%{opacity:0}21%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes fxScan{0%,19%{transform:translateY(0);opacity:0}22%{opacity:.95}40%{transform:translateY(119px);opacity:.95}43%,100%{transform:translateY(119px);opacity:0}}
@keyframes fxTally{0%,85%{opacity:0}88%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes fxV0{0%,62.0%{opacity:0;transform:translateY(6px)}65.0%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxV1{0%,66.5%{opacity:0;transform:translateY(6px)}69.5%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxV2{0%,71.0%{opacity:0;transform:translateY(6px)}74.0%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes fxV3{0%,75.5%{opacity:0;transform:translateY(6px)}78.5%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes inAct0{0%{opacity:0}2%,14%{opacity:1}16%,100%{opacity:0}}
@keyframes inAct1{0%,16%{opacity:0}18%,32%{opacity:1}34%,100%{opacity:0}}
@keyframes inAct2{0%,34%{opacity:0}36%,54%{opacity:1}56%,100%{opacity:0}}
@keyframes inAct3{0%,56%{opacity:0}58%,78%{opacity:1}80%,100%{opacity:0}}
@keyframes inAct4{0%,80%{opacity:0}83%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes inCall{0%,80%{opacity:0}84%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes inDone{0%,70%{opacity:0}74%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes inLang0{0%,20%{opacity:0}21%,29%{opacity:1}30%,100%{opacity:0}}
@keyframes inLang1{0%,30%{opacity:0}31%,39%{opacity:1}40%,100%{opacity:0}}
@keyframes inLang2{0%,40%{opacity:0}41%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes inLang3{0%,50%{opacity:0}51%,59%{opacity:1}60%,100%{opacity:0}}
@keyframes inLang4{0%,60%{opacity:0}61%,69%{opacity:1}70%,100%{opacity:0}}
@keyframes inLang5{0%,70%{opacity:0}71%,79%{opacity:1}80%,100%{opacity:0}}
@keyframes inLang6{0%,80%{opacity:0}82%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes inLangFill{0%,80%{opacity:0}82%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes inStep0{0%,4%{opacity:0;transform:translateY(6px)}7%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes inStep1{0%,16%{opacity:0;transform:translateY(6px)}19%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes inStep2{0%,34%{opacity:0;transform:translateY(6px)}37%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes inStep3{0%,50%{opacity:0;transform:translateY(6px)}53%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes inStep4{0%,64%{opacity:0;transform:translateY(6px)}67%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes inTally{0%,86%{opacity:0}89%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes linedraw{0%,9%{transform:scaleX(0)}22%,88%{transform:scaleX(1)}95%,100%{transform:scaleX(0)}}
@keyframes pcAct0{0%{opacity:0}2%,14%{opacity:1}16%,100%{opacity:0}}
@keyframes pcAct1{0%,16%{opacity:0}18%,30%{opacity:1}32%,100%{opacity:0}}
@keyframes pcAct2{0%,32%{opacity:0}34%,54%{opacity:1}56%,100%{opacity:0}}
@keyframes pcAct3{0%,56%{opacity:0}58%,78%{opacity:1}80%,100%{opacity:0}}
@keyframes pcAct4{0%,80%{opacity:0}83%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes pcD0{0%,57%{opacity:0;transform:translateX(6px)}60%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcD1{0%,61%{opacity:0;transform:translateX(6px)}64%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcD2{0%,65%{opacity:0;transform:translateX(6px)}68%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcD3{0%,69%{opacity:0;transform:translateX(6px)}72%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcD4{0%,76%{opacity:0;transform:translateX(6px)}79%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcG0{0%,33%{opacity:0;transform:translateX(-6px)}36%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcG1{0%,38%{opacity:0;transform:translateX(-6px)}41%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcG2{0%,43%{opacity:0;transform:translateX(-6px)}46%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcG3{0%,48%{opacity:0;transform:translateX(-6px)}51%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes pcTally{0%,86%{opacity:0}89%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes pcTrig{0%,2%{opacity:0}6%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes popin{0%,55%{opacity:0;transform:scale(.4)}62%,90%{opacity:1;transform:scale(1)}96%,100%{opacity:0;transform:scale(.4)}}
@keyframes pulsein{0%,5%{opacity:.35}12%,86%{opacity:1}93%,100%{opacity:.35}}
@keyframes rowon{0%,8%{opacity:.3}15%,88%{opacity:1}94%,100%{opacity:.3}}
@keyframes rpAct0{0%{opacity:0}2%,14%{opacity:1}16%,100%{opacity:0}}
@keyframes rpAct1{0%,16%{opacity:0}18%,30%{opacity:1}32%,100%{opacity:0}}
@keyframes rpAct2{0%,32%{opacity:0}34%,54%{opacity:1}56%,100%{opacity:0}}
@keyframes rpAct3{0%,56%{opacity:0}58%,78%{opacity:1}80%,100%{opacity:0}}
@keyframes rpAct4{0%,80%{opacity:0}83%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpC0{0%,57.0%{opacity:0}60.0%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpC1{0%,58.6%{opacity:0}61.6%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpC2{0%,60.2%{opacity:0}63.2%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpC3{0%,61.8%{opacity:0}64.8%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpC4{0%,63.4%{opacity:0}66.4%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpC5{0%,65.0%{opacity:0}68.0%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpCell{0%,3%{opacity:0}8%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpKey{0%,17%{fill:var(--panel-2)}21%,33%{fill:var(--pulse)}37%,99.4%{fill:var(--alert)}99.6%,100%{fill:var(--panel-2)}}
@keyframes rpN0{0%,8%{opacity:0}10%,16%{opacity:1}18%,100%{opacity:0}}
@keyframes rpN1{0%,18%{opacity:0}20%,32%{opacity:1}34%,100%{opacity:0}}
@keyframes rpN2{0%,34%{opacity:0}36%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes rpOut{0%,17%{fill:var(--panel-2)}21%,99.4%{fill:var(--pulse)}99.6%,100%{fill:var(--panel-2)}}
@keyframes rpR0{0%,36.0%{opacity:0;transform:translateX(8px)}39.0%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes rpR1{0%,38.2%{opacity:0;transform:translateX(8px)}41.2%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes rpR2{0%,40.4%{opacity:0;transform:translateX(8px)}43.4%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes rpR3{0%,42.6%{opacity:0;transform:translateX(8px)}45.6%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes rpR4{0%,44.8%{opacity:0;transform:translateX(8px)}47.8%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes rpR5{0%,47.0%{opacity:0;transform:translateX(8px)}50.0%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes rpTally{0%,86%{opacity:0}89%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes stamp{0%,13%{opacity:0}17%,25%{opacity:1}29%,100%{opacity:0}}
@keyframes tickon{0%,13%{opacity:0;transform:scale(.6)}20%,88%{opacity:1;transform:scale(1)}94%,100%{opacity:0;transform:scale(.6)}}
@keyframes voAct0{0%{opacity:0}2%,15%{opacity:1}17%,100%{opacity:0}}
@keyframes voAct1{0%,17%{opacity:0}19%,29%{opacity:1}31%,100%{opacity:0}}
@keyframes voAct2{0%,31%{opacity:0}33%,57%{opacity:1}59%,100%{opacity:0}}
@keyframes voAct3{0%,59%{opacity:0}61%,84%{opacity:1}86%,100%{opacity:0}}
@keyframes voAct4{0%,86%{opacity:0}88%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes voB0{0%,33%{opacity:0;transform:translateY(5px)}36%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voB1{0%,39%{opacity:0;transform:translateY(5px)}42%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voB2{0%,46%{opacity:0;transform:translateY(5px)}49%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voB3{0%,51%{opacity:0;transform:translateY(5px)}54%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voCard{0%,17%{opacity:.3}21%,99.4%{opacity:1}99.6%,100%{opacity:.3}}
@keyframes voLane0{0%,3.0%{opacity:0;transform:translateX(-6px)}5.0%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voLane1{0%,4.9%{opacity:0;transform:translateX(-6px)}6.9%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voLane2{0%,6.8%{opacity:0;transform:translateX(-6px)}8.8%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voLane3{0%,8.7%{opacity:0;transform:translateX(-6px)}10.7%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voLane4{0%,10.6%{opacity:0;transform:translateX(-6px)}12.6%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voLane5{0%,12.5%{opacity:0;transform:translateX(-6px)}14.5%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voO0{0%,58%{opacity:0;transform:translateX(6px)}61%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voO1{0%,63%{opacity:0;transform:translateX(6px)}66%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voO2{0%,68%{opacity:0;transform:translateX(6px)}71%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voO3{0%,73%{opacity:0;transform:translateX(6px)}76%,99.4%{opacity:1;transform:none}99.6%,100%{opacity:0}}
@keyframes voTally{0%,86%{opacity:0}89%,99.4%{opacity:1}99.6%,100%{opacity:0}}
@keyframes wv{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}

/* house overrides, last so they win */
.od-wrap figcaption{margin-top:16px;text-align:left;font-size:.95rem;line-height:1.55;color:#C7D2DE;max-width:70ch}
