/* V8.3: refined assistant dock and illustrative automation canvas. */
#chat-open.chat-fab{width:auto;height:58px;min-width:58px;padding:5px 17px 5px 5px;gap:9px;direction:ltr;background:var(--surface);color:var(--text);border:1px solid var(--line);box-shadow:0 10px 36px #0004;bottom:calc(20px + env(safe-area-inset-bottom));inset-inline-end:20px;transition:transform .25s}
#chat-open:before{display:none}#chat-open:hover{transform:translateY(-3px)}#chat-open .assistant-name{font:600 12px/1.2 ui-monospace,monospace;letter-spacing:.03em}#chat-open .assistant-orb{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#c3fff0,#78d9c1 45%,#286c76);color:#09252b;box-shadow:inset 0 1px 3px #fff9,inset 0 -5px 12px #083e5655}#chat-open svg{width:27px;height:27px;transition:transform .4s}#chat-open[aria-expanded=true] svg{transform:rotate(45deg) scale(.85)}#chat-open:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.chat{bottom:calc(91px + env(safe-area-inset-bottom))}
.workflow-window{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--surface);box-shadow:0 25px 100px #0002}.workflow-toolbar{display:flex;align-items:center;gap:20px;padding:18px 24px;border-bottom:1px solid var(--line);direction:ltr}.workflow-toolbar .tag{margin-inline-start:auto;font-size:10px}.workflow-file{font:11px ui-monospace,monospace;letter-spacing:.12em;color:var(--muted)}.workflow-dots{display:flex;gap:6px}.workflow-dots i{width:7px;height:7px;border-radius:50%;background:#8b98b55e}.workflow-dots i:first-child{background:#ff8d8766}.workflow-dots i:last-child{background:#82e6c566}
.workflow-canvas{position:relative;height:410px;direction:ltr;background:radial-gradient(ellipse at 40% 50%,#8264e614,transparent 60%),radial-gradient(var(--line) 1px,transparent 1px);background-size:auto,18px 18px;isolation:isolate}.workflow-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.workflow-lines path{fill:none;stroke:var(--muted);stroke-opacity:.4;stroke-width:1.5;vector-effect:non-scaling-stroke}.flow-node{position:absolute;top:50%;transform:translate(-50%,-50%);width:140px;min-height:124px;border:1px solid var(--line);border-radius:18px;padding:14px;background:var(--bg);display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 8px 30px #0002;transition:transform .4s}.flow-node:after{content:"";position:absolute;inset:-1px;border:1px solid var(--flow-color,#7ce7cf);border-radius:inherit;box-shadow:0 0 30px color-mix(in srgb,var(--flow-color,#7ce7cf) 16%,transparent);opacity:0;transition:opacity .4s;pointer-events:none}.flow-node.active:after{opacity:1}.flow-node.active{transform:translate(-50%,-54%)}.flow-icon{display:grid;place-items:center;width:38px;height:38px;font-size:27px;border-radius:11px;background:var(--raised);color:var(--flow-color,#7ce7cf);margin-bottom:10px}.flow-node strong{font:600 12px/1.4 ui-monospace,monospace}.flow-node small{font-size:11px;color:var(--muted);margin-top:5px}.flow-trigger{left:12%;--flow-color:#ffa18f}.flow-ai{left:37.5%;--flow-color:#b0a0ff}.flow-route{left:63%;--flow-color:#87c7f7}.flow-save{left:88%;top:25%;--flow-color:#91e7b5}.flow-send{left:88%;top:75%;--flow-color:#f6cc86}.flow-port{position:absolute;right:-4px;top:50%;width:7px;height:7px;background:var(--muted);border-radius:50%}.flow-caption{position:absolute;bottom:18px;left:24px;display:flex;gap:18px;font:9px ui-monospace,monospace;letter-spacing:.15em;color:var(--muted)}.flow-packet{position:absolute;left:0;top:0;width:6px;height:6px;background:#9df6da;border-radius:50%;box-shadow:0 0 12px #7deed4;pointer-events:none;opacity:0}.workflow-console{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;gap:20px;border-top:1px solid var(--line);background:var(--bg)}.workflow-console>div{display:flex;align-items:center;gap:20px}.workflow-step{direction:ltr;font:12px ui-monospace,monospace;color:var(--accent)}.workflow-console p{margin:0;font-size:14px}.workflow-console .btn{font-size:12px;padding:10px 16px}.workflow-disclaimer{font-size:11px;color:var(--muted);margin:0;padding:13px 26px}
@media(max-width:700px){.workflow-toolbar{padding:14px;gap:10px}.workflow-file{font-size:8px;letter-spacing:.04em}.workflow-dots{display:none}.workflow-canvas{height:570px}.flow-node{width:125px;min-height:108px;padding:10px}.flow-trigger{left:50%;top:13%}.flow-ai{left:50%;top:36%}.flow-route{left:50%;top:59%}.flow-save{left:25%;top:83%}.flow-send{left:75%;top:83%}.flow-port{right:50%;top:auto;bottom:-4px}.flow-caption{display:none}.workflow-console{padding:18px;align-items:stretch;flex-direction:column}.workflow-console>div{gap:12px}.workflow-console p{font-size:12px}.workflow-disclaimer{padding:12px 18px}#chat-open.chat-fab{width:56px;height:56px;min-width:56px;padding:4px;border-radius:50%;inset-inline-end:14px;bottom:calc(14px + env(safe-area-inset-bottom))}#chat-open .assistant-name{display:none}#chat-open .assistant-orb{width:46px;height:46px}.chat{bottom:calc(82px + env(safe-area-inset-bottom));max-height:calc(100dvh - 104px)}}
@media(prefers-reduced-motion:reduce){.flow-node,.flow-node:after,#chat-open svg{transition:none}.flow-node.active{transform:translate(-50%,-50%)}.flow-packet{display:none}}
html[data-theme=light] .flow-icon{color:color-mix(in srgb,var(--flow-color) 50%,#172135)}
