/* Authoritative step facts; current and complete are independent. */
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"].ui-step-list { list-style:none; display:flex; flex-wrap:nowrap; overflow-x:auto; max-inline-size:100%; min-inline-size:0; scrollbar-width:thin; align-items:stretch; gap:var(--zds-step-gap); padding:0; margin-block:0 14px; margin-inline:0; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"].ui-step-list li { flex:0 0 auto; min-inline-size:112px; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="catalog"] { display:flex; align-items:center; justify-content:flex-start; white-space:nowrap; gap:7px; inline-size:100%; min-block-size:var(--zds-action-height); border:0; border-block-end:2px solid var(--card-border); border-radius:0; background:transparent; color:var(--text-muted); padding-block:7px; padding-inline:0; font:inherit; font-size:var(--zds-step-font-size); text-align:start; box-shadow:none; transform:none; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="catalog"][aria-current="step"] { color:var(--text); border-color:var(--accent-ink); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-state="complete"] { color:var(--zds-step-complete-ink); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-state="missing"] { color:var(--zds-step-missing-ink); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"]:is([data-zds-step-profile="onboarding"],[data-zds-step-profile="product"]) > :is(a,span,div) { color:inherit; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"][data-zds-step-state="complete"] > b { color:var(--zds-step-complete-ink); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"][data-zds-step-state="missing"] > b { color:var(--zds-step-missing-ink); }
:is([data-zevs-ui].zds-reorder,[data-zevs-ui] .zds-reorder)[data-zds-component="reorder"].ui-reorder-list { list-style:none; padding:0; margin:0; }
:is([data-zevs-ui].zds-reorder,[data-zevs-ui] .zds-reorder)[data-zds-component="reorder"].ui-reorder-list li { display:flex; align-items:center; gap:9px; padding-block:var(--zds-reorder-padding-block); padding-inline:0; border-block-end:1px solid var(--card-border); }
:is([data-zevs-ui].zds-reorder,[data-zevs-ui] .zds-reorder)[data-zds-component="reorder"].ui-reorder-list .reorder-label { flex:1; min-inline-size:0; overflow-wrap:anywhere; }
:is([data-zevs-ui].zds-reorder,[data-zevs-ui] .zds-reorder)[data-zds-component="reorder"].ui-reorder-list .drag-handle { color:var(--text-muted); cursor:grab; display:flex; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][hidden],:is([data-zevs-ui].zds-reorder,[data-zevs-ui] .zds-reorder)[data-zds-component="reorder"][hidden] { display:none; }
@media(max-width:680px),(pointer:coarse) {
 :is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="catalog"] { min-block-size:var(--ui-touch-action-height,36px); padding-block:6px; }
}

/* Explicit completion marks override owner current/muted ink, never their layout. */
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-state="complete"] :is(.ux-step-number,.ob-step-num,.pp-step-n),
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"][data-zds-step-state="complete"] > b { background:var(--card-ok-bg); border-color:var(--card-ok-border); color:var(--zds-step-complete-ink); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-state="missing"] :is(.ux-step-number,.ob-step-num,.pp-step-n),
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"][data-zds-step-state="missing"] > b { background:transparent; border-color:var(--zds-step-missing-ink); color:var(--zds-step-missing-ink); }

/* Retain DOM focus and keyboard position without adding a visual focus ring. */
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"]:focus-visible,
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"] > :is(a,button):focus-visible { outline:none; box-shadow:none; }

/* Completion ink is independent of the current-step underline. */
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="catalog"][data-zds-step-state="complete"] { color:var(--zds-step-complete-ink); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="catalog"][data-zds-step-state="missing"] { color:var(--zds-step-missing-ink); }

/* These are navigation strips, while product journey cards retain their own grid. */
:is([data-zevs-ui].cj-steps,[data-zevs-ui] .cj-steps):has(> .zds-step[data-zds-step-profile="course"]),:is([data-zevs-ui].pp-steps,[data-zevs-ui] .pp-steps):has(> .zds-step[data-zds-step-profile="people-import"]) { box-sizing:border-box; min-inline-size:0; max-inline-size:100%; flex-wrap:nowrap; align-items:stretch; justify-content:flex-start; gap:var(--zds-step-gap); overflow-x:auto; scrollbar-width:thin; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"] { box-sizing:border-box; display:inline-flex; flex:none; inline-size:max-content; max-inline-size:none; min-inline-size:0; min-block-size:var(--zds-action-height); block-size:auto; align-items:center; white-space:nowrap; padding-block:5px; padding-inline:4px; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"] > b { box-sizing:border-box; flex:none; inline-size:24px; min-inline-size:24px; block-size:24px; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"] > span { flex:none; white-space:nowrap; }
/* The existing 22px onboarding mark plus 6px padding and two borders totals 36px. */
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="onboarding"] > :is(a,span) { box-sizing:border-box; min-block-size:var(--zds-action-height); padding-block:6px; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="people-import"] { box-sizing:border-box; flex:none; inline-size:max-content; max-inline-size:none; min-inline-size:0; min-block-size:var(--zds-action-height); align-items:center; white-space:nowrap; }

/* Canonical course strips may also carry the authored ui-tabs alias. */
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"][data-zds-step-state="complete"] { color:var(--zds-step-complete-ink); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-component="step"][data-zds-step-profile="course"][data-zds-step-state="missing"] { color:var(--zds-step-missing-ink); }

/* The product wizard's is-done means visited, not a completion fact. */
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-step-profile="product-wizard"] { box-sizing:border-box; min-block-size:var(--zds-action-height); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-step-profile="product-wizard"] .wiz-label { display:inline; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-step-profile="product-wizard"].is-done:not(.is-current) .wiz-num { background:var(--input-bg); color:var(--text-72); }

/* The cohort wizard keeps its one form; visiting a pane is not completion. */
:is([data-zevs-ui].mt-wiz,[data-zevs-ui] .mt-wiz):has(.zds-step[data-zds-step-profile="cohort-wizard"]) { grid-template-columns:repeat(auto-fit,minmax(min(100%,max(260px,calc((100% - 16px)/2))),1fr)); }
:is([data-zevs-ui].mt-wiz-steps,[data-zevs-ui] .mt-wiz-steps):has(> .zds-step[data-zds-step-profile="cohort-wizard"]) { box-sizing:border-box; grid-column:1 / -1; min-inline-size:0; max-inline-size:100%; flex-direction:row; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-step-profile="cohort-wizard"] { box-sizing:border-box; flex:none; inline-size:max-content; min-block-size:var(--zds-action-height); padding-block:6px; padding-inline:12px; white-space:nowrap; font-weight:400; }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-step-profile="cohort-wizard"].is-done:not(.is-on) { color:var(--text-72); }
:is([data-zevs-ui].zds-step,[data-zevs-ui] .zds-step)[data-zds-step-profile="cohort-wizard"].is-done:not(.is-on) > .mt-wiz-num { background:rgba(var(--text-rgb),.08); color:var(--text-72); }
