/* ============================================================
   workflow-canvas — visual node builder (full-width, modern editor UI)
   ============================================================ */

/* ---- full width: the canvas owns the whole page, not a 1000px column ---- */
body[data-wfc-page] .tool-shell-wrap{max-width:none}
body[data-wfc-page] .page{padding-left:var(--space-6,18px);padding-right:var(--space-6,18px)}
body[data-wfc-page] .page-inner{max-width:none}

/* the canvas needs the full page width — stack input on top, output full-width below */
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .tool-panes{grid-template-columns:1fr}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .tool-pane-content{padding:var(--space-3,12px)}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .tool-pane:first-child{max-width:none}

/* ---- modern toolbar: glass surface, gradient primary, soft shadows ---- */
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .wfc-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;border:1px solid var(--border,rgba(127,127,127,.22));border-radius:14px;padding:.7rem .8rem;margin-bottom:.7rem;background:var(--surface-2,#f4f6f9);box-shadow:0 1px 0 rgba(255,255,255,.04) inset,0 4px 20px rgba(0,0,0,.06)}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .vc-btn{border-radius:10px;font-weight:600;padding:.45rem .85rem;font-size:var(--text-xs,.78rem);border:1px solid var(--border,rgba(127,127,127,.28));background:var(--surface,#ffffff);color:var(--text-1,#0f172a);cursor:pointer;transition:transform .1s,border-color .15s,box-shadow .15s;display:inline-flex;align-items:center;gap:4px}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .vc-btn:hover{border-color:var(--accent,#6366f1);transform:translateY(-1px);box-shadow:0 4px 12px var(--accent-soft,rgba(99,102,241,.18))}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .vc-btn-primary{background:linear-gradient(135deg,var(--accent,#6366f1),#8b5cf6);border-color:transparent;color:#fff}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .vc-btn-primary:hover{box-shadow:0 6px 18px rgba(99,102,241,.35)}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .vc-btn-ghost{background:transparent}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .wfc-import-btn{cursor:pointer;margin:0}
[data-page="tool"] #toolShell[data-slug="workflow-canvas"] .wfc-status{font-size:var(--text-xs,.78rem);opacity:.8;margin-left:auto;max-width:46%;text-align:right;line-height:1.4;color:var(--text-2,#475569)}
[data-page="tool"] .wfc-status{font-size:var(--text-xs,.78rem);opacity:.8;margin-left:auto;max-width:42%;text-align:right;line-height:1.4;color:var(--text-2,#475569)}
[data-page="tool"] .wfc-layout{display:grid;grid-template-columns:260px minmax(0,1fr) 310px;gap:.8rem;align-items:stretch;width:100%;height:clamp(560px,calc(100vh - 250px),860px);min-height:520px}
@media (max-width:1100px){[data-page="tool"] .wfc-layout{grid-template-columns:1fr;grid-template-rows:minmax(240px,38vh) minmax(380px,48vh) auto;height:auto;min-height:0;max-height:none}}

/* ---- mobile: one pane at a time via a bottom-ish tab bar ---- */
[data-page="tool"] .wfc-mobtabs{display:none}
@media (max-width:760px){
  [data-page="tool"] .wfc-mobtabs{display:flex;gap:.4rem;margin-bottom:.65rem;position:sticky;top:calc(var(--header-h,56px) + 8px);z-index:20}
  [data-page="tool"] .wfc-mobtabs .vc-btn{flex:1;justify-content:center;padding:.55rem .4rem;font-size:var(--text-xs,.78rem);border-radius:10px;touch-action:manipulation}
  [data-page="tool"] .wfc-mobtabs .vc-btn.is-active{background:linear-gradient(135deg,var(--accent,#6366f1),#8b5cf6);border-color:transparent;color:#fff}
  /* only the active pane is visible on phones */
  [data-page="tool"] .wfc-layout{height:clamp(520px,calc(100vh - 230px),700px);grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}
  [data-page="tool"] .wfc-layout[data-mobtab="palette"] .wfc-canvas,
  [data-page="tool"] .wfc-layout[data-mobtab="palette"] .wfc-inspector,
  [data-page="tool"] .wfc-layout[data-mobtab="canvas"] .wfc-palette-wrap,
  [data-page="tool"] .wfc-layout[data-mobtab="canvas"] .wfc-inspector,
  [data-page="tool"] .wfc-layout[data-mobtab="inspector"] .wfc-palette-wrap,
  [data-page="tool"] .wfc-layout[data-mobtab="inspector"] .wfc-canvas{display:none}
  /* palette list: denser 2-column grid on phones */
  [data-page="tool"] .wfc-list{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;align-content:start}
  [data-page="tool"] .wfc-tool{padding:.5rem .55rem;border-radius:10px;border:1px solid var(--border,rgba(127,127,127,.18));background:var(--surface,#ffffff)}
  [data-page="tool"] .wfc-tool-add{opacity:.7}
  /* canvas + inspector fill the tab area on phones */
  [data-page="tool"] .wfc-layout[data-mobtab="canvas"] .wfc-canvas{height:100%}
  [data-page="tool"] .wfc-layout[data-mobtab="inspector"] .wfc-inspector{height:100%;max-height:none}
  /* tap targets: ports + node heads stay comfortable */
  [data-page="tool"] .wfc-port{width:20px;height:20px}
  [data-page="tool"] .wfc-node-head{padding:.65rem .7rem}
  /* minimap can shrink on phones */
  [data-page="tool"] .wfc-minimap{width:110px;height:70px;right:8px;bottom:8px}
}
[data-page="tool"] .wfc-palette{border:1px solid var(--border,rgba(127,127,127,.25));border-radius:14px;display:flex;flex-direction:column;overflow:hidden;min-height:0;background:var(--surface,#ffffff);box-shadow:0 1px 0 rgba(255,255,255,.04) inset}
[data-page="tool"] .wfc-palette-head{padding:.6rem;border-bottom:1px solid var(--border,rgba(127,127,127,.2));display:flex;flex-direction:column;gap:.5rem;background:var(--surface-2,#f4f6f9)}
[data-page="tool"] .wfc-search{font-size:var(--text-sm,.82rem);padding:.45rem .7rem;border:1px solid var(--border,#cbd2df);border-radius:9px;background:var(--surface,#ffffff);color:var(--text-1,#0f172a);transition:border-color .15s,box-shadow .15s}
[data-page="tool"] .wfc-search:focus{outline:none;border-color:var(--accent,#6366f1);box-shadow:0 0 0 3px var(--accent-soft,rgba(99,102,241,.14))}
[data-page="tool"] .wfc-chips{display:flex;flex-wrap:wrap;gap:.3rem;max-height:64px;overflow:auto}
[data-page="tool"] .wfc-chip{font-size:var(--text-2xs,.68rem);padding:.15rem .45rem;border-radius:999px;border:1px solid var(--border,rgba(127,127,127,.3));background:var(--surface-2,#f4f6f9);color:var(--text-2,#475569);cursor:pointer;opacity:.85;white-space:nowrap}
[data-page="tool"] .wfc-chip:hover{opacity:1;border-color:var(--accent,#6366f1);color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-list{overflow:auto;flex:1;padding:.4rem;display:flex;flex-direction:column;gap:.25rem;min-height:0}
[data-page="tool"] .wfc-tool{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;padding:.44rem .58rem;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text-1,#0f172a);cursor:grab;font-size:var(--text-sm,.8rem);transition:background .12s,border-color .12s,transform .1s}
[data-page="tool"] .wfc-tool:active{cursor:grabbing}
[data-page="tool"] .wfc-tool:hover{border-color:var(--border,rgba(127,127,127,.35));background:var(--surface-2,#f4f6f9);transform:translateX(2px)}
[data-page="tool"] .wfc-tool-ico{flex:0 0 auto;width:22px;text-align:center;font-size:.95rem}
[data-page="tool"] .wfc-tool-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-page="tool"] .wfc-tool-add{flex:0 0 auto;opacity:0;font-weight:700;color:var(--accent,#6366f1);transition:opacity .12s}
[data-page="tool"] .wfc-tool:hover .wfc-tool-add{opacity:1}
[data-page="tool"] .wfc-empty{font-size:var(--text-xs,.76rem);opacity:.7;padding:.6rem;color:var(--text-2,#475569)}

[data-page="tool"] .wfc-canvas{position:relative;border:1px solid var(--border,rgba(127,127,127,.25));border-radius:14px;overflow:auto;min-height:0;background:
  radial-gradient(circle,rgba(127,127,127,.18) 1px,transparent 1px),var(--bg,#fafbfc);
  background-size:22px 22px,100% 100%;box-shadow:0 2px 0 rgba(255,255,255,.04) inset,0 10px 34px rgba(0,0,0,.06);transition:border-color .15s,box-shadow .15s}
[data-page="tool"] .wfc-canvas.is-drag-over{border-color:var(--accent,#6366f1);box-shadow:0 0 0 3px var(--accent-soft,rgba(99,102,241,.25)),0 10px 34px rgba(0,0,0,.12)}
[data-page="tool"] .wfc-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
[data-page="tool"] .wfc-wire{fill:none;stroke:var(--accent,#6366f1);stroke-width:2.2;opacity:.8;pointer-events:stroke;cursor:pointer;transition:stroke-width .12s,stroke .12s}
[data-page="tool"] .wfc-wire:hover{opacity:1;stroke-width:4;stroke:#ef4444}
[data-page="tool"] .wfc-wire-draft{stroke-dasharray:5 4;opacity:.65}
[data-page="tool"] .wfc-nodes{position:relative;width:100%;height:100%;z-index:3}
[data-page="tool"] .wfc-node{position:absolute;width:210px;border:1px solid var(--border,rgba(127,127,127,.35));border-radius:14px;background:var(--surface,#ffffff);box-shadow:0 6px 22px rgba(0,0,0,.08),0 1px 0 rgba(255,255,255,.05) inset;cursor:default;transition:box-shadow .15s,border-color .15s;overflow:hidden}
[data-page="tool"] .wfc-node.is-selected{border-color:var(--accent,#6366f1);box-shadow:0 0 0 2.5px var(--accent-soft,rgba(99,102,241,.28)),0 10px 30px rgba(0,0,0,.18)}
[data-page="tool"] .wfc-node.is-failed{border-color:#ef4444}
[data-page="tool"] .wfc-node.is-done .wfc-node-head{background:linear-gradient(90deg,rgba(34,197,94,.12),transparent)}
[data-page="tool"] .wfc-node-strip{height:3px;flex:0 0 auto;width:100%}
[data-page="tool"] .wfc-node-head{display:flex;align-items:center;gap:.45rem;padding:.5rem .6rem;cursor:grab;user-select:none;border-bottom:1px solid var(--border,rgba(127,127,127,.18));background:var(--surface-2,#f4f6f9)}
[data-page="tool"] .wfc-node .wfc-node-ico{color:var(--node-cat,#6366f1);opacity:.95}
[data-page="tool"] .wfc-node.is-selected .wfc-node-strip{height:4px}
[data-page="tool"] .wfc-node-head:active{cursor:grabbing}
[data-page="tool"] .wfc-node-ico{font-size:.95rem;flex:0 0 auto}
[data-page="tool"] .wfc-node-name{flex:1;font-size:var(--text-xs,.78rem);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-node-head-actions{display:flex;align-items:center;gap:3px;margin-left:auto;flex:0 0 auto}
[data-page="tool"] .wfc-node-st{font-size:.78rem;line-height:1;display:inline-flex;align-items:center}
[data-page="tool"] .wfc-node-close{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;border:none;background:transparent;color:var(--text-3,#94a3b8);cursor:pointer;font-size:12px;font-weight:bold;line-height:1;padding:0;transition:background .12s,color .12s,transform .1s}
[data-page="tool"] .wfc-node-close:hover{background:rgba(239,68,68,.18);color:#ef4444;transform:scale(1.15)}
[data-page="tool"] .wfc-node-close:active{transform:scale(0.95)}
[data-page="tool"] .wfc-node-ports{display:flex;align-items:center;justify-content:space-between;padding:.35rem .55rem;background:var(--surface,#ffffff)}
[data-page="tool"] .wfc-port{width:16px;height:16px;border-radius:50%;border:2.5px solid var(--accent,#6366f1);background:var(--surface,#ffffff);cursor:crosshair;transition:transform .12s,background .12s,box-shadow .12s;display:inline-block}
[data-page="tool"] .wfc-port:hover{transform:scale(1.3);background:rgba(99,102,241,.35);box-shadow:0 0 0 4px rgba(99,102,241,.15)}
[data-page="tool"] .wfc-port-label{font-size:var(--text-2xs,.66rem);opacity:.55}
[data-page="tool"] .wfc-drop-hint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;color:var(--text-3,rgba(127,127,127,.5));font-size:var(--text-xs,.76rem);text-align:center;pointer-events:none;z-index:1;line-height:1.6;padding:1rem}

[data-page="tool"] .wfc-inspector{border:1px solid var(--border,rgba(127,127,127,.25));border-radius:14px;padding:.85rem;overflow:auto;min-height:0;display:flex;flex-direction:column;gap:.5rem;background:var(--surface,#ffffff);box-shadow:0 1px 0 rgba(255,255,255,.04) inset;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-panel-title{margin:0;font-size:var(--text-sm,.88rem);font-weight:700;display:flex;align-items:center;gap:.35rem;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-node-desc{font-size:var(--text-2xs,.7rem);opacity:.8;margin:0;line-height:1.5;color:var(--text-2,#475569)}
[data-page="tool"] .wfc-badge{font-size:var(--text-2xs,.68rem);border:1px solid var(--border,rgba(127,127,127,.3));border-radius:999px;padding:.15rem .5rem;display:inline-block;width:fit-content;background:var(--surface-2,#f4f6f9);color:var(--text-2,#475569)}
[data-page="tool"] .wfc-hint{font-size:var(--text-2xs,.72rem);opacity:.85;margin:0;line-height:1.5;color:var(--text-2,#475569)}
[data-page="tool"] .wfc-inspector .field{margin-bottom:.5rem}
[data-page="tool"] .wfc-inspector .field-label{font-size:var(--text-2xs,.72rem);font-weight:600;margin-bottom:.2rem;display:block;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-inspector .field-hint{font-size:var(--text-2xs,.66rem);color:var(--text-3,#94a3b8);margin-top:.15rem}
[data-page="tool"] .wfc-inspector .input,[data-page="tool"] .wfc-inspector .textarea,[data-page="tool"] .wfc-inspector select{font-size:var(--text-xs,.78rem);padding:.4rem .55rem;width:100%;border:1px solid var(--border,#cbd2df);border-radius:7px;background:var(--surface-2,#f4f6f9);color:var(--text-1,#0f172a);transition:border-color .15s}
[data-page="tool"] .wfc-inspector .input:focus,[data-page="tool"] .wfc-inspector .textarea:focus,[data-page="tool"] .wfc-inspector select:focus{outline:none;border-color:var(--accent,#6366f1)}
[data-page="tool"] .wfc-inspector .textarea{min-height:65px;resize:vertical}
[data-page="tool"] .wfc-insp-wires{display:flex;flex-direction:column;gap:.3rem;margin:.35rem 0;padding:.45rem;border:1px dashed var(--border,#cbd2df);border-radius:8px;background:var(--surface-2,#f4f6f9)}
[data-page="tool"] .wfc-insp-wire-row{display:flex;align-items:center;justify-content:space-between;gap:.4rem;font-size:var(--text-2xs,.7rem);color:var(--text-2,#475569)}
[data-page="tool"] .wfc-insp-wire-del{padding:.1rem .35rem;font-size:10px;border-radius:4px;border:none;background:rgba(239,68,68,.12);color:#ef4444;cursor:pointer}
[data-page="tool"] .wfc-insp-wire-del:hover{background:#ef4444;color:#fff}
[data-page="tool"] .wfc-insp-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.45rem}
[data-page="tool"] .wfc-result{margin-top:.4rem;font-size:var(--text-2xs,.7rem);opacity:.9}
[data-page="tool"] .wfc-result summary{cursor:pointer;font-weight:600;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-result pre{white-space:pre-wrap;word-break:break-word;max-height:160px;overflow:auto;background:var(--surface-2,#f4f6f9);border:1px solid var(--border,#cbd2df);border-radius:6px;padding:.5rem;margin:.35rem 0 0;font-family:var(--font-mono);font-size:var(--text-2xs,.7rem);color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-result summary{cursor:pointer}
[data-page="tool"] .wfc-result pre{white-space:pre-wrap;word-break:break-word;max-height:160px;overflow:auto;background:var(--color-surface-1,transparent);border:1px solid var(--color-border,rgba(127,127,127,.2));border-radius:6px;padding:.45rem;margin:.35rem 0 0;font-family:var(--font-mono);font-size:var(--text-2xs,.68rem)}

/* output-port kind tag (📄 file / ✍ text — shown after the node has run) */
[data-page="tool"] .wfc-port-out-tag{font-size:var(--text-2xs,.66rem);opacity:.6;margin:0 .15rem}

/* overlays (templates gallery + batch panel) */
[data-page="tool"] .wfc-overlay{position:fixed;inset:0;background:rgba(10,10,20,.65);backdrop-filter:blur(4px);z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:5vh 1rem 2rem;overflow:auto}
[data-page="tool"] .wfc-overlay[hidden]{display:none}
[data-page="tool"] .wfc-overlay-card{background:var(--surface,#ffffff);color:var(--text-1,#0f172a);border:1px solid var(--border,rgba(127,127,127,.3));border-radius:14px;padding:1.2rem;max-width:640px;width:100%;box-shadow:var(--shadow-lg,0 20px 60px rgba(0,0,0,.35))}
[data-page="tool"] .wfc-overlay-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.6rem;font-size:var(--text-md,.92rem);color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-overlay-x{font-size:var(--text-xs,.78rem);padding:.2rem .55rem}
[data-page="tool"] .wfc-tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem;margin-top:.6rem}
[data-page="tool"] .wfc-tpl-card{display:flex;flex-direction:column;gap:.3rem;text-align:left;padding:.7rem;border:1px solid var(--border,rgba(127,127,127,.3));border-radius:10px;background:var(--surface-2,#f4f6f9);color:var(--text-1,#0f172a);cursor:pointer;transition:border-color .15s,background .15s}
[data-page="tool"] .wfc-tpl-card:hover{border-color:var(--accent,#6366f1);background:var(--accent-soft,rgba(99,102,241,.08))}
[data-page="tool"] .wfc-tpl-title{font-weight:600;font-size:var(--text-xs,.8rem);color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-tpl-flow{font-size:var(--text-2xs,.7rem);opacity:.8;font-family:var(--font-mono);color:var(--text-2,#475569)}
[data-page="tool"] .wfc-tpl-desc{font-size:var(--text-2xs,.68rem);opacity:.75;line-height:1.45;color:var(--text-2,#475569)}

/* batch panel */
[data-page="tool"] .wfc-batch-files{display:block;width:100%;margin:.5rem 0;font-size:var(--text-xs,.75rem)}
[data-page="tool"] .wfc-batch-summary{font-size:var(--text-xs,.78rem);font-weight:600;margin:.4rem 0;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-batch-row{font-size:var(--text-2xs,.72rem);padding:.2rem .25rem;border-bottom:1px solid var(--border,rgba(127,127,127,.12));display:flex;justify-content:space-between;gap:.5rem;word-break:break-word;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-batch-ok{color:#22c55e;flex:0 0 auto}
[data-page="tool"] .wfc-batch-fail{color:#ef4444;flex:0 0 auto;font-size:var(--text-2xs,.66rem)}

/* palette collapse — the canvas takes the freed column */
[data-page="tool"] .wfc-layout .wfc-palette-wrap{min-width:0;transition:flex-basis .18s ease,grid-template-columns .18s ease}
[data-page="tool"] .wfc-layout.wfc-palette-hidden{grid-template-columns:0 minmax(0,1fr) 300px}
[data-page="tool"] .wfc-layout.wfc-palette-hidden .wfc-palette-wrap{overflow:hidden}
[data-page="tool"] .wfc-layout.wfc-palette-hidden .wfc-palette{visibility:hidden;opacity:0;transition:opacity .15s}
[data-page="tool"] .wfc-layout.wfc-palette-hidden{transition:grid-template-columns .18s ease}
@media (max-width:1100px){[data-page="tool"] .wfc-layout.wfc-palette-hidden{grid-template-columns:1fr;grid-template-rows:minmax(0,0fr) minmax(380px,48vh) auto}}

/* active toggle state */
[data-page="tool"] .wfc-toolbar .vc-btn.is-active{border-color:var(--accent,#6366f1);box-shadow:0 0 0 2px var(--accent-soft,rgba(99,102,241,.2))}

/* minimap — small workflow overview in the canvas corner */
[data-page="tool"] .wfc-minimap{position:absolute;right:14px;bottom:14px;width:150px;height:96px;border:1px solid var(--border,#cbd2df);border-radius:10px;background:var(--surface,#ffffff);box-shadow:0 6px 20px rgba(0,0,0,.15);z-index:15;overflow:hidden;pointer-events:auto;cursor:default;transition:opacity .15s}
[data-page="tool"] .wfc-minimap.is-hidden{display:none}
[data-page="tool"] .wfc-mm-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
[data-page="tool"] .wfc-mm-svg line{stroke:var(--accent,#6366f1);stroke-width:1.5;stroke-opacity:.7}
[data-page="tool"] .wfc-mm-dot{position:absolute;border-radius:3px;border:1px solid rgba(255,255,255,.9);box-shadow:0 1px 4px rgba(0,0,0,.25);cursor:pointer;transition:transform .12s,box-shadow .12s}
[data-page="tool"] .wfc-mm-dot:hover{transform:scale(1.25);z-index:4;box-shadow:0 2px 8px rgba(0,0,0,.35)}
[data-page="tool"] .wfc-mm-dot.is-selected{outline:2px solid var(--accent,#6366f1);outline-offset:1px}
[data-page="tool"] .wfc-mm-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--text-3,#94a3b8);font-size:var(--text-xs,.72rem)}

/* --- plan panel (natural language → allowlisted workflow) --- */
[data-page="tool"] .wfc-plan-goal{width:100%;min-height:76px;background:var(--surface,#ffffff);color:var(--text-1,#0f172a);border:1px solid var(--border,#cbd2df);border-radius:10px;padding:.7rem .8rem;font:inherit;font-size:var(--text-sm,.85rem);line-height:1.5;resize:vertical;transition:border-color .15s,box-shadow .15s}
[data-page="tool"] .wfc-plan-goal::placeholder{color:var(--text-3,#94a3b8);opacity:.85}
[data-page="tool"] .wfc-plan-goal:focus{outline:none;border-color:var(--accent,#6366f1);box-shadow:0 0 0 3px var(--accent-soft,rgba(99,102,241,.2))}
[data-page="tool"] .wfc-plan-steps{display:flex;flex-direction:column;gap:.45rem;margin:.7rem 0}
[data-page="tool"] .wfc-plan-step{display:grid;grid-template-columns:auto 1fr;gap:.2rem .7rem;align-items:baseline;background:var(--surface-2,#f4f6f9);border:1px solid var(--border,rgba(127,127,127,.3));border-radius:10px;padding:.55rem .7rem;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-plan-idx{grid-row:1/3;width:22px;height:22px;border-radius:50%;background:var(--accent,#6366f1);color:#fff;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;align-self:center}
[data-page="tool"] .wfc-plan-name{font-weight:600;font-size:.88rem;color:var(--text-1,#0f172a)}
[data-page="tool"] .wfc-plan-note{font-size:.78rem;color:var(--text-2,#475569);line-height:1.4}
[data-page="tool"] .wfc-plan-gate{display:inline-block;margin-left:.4rem;font-size:.7rem;font-weight:600;color:#d97706;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.35);border-radius:999px;padding:.08rem .5rem;vertical-align:middle}
