/* CPRI Module 015 — one shared visual language for asynchronous workflow status.
   Variants map centrally (see app/Ui/WorkflowStatus.php). Status is never colour-only:
   each carries a text label + dot. */
.cpri-status { display: inline-flex; align-items: center; gap: 6px; font-size: var(--fs-sm); font-weight: var(--fw-medium); }
.cpri-status__dot { width: 8px; height: 8px; border-radius: 50%; flex: 0 0 8px; }
.cpri-status--not_started .cpri-status__dot, .cpri-status--unavailable .cpri-status__dot { background: var(--neutral); }
.cpri-status--queued .cpri-status__dot, .cpri-status--waiting .cpri-status__dot { background: var(--information); }
.cpri-status--running .cpri-status__dot { background: var(--accent); animation: cpri-pulse 1.4s ease-in-out infinite; }
.cpri-status--review_required .cpri-status__dot, .cpri-status--warning .cpri-status__dot, .cpri-status--deferred .cpri-status__dot { background: var(--warning); }
.cpri-status--completed .cpri-status__dot { background: var(--success); }
.cpri-status--failed .cpri-status__dot, .cpri-status--cancelled .cpri-status__dot { background: var(--danger); }
@keyframes cpri-pulse { 0%,100% { opacity: 1; } 50% { opacity: 0.4; } }
@media (prefers-reduced-motion: reduce) { .cpri-status--running .cpri-status__dot { animation: none; } }

.cpri-workflow-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg);
  padding: var(--sp-4) var(--sp-5); box-shadow: var(--shadow-sm); display: flex; flex-direction: column; gap: var(--sp-2); }
.cpri-workflow-card__title { font-weight: var(--fw-semibold); }
.cpri-workflow-card__meta { color: var(--text-muted); font-size: var(--fs-sm); }

/* Stage progress (deterministic multi-stage e.g. Evidence Review) */
.cpri-stage-progress { display: flex; align-items: center; gap: 4px; }
.cpri-stage-progress__seg { height: 6px; flex: 1; border-radius: var(--radius-pill); background: var(--surface-subtle); }
.cpri-stage-progress__seg.is-done { background: var(--accent); }
.cpri-stage-progress__seg.is-current { background: var(--brand-primary); }
.cpri-progressbar { height: 8px; border-radius: var(--radius-pill); background: var(--surface-subtle); overflow: hidden; }
.cpri-progressbar__fill { height: 100%; background: var(--accent); border-radius: var(--radius-pill); }
