
.flow-status{border:1px solid #2b4858;border-radius:16px;padding:22px;background:linear-gradient(115deg,#14283480,#0c1720);min-width:0}
.flow-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0 0 26px;padding:0;gap:6px}
.flow-track li{position:relative;padding-top:26px;color:#607d91;font-size:11px;line-height:1.5;min-width:0}
.flow-track li:before{content:'';position:absolute;left:0;right:0;top:8px;height:2px;background:#294151}
.flow-dot{position:absolute;top:0;left:0;width:18px;height:18px;border:1px solid #365365;border-radius:50%;background:#101e29;display:grid;place-items:center;font-size:9px;color:#8baabd;z-index:1}
.flow-track .done{color:#9fc7ce}.flow-track .done:before{background:#5cabb5}.flow-track .done .flow-dot{border-color:#64bec7;color:#b6f2ef;background:#1b444b}
.flow-track .current{color:#d0ebf3}.flow-track .current .flow-dot{border-color:#a2e1e6;box-shadow:0 0 12px #71dbe533;color:#e1fcfc}
.flow-caption{display:flex;gap:13px;align-items:flex-start}.flow-caption>div{min-width:0}.flow-caption strong{font-size:14px;font-weight:550;color:#d3eaf5;line-height:1.65}.flow-caption p{font-size:12px;line-height:1.7;color:#8daabf;margin:5px 0 0;overflow-wrap:anywhere}
.flow-spinner,.flow-icon{width:19px;height:19px;flex-shrink:0;margin-top:3px}.flow-spinner{border:2px solid #34515e;border-top-color:#8adce0;border-radius:50%;animation:flow-spin 1s linear infinite}.flow-icon{display:grid;place-items:center;border-radius:50%;color:#91d5da;background:#224650}
.flow-status.is-complete .flow-icon::before{content:'';width:5px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-1px) rotate(45deg)}
.flow-status.is-error{border-color:#77505b;background:#321e2940}.is-error .flow-icon{color:#f4bdc4;background:#5b3440}.flow-status.is-complete{border-color:#37605d}
@keyframes flow-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.flow-spinner{animation:none;border-color:#3b6873;border-top-color:#a7eced}}
@media(max-width:520px){.flow-status{padding:17px}.flow-track{gap:4px}.flow-track li{font-size:10px}.flow-caption strong{font-size:13px}}
