.workflow{padding:42px 0 64px;border-top:1px solid var(--line);--wf-surface:#fafcff;--wf-soft:#eaf2fd;--wf-accent:#386dcc;--wf-selected:#e3edff;--wf-selected-text:#183e76}
.workflow-intro{display:flex;justify-content:space-between;gap:28px;align-items:end}.workflow-intro p{max-width:370px;color:var(--muted);font-size:13px}.workflow-intro h2{margin-bottom:8px}
.wf-provenance{font:10px var(--font-code);line-height:1.8;color:var(--muted);overflow-wrap:anywhere;margin:10px 0 24px}.wf-provenance a{text-underline-offset:3px}
.wf-switch{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.wf-switch button{padding:11px 16px;border:1px solid var(--line);border-radius:6px;background:var(--wf-surface);color:var(--ink);font-size:12px}.wf-switch button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.wf-layout{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}.wf-chain{list-style:none;margin:0;padding:0}.wf-chain>li{position:relative;padding-bottom:27px}.wf-chain>li:after{content:'↓';position:absolute;bottom:3px;left:27px;color:var(--wf-accent);font-size:17px}.wf-chain>li:last-child{padding-bottom:0}.wf-chain>li:last-child:after{display:none}
.wf-node{width:100%;display:flex;gap:13px;align-items:center;text-align:left;border:1px solid var(--line);background:var(--wf-surface);color:var(--ink);border-radius:8px;padding:14px 16px;position:relative;min-height:72px}.wf-node:hover{background:var(--wf-soft);border-color:var(--wf-accent)}.wf-node[aria-pressed="true"]{border-color:var(--wf-accent);background:var(--wf-selected);color:var(--wf-selected-text);box-shadow:inset 3px 0 var(--wf-accent)}.wf-num{font:11px var(--font-code);color:var(--wf-accent);flex-shrink:0;min-width:23px}.wf-node strong{font-family:var(--font-display);font-size:17px;font-weight:600;display:block}.wf-node small{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:4px}.wf-failure{border-left:1px dashed var(--line);margin:10px 0 0 28px;padding-left:16px}.wf-failure .wf-node{min-height:54px;padding:10px;border-style:dashed}.wf-failure .wf-node strong{font-size:13px}.wf-failure .wf-node small{font-size:9px}
.wf-outputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:29px;position:relative}.wf-outputs:before{content:'↓ saved artifacts · choose publication mode';position:absolute;top:7px;left:16px;font:9px var(--font-code);color:var(--muted)}.wf-outputs .wf-node{align-items:start;padding:12px;gap:6px}.wf-outputs .wf-node strong{font-size:14px}.wf-outputs .wf-num{min-width:15px}
.wf-detail{position:sticky;top:24px;background:var(--wf-surface);border:1px solid var(--line);border-radius:12px;padding:28px;min-width:0}.wf-kicker{font:10px var(--font-code);color:var(--wf-accent);text-transform:uppercase;letter-spacing:1px}.wf-detail h3{font-size:27px;letter-spacing:-1px;font-weight:600;margin:14px 0 24px}.wf-detail dl{margin:0}.wf-detail dt{font:10px var(--font-code);text-transform:uppercase;letter-spacing:1px;color:var(--wf-accent);margin:21px 0 6px}.wf-detail dd{margin:0;font-size:13px;line-height:1.8;color:var(--ink)}.wf-note{padding:14px;background:var(--wf-soft);border-radius:6px;font-size:11px;color:var(--muted);line-height:1.75;margin:23px 0}.wf-sources{display:flex;flex-direction:column;gap:10px}.wf-sources strong{font-size:11px;font-weight:600}.wf-sources a{font:10px var(--font-code);color:var(--wf-accent);overflow-wrap:anywhere;text-underline-offset:3px}.wf-caption{font-size:12px;color:var(--muted);margin:22px 0 0}.wf-status{padding:13px 16px;border-left:2px solid var(--wf-accent);font-size:11px;color:var(--muted);background:var(--wf-soft);line-height:1.8;margin:24px 0 0}
html[data-theme="dark"] .workflow{--wf-surface:#10243d;--wf-soft:#1b3556;--wf-accent:#a0bdff;--wf-selected:#243d64;--wf-selected-text:#eff5ff}
@media(max-width:850px){.wf-layout{gap:20px}.wf-detail{padding:22px}.wf-outputs{grid-template-columns:1fr}.workflow-intro{display:block}.workflow-intro p{max-width:500px}}
@media(max-width:620px){.workflow{padding:30px 0 42px}.wf-layout{grid-template-columns:1fr}.wf-detail{position:static}.wf-detail h3{font-size:25px}.wf-node strong{font-size:16px}.wf-outputs{grid-template-columns:1fr 1fr}.wf-switch button{font-size:11px;padding:10px 12px}}
