.adf-stepper { margin: 28px 0 20px; }
.adf-step-list { list-style: none; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; padding: 0; margin: 0 0 28px; }
.adf-step { position: relative; min-width: 0; border: 1px solid #f7f4eb20; border-radius: 16px; padding: 20px 8px 15px; text-align: center; background: #ffffff02; color: #a5aaa7; }
.adf-step strong { display: block; margin: 12px 0 6px; font-size: 14px; color: inherit; }
.adf-step-icon { display: inline-grid; place-items: center; width: 38px; height: 38px; border: 1px solid #ffffff30; border-radius: 50%; font-size: 13px; font-weight: 700; }
.adf-step-state { font-size: 11px; }
.adf-step:not(:last-child)::after { content: '›'; position: absolute; right: -10px; top: 28px; font-size: 20px; color: #a5aaa7; }
.adf-step.is-done { color: #d4dacf; }
.adf-step.is-done .adf-step-icon { color: #d5e2c8; border-color: #b8c9ac55; background: #b8c9ac12; }
.adf-step.is-current { color: #f3c94b; border: 2px solid #f3c94b; padding: 19px 7px 14px; background: #f3c94b0e; box-shadow: 0 0 26px #f3c94b09; }
.adf-step.is-current .adf-step-icon { background: #f3c94b; color: #252922; border-color: #f3c94b; }
.adf-step.is-stopped { border-color: #f3988d; color: #ffb4a9; background: #ffb4a909; }
.adf-step.is-stopped .adf-step-icon { background: #f3988d; border-color: #f3988d; }
.adf-current-stage { padding: 26px; border: 1px solid #ffffff18; border-radius: 18px; background: #ffffff03; }
.adf-current-heading,.adf-progress-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.adf-current-heading h4 { font-size: 22px; margin: 0; letter-spacing: -.025em; }
.adf-current-badge { color: #f3c94b; font-size: 12px; white-space: nowrap; }
.adf-stage-description { font-size: 14px; line-height: 1.8; color: #c9cfca; margin: 12px 0 28px; }
.adf-progress-heading > span { font-size: 13px; color: #c1c7c1; }
.adf-stage-percent { font-size: 30px; color: #f3c94b; font-variant-numeric: tabular-nums; }
.adf-current-stage progress { display: block; width: 100%; height: 10px; accent-color: #f3c94b; margin: 12px 0; }
.adf-stage-counts { font-size: 12px; color: #a7aea8; margin: 12px 0 0; line-height: 1.7; }
.adf-stepper[data-stopped=true] progress { accent-color: #f3988d; }
.adf-stepper[data-fresh=false] .adf-stage-percent { color: #a7aea8; }
#processing-view .job-card:has(.adf-stepper) > .job-description { display: none; }
#processing-view .jobs-heading { margin-bottom: 12px; }
@media(max-width:650px) {
 .adf-step-list { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
 .adf-step:nth-child(3)::after { display: none; }
 .adf-current-stage { padding: 20px 16px; }
 .adf-current-heading h4 { font-size: 20px; }
 .adf-step strong { font-size: 12px; }
 .adf-step-icon { width: 32px; height: 32px; }
}
@media(prefers-reduced-motion:reduce) { .adf-stepper * { animation: none !important; transition: none !important; } }
