/* AI pages (workflow automation, private AI). Builds on .we2, .ec, .bs and .pe components. */
.ai-flow__body,.ai-host__body{background:#fff;padding:14px 16px;display:grid;gap:12px;min-height:350px;align-content:start}
.ai-flow__tasks,.ai-host__opts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--ink)}
.ai-flow__tasks button,.ai-host__opts button{padding:10px 6px;background:#fff;border:0;border-right:1px solid var(--line);cursor:pointer;font:600 13px var(--font-sans);color:var(--ink);transition:background .2s}.ai-flow__tasks button:last-child,.ai-host__opts button:last-child{border-right:0}
.ai-flow__tasks button:hover,.ai-host__opts button:hover{background:#f6f9ff}.ai-flow__tasks button[aria-selected=true],.ai-host__opts button[aria-selected=true]{background:var(--ink);color:#fff}
.ai-flow__steps{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.ai-flow__steps button{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center;padding:9px 12px;background:#f7f9fc;border:1px solid var(--line);border-left:4px solid var(--kc,#9aa7ba);animation:ai-in .4s cubic-bezier(.2,.8,.2,1) both;transition:transform .2s,border-color .2s}
.ai-flow__steps button:hover{transform:translateX(4px)}.ai-flow__steps button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
@keyframes ai-in{from{opacity:0;transform:translateX(-14px)}}
.ai-flow__steps i{font:600 11px var(--font-mono);font-style:normal;display:grid;place-items:center;width:22px;height:22px;background:#fff;border:1px solid #cfd8e6;color:var(--mute)}.ai-flow__steps b{font-size:14px}
.ai-flow__steps em{font:600 10px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-style:normal;color:var(--kc,#5d6778)}
.k-rule{--kc:#7b8798}.k-py{--kc:#0b0f17}.k-ai{--kc:#1466ff}.k-hu{--kc:#0c8f5b}
.ai-flow__say{font-size:14px;color:var(--ink2);min-height:2.6em}
.ai-flow__legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.ai-flow__legend li{padding:3px 10px;border:1px solid var(--line);border-left:4px solid var(--kc);font:600 10.5px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}
.ai-host__q{font-weight:600}
.ai-host__viz{background:#f7faff;border:1px solid var(--line);padding:6px}.ai-host__viz svg{display:block;width:100%;height:auto}
.ai-host__res{display:grid;gap:6px}.ai-host__res h4{margin:0;font-size:17px}.ai-host__res ul{list-style:none;margin:0;padding:0}.ai-host__res li{padding:5px 0 5px 20px;border-top:1px solid var(--line);position:relative;font-size:14px;color:var(--ink2)}.ai-host__res li::before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:700}
.ai-host__meter{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font:500 10px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.ai-host__meter i{height:6px;background:#e6ebf3;display:block}.ai-host__meter u{display:block;height:100%;background:var(--blue);transition:width .5s cubic-bezier(.2,.8,.2,1)}
.ai .ec-pf__v--svg text{font:600 9.5px var(--font-mono);letter-spacing:.06em;fill:#3a4352}.ai .ec-pf__v--svg text.w,.ai .ec-sz__viz text.w{fill:#fff}.ai .ec-sz__viz text{font:600 10px var(--font-mono);letter-spacing:.06em;fill:#3a4352}
@media (max-width:760px){.ai-flow__tasks,.ai-host__opts{grid-template-columns:repeat(2,1fr)}.ai-flow__tasks button,.ai-host__opts button{border-bottom:1px solid var(--line)}}
@media (prefers-reduced-motion:reduce){.ai *{animation:none!important;transition:none!important}}
.ai-host__viz .bs-ai__l{font:600 10px var(--font-mono);letter-spacing:.1em;fill:#0a49c4}.ai-host__viz .bs-ai__l.out{fill:#c62828}
