.pflow{--pflow-market: oklch(.62 .15 72);--pflow-stock: oklch(.55 .11 200);--pflow-content: oklch(.58 .21 350);--pflow-speak: oklch(.52 .22 293);--pflow-sell: oklch(.62 .23 38);--pflow-deliver: oklch(.56 .15 158);--pflow-finance: oklch(.52 .17 250);--pflow-build: oklch(.36 .06 268);--pflow-stage: var(--color-bg-secondary);display:grid;gap:20px}.pflow-scroll{overflow-x:auto;border:1px solid var(--color-border);border-radius:20px;background:var(--pflow-stage);scrollbar-width:thin}.pflow-stage{min-width:820px}.pflow-map{display:block;width:100%;height:auto;user-select:none}.pflow-zone{transition:opacity .6s}.pflow-edge{fill:none;stroke:color-mix(in oklch,var(--c) 38%,transparent);stroke-width:1.6;transition:opacity .5s,stroke-width .5s}.pflow-cross{stroke-dasharray:5 6}.pflow-node{cursor:pointer;transition:opacity .5s}.pflow-leaf rect{fill:#fff;stroke:#d4d4d4;stroke-width:1}.pflow-leaf text{font:500 14px var(--font-body);fill:var(--color-text)}.pflow-pip{fill:var(--c)}.pflow-engine rect{fill:color-mix(in oklch,var(--c) 14%,var(--pflow-stage));stroke:var(--c);stroke-width:1.5}.pflow-adapter rect{fill:var(--pflow-stage);stroke:var(--c);stroke-width:1.5;stroke-dasharray:6 4}.pflow-mcp-band{fill:none;stroke:color-mix(in oklch,var(--c) 7%,transparent);stroke-width:30;transition:opacity .5s}.pflow-mcp-ring{fill:none;stroke:color-mix(in oklch,var(--c) 60%,transparent);stroke-width:1.6;stroke-dasharray:2 6;stroke-linecap:round;transition:opacity .5s}.pflow-orbiter{cursor:pointer;transition:opacity .5s}.pflow-orbiter rect{fill:#fff;stroke:var(--c);stroke-width:1.2}.pflow-orbiter text{font:600 13px var(--font-body);fill:var(--c)}.pflow-orbiter use{color:var(--c)}.pflow-ask rect{rx:7px}.pflow-pnl-card{fill:#fff;stroke:var(--c);stroke-width:1.5}.pflow-pnl-row{font:500 12.5px var(--font-body);fill:var(--color-text-muted)}.pflow-pnl-val{font:500 12.5px var(--font-mono);fill:var(--color-text);font-variant-numeric:tabular-nums}.pflow-pnl-profit{font-weight:700;fill:oklch(.52 .15 150)}.pflow-pnl-profit.is-loss{fill:#cc2827}.pflow-pnl-rule{stroke:var(--color-border)}.pflow-pnl-flash{animation:pflow-flash .7s ease-out}@keyframes pflow-flash{0%{fill:var(--c)}}.pflow-tick circle{fill:#139948}.pflow-tick path{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.pflow-lbl{font:600 16px var(--font-heading);fill:var(--color-text);letter-spacing:-.01em}.pflow-kick{font:500 9.5px var(--font-mono);fill:var(--c);letter-spacing:.12em;text-transform:uppercase}.pflow-node.is-ping rect{stroke:var(--c);stroke-width:2.5}.pflow-title{cursor:pointer;transition:opacity .5s}.pflow-title text{font:700 13px var(--font-mono);letter-spacing:.14em;text-transform:uppercase;fill:var(--c)}.pflow-group{font:500 10.5px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;fill:var(--color-text-muted)}.pflow-tok{pointer-events:none;transition:opacity .5s}.pflow-tok rect{fill:color-mix(in oklch,var(--c) 13%,var(--pflow-stage));stroke:color-mix(in oklch,var(--c) 55%,transparent);stroke-width:1}.pflow-tok text{font:500 11.5px var(--font-mono);fill:color-mix(in oklch,var(--c) 72%,var(--color-text))}.pflow-tok use{color:var(--c)}.pflow-core{fill:#0f0d0c}.pflow-ring{fill:none;stroke:var(--color-accent);stroke-width:2;stroke-dasharray:3 9;stroke-linecap:round;transform-origin:800px 500px;animation:pflow-spin 40s linear infinite}.pflow-ring2{fill:none;stroke:#d4d4d4;stroke-width:1}.pflow-hub-kick{font:500 10px var(--font-mono);letter-spacing:.22em;fill:var(--color-accent)}.pflow-hub-name{font:800 23px var(--font-heading);fill:#f6f3f0;letter-spacing:-.02em}.pflow-hub-sub{font:400 10.5px var(--font-mono);fill:#a8a19a}.pflow-pulse{fill:none;stroke:var(--color-accent);pointer-events:none}@keyframes pflow-spin{to{transform:rotate(360deg)}}.pflow-map[data-focus] [data-p]{opacity:.13}.pflow-map[data-focus] .pflow-zone[data-p]{opacity:.15}.pflow-map[data-focus~=build] [data-p]{opacity:.32}.pflow-map[data-focus~=market] [data-p=market],.pflow-map[data-focus~=stock] [data-p=stock],.pflow-map[data-focus~=content] [data-p=content],.pflow-map[data-focus~=speak] [data-p=speak],.pflow-map[data-focus~=sell] [data-p=sell],.pflow-map[data-focus~=deliver] [data-p=deliver],.pflow-map[data-focus~=finance] [data-p=finance],.pflow-map[data-focus~=build] [data-p=build]{opacity:1}.pflow-map[data-focus] .pflow-edge{stroke-width:2.2}.pflow-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 24px;align-items:start;text-align:left}.pflow-tabs{display:flex;flex-wrap:wrap;gap:8px}.pflow-tab{--progress: 0%;position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;font:500 14px var(--font-body);color:var(--color-text);background:#fff;border:1px solid var(--color-border-light);border-radius:999px;padding:7px 14px;cursor:pointer;transition:background .2s,border-color .2s}.pflow-tab i{width:8px;height:8px;border-radius:50%;background:var(--c, var(--color-text))}.pflow-tab:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:var(--progress);background:var(--c, var(--color-text))}.pflow-tab:hover{border-color:var(--c, var(--color-text))}.pflow-tab[aria-pressed=true]{background:color-mix(in oklch,var(--c, var(--color-text)) 11%,#fff);border-color:var(--c, var(--color-text))}.pflow-tab:focus-visible,.pflow-ctl:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.pflow-buttons{display:flex;flex-wrap:wrap;gap:8px}.pflow-ctl{font:500 13px var(--font-mono);color:var(--color-text-muted);background:none;border:1px solid var(--color-border);border-radius:8px;padding:7px 12px;cursor:pointer;white-space:nowrap}.pflow-ctl:hover{color:var(--color-text);border-color:var(--color-border-light)}.pflow-caption{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:8px 32px;border-top:1px solid var(--color-border);padding-top:18px;min-height:96px}.pflow-caption h2{font-size:26px;color:var(--c, var(--color-text));text-wrap:balance}.pflow-caption p{color:var(--color-text-muted);max-width:64ch;line-height:1.6}.pflow-caption a{display:inline-block;margin-top:8px;font-weight:500;color:var(--c, var(--color-accent))}.pflow-caption a:hover{text-decoration:underline}@media(max-width:760px){.pflow-controls,.pflow-caption{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.pflow-ring{animation:none}}
