/* Evidence → accounting → settlement → verification, then a short resting beat. */
.proof-diagram.proof-processing-ready{--proof-cycle:8.8s}
.proof-processing-ready :is(.tech-signal,.tech-edge-signal,.tech-node-pulse){display:none}
.proof-processing-art{pointer-events:none}
.proof-processing-art :is(path,circle,text),.proof-source-face{
  animation-duration:var(--proof-cycle);
  animation-timing-function:linear;
  animation-iteration-count:infinite;
  animation-play-state:paused;
}
.motion-running .proof-processing-art :is(path,circle,text),.motion-running .proof-source-face{animation-play-state:running}
.proof-process-evidence{--process-color:#a6c9f4}
.proof-process-accounting{--process-color:#c5a3f3}
.proof-process-settlement{--process-color:#92d9e5}
.proof-process-verified{--process-color:#d4b7f8}
.proof-process-wire,.proof-process-transfer,.proof-process-intake,.proof-process-complete-link{
  stroke:var(--process-color);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:18 100;opacity:0;filter:drop-shadow(0 0 2px #a4c9f58c);
}
.proof-process-wire{animation-name:proof-data-gather}
.proof-process-wire.proof-source-2{animation-name:proof-data-gather-middle}
.proof-process-wire.proof-source-3{animation-name:proof-data-gather-right}
.proof-process-ring{fill:none;stroke:#b6d5f8;stroke-width:1.3px;opacity:0;transform-box:fill-box;transform-origin:center;animation-name:proof-source-read}
.proof-source-face{fill:none;stroke:#b9c9f2;stroke-width:1.2px;stroke-linejoin:round;opacity:0;animation-name:proof-source-illuminate;filter:drop-shadow(0 0 2px #b7b7f570)}
.proof-source-face.proof-source-2,.proof-process-ring.proof-source-2{animation-delay:.22s}
.proof-source-face.proof-source-3,.proof-process-ring.proof-source-3{animation-delay:.44s}
.proof-process-junction{fill:#dfd1fa;opacity:0;animation-name:proof-data-arrive;filter:drop-shadow(0 0 3px #b1a5f3)}
.proof-process-edge,.proof-process-edge-halo{fill:none;stroke:var(--process-color);stroke-linecap:round;stroke-linejoin:round;opacity:0}
.proof-process-edge{stroke-width:1.8px;stroke-dasharray:22 100;filter:drop-shadow(0 0 1.4px #b6bcdd80)}
.proof-process-edge-halo{stroke-width:3.4px;filter:blur(2px)}
.proof-process-outline{stroke:var(--process-color);stroke-width:1.2px;opacity:0}
.proof-process-evidence .proof-process-edge{animation-name:proof-evidence-edge}
.proof-process-evidence .proof-process-edge-halo{animation-name:proof-evidence-halo}
.proof-process-accounting .proof-process-edge{animation-name:proof-accounting-edge}
.proof-process-accounting :is(.proof-process-edge-halo,.proof-process-outline){animation-name:proof-accounting-halo}
.proof-process-intake{animation-name:proof-ledger-intake}
.proof-process-account-mark{stroke:#d4baf6;stroke-width:1.8px;stroke-linecap:round;stroke-dasharray:100;opacity:0;animation-name:proof-account-mark}
.proof-account-2{animation-delay:.2s}.proof-account-3{animation-delay:.4s}
.proof-process-status{font-family:Arial,Helvetica,sans-serif;font-size:9px;letter-spacing:1.4px;font-weight:500;fill:var(--process-color);opacity:0}
.proof-process-accounting .proof-process-status{animation-name:proof-accounting-status}
.proof-process-settlement .proof-process-edge{animation-name:proof-settlement-edge}
.proof-process-settlement :is(.proof-process-edge-halo,.proof-process-outline){animation-name:proof-settlement-halo}
.proof-transfer-request{animation-name:proof-transfer-request}
.proof-transfer-received{animation-name:proof-transfer-received}
.proof-process-settlement .proof-process-status{animation-name:proof-settlement-status}
.proof-process-verified .proof-process-edge{animation-name:proof-verified-edge}
.proof-process-verified :is(.proof-process-edge-halo,.proof-process-outline){animation-name:proof-verified-halo}
.proof-process-complete-link{animation-name:proof-verification-link}
.proof-process-verified .proof-process-status{animation-name:proof-verified-status}

@keyframes proof-data-gather{0%{opacity:0;stroke-dashoffset:20}3%{opacity:1}17%{opacity:1;stroke-dashoffset:-85}20%,100%{opacity:0;stroke-dashoffset:-102}}
@keyframes proof-data-gather-middle{0%,2%{opacity:0;stroke-dashoffset:20}5%{opacity:1}17%{opacity:1;stroke-dashoffset:-85}20%,100%{opacity:0;stroke-dashoffset:-102}}
@keyframes proof-data-gather-right{0%,4%{opacity:0;stroke-dashoffset:20}7%{opacity:1}18%{opacity:1;stroke-dashoffset:-85}21%,100%{opacity:0;stroke-dashoffset:-102}}
@keyframes proof-source-read{0%{opacity:0;transform:scale(.8)}4%{opacity:.8;transform:scale(1)}13%{opacity:0;transform:scale(1.9)}100%{opacity:0;transform:scale(1.9)}}
@keyframes proof-source-illuminate{0%{opacity:0}4%,9%{opacity:.88}16%,100%{opacity:0}}
@keyframes proof-data-arrive{0%,12%{opacity:0}17%,21%{opacity:1}26%,100%{opacity:0}}
@keyframes proof-evidence-edge{0%{opacity:0;stroke-dashoffset:20}3%{opacity:.85}17%{opacity:.85;stroke-dashoffset:-90}21%,100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-evidence-halo{0%{opacity:0}5%,14%{opacity:.22}22%,100%{opacity:0}}
@keyframes proof-ledger-intake{0%,17%{opacity:0;stroke-dashoffset:20}19%,21%{opacity:1}24%{opacity:0;stroke-dashoffset:-105}100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-accounting-edge{0%,20%{opacity:0;stroke-dashoffset:20}24%{opacity:.9}38%{opacity:.9;stroke-dashoffset:-90}42%,100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-accounting-halo{0%,20%{opacity:0}26%,35%{opacity:.38}43%,100%{opacity:0}}
@keyframes proof-account-mark{0%,23%{opacity:0;stroke-dashoffset:100}26%{opacity:.85}33%{opacity:.85;stroke-dashoffset:0}39%,100%{opacity:0;stroke-dashoffset:0}}
@keyframes proof-accounting-status{0%,22%{opacity:0}27%,35%{opacity:.88}41%,100%{opacity:0}}
@keyframes proof-settlement-edge{0%,41%{opacity:0;stroke-dashoffset:20}45%{opacity:.9}59%{opacity:.9;stroke-dashoffset:-90}63%,100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-settlement-halo{0%,41%{opacity:0}47%,56%{opacity:.38}64%,100%{opacity:0}}
@keyframes proof-transfer-request{0%,41%{opacity:0;stroke-dashoffset:20}43%{opacity:1}50%{opacity:1;stroke-dashoffset:-85}52%,100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-transfer-received{0%,50%{opacity:0;stroke-dashoffset:20}52%{opacity:1}59%{opacity:1;stroke-dashoffset:-85}61%,100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-settlement-status{0%,43%{opacity:0}48%,56%{opacity:.88}62%,100%{opacity:0}}
@keyframes proof-verification-link{0%,60%{opacity:0;stroke-dashoffset:20}62%,64%{opacity:1}67%{opacity:0;stroke-dashoffset:-105}100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-verified-edge{0%,63%{opacity:0;stroke-dashoffset:20}67%{opacity:.9}80%{opacity:.9;stroke-dashoffset:-90}85%,100%{opacity:0;stroke-dashoffset:-105}}
@keyframes proof-verified-halo{0%,63%{opacity:0}69%,80%{opacity:.46}89%,100%{opacity:0}}
@keyframes proof-verified-status{0%,66%{opacity:0}72%,82%{opacity:1}90%,100%{opacity:0}}

@media(prefers-reduced-motion:reduce){.proof-processing-art{display:none}.proof-processing-art :is(path,circle,text),.proof-source-face{animation:none!important}}
