.mo-figure{--mo-finished:#3f6b28;--mo-finished-wash:#eef3e8;--mo-queued:#c98a1b;--mo-queued-wash:#fbf3e2;--mo-stuck:#b3261e;--mo-stuck-wash:#fbeceb;--mo-idle:#9aa294;--mo-surface:var(--color-surface)}.mo-app{border:1px solid var(--color-border);background:var(--mo-surface);box-shadow:var(--shadow-surface);border-radius:6px;padding:clamp(1rem,2.5vw,1.75rem)}.mo-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;display:flex}.mo-control{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.mo-control__label{font:600 .85rem/1 var(--font-ui);color:var(--color-ink)}.mo-toggle{border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.mo-toggle button{min-height:2.5rem;font:600 .85rem/1 var(--font-ui);color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 1rem}.mo-toggle button:hover{color:var(--color-ink)}.mo-toggle button[aria-pressed=true]{background:var(--color-ink);color:#fff}.mo-toggle button:focus-visible,.mo-table summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.mo-legend{color:var(--color-muted);flex-wrap:wrap;gap:.3rem 1rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.mo-legend li{align-items:center;gap:.4rem;margin:0;display:inline-flex}.mo-key{border-radius:2px;width:.65rem;height:.65rem;display:inline-block}.mo-key--finished{background:var(--mo-finished)}.mo-key--queued{background:var(--mo-queued)}.mo-key--stuck{background:var(--mo-stuck)}.mo-summary{max-width:64ch;min-height:3.4em;color:var(--color-ink);margin:1.1rem 0 0;font-size:.95rem;line-height:1.7}.mo-designs{gap:1.25rem;margin-top:1.25rem;display:grid}.mo-design{border-top:1px solid var(--color-rule);padding-top:1.25rem}.mo-design__header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;display:flex}.mo-design h4{font:600 .95rem/1.35 var(--font-ui);color:var(--color-ink);margin:0}.mo-outcome-text{font-variant-numeric:tabular-nums;color:var(--color-muted);margin:0;font-size:.85rem}.mo-outcome-text strong{color:var(--color-ink);font-weight:600}.mo-steps{counter-reset:none;gap:.5rem;margin:.9rem 0 0;padding:0;list-style:none;display:grid}.mo-steps>li{margin:0}@media (width>=48rem){.mo-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.1rem}.mo-step:not(:last-child):after{content:"";background:var(--color-border-strong);width:calc(1.1rem - 2px);height:1px;position:absolute;top:50%;right:calc(1px - 1.1rem)}}.mo-step{border:1px solid var(--color-border);border-left:3px solid var(--mo-status);background:var(--mo-wash);border-radius:4px;align-content:start;gap:.2rem;padding:.7rem .8rem .75rem;display:grid;position:relative}.mo-step.is-running{--mo-status:var(--mo-finished);--mo-wash:var(--mo-surface)}.mo-step.is-queued,.mo-step.is-backlog{--mo-status:var(--mo-queued);--mo-wash:var(--mo-queued-wash)}.mo-step.is-stopped{--mo-status:var(--mo-stuck);--mo-wash:var(--mo-stuck-wash)}.mo-step.is-idle{--mo-status:var(--mo-idle);--mo-wash:var(--color-bg)}.mo-step__runner{font:500 .66rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-meta)}.mo-step__name{font:600 .88rem/1.3 var(--font-ui);color:var(--color-ink)}.mo-step__status{color:var(--color-ink);margin-top:.2rem;font-size:.78rem;font-weight:600;line-height:1.45}.mo-step__detail{color:var(--color-muted);font-weight:400}.mo-icon{letter-spacing:-.1em;min-width:1.1em;color:var(--mo-status);margin-right:.3rem;font-size:.7rem;display:inline-block}.mo-step__detail:before{content:" · "}@media (width>=48rem){.mo-step__detail{display:block}.mo-step__detail:before{content:none}}.mo-bar{gap:2px;height:8px;margin-top:.9rem;display:flex}.mo-segment{border-radius:2px;flex-basis:0;min-width:0}.mo-segment[style*="flex-grow: 0"]{display:none}.mo-segment--finished{background:var(--mo-finished)}.mo-segment--queued{background:var(--mo-queued)}.mo-segment--stuck{background:var(--mo-stuck)}.mo-table{border-top:1px solid var(--color-rule);margin-top:1.5rem;padding-top:.75rem}.mo-table summary{width:fit-content;font:600 .8rem/2 var(--font-ui);color:var(--color-accent);cursor:pointer}.mo-table table{margin:.75rem 0 0;font-size:.8rem;display:block;overflow-x:auto}
