:root{--bg: #f2f4f7;--surface: #ffffff;--surface-2: #e9edf2;--ink: #18212c;--muted: #5a6677;--line: #d5dbe3;--accent: #2a4bd0;--accent-soft: #e3e8fb;--claude: #b85c38;--openai: #0b8566;--local: #7349c2;--gate: #8f5d0e;--field: #7d8899;--part: #0f7a86;--add: #dff3e7;--add-ink: #1d6b40;--del: #fbe4e1;--del-ink: #9b2c22;--code-bg: #f7f8fa;--font-display: "Bricolage Grotesque", "Avenir Next", "Segoe UI", sans-serif;--font-body: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--r: 8px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0e131a;--surface: #151c26;--surface-2: #1c2531;--ink: #e5eaf1;--muted: #98a4b5;--line: #2a3442;--accent: #8aa2ff;--accent-soft: #1f2a4a;--claude: #e38a64;--openai: #3fc89f;--local: #ac8dec;--gate: #e2aa4c;--part: #4cc2cf;--field: #647185;--add: #15321f;--add-ink: #7fd8a2;--del: #3a1a17;--del-ink: #f0a198;--code-bg: #111821;color-scheme:dark}}:root[data-theme=dark]{--bg: #0e131a;--surface: #151c26;--surface-2: #1c2531;--ink: #e5eaf1;--muted: #98a4b5;--line: #2a3442;--accent: #8aa2ff;--accent-soft: #1f2a4a;--claude: #e38a64;--openai: #3fc89f;--local: #ac8dec;--gate: #e2aa4c;--part: #4cc2cf;--field: #647185;--add: #15321f;--add-ink: #7fd8a2;--del: #3a1a17;--del-ink: #f0a198;--code-bg: #111821;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:14px/1.5 var(--font-body)}.page{max-width:1320px;margin:0 auto;padding:24px 16px 64px;display:grid;gap:20px}h1,h2,h3{font-family:var(--font-display);font-weight:650;text-wrap:balance;margin:0;letter-spacing:-.01em}h1{font-size:1.75rem}h2{font-size:1.15rem}h3{font-size:.95rem}p{margin:0}code,pre,.mono{font-family:var(--font-mono);font-size:.82rem}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible,pre:focus-visible,label:focus-within{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--muted)}.label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.intro{display:grid;gap:8px;max-width:70ch}.tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line);padding-bottom:10px}.tab{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 14px;display:flex;gap:8px;align-items:baseline}.tab b{font-family:var(--font-mono);font-weight:500;font-size:.75rem;color:var(--muted)}.tab[aria-selected=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.tab[aria-selected=true] b{color:var(--bg);opacity:.7}.screen-note{display:grid;gap:4px;max-width:75ch}.app{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:10px 16px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:650}.brand svg{flex:none}.crumb{display:flex;align-items:center;gap:8px;color:var(--muted);min-width:0}.crumb strong{color:var(--ink);font-family:var(--font-mono);font-weight:500}.spacer{flex:1}.btn{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:6px 12px;font-weight:500}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--surface)}.btn.primary:hover{filter:brightness(1.08);background:var(--accent)}.btn.small{padding:3px 9px;font-size:.8rem}.btn.ghost{border-color:transparent;background:transparent;color:var(--accent);padding-inline:4px}.cols{display:grid;grid-template-columns:250px minmax(0,1fr) 320px;min-height:640px}.cols>*{min-width:0}.side{border-right:1px solid var(--line);padding:14px;display:grid;gap:14px;align-content:start;background:var(--bg)}.inspector{border-left:1px solid var(--line);padding:16px;display:grid;gap:18px;align-content:start}.main{padding:18px;display:grid;gap:12px;align-content:start;grid-auto-rows:max-content}@media (max-width: 1080px){.cols{grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:"main panel" "side side"}.cols>.main{grid-area:main}.cols>.inspector{grid-area:panel;position:sticky;top:0;align-self:start;max-height:100vh;overflow-y:auto}.cols>.side{grid-area:side;border-right:0;border-top:1px solid var(--line)}}@media (max-width: 720px){.cols{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "panel" "side"}.cols>.inspector{position:static;max-height:none;border-left:0;border-top:1px solid var(--line)}}.search{width:100%;border:1px solid var(--field);background:var(--surface);border-radius:6px;padding:7px 10px;font:inherit;color:var(--ink)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--surface)}.seg button{border:0;background:transparent;padding:5px 12px;font-size:.85rem}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.lib-group{display:grid;gap:2px}.lib-group .label{margin-bottom:4px}.lib-item{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;font-size:.88rem}.lib-item:hover{background:var(--surface)}.lib-item .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-item .in{font-size:.72rem;color:var(--muted)}.lib-item .add{border:1px solid var(--line);background:var(--surface);border-radius:5px;width:22px;height:22px;line-height:1;padding:0;color:var(--muted)}.dot{width:10px;height:10px;border-radius:50%;flex:none;background:var(--muted)}.dot.claude{background:var(--claude)}.dot.openai{background:var(--openai)}.dot.local{background:var(--local)}.chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:1px 8px;font-size:.74rem;color:var(--muted);white-space:nowrap;background:var(--surface)}.chip.mod{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.chip.bridge{border-style:dashed}.chip.you{border-color:var(--gate);color:var(--gate)}.chip.gatechip{color:var(--gate);border-color:var(--gate)}.flowhead{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.steps{display:grid;gap:0}.step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px}.rail{display:flex;flex-direction:column;align-items:center}.rail .num{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;font:500 .75rem var(--font-mono);background:var(--surface)}.rail .line{flex:1;width:1.5px;background:var(--line);min-height:12px}.step-body{padding-bottom:14px;display:grid;gap:8px;min-width:0}.agent{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 10px;align-items:center;border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:var(--surface);text-align:left;width:100%}.agent:hover{border-color:var(--muted)}.agent.sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.agent .title{font-weight:600;font-family:var(--font-mono);font-size:.88rem}.agent .role{grid-column:2 / -1;color:var(--muted);font-size:.85rem}.agent .chips{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:5px}.entry{border-style:solid;background:var(--bg)}.group{border:1px dashed var(--line);border-radius:10px;padding:10px;display:grid;gap:8px}.group-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:.85rem}.group-head .kind{font-weight:600}.parallel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (max-width: 560px){.parallel{grid-template-columns:minmax(0,1fr)}}.loop{border-color:var(--accent);border-style:solid;background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}.gate{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;color:var(--gate);padding-left:2px}.gate code{color:var(--ink);background:var(--code-bg);border:1px solid var(--line);border-radius:4px;padding:1px 6px}.gate svg{flex:none}.addstep{border:1px dashed var(--line);background:transparent;border-radius:var(--r);padding:9px;color:var(--muted);width:100%}.field{display:grid;gap:6px}.field .hint{font-size:.8rem;color:var(--muted)}.field .hint strong{color:var(--ink);font-weight:500}.taglist{display:flex;flex-wrap:wrap;gap:6px}.tag{border:1px solid var(--line);border-radius:5px;padding:2px 8px;font:.8rem var(--font-mono);background:var(--bg)}.insp-head{display:grid;gap:6px}.insp-head .row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btnrow{display:flex;flex-wrap:wrap;gap:8px}.mapwrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--bg)}.mapwrap svg{display:block;min-width:900px;width:100%;height:auto}.legend{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.85rem;color:var(--muted);align-items:center}.legend span{display:inline-flex;gap:6px;align-items:center}.editor-cols{display:grid;grid-template-columns:minmax(0,1fr) 320px}.editor-cols>*{min-width:0}@media (max-width: 980px){.editor-cols{grid-template-columns:minmax(0,1fr)}.editor-cols .inspector{border-left:0;border-top:1px solid var(--line)}}.ed-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 18px;border-bottom:1px solid var(--line)}.ed-head .crumb strong{font-size:1rem}.code{overflow-x:auto;background:var(--code-bg)}.code table{border-collapse:collapse;width:100%;font:.82rem/1.6 var(--font-mono)}.code td{padding:0 14px 0 0;vertical-align:top;white-space:pre-wrap}.code td.n{width:1%;padding:0 12px 0 14px;text-align:right;color:var(--muted);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;white-space:pre}.code td.s{width:1%;padding:0 6px 0 0;color:var(--muted);-webkit-user-select:none;user-select:none;white-space:pre}.code tr.a{background:var(--add)}.code tr.a td{color:var(--add-ink)}.code tr.d{background:var(--del)}.code tr.d td{color:var(--del-ink);text-decoration:line-through;text-decoration-thickness:1px}.code tr.fm td:not(.n){color:var(--muted)}.code-pad{padding-block:12px}.subtabs{display:flex;gap:0;border-bottom:1px solid var(--line);padding:0 18px}.subtabs button{border:0;background:none;padding:10px 12px;border-bottom:2px solid transparent;color:var(--muted)}.subtabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink);font-weight:500}.banner{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:10px 18px;background:var(--accent-soft);border-bottom:1px solid var(--line);font-size:.88rem}.choice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;border:1px solid var(--line);border-radius:var(--r);padding:12px;cursor:pointer;background:var(--surface)}.choice input{margin:3px 0 0;accent-color:var(--accent)}.choice:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.choice .t{font-weight:600}.choice .d{grid-column:2;color:var(--muted);font-size:.85rem}.choice .d code{color:var(--ink)}.source{display:grid;gap:2px;font-size:.82rem;border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:var(--bg)}.export-cols{display:grid;grid-template-columns:360px minmax(0,1fr)}.export-cols>*{min-width:0}@media (max-width: 900px){.export-cols{grid-template-columns:minmax(0,1fr)}.export-cols .side{border-right:0;border-bottom:1px solid var(--line)}}.setups{display:grid;gap:8px}.maptable{overflow-x:auto}.maptable table{border-collapse:collapse;width:100%;font-size:.82rem}.maptable th,.maptable td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.maptable th{font-weight:600;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.maptable td.m{font-family:var(--font-mono)}.maptable td.off{color:var(--muted);opacity:.45}.warns{display:grid;gap:8px;padding:0;margin:0;list-style:none}.warns li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px;font-size:.86rem}.warns li:before{content:"";width:8px;height:8px;margin-top:6px;border-radius:2px;background:var(--gate)}.warns li.ok:before{background:var(--openai);border-radius:50%}.files{display:grid;gap:1px;font:.82rem/1.55 var(--font-mono)}.files div{display:flex;gap:8px;justify-content:space-between}.files span:last-child{color:var(--muted);font-family:var(--font-body);font-size:.78rem}.preview{display:grid;gap:12px;padding:18px;align-content:start}.preview-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px}.preview-grid>*{min-width:0}@media (max-width: 1100px){.preview-grid{grid-template-columns:minmax(0,1fr)}}pre.script,pre.term{margin:0;padding:14px;border-radius:var(--r);overflow-x:auto;line-height:1.55}pre.script{background:var(--code-bg);border:1px solid var(--line);max-height:420px}pre.script .c{color:var(--muted)}pre.script .k{color:var(--accent)}pre.term{background:#10151c;color:#d7dee8;border:1px solid #10151c}pre.term .p{color:#7f8b9b}pre.term .g{color:#6fd3a5}pre.term .y{color:#e8b964}.dl{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.toast{font-size:.85rem;color:var(--muted)}.loop-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:.85rem;border:0;background:transparent;padding:2px;text-align:left;width:100%;border-radius:6px}.loop-head .kind{font-weight:600}.loop-head:hover .chip{background:var(--accent-soft)}.group.loop.sel{box-shadow:0 0 0 2px var(--accent)}.insp-pane{display:grid;gap:18px;align-content:start}.pick.wide{grid-template-columns:minmax(0,1fr) 110px}.pick select,.txt{width:100%;min-width:0;border:1px solid var(--field);background:var(--surface);color:var(--ink);border-radius:6px;padding:6px 8px;font:.8rem var(--font-mono)}.bridgebox{display:grid;gap:6px;border:1px dashed var(--line);border-radius:var(--r);padding:10px}.uses{display:grid;gap:8px}.prefix-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.prefix-row .txt{width:84px}.files .grp{margin-top:10px;display:block;font:600 .72rem var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.files .grp:first-child{margin-top:0}.agtable td.from{color:var(--muted);font-family:var(--font-body);font-size:.74rem}.agtable tr.sub td{color:var(--muted);border-bottom-style:dashed}[hidden]{display:none!important}body{margin:0}#app{max-width:1440px;margin:0 auto;padding-block:16px 48px;padding-inline:16px}.small{font-size:.82rem}.navtab{min-width:76px}.chip.model{font-family:var(--font-mono);color:var(--ink)}.agent .chips:empty{display:none}.agent.missing{color:var(--del-ink)}.h2btn{font:650 1.15rem var(--font-display);border:0;background:none;padding:0;color:var(--ink)}.h2btn:hover{color:var(--accent)}.hint{font-size:.8rem;color:var(--muted)}.step-body{position:relative}.steptools{display:flex;gap:4px;justify-content:flex-end}.inner{display:grid;gap:4px}.icon{border:1px solid var(--line);background:var(--surface);border-radius:5px;width:26px;height:24px;padding:0;color:var(--muted);font-size:.8rem}.icon:hover{color:var(--ink);border-color:var(--muted)}.addmenu,.pick select,.field select,.txt{width:100%;min-width:0;border:1px solid var(--field);background:var(--surface);color:var(--ink);border-radius:6px;padding:6px 8px;font:.82rem var(--font-body)}.txt,.pick select{font-family:var(--font-mono)}.txt.plain{font-family:var(--font-body)}.txt.title{font:500 1rem var(--font-mono)}.txt.num{width:72px}textarea{width:100%;min-width:0;border:1px solid var(--field);background:var(--code-bg);color:var(--ink);border-radius:6px;padding:8px;font:.8rem/1.55 var(--font-mono);resize:vertical}.addmenu{color:var(--muted);border-style:dashed}.addrow{padding-left:46px}.pick{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:6px}.pick.wide{grid-template-columns:minmax(0,1fr) 130px}.tick{display:flex;gap:8px;align-items:center;font-size:.85rem}.tick input{accent-color:var(--accent)}.limits{display:flex;flex-wrap:wrap;gap:10px 14px;font-size:.85rem;align-items:center}.limits label{display:inline-flex;gap:6px;align-items:center}.loop-head,.group-head.plain{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:.85rem;border:0;background:transparent;padding:2px;text-align:left;width:100%;border-radius:6px}.loop-head .kind,.group-head .kind{font-weight:600}.loop-head .chip{margin-left:auto;color:var(--accent);border-color:var(--accent)}.group.sel{box-shadow:0 0 0 2px var(--accent)}.gaterow{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:var(--r);padding:6px 8px;font-size:.85rem}.gaterow:hover{border-color:var(--line)}.gaterow.sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.gaterow code{color:var(--ink);background:var(--code-bg);border:1px solid var(--line);border-radius:4px;padding:1px 6px}.gaterow.check{color:var(--gate)}.gaterow.approval{color:var(--accent)}.gaterow.action{color:var(--claude)}.problems{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.85rem}.problems li{padding:6px 10px;border-radius:6px;background:color-mix(in srgb,var(--gate) 12%,transparent)}.problems li.err{background:var(--del);color:var(--del-ink)}.okline{font-size:.85rem;color:var(--add-ink);background:var(--add);padding:6px 10px;border-radius:6px;margin:0}.cmdlist{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:.85rem}.cmdlist li{padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:var(--code-bg);overflow-wrap:anywhere}.dotline{display:inline-flex;gap:6px;align-items:center}.maptable td .from{color:var(--muted);font-family:var(--font-body);font-size:.74rem}.maptable tr.sub td{color:var(--muted);border-bottom-style:dashed}.files div span{overflow-wrap:anywhere}pre.script{max-height:560px}.flows{padding:18px;display:grid;gap:16px}.flowlist{list-style:none;padding:0;margin:0;display:grid;gap:8px}.flowrow{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:center;border:1px solid var(--line);border-radius:var(--r);padding:10px 12px}.flowrow.cur{border-color:var(--accent)}.btn.danger{color:var(--del-ink)}.filebtn{cursor:pointer;position:relative}.filebtn:focus-within{outline:2px solid var(--accent);outline-offset:2px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--ink) 40%,transparent);display:grid;place-items:center;padding:16px;z-index:10}.modal-box{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;max-width:640px;width:100%;max-height:90vh;overflow:auto;display:grid;gap:14px}.globaltoast{position:fixed;bottom:calc(76px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);background:var(--ink);color:var(--bg);padding:8px 14px;border-radius:8px;font-size:.85rem;max-width:calc(100vw - 32px)}.globaltoast:empty{display:none}.preview-grid .field,.export-cols .side .field{align-content:start}.step[draggable=true],.inner[draggable=true],.member,.lib-item[draggable=true],.num.grip{cursor:grab}.lifted{opacity:.45}.dropzone{height:6px;margin-left:46px;border-radius:6px;border:2px dashed transparent;transition:height .12s,border-color .12s,background-color .12s}.inner+.dropzone,.group .dropzone{margin-left:0}.dropzone.empty{height:auto;padding:10px;border-color:var(--line);color:var(--muted);font-size:.82rem;text-align:center}.dragging .dropzone{height:22px;border-color:var(--line)}.dragging .dropzone.empty{height:auto}.dropzone.over,.group.over{border-color:var(--accent)!important;background:var(--accent-soft)}.dragging .group[data-drop]{outline:2px dashed var(--line);outline-offset:2px}.dragging .group[data-drop].over{outline-color:var(--accent)}@media (prefers-reduced-motion: reduce){.dropzone{transition:none}}.picked{outline:2px solid var(--accent);outline-offset:2px;background:var(--accent-soft)}.group.picked{background:color-mix(in srgb,var(--accent-soft) 60%,transparent)}.multibar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--accent);background:var(--accent-soft);border-radius:var(--r);position:sticky;top:env(safe-area-inset-top,0px);z-index:2}.tip{margin:0}.cols>.side,.cols>.inspector{padding:0;display:block}.stickybox{display:grid;align-content:start;gap:14px;padding:14px}.inspector .stickybox{gap:18px;padding:16px}@media (min-width: 1081px){html,body{height:100%;overflow:hidden}#app{height:100%;padding-block:12px;display:flex;flex-direction:column}#app>.app{flex:1;min-height:0;display:flex;flex-direction:column}.app>.topbar{flex:none}.app>.cols,.app>.export-cols,.app>.flows{flex:1;min-height:0}.cols,.export-cols{align-items:stretch}.cols>.side,.cols>.main,.cols>.inspector,.export-cols>.side,.export-cols>.preview,.app>.flows{overflow-y:auto;overscroll-behavior:contain;min-height:0}.cols{min-height:0}}.multibar{top:0}.lib-list{display:grid;gap:6px}.lib-card{display:grid;gap:2px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);cursor:grab}.lib-card:hover{border-color:var(--muted)}.lib-top{display:flex;align-items:center;gap:8px}.lib-top .name{flex:1;font:500 .85rem var(--font-mono)}.lib-desc{font-size:.78rem;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lib-card .add{border:1px solid var(--line);background:var(--surface);border-radius:5px;width:24px;height:24px;padding:0;color:var(--muted)}.lib-card .add:hover{color:var(--accent);border-color:var(--accent)}.block{position:relative}.blocktools{position:absolute;top:-17px;right:10px;z-index:2;display:none;gap:2px;padding:2px;background:var(--surface);border:1px solid var(--line);border-radius:7px;box-shadow:0 2px 6px color-mix(in srgb,var(--ink) 12%,transparent)}.block:hover:not(:has(.block:hover))>.blocktools,.block:focus-within:not(:has(.block:focus-within))>.blocktools,.block.is-sel>.blocktools{display:flex}.tool{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;border-radius:5px;padding:3px 7px;font-size:.78rem;color:var(--muted)}.tool:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.tool:disabled{opacity:.35;cursor:default}.tool.on{color:var(--accent);background:var(--accent-soft)}.steptools{display:none}.step-body{padding-bottom:0}.has-error.agent,.gaterow.has-error,.group.has-error{border-color:var(--del-ink)}.blockerr{list-style:none;margin:4px 0 0;padding:0;font-size:.8rem;color:var(--del-ink);display:grid;gap:2px}.blockerr li:before{content:"! ";font-weight:600}.gap{position:relative;display:flex;align-items:center;gap:8px;min-height:18px;margin-left:46px;padding:2px 0}.group .gap{margin-left:0}.gapplus{width:20px;height:20px;border-radius:50%;border:1px solid var(--muted);background:var(--surface);color:var(--muted);padding:0;font-size:.85rem;line-height:1;flex:none}.gap:hover .gapplus,.gap:focus-within .gapplus,.gap.open .gapplus{opacity:1;color:var(--accent);border-color:var(--accent)}.gapmenu{display:none;position:absolute;left:28px;top:50%;transform:translateY(-50%);z-index:3;flex-wrap:wrap;width:max-content;max-width:min(560px,calc(100% - 28px));gap:6px;align-items:center;padding:3px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 14%,transparent)}.gap:hover .gapmenu,.gap.open .gapmenu{display:flex}.gap:before{content:"";position:absolute;left:10px;right:0;top:50%;border-top:1px dashed transparent;z-index:-1}.gap:hover:before,.gap.open:before{border-top-color:var(--line)}@media (hover: none){.gapplus{width:28px;height:28px}}.btn.small.approve,.addrow .approve{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.btn.small svg,.gaterow svg{flex:none;vertical-align:-2px}select.btn.small{padding:3px 6px;max-width:160px}.dragging .gap{min-height:30px;border:2px dashed var(--line);border-radius:8px}.dragging .gap .gapplus,.dragging .gap .gapmenu{display:none}.gap.over{border-color:var(--accent)!important;background:var(--accent-soft)}.dropzone.start{padding:16px;text-align:left;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.addrow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-left:46px}.addrow .label{width:100%}.tip{margin:0;font-size:.82rem;color:var(--muted)}.gaterow.approval{color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 55%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.gaterow.approval strong,.gaterow.action strong{font-weight:600}.chip.bad{color:var(--del-ink);border-color:var(--del-ink);background:var(--del);text-decoration:none}.chip.warn{color:var(--gate);border-color:var(--gate);text-decoration:none}.chip.good{color:var(--add-ink);border-color:var(--add-ink);background:var(--add)}.flowhead .spacer{flex:1}.inspector .field{gap:6px}.sublabel{font-size:.78rem;color:var(--muted);margin-top:4px}.ticks{display:flex;flex-wrap:wrap;gap:4px 14px}.inline{display:grid;gap:4px;font-size:.8rem;color:var(--muted)}.inspector .seg{flex-wrap:wrap}.instr-preview{display:grid;gap:8px;text-align:left;border:1px solid var(--line);background:var(--code-bg);border-radius:var(--r);padding:10px;width:100%}.instr-preview:hover{border-color:var(--accent)}.instr-text{font-size:.8rem;line-height:1.5;color:var(--ink);white-space:pre-line;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.instr-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.instr-preview .btn{justify-self:start}details.more{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:14px}details.more>summary{cursor:pointer;font-size:.8rem;font-weight:600;color:var(--ink)}details.more[open]>summary{margin-bottom:10px}details.more>.field+.field{margin-top:14px}.editor-box{max-width:980px;height:min(88vh,900px);grid-template-rows:auto auto minmax(0,1fr) auto}.editor-box .row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.editor-box h2{font-size:1.1rem}textarea.editor{height:100%;min-height:260px;resize:none;font:.84rem/1.6 var(--font-mono);background:var(--code-bg)}.diffview{overflow:auto;border:1px solid var(--line);border-radius:6px;background:var(--code-bg);font:.8rem/1.6 var(--font-mono);padding:8px 0}.diffview div{white-space:pre-wrap;padding:0 12px}.diffview span{display:inline-block;width:1.4em;color:var(--muted);-webkit-user-select:none;user-select:none}.diffview .dl-add{background:var(--add);color:var(--add-ink)}.diffview .dl-del{background:var(--del);color:var(--del-ink);text-decoration:line-through}.btnrow .spacer{flex:1}.btn.ghost{border-color:transparent;background:transparent;color:var(--accent)}.linkbtn{border:0;background:none;color:inherit;text-decoration:underline;padding:0 0 0 6px;font:inherit;font-weight:600}.globaltoast{z-index:20}.btn:disabled,.btn:disabled:hover{opacity:.45;cursor:default;background:var(--surface)}.dl-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;align-items:start}.field{align-content:start}.lib-group-label{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:6px}.lib-list .lib-group-label:first-child{margin-top:0}.lib-top .in{font-size:.7rem;color:var(--muted)}.chip.upd{color:var(--gate);border-color:var(--gate)}.notice{font-size:.82rem;padding:8px 10px;border-radius:var(--r);background:color-mix(in srgb,var(--gate) 12%,transparent);display:grid;gap:6px;justify-items:start}.skillrows{display:grid;gap:4px}.skillrow{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"tick edit" "meta meta";align-items:center;gap:2px 8px;padding:4px 0;border-bottom:1px solid var(--line)}.skillrow:last-child{border-bottom:0}.skillrow .tick{grid-area:tick;min-width:0}.skillrow .tick .mono{overflow-wrap:anywhere}.skillrow>.skillbtns{grid-area:edit;display:flex;gap:4px;align-items:center}.skillmeta{grid-area:meta;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;padding-left:22px}.skillmeta:empty{display:none}.skill-box{grid-template-rows:auto auto auto minmax(0,1fr) auto auto}.skillhead{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:12px}@media (max-width: 720px){.skillhead{grid-template-columns:minmax(0,1fr)}}.scope{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px}.flows{align-content:start;padding:24px max(24px,calc((100% - 1240px)/2)) 88px;gap:20px;max-width:none}.flows-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 24px}.flows-head h2{font-size:1.2rem;margin-bottom:4px}.flows-head .hint{max-width:60ch}.flowgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;align-items:start}.flowcard{border:1px solid var(--line);border-radius:10px;background:var(--surface);display:grid}.flowcard.cur{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.flowopen{display:grid;gap:10px;text-align:left;border:0;background:transparent;padding:14px 14px 10px;border-radius:10px 10px 0 0}.flowopen:hover{background:var(--bg)}.fc-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.fc-top strong{font-size:1rem}.fc-meta{font-size:.8rem;color:var(--muted)}.fc-actions{display:flex;flex-wrap:wrap;gap:6px;padding:8px 14px 12px;border-top:1px solid var(--line)}.strip{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-height:18px}.strip .dot{width:9px;height:9px}.st-par{display:inline-flex;flex-direction:column;gap:2px;padding:0 2px;border-left:1px solid var(--line);border-right:1px solid var(--line)}.st-loop{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--accent-soft) 50%,transparent)}.st-mark{font-size:.7rem;line-height:1}.st-mark.approval{color:var(--accent)}.st-mark.check{color:var(--gate)}.st-mark.action{color:var(--claude)}.btn.ghost.danger{color:var(--del-ink)}.graphwrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--bg)}.graphwrap svg{display:block}.g-track{fill:none;stroke:var(--ink);stroke-width:4;stroke-linecap:round}.g-dot{fill:var(--surface);stroke:var(--muted);stroke-width:5}.g-dot.claude{stroke:var(--claude)}.g-dot.openai{stroke:var(--openai)}.g-dot.local{stroke:var(--local)}.g-dot.bridged{stroke-dasharray:5 3}.legend-bridged{stroke-width:2.5}.g-ring{fill:none;stroke:var(--accent);stroke-width:2.5}.g-stop,.g-mark,.g-loop,.g-hit{cursor:pointer}.g-stop:hover .g-dot,.g-stop:focus .g-dot{fill:var(--accent-soft)}.g-stop.bad .g-dot{stroke:var(--del-ink)}.g-stop:focus,.g-mark:focus,.g-loop:focus{outline:none}.g-stop:focus-visible .g-dot,.g-mark:focus-visible{filter:drop-shadow(0 0 3px var(--accent))}.g-stop:focus-visible .g-dot,.g-mark:focus-visible>:first-child,.g-loop:focus-visible .g-region{stroke:var(--accent);stroke-width:4}.g-name{font:500 12px var(--font-mono);fill:var(--ink);text-anchor:middle}.g-sub{font:10.5px var(--font-body);fill:var(--muted);text-anchor:middle}.g-mark rect,.g-mark circle,.g-mark path:not(.g-post):not(.g-bar){fill:var(--surface);stroke-width:2}.g-mark.check rect{stroke:var(--gate)}.g-mark.check .g-post,.g-mark.check .g-bar{stroke:var(--gate);stroke-width:2}.g-mark.approval circle{stroke:var(--accent);fill:var(--accent-soft)}.g-mark.approval .g-bar{stroke:var(--accent);stroke-width:2}.g-mark.action path{stroke:var(--claude);fill:color-mix(in srgb,var(--claude) 18%,var(--surface))}.g-mark.empty circle{stroke:var(--muted);stroke-dasharray:3 3}.g-mark.sel rect,.g-mark.sel circle,.g-mark.sel path:not(.g-bar):not(.g-post){stroke-width:3.5}.g-mark.bad rect,.g-mark.bad circle{stroke:var(--del-ink)}.g-mlabel{font:500 11.5px var(--font-body);fill:var(--ink);text-anchor:middle}.g-mark.check+.g-mlabel{fill:var(--gate)}.g-region{fill:var(--accent);fill-opacity:.06;stroke:var(--accent);stroke-opacity:.35}.g-loop.sel .g-region{stroke-opacity:1;stroke-width:2}.g-loop.bad .g-region{stroke:var(--del-ink);stroke-opacity:.8}.g-back{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:6 5}.g-arrowhead{fill:var(--accent)}.g-pill{fill:var(--surface);stroke:var(--accent)}.g-pilltext{font:11.5px var(--font-body);fill:var(--accent);text-anchor:middle}.g-hit{fill:transparent}.g-legend-check{fill:none;stroke:var(--gate);stroke-width:1.5}.g-legend-approval{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5}.g-legend-action{fill:none;stroke:var(--claude);stroke-width:1.5}.graphbar{display:flex;align-items:center;gap:10px}.canvas-full{position:fixed;top:0;right:0;bottom:0;left:0;right:var(--ai-space, 0px);z-index:15;background:var(--bg);display:grid;grid-template-columns:minmax(0,1fr) var(--panel-w, 340px);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.canvas-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0}.canvas-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface)}.canvas-bar .spacer{flex:1}.zoomctl{display:inline-flex;align-items:center;gap:4px}.zoomlabel{min-width:48px;text-align:center;font:500 .8rem var(--font-mono);font-variant-numeric:tabular-nums}.canvas-viewport{position:relative;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background-color:var(--bg);background-image:radial-gradient(circle,color-mix(in srgb,var(--muted) 35%,transparent) 1px,transparent 1.2px);background-size:22px 22px}.canvas-viewport.panning{cursor:grabbing}.canvas-viewport .g-stop,.canvas-viewport .g-mark,.canvas-viewport .g-loop{cursor:pointer}.canvas-svg{display:block}.canvas-empty{padding:24px}.canvas-legend{padding:8px 16px;border-top:1px solid var(--line);background:var(--surface)}.canvas-panel{border-left:1px solid var(--line);background:var(--surface);overflow-y:auto;min-height:0;padding:0}@media (max-width: 900px){.canvas-full{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) 40vh}.canvas-panel{border-left:0;border-top:1px solid var(--line)}}#ai-root{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:16;display:grid;justify-items:end;gap:12px;pointer-events:none}#ai-root>*{pointer-events:auto}.modal-open #ai-root{display:none}.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ai-fab{order:2;display:inline-flex;align-items:center;gap:6px;height:48px;min-width:48px;padding:0 16px;justify-content:center;border:0;border-radius:999px;background:var(--ink);color:var(--bg);font-weight:600;box-shadow:0 6px 18px color-mix(in srgb,var(--ink) 28%,transparent)}.ai-fab:hover{filter:brightness(1.15)}.ai-fab[aria-expanded=true]{padding:0;font-size:1.5rem;line-height:1}.ai-panel{order:1;width:min(420px,calc(100vw - 32px));height:min(640px,calc(100vh - 110px));display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px color-mix(in srgb,var(--ink) 22%,transparent);overflow:hidden}.ai-head{display:flex;align-items:center;gap:8px;padding:8px 10px 8px 14px;border-bottom:1px solid var(--line);min-width:0}.ai-tools{display:flex;align-items:center;gap:4px;flex:none}.ai-tools .btn{white-space:nowrap}.ai-tools .btn.icon{width:30px;height:28px;padding:0;display:inline-grid;place-items:center;font-size:.95rem;line-height:1}.ai-tools .btn[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.ai-head strong{font-family:var(--font-display)}.ai-who{flex:1 1 auto;display:flex;align-items:center;gap:6px;font:.75rem var(--font-mono);color:var(--muted);min-width:0}.ai-who .dot{flex:none}.ai-model{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-body{overflow-y:auto;padding:14px;display:grid;gap:12px;align-content:start}.ai-setup{grid-row:2 / span 2}.ai-lead{font-size:.9rem}.ai-providers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ai-prov{display:grid;justify-items:start;gap:2px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);text-align:left;font-weight:600}.ai-prov .dot{margin-bottom:2px}.ai-prov small{font-weight:400;font-size:.72rem;color:var(--muted)}.ai-prov[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.ai-field{display:grid;gap:4px}.ai-field.grow{flex:1;min-width:0}.ai-row{display:flex;gap:8px;align-items:start}.ai-row>.ai-field:not(.grow){width:110px}.ai-panel .input{width:100%;min-width:0;border:1px solid var(--field);background:var(--surface);color:var(--ink);border-radius:6px;padding:7px 9px;font:.85rem var(--font-body)}.ai-panel .input.mono{font-family:var(--font-mono);font-size:.8rem}.ai-check{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 8px;align-items:center;font-weight:500}.ai-check .hint{grid-column:2}.ai-notes{margin:0;padding:10px 12px 10px 28px;background:var(--bg);border-radius:8px;font-size:.8rem;color:var(--muted);display:grid;gap:4px}.ai-test{font-size:.85rem;padding:8px 10px;border-radius:8px}.ai-test.ok{background:var(--add);color:var(--add-ink)}.ai-test.bad,.ai-note.bad{background:var(--del);color:var(--del-ink)}.ai-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ai-log{gap:10px}.ai-empty{display:grid;gap:12px;font-size:.88rem;color:var(--muted)}.ai-sugg{display:grid;gap:6px}.ai-chipbtn{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:7px 10px;font-size:.85rem;color:var(--ink)}.ai-chipbtn:hover{border-color:var(--accent);background:var(--accent-soft)}.ai-msg{max-width:92%;padding:8px 11px;border-radius:10px;font-size:.88rem;overflow-wrap:anywhere}.ai-msg.user{justify-self:end;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.ai-msg.ai{justify-self:start;background:var(--bg);border:1px solid var(--line)}.ai-msg .md{display:grid;gap:6px}.ai-msg .md ul,.ai-msg .md ol{margin:0;padding-left:18px}.ai-msg .md code{background:var(--surface-2);padding:0 4px;border-radius:4px;font-size:.78rem}.ai-msg .md pre{margin:0;background:var(--code-bg);border:1px solid var(--line);border-radius:6px;padding:8px;overflow-x:auto;font-size:.76rem}.ai-note{font-size:.8rem;color:var(--muted);padding:6px 10px;border-radius:8px;background:var(--bg)}.ai-ask{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--gate);border-radius:10px;background:color-mix(in srgb,var(--gate) 10%,var(--surface));font-size:.86rem}.ai-done{display:grid;gap:6px;font-size:.78rem;color:var(--muted)}.ai-changes{margin:0;padding:0;list-style:none;display:grid;gap:3px}.ai-changes li{padding-left:14px;position:relative;color:var(--ink)}.ai-changes li:before{content:"✓";position:absolute;left:0;color:var(--add-ink)}.ai-meta{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}.ai-meta .linkbtn{padding:0;color:var(--accent)}.ai-status{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted)}.ai-spin{width:12px;height:12px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:ai-spin .8s linear infinite}@keyframes ai-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.ai-spin{animation:none}}.ai-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;padding:10px;border-top:1px solid var(--line)}.ai-compose textarea{resize:none;max-height:30vh;font:.88rem/1.45 var(--font-body);background:var(--surface)}@media (max-width: 600px){#ai-root{right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px))}.ai-panel{width:calc(100vw - 24px);height:calc(100dvh - 90px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.ai-providers{grid-template-columns:minmax(0,1fr)}.ai-prov{grid-template-columns:auto auto 1fr;align-items:center;gap:8px}.ai-prov .dot{margin:0}}.ai-panel label:focus-within{outline:none}.ai-ask pre{margin:0;background:var(--code-bg);border:1px solid var(--line);border-radius:6px;padding:6px 8px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.76rem}.inspector:after{content:"";height:48px}.gaterow.choose{border-color:color-mix(in srgb,var(--local) 45%,var(--line));background:color-mix(in srgb,var(--local) 8%,var(--surface))}.gaterow.choose svg{color:var(--local)}.st-mark.choose{color:var(--local)}.g-mark.choose path{fill:color-mix(in srgb,var(--local) 14%,var(--surface));stroke:var(--local)}.pathline{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;color:var(--local);margin:0 0 4px 2px}.pathline svg{flex:none}.offpath{opacity:.32}.offpath:hover,.offpath:focus-within{opacity:.7}.pathview{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.pathtags{display:flex;flex-wrap:wrap;gap:6px}.pathtag{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:3px 11px;font-size:.8rem}.pathtag[aria-pressed=true]{border-color:var(--local);color:var(--ink);background:color-mix(in srgb,var(--local) 12%,var(--surface))}.pathtag[aria-pressed=true]:before{content:"✓ ";color:var(--local)}.pathrow{display:grid;gap:4px;padding:8px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg)}.pathrow-top{display:flex;gap:2px;align-items:center}.pathrow-top .txt{flex:1;font-family:var(--font-mono)}.pathlist{margin:0;padding-left:18px;display:grid;gap:6px}.pathlist .hint{display:block}.gaterow.split,.gaterow.join{border-color:color-mix(in srgb,var(--part) 45%,var(--line));background:color-mix(in srgb,var(--part) 8%,var(--surface))}.gaterow.split svg,.gaterow.join svg{color:var(--part)}.step.perpart>.rail .line{background:var(--part)}.step.perpart>.step-body{box-shadow:inset 3px 0 color-mix(in srgb,var(--part) 70%,transparent);border-radius:var(--r);padding-left:8px}.partline{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;color:var(--part);margin:0 10px 4px 2px}.st-mark.split{color:var(--part);font-weight:700}.g-mark.split rect,.g-mark.join rect{stroke:var(--part);fill:color-mix(in srgb,var(--part) 12%,var(--surface))}.g-mark.split .g-bar,.g-mark.join .g-bar{stroke:var(--part);stroke-width:2;fill:none}.gaterow>svg{flex:none}.gaterow>span{min-width:0}.lib-card .add.info{font:italic 600 .8rem/1 Georgia,Times New Roman,serif}.info-box{max-width:760px;height:min(86vh,860px);display:flex;flex-direction:column}.info-box>*{flex:none}.info-box>.field{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.info-box>.field>.infotext{flex:1 1 auto;min-height:0}.info-box>.btnrow{align-items:center}.info-box .row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.info-box h2{font-size:1.1rem}.facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;margin:0;font-size:.86rem}.facts dt{color:var(--muted)}.facts dd{margin:0;min-width:0;overflow-wrap:anywhere}.infotext{margin:0;overflow:auto;white-space:pre-wrap;background:var(--code-bg);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;font:.8rem/1.55 var(--font-mono)}.templates{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.flowcard.tpl{border-style:dashed}.flowcard.tpl:hover{border-color:var(--accent);border-style:solid}.fc-desc{font-size:.82rem;color:var(--muted);line-height:1.4}.edhost{min-height:0;height:100%;display:grid}.edhost>.cm-editor{height:100%;min-height:260px}.import-box{max-width:760px;height:min(86vh,860px);display:flex;flex-direction:column}.import-box>*{flex:none}.import-box>.implist{flex:1 1 auto}.import-box>.btnrow{align-items:center}.implist>.empty{margin:auto;text-align:center;max-width:42ch}.import-box .row{display:flex;gap:8px;align-items:center}.improw{display:flex;gap:8px}.improw .txt{flex:1;font-family:var(--font-mono)}.implist{overflow:auto;display:grid;gap:8px;align-content:start;border-top:1px solid var(--line);padding-top:10px;min-height:0}.impitem{display:grid;gap:4px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r)}.impitem.off{opacity:.6}.impmeta{display:flex;flex-wrap:wrap;gap:4px}.impfiles{margin:4px 0 0;padding-left:18px;font-size:.78rem;display:grid;gap:2px}.chip.warn{border-color:var(--gate);color:var(--gate)}.hint.err{color:var(--del-ink)}.btn.primary:disabled,.btn.primary:disabled:hover{color:var(--ink);border-color:var(--line);filter:none}.impdesc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.canvas-full.withlib{grid-template-columns:var(--lib-w, 260px) minmax(0,1fr) var(--panel-w, 340px)}.canvas-full>.side{overflow-y:auto;overflow-x:hidden;min-height:0;min-width:0;border-right:1px solid var(--line)}@media (max-width: 900px){.canvas-full.withlib{grid-template-columns:minmax(0,1fr)}.canvas-full.withlib>.side{display:none}}.canvas-viewport [data-cdrag]{cursor:grab}.canvas-viewport.lifting,.canvas-viewport.lifting *{cursor:grabbing}.g-gapplus{opacity:0;transition:opacity .12s;cursor:pointer}.g-gapplus circle{fill:var(--surface);stroke:var(--accent);stroke-width:1.5}.g-gapplus path{stroke:var(--accent);stroke-width:1.8;stroke-linecap:round}.g-gapplus:focus{opacity:1}.g-stop.over .g-dot{stroke:var(--accent);stroke-width:5}.g-mark.over rect,.g-hit.over{stroke:var(--accent);stroke-width:3;fill:var(--accent-soft)}.g-stop.picked .g-dot,.g-mark.picked>:first-child{stroke:var(--accent);stroke-width:4;stroke-dasharray:3 2}.g-loop.picked .g-region{stroke:var(--accent);stroke-width:2.5;stroke-dasharray:6 4}.canvas-gapmenu{position:absolute;z-index:4;transform:translate(-50%);display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:min(560px,90%);padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 20px color-mix(in srgb,var(--ink) 18%,transparent)}.canvas-multi{position:absolute;z-index:4;top:10px;left:50%;transform:translate(-50%);display:flex;gap:8px;align-items:center;padding:6px 10px;border:1px solid var(--accent);background:var(--accent-soft);border-radius:10px}.canvas-full>.side{padding:0;display:block}.canvas-full>.side>.stickybox{min-width:0}.side>.stickybox{grid-template-columns:minmax(0,1fr)}.side .seg{display:flex}.side .seg button{flex:1 1 0;min-width:0;padding-inline:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lib-card{min-width:0}.lib-top .name{min-width:0;overflow-wrap:break-word}.lib-top>button,.lib-top>.dot{flex:none}.canvas-full>.side{scrollbar-gutter:stable}.n-ground{fill:transparent}.n-hit{fill:none;stroke:transparent;stroke-width:16;cursor:pointer;pointer-events:stroke}.n-hit:focus{outline:none}.n-hit:focus-visible{stroke:color-mix(in srgb,var(--accent) 30%,transparent)}.n-node.from .g-dot,.n-node.from>:first-child{stroke:var(--accent);stroke-width:5;stroke-dasharray:5 3}@media (hover: none){.g-gapplus{opacity:1}.g-gapplus circle{r:13px}}.n-line{fill:none;stroke:var(--ink);stroke-width:2;pointer-events:none}.n-edge.back .n-line{stroke:var(--accent);stroke-dasharray:6 5}.n-edge:hover .n-line{stroke-width:3}.n-edge.sel .n-line{stroke:var(--accent);stroke-width:3.5}.n-edge:hover .g-gapplus,.n-edge .g-gapplus:focus,.dragging .n-edge .g-gapplus{opacity:1}.n-edge.over .n-line{stroke:var(--accent);stroke-width:4}.n-del{cursor:pointer}.n-del circle{fill:var(--del);stroke:var(--del-ink);stroke-width:1.5}.n-del path{stroke:var(--del-ink);stroke-width:2;stroke-linecap:round}.n-port circle{fill:var(--surface);stroke:var(--muted);stroke-width:1.5;cursor:crosshair;opacity:.55;transition:opacity .12s}.n-port:hover circle,.canvas-viewport.wiring .n-port circle{opacity:1;stroke:var(--accent);fill:var(--accent-soft)}.n-node{cursor:grab}.n-node.parked{opacity:.55}.n-node.parked .g-dot{stroke-dasharray:3 2}.n-node.problem .g-dot,.n-node.problem>:first-child{stroke:var(--del-ink);stroke-width:4}.n-node.over .g-dot,.n-node.over>:first-child{stroke:var(--accent);stroke-width:5}.n-wire{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-dasharray:5 4;pointer-events:none}.canvas-draft{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding:8px 12px;border:1px solid var(--del-ink);background:var(--del);color:var(--del-ink);border-radius:10px;font-size:.86rem}.canvas-draft .muted{color:var(--del-ink);opacity:.8}.drawnnotes .notice{display:grid;gap:6px}.parkedlist{margin:0;padding:0;list-style:none;display:grid;gap:6px}.parkedlist li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;border:1px dashed var(--line);border-radius:var(--r)}.parkedlist .mono{flex:1;min-width:0}.lib-card{grid-template-columns:minmax(0,1fr)}.lib-top{gap:5px}.lib-card .add{width:22px;height:22px}.implist{padding-right:8px;scrollbar-gutter:stable}.skip{position:absolute;left:8px;top:-40px;z-index:30;padding:6px 10px;background:var(--surface);border:2px solid var(--accent);border-radius:6px;color:var(--accent)}.skip:focus{top:8px}.btnpair{display:inline-flex;gap:6px;flex-wrap:nowrap}[role=main]:focus{outline:none}.on-touch{display:none}@media (hover: none){.on-mouse,.hint.keys{display:none}.on-touch{display:inline}}@media (max-width: 600px){.canvas-bar{gap:6px;padding:6px 8px}.canvas-bar .hint,.canvas-bar .zoomlabel,.canvas-legend,.canvas-bar [data-act=browser-full],.canvas-bar [data-act=canvas-tidy]{display:none}.canvas-full{grid-template-rows:minmax(0,1fr) 34vh}}.modal-box>.err{margin:0;color:var(--del-ink);font-weight:500}.btnrow.ask{align-items:center;padding:8px 10px;border:1px solid var(--del-ink);border-radius:var(--r);background:var(--del);color:var(--del-ink)}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:15px;height:15px}@media (hover: none){input[type=checkbox],input[type=radio]{width:20px;height:20px}.lib-item .add,.lib-card button{min-width:32px;min-height:32px}}.cols>.main,.inspector .stickybox,.canvas-panel .stickybox,.flows,.export-cols>.preview{padding-bottom:88px}.add.placeholder{visibility:hidden;display:inline-block;width:22px;height:22px}.welcome{display:grid;gap:12px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:var(--r);background:var(--accent-soft)}.welcome-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.welcome h2{margin:0;font-size:1.05rem}.welcome p{margin:0;max-width:90ch}.welcome-terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:0}.welcome-terms>div{padding:10px 12px;border-radius:8px;background:var(--surface);border:1px solid var(--line)}.welcome-terms dt{font-weight:600;font-size:.86rem;margin-bottom:2px}.welcome-terms dd{margin:0;font-size:.84rem;color:var(--muted)}.g-name,.g-sub,.g-mlabel{paint-order:stroke;stroke:var(--bg);stroke-width:4px;stroke-linejoin:round}.preview-box{max-width:min(1280px,100%)}.preview-box .row,.design-box .row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.preview-box h2,.design-box h2{font-size:1.15rem;margin:0}.preview-box p{margin:0}.preview-graph{max-height:52vh}.preview-graph svg{margin-inline:auto}.design-box{max-width:820px}.design-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.design-grid .wide{grid-column:1 / -1}.dz{display:grid;gap:6px;align-content:start;font-size:.86rem;font-weight:500}.dz:focus-within{outline:none}.dz .hint{font-weight:400}.dz .seg{justify-self:start}@media (max-width: 640px){.design-grid{grid-template-columns:minmax(0,1fr)}}.lib-card.mine{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.imp-repos{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:6px}.imp-repos .imp-toggle,.imp-repos-line{grid-column:1 / -1}.imp-toggle{justify-self:start;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.imp-repo{display:grid;gap:2px;text-align:left;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}.imp-repo span{font-size:.8rem;color:var(--muted)}.imp-repo:hover{border-color:var(--accent)}@media (min-width: 1081px){#app{max-width:none;padding:12px}.cols{position:relative;grid-template-columns:var(--lib-w, 260px) minmax(0,1fr) var(--panel-w, 340px)}.cols.lib-min{grid-template-columns:44px minmax(0,1fr) var(--panel-w, 340px)}.cols.panel-min{grid-template-columns:var(--lib-w, 260px) minmax(0,1fr) 44px}.cols.lib-min.panel-min{grid-template-columns:44px minmax(0,1fr) 44px}}@media (min-width: 900px){body.ai-docked #app{max-width:none;padding-right:calc(var(--ai-w, 400px) + 24px)}body.ai-docked-min #app{max-width:none;padding-right:68px}}.resizer{position:absolute;top:0;bottom:0;width:12px;z-index:4;cursor:col-resize;touch-action:none}.resizer:after{content:"";position:absolute;top:0;bottom:0;left:5px;width:2px;border-radius:2px;background:transparent;transition:background .12s}.resizer:hover:after,.resizer:focus-visible:after,.resizing .resizer:focus:after{background:var(--accent)}.resizer:focus{outline:none}.cols>.resizer.lib,.canvas-full>.resizer.lib{left:calc(var(--lib-w, 260px) - 6px)}.cols>.resizer.panel,.canvas-full>.resizer.panel{right:calc(var(--panel-w, 340px) - 6px)}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.resizing iframe,body.resizing svg{pointer-events:none}@media (max-width: 1080px){.cols>.resizer,.foldbtn{display:none}}@media (max-width: 900px){.canvas-full>.resizer{display:none}}.side-head{display:flex;align-items:center;gap:6px}.side-head .seg{flex:1;min-width:0}.foldbtn{flex:none;width:26px;height:26px;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--muted);font-size:1rem;line-height:1}.foldbtn:hover{color:var(--ink);border-color:var(--muted)}.cols>.inspector{position:relative}.panel-fold{position:absolute;top:10px;right:10px;z-index:2}.folded{display:flex;justify-content:center;align-items:flex-start;padding:10px 0;overflow:hidden}.unfold{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 6px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-weight:600;font-size:.82rem}.unfold:hover{background:var(--bg);color:var(--ink);border-color:var(--line)}.unfold>span[aria-hidden]{font-size:1.1rem;line-height:1}.unfold-label{writing-mode:vertical-rl;letter-spacing:.04em}@media (max-width: 1080px){.folded{justify-content:flex-start;padding:8px 12px}.unfold{flex-direction:row}.unfold-label{writing-mode:horizontal-tb}.cols.panel-min{grid-template-columns:minmax(0,1fr) 44px}}body.ai-docked{--ai-space: calc(var(--ai-w, 400px) + 12px)}body.ai-docked-min{--ai-space: 56px}#ai-root.docked{top:calc(12px + env(safe-area-inset-top,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));right:12px;width:var(--ai-w, 400px);display:block;z-index:9}#ai-root.docked .ai-panel{width:100%;height:100%;box-shadow:none}#ai-root.docked>.resizer.ai{left:-9px}#ai-root.docked.min{width:44px}#ai-root.docked.min .ai-unfold{height:100%;width:100%;justify-content:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:12px}.modal-open #ai-root.docked{display:block}.opts-help{margin-top:6px}.opts-help>summary{cursor:pointer;font-weight:600;color:var(--accent);padding:6px 0}.opts-help .hint{margin:6px 0 10px}table.opts{width:100%;border-collapse:collapse;font-size:.86rem;margin-bottom:14px}table.opts td{padding:6px 10px;border-bottom:1px solid var(--line);vertical-align:top}table.opts td:first-child{width:42%}table.opts td:first-child code{white-space:pre-wrap;word-break:break-word;font-size:.8rem}table.opts .opt-group th{text-align:left;padding:12px 10px 6px;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line)}@media (max-width: 720px){table.opts td{display:block;width:auto!important;border-bottom:0;padding:2px 6px}table.opts tr{display:block;border-bottom:1px solid var(--line);padding:6px 0}}.preview .btnrow{align-items:center}.lib-src{font:.72rem var(--font-mono);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
