:root{--ink-0: #0b0c0e;--ink-1: #111317;--ink-2: #171a1f;--ink-3: #1f232a;--ink-4: #2a2f37;--hair: #22262d;--hair-soft: #1a1d22;--text: #e8e3d9;--text-mute: #a39c8f;--text-dim: #6f6a60;--text-faint: #4a453d;--accent: oklch(68% .12 55);--accent-hi: oklch(74% .13 55);--accent-lo: oklch(58% .11 55);--accent-wash: oklch(68% .12 55 / .12);--accent-hair: oklch(68% .12 55 / .35);--ok: oklch(70% .11 150);--ok-wash: oklch(70% .11 150 / .14);--run: oklch(78% .13 85);--run-wash: oklch(78% .13 85 / .14);--wait: oklch(72% .1 230);--wait-wash:oklch(72% .1 230 / .14);--fail: oklch(65% .17 25);--fail-wash:oklch(65% .17 25 / .14);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-11: 11px;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-15: 15px;--fs-17: 17px;--fs-20: 20px;--fs-24: 24px;--fs-32: 32px;--fs-44: 44px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--s-16: 64px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 18px;--r-2xl: 22px;--r-full: 999px;--shadow-1: 0 1px 0 rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);--shadow-2: 0 8px 24px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.25);--shadow-3: 0 24px 64px rgba(0,0,0,.5), 0 8px 16px rgba(0,0,0,.35);--ease: cubic-bezier(.22, .61, .36, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .12s;--dur-med: .22s;--dur-slow: .38s;--row-h: 44px;--pad-card: 20px;--pad-thread: 28px}:root[data-density=compact]{--row-h: 36px;--pad-card: 14px;--pad-thread: 18px}:root[data-mode=light]{--ink-0: #f6f3ec;--ink-1: #ffffff;--ink-2: #fbf8f1;--ink-3: #f1ece0;--ink-4: #e3ddce;--hair: #e8e2d1;--hair-soft: #efead9;--text: #1f1c16;--text-mute: #5a5348;--text-dim: #857c6d;--text-faint: #b4ac9c;--accent: oklch(52% .12 55);--accent-hi: oklch(58% .13 55);--accent-lo: oklch(46% .11 55);--accent-wash: oklch(52% .12 55 / .12);--accent-hair: oklch(52% .12 55 / .35);--shadow-1: 0 1px 0 rgba(30,20,10,.04), 0 1px 2px rgba(30,20,10,.06);--shadow-2: 0 8px 24px rgba(30,20,10,.08), 0 2px 6px rgba(30,20,10,.05);--shadow-3: 0 24px 64px rgba(30,20,10,.14), 0 8px 16px rgba(30,20,10,.08)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-14);line-height:1.55;color:var(--text);background:var(--ink-0);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"cv11","ss01","ss03"}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,textarea,select{font:inherit;color:inherit}::selection{background:var(--accent-wash);color:var(--text)}.scroll-thin::-webkit-scrollbar{width:8px;height:8px}.scroll-thin::-webkit-scrollbar-thumb{background:var(--ink-4);border-radius:8px}.scroll-thin::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.scroll-thin::-webkit-scrollbar-track{background:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.55}}@keyframes dot-pulse{0%,60%,to{transform:scale(1);opacity:.4}30%{transform:scale(1.4);opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes blink-caret{0%,50%{opacity:1}51%,to{opacity:0}}.app{display:grid;grid-template-columns:240px 1fr;height:100vh;overflow:hidden;background:var(--ink-0)}.app.rail-collapsed{grid-template-columns:64px 1fr}.rail{background:var(--ink-1);border-right:1px solid var(--hair);display:flex;flex-direction:column;overflow:hidden}.rail-header{padding:18px 18px 14px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--hair-soft)}.rail-logo-mark{width:32px;height:32px;display:block;flex-shrink:0;border-radius:8px;object-fit:cover;filter:drop-shadow(0 2px 6px rgba(120,90,240,.25))}.rail-wordmark{font-size:16px;font-weight:600;letter-spacing:.16em;color:var(--text)}.rail-wordmark small{color:var(--text-dim);font-weight:400;margin-left:8px;font-size:10px;letter-spacing:.06em;font-family:var(--font-mono)}.rail-collapse-btn{margin-left:auto;width:26px;height:26px;border-radius:6px;background:transparent;color:var(--text-dim);border:1px solid transparent;display:grid;place-items:center;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.rail-collapse-btn:hover{background:var(--ink-2);color:var(--text);border-color:var(--hair)}.rail.collapsed .rail-header{flex-direction:column;gap:8px;padding:14px 0 10px}.rail.collapsed .rail-collapse-btn{margin-left:0}.rail.collapsed .rail-wordmark,.rail.collapsed .rail-section-label,.rail.collapsed .rail-item span.label{display:none}.rail.collapsed .rail-item{justify-content:center;padding:10px}.rail.collapsed .rail-item .count{display:none}.rail-scroll{flex:1;overflow-y:auto;padding:12px 10px}.rail-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);padding:14px 10px 6px;font-weight:500}.rail-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;color:var(--text-mute);font-size:13px;position:relative;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);-webkit-user-select:none;user-select:none}.rail-item:hover,.rail-item.active{background:var(--ink-3);color:var(--text)}.rail-item.active:before{content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:2px;background:var(--accent);border-radius:2px}.rail-item .icon{width:18px;height:18px;display:grid;place-items:center;flex-shrink:0}.rail-item .count{margin-left:auto;font-size:11px;color:var(--text-dim);background:var(--ink-3);padding:2px 7px;border-radius:999px}.rail-item.active .count{background:var(--ink-0)}.rail-foot{border-top:1px solid var(--hair-soft);padding:10px;position:relative}.rail-user{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;cursor:pointer;width:100%;background:transparent;border:0;text-align:left;transition:background var(--dur-fast) var(--ease)}.rail-user:hover,.rail-user.open{background:var(--ink-3)}.rail-user .avatar{width:28px;height:28px;border-radius:8px;background:var(--ink-3);display:grid;place-items:center;font-size:12px;font-weight:600;color:var(--text);flex-shrink:0}.rail-user .who{font-size:13px;line-height:1.2;min-width:0;flex:1}.rail-user .who .name{color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-user .who .space{color:var(--text-dim);font-size:11px}.rail.collapsed .rail-user .who{display:none}.rail-new-task{display:inline-flex;align-items:center;gap:8px;width:100%;padding:9px 12px;margin-bottom:12px;border-radius:9px;background:var(--accent);color:var(--ink-0);font-size:13px;font-weight:500;border:0;cursor:pointer;transition:background var(--dur-fast) var(--ease)}.rail-new-task:hover{background:var(--accent-hi)}.rail.collapsed .rail-new-task{justify-content:center;padding:9px}.rail.collapsed .rail-new-task span{display:none}.rail-item.small{padding:7px 10px;font-size:12px;color:var(--text-mute)}.rail-item.small .icon{width:16px;height:16px}.rail-recent{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:7px;cursor:pointer;font-size:12px;color:var(--text-mute);transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);margin-bottom:1px}.rail-recent:hover,.rail-recent.active{background:var(--ink-3);color:var(--text)}.rail-recent .label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-recent .status-dot{flex-shrink:0;width:6px;height:6px}.rail-recents-empty{padding:8px 10px;font-size:11px;color:var(--text-dim);font-style:italic}.rail-view-all{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;margin-top:4px;font-size:11px;color:var(--text-dim);cursor:pointer;border-radius:7px;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.rail-view-all:hover{background:var(--ink-3);color:var(--text)}.rail-back{display:inline-flex;align-items:center;gap:8px;width:100%;padding:8px 10px;margin-bottom:10px;border-radius:8px;font-size:12px;color:var(--text-mute);background:transparent;border:1px solid var(--hair);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.rail-back:hover{background:var(--ink-3);color:var(--text);border-color:var(--accent-hair)}.rail.collapsed .rail-back{justify-content:center;padding:8px}.rail.collapsed .rail-back span{display:none}.rail-menu{position:absolute;bottom:calc(100% - 4px);left:10px;right:10px;background:var(--ink-1);border:1px solid var(--hair);border-radius:12px;box-shadow:0 12px 30px #00000073;padding:6px;z-index:50;display:flex;flex-direction:column}.rail-menu-head{padding:8px 10px 6px;font-size:11px;color:var(--text-dim);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-menu-sep{height:1px;background:var(--hair-soft);margin:4px 0}.rail-menu-item{display:inline-flex;align-items:center;gap:10px;padding:7px 10px;border-radius:7px;background:transparent;border:0;text-align:left;font-size:13px;color:var(--text);cursor:pointer;width:100%;transition:background var(--dur-fast) var(--ease)}.rail-menu-item:hover{background:var(--ink-3)}.rail-menu-item.danger{color:var(--fail)}.rail-menu-item.danger:hover{background:var(--fail-wash)}.work{display:grid;grid-template-columns:1fr 384px;min-width:0;min-height:0;overflow:hidden}.work.right-collapsed{grid-template-columns:1fr 0px}.work.artifact-open{grid-template-columns:1fr 6px var(--artifact-width, 720px)}.artifact-resizer{cursor:col-resize;background:transparent;border-left:1px solid var(--hair);position:relative;z-index:5;transition:background var(--dur-fast) var(--ease)}.artifact-resizer:before{content:"";position:absolute;left:-3px;right:-3px;top:0;bottom:0}.artifact-resizer:hover{background:var(--accent-wash)}.artifact-resizer:active{background:var(--accent)}.col-head{height:56px;display:flex;align-items:center;gap:10px;padding:0 20px;border-bottom:1px solid var(--hair);flex-shrink:0}.col-head h2{margin:0;font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.col-head .sub{color:var(--text-dim);font-size:12px}.col-head .actions{margin-left:auto;display:flex;align-items:center;gap:6px}.list{border-right:1px solid var(--hair);display:flex;flex-direction:column;background:var(--ink-1);min-width:0;min-height:0;overflow:hidden}.list-search{padding:12px 16px;border-bottom:1px solid var(--hair-soft);display:flex;align-items:center;gap:8px}.field{flex:1;display:flex;align-items:center;gap:8px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-md);padding:7px 10px;color:var(--text-mute);font-size:13px}.field input{flex:1;background:transparent;border:0;outline:0;color:var(--text);font-size:13px}.field input::placeholder{color:var(--text-dim)}.list-search .field kbd{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);border:1px solid var(--hair);border-radius:4px;padding:1px 5px}.btn-primary{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:var(--ink-0);font-size:13px;font-weight:600;padding:8px 12px;border-radius:var(--r-md);transition:background var(--dur-fast) var(--ease);white-space:nowrap}.btn-primary:hover{background:var(--accent-hi)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;gap:6px;color:var(--text-mute);font-size:13px;padding:6px 10px;border-radius:var(--r-md);transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.btn-ghost:hover,.btn-ghost.is-on{background:var(--ink-3);color:var(--text)}.btn-sec{display:inline-flex;align-items:center;gap:6px;background:var(--ink-2);border:1px solid var(--hair);color:var(--text);font-size:13px;font-weight:500;padding:7px 11px;border-radius:var(--r-md);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.btn-sec:hover{background:var(--ink-3);border-color:var(--ink-4)}.btn-destruct{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--fail);border:1px solid var(--fail-wash);font-size:13px;font-weight:500;padding:7px 11px;border-radius:var(--r-md)}.btn-destruct:hover{background:var(--fail-wash)}.btn-danger{display:inline-flex;align-items:center;gap:6px;background:var(--fail);color:#fff;border:1px solid var(--fail);font-size:13px;font-weight:500;padding:7px 13px;border-radius:var(--r-md);cursor:pointer;transition:filter var(--dur-fast) var(--ease)}.btn-danger:hover{filter:brightness(1.08)}.btn-danger:focus-visible{outline:2px solid var(--fail);outline-offset:2px}.toast-stack{position:fixed;top:16px;right:16px;z-index:200;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:380px}.toast{pointer-events:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;padding:10px 12px;border-radius:var(--r-md);background:var(--ink-1);border:1px solid var(--ink-3);box-shadow:0 12px 28px #00000059;color:var(--text);animation:toast-in .18s var(--ease, ease-out)}@keyframes toast-in{0%{transform:translate(8px);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;flex-shrink:0}.toast-success{border-left:3px solid var(--ok, #5fb37c)}.toast-success .toast-icon{background:#5fb37c26;color:var(--ok, #5fb37c)}.toast-error{border-left:3px solid var(--fail)}.toast-error .toast-icon{background:var(--fail-wash);color:var(--fail)}.toast-info{border-left:3px solid var(--accent)}.toast-info .toast-icon{background:#b48c5a2e;color:var(--accent)}.toast-body{min-width:0}.toast-title{font-size:13px;font-weight:600;line-height:1.3}.toast-msg{font-size:12.5px;color:var(--text-mute);line-height:1.4;word-break:break-word}.toast-title+.toast-msg{margin-top:2px}.toast-close{background:transparent;border:0;color:var(--text-dim);width:18px;height:18px;display:grid;place-items:center;border-radius:4px;cursor:pointer;flex-shrink:0}.toast-close:hover{color:var(--text);background:var(--ink-2)}.confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#08090c8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:220;animation:confirm-fade .14s var(--ease, ease-out)}@keyframes confirm-fade{0%{opacity:0}to{opacity:1}}.confirm-dialog{width:min(440px,calc(100vw - 32px));background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--r-lg, 10px);box-shadow:0 24px 60px #0000008c;padding:18px 18px 14px;animation:confirm-in .16s var(--ease, ease-out)}@keyframes confirm-in{0%{transform:translateY(6px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.confirm-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.confirm-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--ink-2);color:var(--text-mute);flex-shrink:0}.confirm-dialog.danger .confirm-icon{background:var(--fail-wash);color:var(--fail)}.confirm-head h3{margin:0;font-size:14.5px;font-weight:600;color:var(--text)}.confirm-body{font-size:13px;color:var(--text-mute);line-height:1.5;margin-bottom:16px;padding-left:38px}.confirm-body strong{color:var(--text);font-weight:600}.confirm-actions{display:flex;justify-content:flex-end;gap:8px}.list-scroll{flex:1;overflow-y:auto;padding:4px 8px 12px}.list-group{padding:14px 10px 6px;font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-weight:500}.list-item{padding:var(--s-3) var(--s-3);border-radius:var(--r-md);cursor:pointer;transition:background var(--dur-fast) var(--ease);position:relative}.list-item:hover,.list-item.active{background:var(--ink-2)}.list-item.active:before{content:"";position:absolute;left:-8px;top:14px;bottom:14px;width:2px;background:var(--accent);border-radius:2px}.list-item .row-top{display:flex;align-items:center;gap:8px;margin-bottom:4px}.list-item .subject{font-size:13px;color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.list-item .time{font-size:11px;color:var(--text-dim);flex-shrink:0}.list-item .row-bot{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-mute)}.list-item .preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;color:var(--text-dim);margin-top:4px;line-height:1.45}.row-kebab{flex-shrink:0;display:grid;place-items:center;width:22px;height:22px;border-radius:var(--r-sm);background:transparent;border:0;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.list-item:hover .row-kebab,.list-item.active .row-kebab{opacity:1}.row-kebab:hover{background:var(--ink-3);color:var(--text)}.row-menu{position:absolute;top:28px;right:8px;z-index:30;min-width:150px;background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--r-md);box-shadow:0 12px 28px #00000059;padding:4px;display:flex;flex-direction:column}.row-menu-item{display:flex;align-items:center;gap:8px;background:transparent;border:0;text-align:left;padding:7px 10px;border-radius:var(--r-sm);color:var(--text);font-size:12.5px;cursor:pointer}.row-menu-item:hover{background:var(--ink-2)}.row-menu-item.danger{color:var(--fail, #e35d5d)}.row-menu-item.danger:hover{background:#e35d5d1a}.row-menu-sep{height:1px;background:var(--ink-3);margin:4px 2px}.rename-input{flex:1;min-width:0;font:inherit;font-size:13px;color:var(--text);background:var(--ink-0);border:1px solid var(--accent);border-radius:var(--r-sm);padding:2px 6px;outline:none}.chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:2px 7px 2px 5px;border-radius:999px;background:var(--ink-3);color:var(--text-mute);border:1px solid var(--hair);white-space:nowrap}.chip .k{width:12px;height:12px;border-radius:3px;display:grid;place-items:center;font-size:9px;font-weight:700;color:var(--ink-0);flex-shrink:0}.chip.team .k{background:#5bb0d7}.chip.role .k{background:#69b27a}.chip.skill .k{background:var(--accent)}.status-dot{width:8px;height:8px;border-radius:999px;display:inline-block;flex-shrink:0;position:relative}.status-dot.idle{background:var(--text-faint)}.status-dot.running{background:var(--run)}.status-dot.running:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:999px;border:2px solid var(--run);opacity:.4;animation:dot-pulse 1.6s ease-in-out infinite}.status-dot.awaiting{background:var(--wait)}.status-dot.awaiting:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:999px;border:2px solid var(--wait);opacity:.4;animation:dot-pulse 1.6s ease-in-out infinite}.status-dot.succeeded{background:var(--ok)}.status-dot.failed{background:var(--fail)}.thread{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--ink-0);position:relative;overflow:hidden}.thread-head{padding:16px 28px;border-bottom:1px solid var(--hair);display:flex;align-items:center;gap:14px;flex-shrink:0;background:var(--ink-0);container-type:inline-size}.thread-head .crumbs{display:flex;align-items:center;gap:8px;min-width:0}.thread-head h1{margin:0;font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto}.thread-head .meta{font-size:12px;color:var(--text-dim);display:flex;align-items:center;gap:10px;flex-shrink:1;min-width:0;overflow:hidden}.thread-head .meta>*{flex-shrink:0}@container (max-width: 720px){.thread-head .meta .meta-extra{display:none}}.thread-head .meta .dot-sep{width:2px;height:2px;border-radius:999px;background:var(--text-faint)}.thread-body{flex:1;overflow-y:auto;padding:var(--pad-thread) 0 120px}.thread-inner{max-width:960px;margin:0 auto;padding:0 32px}.thread-body .msg{animation:fade-in-up var(--dur-slow) var(--ease-out) both}.msg-user{display:flex;justify-content:flex-end;margin:24px 0}.msg-user .bubble{max-width:78%;background:var(--ink-2);border:1px solid var(--hair);border-radius:16px 16px 4px;padding:12px 16px;color:var(--text);font-size:14px;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.msg-user .hdr{font-size:11px;color:var(--text-dim);text-align:right;margin-bottom:6px;display:flex;align-items:center;gap:6px;justify-content:flex-end}.msg-agent{margin:28px 0}.msg-agent .agent-hdr{display:flex;align-items:center;gap:10px;margin-bottom:14px}.msg-agent .agent-hdr .av{width:24px;height:24px;border-radius:6px;background:linear-gradient(135deg,#5bb0d7,#328bb0);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--ink-0);flex-shrink:0}.msg-agent .agent-hdr.live .av{animation:pulse-soft 1.8s ease-in-out infinite;box-shadow:0 0 0 3px var(--accent-wash)}.msg-agent .agent-hdr .who{font-size:13px;color:var(--text);font-weight:500}.msg-agent .agent-hdr .where{font-size:12px;color:var(--text-dim)}.trace-toggle{margin-left:auto;display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid transparent;color:var(--text-dim);font-size:11.5px;padding:3px 8px;border-radius:999px;cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.trace-toggle:hover{color:var(--text);background:var(--ink-2);border-color:var(--hair)}.trace-toggle .chev{transition:transform var(--dur-fast) var(--ease)}.trace-toggle .chev.open{transform:rotate(90deg)}.trace-toggle-count{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);background:var(--ink-2);padding:1px 6px;border-radius:999px}.trace-toggle:hover .trace-toggle-count{background:var(--ink-3);color:var(--text)}.trace-inline-loading,.trace-inline-error{font-size:12px;color:var(--text-dim);padding:8px 12px;margin:4px 0}.trace-inline-error{color:var(--fail)}.msg-agent .doc{color:var(--text);font-size:15px;line-height:1.72}.msg-agent .doc h3{margin:28px 0 10px;font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.005em}.msg-agent .doc p{margin:0 0 14px}.msg-agent .doc ul{margin:0 0 14px;padding-left:22px}.msg-agent .doc li{margin-bottom:6px}.msg-agent .doc li::marker{color:var(--text-dim)}.msg-agent .doc strong{color:var(--text);font-weight:600}.msg-agent .doc em{color:var(--text-mute);font-style:normal;border-bottom:1px dotted var(--text-faint)}.caret{display:inline-block;width:6px;height:14px;background:var(--accent);margin-left:2px;vertical-align:-2px;animation:blink-caret 1s step-end infinite}.runlog{background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-lg);margin:6px 0 18px;overflow:hidden}.runlog-head{padding:10px 14px;display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease)}.runlog-head:hover{background:var(--ink-2)}.runlog-head .chev{color:var(--text-dim);transition:transform var(--dur-fast) var(--ease);flex-shrink:0}.runlog.open .runlog-head .chev{transform:rotate(90deg)}.runlog-head .title{font-size:12px;color:var(--text);font-weight:500;display:flex;align-items:center;gap:8px;flex:1;min-width:0}.runlog-head .pill{font-size:11px;color:var(--text-mute);background:var(--ink-3);padding:2px 8px;border-radius:999px;border:1px solid var(--hair)}.runlog-head .pill.running{color:var(--run);background:var(--run-wash);border-color:transparent}.runlog-head .pill.awaiting{color:var(--wait);background:var(--wait-wash);border-color:transparent}.runlog-head .pill.failed{color:var(--fail);background:var(--fail-wash);border-color:transparent}.runlog-head .pill.succeeded{color:var(--ok);background:var(--ok-wash);border-color:transparent}.runlog-head .pill .tick{display:inline-block;width:6px;height:6px;border-radius:999px;background:currentColor;margin-right:4px;vertical-align:1px}.runlog-head .pill.running .tick{animation:pulse-soft 1s ease-in-out infinite}.runlog-head .stats{margin-left:auto;font-size:11px;color:var(--text-dim);font-family:var(--font-mono);display:flex;gap:12px;flex-shrink:0}.runlog-body{border-top:1px solid var(--hair-soft);padding:8px 0}.runlog.closed .runlog-body{display:none}.step{display:grid;grid-template-columns:28px 1fr auto;gap:10px;padding:6px 14px;align-items:start;font-size:12px;position:relative}.step+.step:before{content:"";position:absolute;left:28px;top:0;width:1px;height:14px;background:var(--hair)}.step .step-icon{width:20px;height:20px;border-radius:5px;display:grid;place-items:center;background:var(--ink-3);color:var(--text-mute);flex-shrink:0;margin-top:1px;position:relative;z-index:1}.step.done .step-icon{background:var(--ok-wash);color:var(--ok)}.step.running .step-icon{background:var(--run-wash);color:var(--run);animation:pulse-soft 1.5s ease-in-out infinite}.step.awaiting .step-icon{background:var(--wait-wash);color:var(--wait)}.step.failed .step-icon{background:var(--fail-wash);color:var(--fail)}.step.queued .step-icon{opacity:.5}.step .step-body{min-width:0}.step .step-title{color:var(--text);font-weight:500;font-size:12px;line-height:1.5}.step .step-sub{color:var(--text-dim);font-size:11px;font-family:var(--font-mono);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step.running .step-title:after{content:"";display:inline-block;width:40px;height:6px;border-radius:3px;margin-left:8px;background:linear-gradient(90deg,transparent,var(--run-wash) 50%,transparent);background-size:200% 100%;animation:shimmer 1.2s linear infinite;vertical-align:1px}.step .step-meta{color:var(--text-dim);font-size:11px;font-family:var(--font-mono);display:flex;gap:10px;flex-shrink:0;margin-top:3px}.step .step-meta .cost{color:var(--text-mute)}.approval{background:var(--wait-wash);border:1px solid color-mix(in oklch,var(--wait) 30%,transparent);border-radius:var(--r-lg);padding:18px 20px;margin:18px 0}.approval .ahdr{display:flex;align-items:center;gap:10px;margin-bottom:12px}.approval .ahdr .badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--wait)}.approval .atitle{font-size:15px;color:var(--text);font-weight:600;margin:0 0 6px;letter-spacing:-.005em}.approval .asub{color:var(--text-mute);font-size:13px;margin:0 0 14px}.approval .plan{background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-md);padding:14px 16px;margin-bottom:14px}.approval .plan-step{display:grid;grid-template-columns:22px 1fr auto;gap:10px;padding:7px 0;border-bottom:1px dashed var(--hair);font-size:12px}.approval .plan-step:last-child{border-bottom:0}.approval .plan-step .n{width:18px;height:18px;border-radius:999px;background:var(--ink-3);color:var(--text-mute);display:grid;place-items:center;font-size:10px;font-weight:600;font-family:var(--font-mono)}.approval .plan-step .t{color:var(--text)}.approval .plan-step .d{color:var(--text-dim);font-family:var(--font-mono);font-size:11px}.approval .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.approval .actions .btn-primary{background:var(--wait);color:var(--ink-0)}.approval .actions .btn-primary:hover{background:color-mix(in oklch,var(--wait) 85%,white)}.approval .actions .foot{margin-left:auto;font-size:11px;color:var(--text-dim);font-family:var(--font-mono)}.failure{background:var(--fail-wash);border:1px solid color-mix(in oklch,var(--fail) 30%,transparent);border-radius:var(--r-lg);padding:18px 20px;margin:18px 0}.failure .fhdr{display:flex;align-items:center;gap:10px;margin-bottom:8px}.failure .fbadge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--fail)}.failure h3{margin:0 0 6px;font-size:15px;font-weight:600;color:var(--text)}.failure p{color:var(--text-mute);font-size:13px;margin:0 0 10px}.failure pre{background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-md);padding:10px 12px;font-size:11px;color:var(--text-mute);font-family:var(--font-mono);overflow-x:auto;margin:0 0 12px;line-height:1.5}.failure .actions{display:flex;gap:8px}.composer-wrap{position:absolute;bottom:0;left:0;right:0;padding:14px 28px 20px;background:linear-gradient(to top,var(--ink-0) 55%,transparent);pointer-events:none;z-index:20}.composer{position:relative;max-width:960px;margin:0 auto;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-xl);padding:4px 4px 4px 14px;box-shadow:var(--shadow-2);display:flex;flex-direction:column;pointer-events:auto;transition:border-color var(--dur-fast) var(--ease)}.composer:focus-within{border-color:var(--accent-hair)}.composer.disabled{opacity:.7}.composer-attachments{display:flex;flex-wrap:wrap;gap:8px;padding:10px 4px 4px;border-bottom:1px solid var(--hair);margin-bottom:6px}.composer-attachments .attachment{position:relative;display:flex;align-items:center;gap:8px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-md);padding:6px 30px 6px 6px;max-width:220px;min-height:48px;transition:border-color var(--dur-fast) var(--ease)}.composer-attachments .attachment:hover{border-color:var(--accent-hair)}.composer-attachments .attachment.is-image{padding:0;width:56px;height:56px;max-width:56px;min-height:56px;overflow:hidden}.composer-attachments .attachment.is-image img{width:100%;height:100%;object-fit:cover;display:block}.composer-attachments .attachment-icon{width:36px;height:36px;display:grid;place-items:center;background:var(--ink-3);border-radius:var(--r-sm);color:var(--text-mute);flex-shrink:0}.composer-attachments .attachment-meta{display:flex;flex-direction:column;min-width:0}.composer-attachments .attachment.is-image .attachment-meta{display:none}.composer-attachments .attachment-name{font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.composer-attachments .attachment-size{font-size:11px;color:var(--text-dim)}.composer-attachments .attachment-remove{position:absolute;top:4px;right:4px;width:18px;height:18px;border-radius:50%;background:#0009;color:#fff;display:grid;place-items:center;opacity:0;transition:opacity var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.composer-attachments .attachment:hover .attachment-remove,.composer-attachments .attachment-remove:focus-visible{opacity:1}.composer-attachments .attachment.is-image .attachment-remove{top:4px;right:4px}.composer-attachments .attachment-remove:hover{background:var(--fail, #d23e3e)}.composer-attachments .attachment-remove:disabled{opacity:.3;cursor:not-allowed}.mention-popover{position:absolute;bottom:calc(100% + 6px);left:0;right:0;max-width:420px;margin:0 auto;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-3, var(--shadow-2));padding:4px;display:flex;flex-direction:column;gap:1px;z-index:30;max-height:280px;overflow-y:auto}.mention-popover .mention-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 10px;background:transparent;border:0;border-radius:var(--r-sm);cursor:pointer;color:var(--text);transition:background var(--dur-fast) var(--ease)}.mention-popover .mention-item.active,.mention-popover .mention-item:hover{background:var(--ink-3)}.mention-popover .mention-kind{display:inline-grid;place-items:center;width:22px;height:22px;flex-shrink:0;border-radius:var(--r-sm);background:var(--ink-2);border:1px solid var(--hair);font-size:11px;font-weight:600;color:var(--text-mute);font-family:var(--font-mono)}.mention-popover .mention-kind.role{color:var(--accent)}.mention-popover .mention-kind.team{color:var(--accent-hi, var(--accent))}.mention-popover .mention-name{font-size:13px;font-weight:500;flex-shrink:0}.mention-popover .mention-desc{font-size:12px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.composer textarea{background:transparent;border:0;outline:0;width:100%;resize:none;color:var(--text);font-size:14px;padding:12px 4px 4px;line-height:1.5;max-height:200px;font-family:inherit}.composer textarea::placeholder{color:var(--text-dim)}.composer-textarea-wrap{position:relative;width:100%}.composer-textarea-wrap textarea{position:relative;z-index:1}.composer-highlight{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;color:transparent;font-size:14px;line-height:1.5;padding:12px 4px 4px;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;font-family:inherit;letter-spacing:inherit;overflow:hidden}.composer-highlight .mention-chip{border-radius:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone;font-weight:inherit}.composer-highlight .mention-chip.role{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.composer-highlight .mention-chip.team{background:color-mix(in srgb,var(--accent-hi, var(--accent)) 26%,transparent);color:var(--accent-hi, var(--accent));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-hi, var(--accent)) 38%,transparent)}.composer-foot{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 0}.composer-foot .left{display:flex;align-items:center;gap:4px;color:var(--text-dim);font-size:12px}.composer-foot .mini-btn{display:inline-flex;align-items:center;gap:4px;color:var(--text-mute);padding:5px 8px;border-radius:var(--r-sm);font-size:12px;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.composer-foot .mini-btn:hover,.composer-foot .mini-btn.active{background:var(--ink-3);color:var(--text)}.composer-foot .mini-btn.icon-only{width:28px;height:28px;padding:0;display:grid;place-items:center;border-radius:999px;background:var(--ink-2);border:1px solid var(--hair)}.composer-foot .mini-btn.icon-only:hover{background:var(--ink-3)}.composer-foot .mini-btn.icon-only.active{background:var(--accent);color:var(--ink-0);border-color:var(--accent)}.composer-foot .mini-btn .mini-btn-count{display:inline-grid;place-items:center;margin-left:4px;min-width:16px;height:16px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--ink-0);font-size:10px;font-weight:600;font-family:var(--font-mono);line-height:1}.plus-anchor{position:relative;display:inline-flex}.plus-menu{position:absolute;bottom:calc(100% + 8px);left:0;width:260px;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-3, var(--shadow-2));padding:6px;display:flex;flex-direction:column;gap:2px;z-index:40}.plus-menu-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 10px;background:transparent;border:0;border-radius:var(--r-sm);cursor:pointer;color:var(--text);transition:background var(--dur-fast) var(--ease)}.plus-menu-item:hover:not(:disabled){background:var(--ink-3)}.plus-menu-item:disabled{opacity:.5;cursor:not-allowed}.plus-menu-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:var(--r-sm);background:var(--ink-2);border:1px solid var(--hair);color:var(--text-mute);flex-shrink:0}.plus-menu-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.plus-menu-label{font-size:13px;font-weight:500}.plus-menu-hint{font-size:11px;color:var(--text-dim)}.new-menu{position:absolute;top:calc(100% + 6px);right:0;width:200px;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-3, var(--shadow-2));padding:4px;display:flex;flex-direction:column;gap:1px;z-index:40}.new-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;padding:7px 10px;background:transparent;border:0;border-radius:var(--r-sm);cursor:pointer;color:var(--text);transition:background var(--dur-fast) var(--ease)}.new-menu-item:hover{background:var(--ink-3)}.new-menu-label{font-size:13px;font-weight:500;color:var(--text)}.new-menu-hint{font-size:11px;color:var(--text-dim);line-height:1.3}.plus-menu-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--ink-0);font-size:10px;font-weight:600;font-family:var(--font-mono);flex-shrink:0}.plus-menu-chev{color:var(--text-dim);transform:rotate(-90deg);flex-shrink:0;display:inline-flex;align-items:center}.plus-menu-item.expanded .plus-menu-chev{color:var(--text)}.plus-menu-item.expanded{background:var(--ink-3)}.connectors-flyout{position:absolute;left:calc(100% + 6px);top:0;width:320px;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-3, var(--shadow-2));padding:6px;display:flex;flex-direction:column;gap:1px;z-index:41;max-height:380px;overflow-y:auto}.connectors-empty{padding:14px 12px;font-size:12px;color:var(--text-dim);line-height:1.4}.connectors-empty.error{color:var(--fail, var(--text-mute))}.connectors-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);font-weight:500;padding:8px 10px 4px}.connector-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 10px;background:transparent;border:0;border-radius:var(--r-sm);cursor:pointer;color:var(--text);transition:background var(--dur-fast) var(--ease)}.connector-row:hover{background:var(--ink-3)}.connector-avatar{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:var(--r-sm);font-size:11px;font-weight:600;font-family:var(--font-mono);flex-shrink:0;border:1px solid var(--hair)}.connector-avatar.mcp{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.connector-avatar.user_tool{background:color-mix(in srgb,var(--accent-hi, var(--accent)) 22%,transparent);color:var(--accent-hi, var(--accent))}.connector-meta{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.connector-name{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connector-desc{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connector-toggle{width:32px;height:18px;background:var(--ink-3);border:1px solid var(--hair);border-radius:999px;position:relative;flex-shrink:0;transition:background var(--dur-fast) var(--ease)}.connector-toggle.on{background:var(--accent);border-color:var(--accent)}.connector-toggle-knob{position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform var(--dur-fast) var(--ease);box-shadow:0 1px 2px #0003}.connector-toggle.on .connector-toggle-knob{transform:translate(13px)}.connectors-divider{height:1px;background:var(--hair);margin:4px 6px}.connectors-footer{display:flex;flex-direction:column;gap:1px}.connectors-footer-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:transparent;border:0;border-radius:var(--r-sm);font-size:12px;color:var(--text-dim);cursor:pointer;text-align:left;width:100%}.connectors-footer-row:hover:not(:disabled){background:var(--ink-3);color:var(--text)}.connectors-footer-row:disabled{opacity:.5;cursor:not-allowed}.connectors-footer-row.enabled{color:var(--text)}.connectors-access-mode{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:11px;color:var(--text-dim)}.connectors-access-label{flex:1}.connectors-access-segments{display:flex;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-sm);padding:2px;gap:2px}.connectors-access-seg{padding:3px 8px;font-size:11px;color:var(--text-mute);border:0;background:transparent;border-radius:4px;cursor:pointer}.connectors-access-seg.on{background:var(--ink-1);color:var(--text);border:1px solid var(--hair)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:100}.modal{background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-lg, var(--r-md));box-shadow:var(--shadow-3, var(--shadow-2));width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 64px);overflow:hidden;display:flex;flex-direction:column}.modal-head{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid var(--hair)}.modal-title{flex:1;font-size:14px;font-weight:600;color:var(--text)}.modal-close{background:transparent;border:0;color:var(--text-dim);padding:4px;border-radius:4px;cursor:pointer}.modal-close:hover{background:var(--ink-3);color:var(--text)}.add-connector-form{padding:16px 18px 18px;display:flex;flex-direction:column;gap:14px;overflow-y:auto}.form-row{display:flex;flex-direction:column;gap:4px}.form-row label{font-size:12px;font-weight:500;color:var(--text)}.form-optional{font-weight:400;color:var(--text-dim);font-size:11px}.form-input{background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-sm);padding:8px 10px;font-size:13px;color:var(--text);font-family:inherit;outline:0;transition:border-color var(--dur-fast) var(--ease)}.form-input:focus{border-color:var(--accent-hair)}.form-input::placeholder{color:var(--text-dim)}.form-hint{font-size:11px;color:var(--text-dim);line-height:1.4}.form-error{font-size:12px;color:var(--fail, #d23e3e);background:var(--fail-wash, color-mix(in srgb, var(--fail, #d23e3e) 14%, transparent));border:1px solid var(--fail, #d23e3e);border-radius:var(--r-sm);padding:8px 10px;line-height:1.4}.modal-actions{display:flex;gap:8px;justify-content:flex-end;border-top:1px solid var(--hair-soft, var(--hair));margin-top:4px;padding-top:12px}.constraints-popover{position:absolute;bottom:calc(100% + 6px);left:0;right:0;max-width:520px;margin:0 auto;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-3, var(--shadow-2));padding:12px 14px;z-index:30;display:flex;flex-direction:column;gap:10px;max-height:360px}.constraints-head{display:flex;align-items:center}.constraints-title{flex:1;font-size:13px;font-weight:600;color:var(--text)}.constraints-close{background:transparent;border:0;color:var(--text-dim);padding:4px;border-radius:4px;cursor:pointer}.constraints-close:hover{background:var(--ink-3);color:var(--text)}.constraints-hint{font-size:11px;color:var(--text-dim);margin:0;line-height:1.4}.constraints-hint code{font-family:var(--font-mono);background:var(--ink-2);border:1px solid var(--hair);padding:1px 4px;border-radius:3px;font-size:10px}.constraints-rows{display:flex;flex-direction:column;gap:6px;overflow-y:auto;padding-right:2px}.constraints-row{display:grid;grid-template-columns:140px 1fr auto;gap:6px;align-items:center}.constraints-input{background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-sm);padding:6px 8px;font-size:12px;color:var(--text);font-family:inherit;outline:0;min-width:0}.constraints-input:focus{border-color:var(--accent-hair)}.constraints-input::placeholder{color:var(--text-dim)}.constraints-remove{width:24px;height:24px;display:grid;place-items:center;background:transparent;border:1px solid var(--hair);border-radius:4px;color:var(--text-dim);cursor:pointer;flex-shrink:0}.constraints-remove:hover{background:var(--fail-wash, var(--ink-3));color:var(--fail, var(--text));border-color:var(--fail, var(--hair))}.constraints-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:4px;border-top:1px solid var(--hair-soft, var(--hair))}.composer-foot .send{margin-left:auto;width:34px;height:34px;border-radius:var(--r-md);background:var(--accent);color:var(--ink-0);display:grid;place-items:center;transition:background var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.composer-foot .send:hover{background:var(--accent-hi)}.composer-foot .send:disabled{background:var(--ink-3);color:var(--text-dim);cursor:not-allowed}.composer.live-working .send{animation:pulse-soft 1.8s ease-in-out infinite}.composer-foot .send.stop{background:var(--text);color:var(--ink-0);animation:none}.composer-foot .send.stop:hover{background:var(--fail, #d23e3e);color:#fff}.working-state{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-mute);padding:6px 10px}.working-state .dots{display:inline-flex;gap:3px}.working-state .dots span{width:4px;height:4px;border-radius:999px;background:var(--accent);animation:dot-pulse 1.2s ease-in-out infinite}.working-state .dots span:nth-child(2){animation-delay:.15s}.working-state .dots span:nth-child(3){animation-delay:.3s}.dots-ellipsis{display:inline-flex;gap:3px;margin-left:6px;vertical-align:middle}.dots-ellipsis span{width:3px;height:3px;border-radius:999px;background:var(--run);animation:dot-pulse 1.2s ease-in-out infinite}.dots-ellipsis span:nth-child(2){animation-delay:.15s}.dots-ellipsis span:nth-child(3){animation-delay:.3s}.rp{border-left:1px solid var(--hair);background:var(--ink-0);display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.rp-stack{flex:1;min-height:0;overflow-y:auto;padding:14px 14px 20px;display:flex;flex-direction:column;gap:12px}.rp-card{background:var(--ink-1);border:1px solid var(--hair);border-radius:14px;overflow:hidden}.rp-card-head{display:flex;align-items:center;gap:8px;padding:12px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text)}.rp-card-head .rp-card-title{flex:1;font-size:13px;font-weight:600;letter-spacing:-.005em}.rp-card-head .rp-card-chev{color:var(--text-dim);transition:transform var(--dur-fast) var(--ease)}.rp-card.closed .rp-card-chev{transform:rotate(-90deg)}.rp-card-body{padding:4px 14px 14px;border-top:1px solid var(--hair-soft)}.rp-card.closed .rp-card-body{display:none}.rp-section-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;font-weight:500;margin:12px 0 6px}.rp-section-label:first-child{margin-top:6px}.rp-scroll-list{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding-right:2px}.rp-scroll-list::-webkit-scrollbar{width:6px}.rp-scroll-list::-webkit-scrollbar-track{background:transparent}.rp-scroll-list::-webkit-scrollbar-thumb{background:var(--text-faint, var(--hair));border-radius:3px}.rp-scroll-list::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.rp-constraint-list{display:flex;flex-direction:column;gap:6px;padding-top:6px;max-height:220px;overflow-y:auto;padding-right:2px}.rp-constraint-list::-webkit-scrollbar{width:6px}.rp-constraint-list::-webkit-scrollbar-thumb{background:var(--text-faint, var(--hair));border-radius:3px}.rp-constraint{display:flex;flex-direction:column;gap:2px;padding:6px 8px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-sm)}.rp-constraint-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-weight:500}.rp-constraint-value{font-size:12px;color:var(--text);line-height:1.4;word-break:break-word}.rp-row{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;padding:8px 6px;border-radius:8px;font-size:13px;color:var(--text);cursor:default}.rp-row:hover{background:var(--ink-2)}.rp-row-clickable{cursor:pointer}.rp-row-clickable:hover{background:var(--ink-2);outline:1px solid var(--hair-soft);outline-offset:-1px}.rp-row .rp-row-ic{width:24px;height:24px;border-radius:6px;background:var(--ink-2);border:1px solid var(--hair-soft);display:grid;place-items:center;color:var(--text-mute);font-family:var(--font-mono);font-size:9px;font-weight:600;text-transform:uppercase}.rp-row .rp-row-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-row .rp-row-label .rp-row-sub{color:var(--text-dim);font-size:12px;margin-left:6px}.rp-todo-list{max-height:280px;overflow-y:auto;margin-right:-6px;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--ink-4) transparent}.rp-todo-list::-webkit-scrollbar{width:6px}.rp-todo-list::-webkit-scrollbar-track{background:transparent}.rp-todo-list::-webkit-scrollbar-thumb{background:var(--ink-4);border-radius:999px}.rp-todo-list::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.rp-todo{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:flex-start;padding:7px 0;font-size:13px;line-height:1.5}.rp-todo .rp-todo-mark{width:18px;height:18px;border-radius:999px;display:grid;place-items:center;flex-shrink:0;margin-top:1px}.rp-todo.completed .rp-todo-mark{background:var(--accent);color:var(--ink-0)}.rp-todo.in_progress .rp-todo-mark{background:var(--run-wash);color:var(--run);animation:pulse-soft 1.6s ease-in-out infinite}.rp-todo.pending .rp-todo-mark{border:1.5px solid var(--text-dim);background:transparent}.rp-todo.completed .rp-todo-text{color:var(--text-dim);text-decoration:line-through;text-decoration-color:var(--text-faint)}.rp-todo.in_progress .rp-todo-text{color:var(--text);font-weight:500}.rp-todo.pending .rp-todo-text,.rp-todo .rp-todo-text{color:var(--text)}.rp-progress-meter{height:3px;background:var(--ink-3);border-radius:999px;overflow:hidden;margin:4px 0 10px}.rp-progress-meter>span{display:block;height:100%;background:var(--accent);transition:width var(--dur-slow) var(--ease)}.rp-tabs{display:flex;padding:0 16px;border-bottom:1px solid var(--hair);gap:2px;flex-shrink:0;height:56px;align-items:center}.rp-tab{position:relative;padding:9px 10px;font-size:12px;color:var(--text-mute);border-radius:var(--r-sm);display:inline-flex;align-items:center;gap:6px;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.rp-tab:hover{color:var(--text);background:var(--ink-3)}.rp-tab.active{color:var(--text)}.rp-tab.active:after{content:"";position:absolute;left:8px;right:8px;bottom:-17px;height:2px;background:var(--accent);border-radius:2px}.rp-tab .count{font-size:10px;color:var(--text-dim);background:var(--ink-3);padding:1px 6px;border-radius:999px}.rp-tab.active .count{color:var(--text-mute)}.rp-close{margin-left:auto;color:var(--text-dim);padding:6px;border-radius:var(--r-sm)}.rp-close:hover{background:var(--ink-3);color:var(--text)}.rp-body{flex:1;overflow-y:auto}.tl{padding:20px 20px 40px;position:relative}.tl:before{content:"";position:absolute;left:35px;top:30px;bottom:30px;width:1px;background:var(--hair)}.tl-step{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:10px 0;position:relative}.tl-step .dot{width:22px;height:22px;border-radius:999px;background:var(--ink-2);border:1px solid var(--hair);display:grid;place-items:center;color:var(--text-mute);margin-top:2px;z-index:1;justify-self:start;margin-left:4px}.tl-step.done .dot{background:var(--ok-wash);border-color:var(--ok);color:var(--ok)}.tl-step.running .dot{background:var(--run-wash);border-color:var(--run);color:var(--run);animation:pulse-soft 1.5s ease-in-out infinite}.tl-step.awaiting .dot{background:var(--wait-wash);border-color:var(--wait);color:var(--wait)}.tl-step.failed .dot{background:var(--fail-wash);border-color:var(--fail);color:var(--fail)}.tl-step .body{min-width:0}.tl-step .t{font-size:12px;color:var(--text);font-weight:500;line-height:1.4}.tl-step .s{font-size:11px;color:var(--text-dim);margin-top:3px;font-family:var(--font-mono);display:flex;gap:10px;flex-wrap:wrap}.tl-step.running .t:after{content:"";display:inline-block;width:30px;height:5px;border-radius:3px;margin-left:8px;background:linear-gradient(90deg,transparent,var(--run-wash) 50%,transparent);background-size:200% 100%;animation:shimmer 1.2s linear infinite;vertical-align:1px}.files{padding:16px 20px;display:flex;flex-direction:column;gap:8px}.file-card{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:12px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-md);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.file-card:hover{border-color:var(--ink-4);background:var(--ink-3)}.file-card .ico{width:36px;height:36px;border-radius:var(--r-sm);background:var(--ink-3);display:grid;place-items:center;color:var(--text-mute);font-size:10px;font-weight:600;font-family:var(--font-mono);text-transform:uppercase}.file-card .meta{min-width:0}.file-card .name{font-size:13px;color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-card .sub{font-size:11px;color:var(--text-dim);font-family:var(--font-mono);margin-top:2px;display:flex;gap:8px}.file-card .action{color:var(--text-dim);padding:6px;border-radius:var(--r-sm)}.upload-zone{margin:4px 0;border:1.5px dashed var(--hair);border-radius:var(--r-md);padding:18px;text-align:center;color:var(--text-dim);font-size:12px;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease);cursor:pointer}.upload-zone:hover{border-color:var(--accent-hair);color:var(--text-mute);background:var(--accent-wash)}.ctx-section{padding:18px 20px;border-bottom:1px solid var(--hair-soft)}.ctx-section:last-child{border-bottom:0}.ctx-section h4{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-weight:500}.ctx-row{display:flex;align-items:baseline;gap:10px;font-size:12px;padding:4px 0}.ctx-row .k{color:var(--text-dim);width:90px;flex-shrink:0}.ctx-row .v{color:var(--text)}.fact{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-sm);margin-bottom:6px;font-size:12px}.fact .pin{color:var(--accent)}.fact .k{color:var(--text-dim)}.fact .v{color:var(--text);font-weight:500}.empty{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 28px;overflow-y:auto}.empty-card{max-width:680px;width:100%;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-xl);padding:36px 36px 28px;box-shadow:var(--shadow-2)}.empty-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:600;margin-bottom:14px;display:flex;align-items:center;gap:8px}.empty-title{font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.2;color:var(--text);margin:0 0 8px}.empty-sub{font-size:14px;color:var(--text-mute);margin:0 0 24px;line-height:1.55}.seg{display:inline-flex;padding:3px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-md);margin-bottom:16px}.seg button{padding:6px 12px;font-size:12px;font-weight:500;color:var(--text-mute);border-radius:6px;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.seg button.on{background:var(--ink-3);color:var(--text);box-shadow:var(--shadow-1)}.target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px}.target-card{padding:14px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-md);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease);text-align:left;display:flex;flex-direction:column;gap:4px}.target-card:hover{border-color:var(--accent-hair);background:var(--ink-3)}.target-card.on{border-color:var(--accent);background:var(--accent-wash)}.target-card .name{font-size:13px;color:var(--text);font-weight:500;font-family:var(--font-mono)}.target-card .desc{font-size:11px;color:var(--text-dim);line-height:1.45}.sg{padding:40px 48px;max-width:1100px;margin:0 auto}.sg h1{font-size:32px;margin:0 0 8px;letter-spacing:-.02em}.sg .sub{color:var(--text-mute);margin-bottom:40px;font-size:14px}.sg section{margin-bottom:48px}.sg h2{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin:0 0 14px;font-weight:500;border-top:1px solid var(--hair);padding-top:14px}.swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.swatch{display:flex;flex-direction:column;gap:6px;font-size:11px;font-family:var(--font-mono);color:var(--text-dim)}.swatch .box{aspect-ratio:1;border-radius:var(--r-md);border:1px solid var(--hair)}.swatch .n{color:var(--text)}.type-specimens{display:flex;flex-direction:column;gap:10px}.type-row{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--hair-soft);align-items:baseline}.type-row .meta{font-size:11px;font-family:var(--font-mono);color:var(--text-dim)}.comp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.comp-cell{padding:20px;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-md);display:flex;flex-direction:column;gap:12px;align-items:flex-start}.comp-cell .cl{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-family:var(--font-mono)}.banner{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:12px;color:var(--text-mute);background:var(--accent-wash);border-bottom:1px solid var(--accent-hair)}.banner .dot{width:6px;height:6px;border-radius:999px;background:var(--accent);animation:pulse-soft 1.6s ease-in-out infinite}.banner .spacer{flex:1}.banner a{color:var(--accent);text-decoration:none;font-weight:500}.rail-project-item{display:flex;align-items:center;gap:10px;padding:6px 10px 6px 26px;border-radius:8px;color:var(--text-mute);font-size:12px;position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.rail-project-item:hover,.rail-project-item.active{background:var(--ink-3);color:var(--text)}.rail-project-item.active:before{content:"";position:absolute;left:-10px;top:6px;bottom:6px;width:2px;background:var(--accent);border-radius:2px}.rail-project-item .pg{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;font-family:var(--font-mono);font-size:9px;font-weight:600;color:var(--ink-0);flex-shrink:0;letter-spacing:-.02em}.rail-project-item .pg.bronze{background:var(--accent)}.rail-project-item .pg.sage{background:#69b27a}.rail-project-item .pg.slate{background:#5bb0d7}.rail-project-item .pg.dim{background:var(--ink-4);color:var(--text-mute)}.rail-project-item .label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-project-item .count{font-size:10px;color:var(--text-dim);font-family:var(--font-mono)}.rail.collapsed .rail-project-item{display:none}.projects-route{flex:1;overflow-y:auto;background:var(--ink-0)}.projects-inner{max-width:1160px;margin:0 auto;padding:48px 40px 80px}.projects-hero{display:flex;align-items:flex-end;gap:24px;margin-bottom:36px;padding-bottom:20px;border-bottom:1px solid var(--hair)}.projects-hero h1{font-size:32px;font-weight:600;letter-spacing:-.02em;margin:0 0 6px}.projects-hero p{margin:0;color:var(--text-mute);font-size:14px;max-width:560px;line-height:1.55}.projects-hero .actions{margin-left:auto;display:flex;gap:8px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.project-card{background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-lg);padding:20px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease);display:flex;flex-direction:column;gap:12px;text-align:left;position:relative;overflow:hidden}.project-card:hover{border-color:var(--accent-hair);background:var(--ink-2)}.project-card .pc-head{display:flex;align-items:flex-start;gap:12px}.project-card .pc-glyph{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--ink-0);letter-spacing:-.02em;flex-shrink:0}.project-card .pc-glyph.bronze{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-lo) 100%)}.project-card .pc-glyph.sage{background:linear-gradient(135deg,#6fb880,#448c56)}.project-card .pc-glyph.slate{background:linear-gradient(135deg,#61b7de,#2b85aa)}.project-card .pc-glyph.dim{background:var(--ink-3);color:var(--text-mute);border:1px solid var(--hair)}.project-card .pc-title{font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.01em;line-height:1.3;margin:0 0 4px}.project-card .pc-sub{font-size:11px;font-family:var(--font-mono);color:var(--text-dim);display:flex;gap:10px}.project-card .pc-desc{font-size:13px;color:var(--text-mute);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.project-card .pc-foot{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:10px;border-top:1px dashed var(--hair)}.project-card .pc-stack{display:flex;align-items:center}.project-card .pc-stack .av{width:22px;height:22px;border-radius:999px;background:var(--ink-3);border:2px solid var(--ink-1);display:grid;place-items:center;font-size:9px;font-weight:600;color:var(--text-mute);font-family:var(--font-mono);margin-left:-6px}.project-card .pc-stack .av:first-child{margin-left:0}.project-card:hover .pc-stack .av{border-color:var(--ink-2)}.project-card .pc-meter{flex:1;display:flex;flex-direction:column;gap:4px}.project-card .pc-meter .bar{height:3px;background:var(--ink-3);border-radius:999px;position:relative;overflow:hidden;display:flex}.project-card .pc-meter .bar span{height:100%;display:block}.project-card .pc-meter .bar .s-run{background:var(--run)}.project-card .pc-meter .bar .s-wait{background:var(--wait)}.project-card .pc-meter .bar .s-ok{background:var(--ok)}.project-card .pc-meter .bar .s-fail{background:var(--fail)}.project-card .pc-meter .bar .s-idle{background:var(--text-faint)}.project-card .pc-meter .lgd{font-size:10px;color:var(--text-dim);font-family:var(--font-mono);display:flex;gap:10px}.project-card.new-card{border-style:dashed;background:transparent;align-items:center;justify-content:center;text-align:center;color:var(--text-dim);min-height:220px}.project-card.new-card:hover{background:var(--accent-wash);border-color:var(--accent-hair);color:var(--text-mute)}.project-card.new-card .lg{width:44px;height:44px;border-radius:12px;background:var(--ink-2);display:grid;place-items:center;color:var(--accent);margin-bottom:4px}.project-card.new-card .nm{font-size:14px;font-weight:500;color:var(--text)}.project-card.new-card .sm{font-size:12px;color:var(--text-dim);max-width:220px;line-height:1.45}.project-detail{flex:1;overflow-y:auto;background:var(--ink-0)}.pd-header{padding:32px 40px 24px;border-bottom:1px solid var(--hair);background:linear-gradient(to bottom,var(--ink-1) 0%,var(--ink-0) 100%)}.pd-crumb{font-size:12px;color:var(--text-dim);margin-bottom:12px;display:flex;align-items:center;gap:6px;cursor:pointer}.pd-crumb:hover{color:var(--text)}.pd-top{display:flex;align-items:flex-start;gap:18px;max-width:1160px;margin:0 auto}.pd-glyph{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;font-family:var(--font-mono);font-size:18px;font-weight:600;color:var(--ink-0);flex-shrink:0;letter-spacing:-.02em}.pd-glyph.bronze{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-lo) 100%)}.pd-glyph.sage{background:linear-gradient(135deg,#6fb880,#448c56)}.pd-glyph.slate{background:linear-gradient(135deg,#61b7de,#2b85aa)}.pd-glyph.dim{background:var(--ink-3);color:var(--text-mute);border:1px solid var(--hair)}.pd-titles{flex:1;min-width:0}.pd-titles h1{font-size:26px;font-weight:600;letter-spacing:-.02em;margin:2px 0 6px}.pd-titles p{margin:0;color:var(--text-mute);font-size:14px;line-height:1.55;max-width:640px}.pd-actions{display:flex;gap:8px;flex-shrink:0}.pd-meta{display:flex;gap:24px;margin-top:20px;padding-top:16px;border-top:1px dashed var(--hair);max-width:1160px;margin-left:auto;margin-right:auto}.pd-meta .cell{display:flex;flex-direction:column;gap:2px}.pd-meta .cell .k{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-weight:500}.pd-meta .cell .v{font-size:13px;color:var(--text);font-family:var(--font-mono)}.pd-body{max-width:1160px;margin:0 auto;padding:32px 40px 60px;display:grid;grid-template-columns:1fr 320px;gap:32px}.pd-main h3.sec{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-weight:500;margin:0 0 12px;display:flex;align-items:center;gap:8px}.pd-main h3.sec .n{font-family:var(--font-mono);color:var(--text-faint)}.pd-main h3.sec .add{margin-left:auto;font-size:12px;color:var(--text-dim);text-transform:none;letter-spacing:0;font-weight:400;padding:4px 8px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.pd-main h3.sec .add:hover{background:var(--ink-2);color:var(--text)}.pd-main .convo-table{background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-lg);overflow:hidden;margin-bottom:32px}.pd-main .convo-row{display:grid;grid-template-columns:14px 1fr 180px 80px 50px;gap:16px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--hair-soft);cursor:pointer;font-size:13px;transition:background var(--dur-fast) var(--ease)}.pd-main .convo-row:last-child{border-bottom:0}.pd-main .convo-row:hover{background:var(--ink-2)}.pd-main .convo-row .subj{color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-main .convo-row .stat{font-size:11px;color:var(--text-dim);text-transform:lowercase;font-family:var(--font-mono)}.pd-main .convo-row .t{font-size:11px;color:var(--text-dim);font-family:var(--font-mono);text-align:right}.pd-main .instructions{background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-lg);padding:18px 22px;margin-bottom:28px;font-size:14px;color:var(--text);line-height:1.65;position:relative}.pd-main .instructions .ribbon{position:absolute;top:-1px;left:-1px;bottom:-1px;width:3px;background:var(--accent);border-radius:3px 0 0 3px}.pd-main .instructions em{color:var(--text-mute);font-style:normal;border-bottom:1px dotted var(--text-faint)}.pd-side .facts-card,.pd-side .target-card-sm,.pd-side .files-card{background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-lg);padding:16px 18px;margin-bottom:16px}.pd-side h4{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-weight:500}.pd-side .file-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--hair-soft);font-size:12px}.pd-side .file-row:last-child{border-bottom:0}.pd-side .file-row .ico{width:26px;height:26px;border-radius:6px;background:var(--ink-3);color:var(--text-mute);font-family:var(--font-mono);font-size:9px;font-weight:600;display:grid;place-items:center;text-transform:uppercase;flex-shrink:0}.pd-side .file-row .nm{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.pd-side .file-row .sz{font-size:10px;color:var(--text-dim);font-family:var(--font-mono);flex-shrink:0}.project-filter{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 8px;background:var(--ink-2);border:1px solid var(--hair);border-radius:999px;font-size:12px;color:var(--text);cursor:pointer;transition:border-color var(--dur-fast) var(--ease)}.project-filter:hover{border-color:var(--ink-4)}.project-filter .g{width:14px;height:14px;border-radius:4px;font-family:var(--font-mono);font-size:8px;font-weight:600;color:var(--ink-0);display:grid;place-items:center}.project-filter .g.bronze{background:var(--accent)}.project-filter .g.sage{background:#69b27a}.project-filter .g.slate{background:#5bb0d7}.project-filter .g.dim{background:var(--ink-4);color:var(--text-mute)}.project-filter .g.all{background:var(--ink-3);color:var(--text-mute)}.project-filter .cx{color:var(--text-dim);padding:2px;border-radius:4px;margin-left:2px}.project-filter .cx:hover{background:var(--ink-3);color:var(--text)}.popover{position:absolute;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-md);box-shadow:var(--shadow-3);padding:6px;min-width:260px;z-index:50;animation:fade-in-up .18s var(--ease-out)}.popover .po-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);font-size:13px;color:var(--text);cursor:pointer}.popover .po-item:hover{background:var(--ink-3)}.popover .po-item .g{width:20px;height:20px;border-radius:5px;display:grid;place-items:center;font-family:var(--font-mono);font-size:9px;font-weight:600;color:var(--ink-0)}.popover .po-item .g.bronze{background:var(--accent)}.popover .po-item .g.sage{background:#69b27a}.popover .po-item .g.slate{background:#5bb0d7}.popover .po-item .g.dim{background:var(--ink-4);color:var(--text-mute)}.popover .po-item .g.all{background:var(--ink-3);color:var(--text-mute)}.popover .po-item .cnt{margin-left:auto;font-size:10px;font-family:var(--font-mono);color:var(--text-dim)}.popover .po-item.on{background:var(--accent-wash)}.popover .po-sep{height:1px;background:var(--hair-soft);margin:4px 0}.popover .po-foot{display:flex;align-items:center;gap:6px;padding:6px 10px;color:var(--text-mute);font-size:12px;cursor:pointer;border-radius:var(--r-sm)}.popover .po-foot:hover{background:var(--ink-3);color:var(--text)}.thread-head .pcrumb{display:inline-flex;align-items:center;gap:6px;padding:3px 8px 3px 4px;border-radius:999px;font-size:11px;color:var(--text-mute);background:var(--ink-2);border:1px solid var(--hair);cursor:pointer;transition:border-color var(--dur-fast) var(--ease);flex-shrink:0;white-space:nowrap}.thread-head .pcrumb:hover{border-color:var(--ink-4);color:var(--text)}.thread-head .pcrumb .g{width:14px;height:14px;border-radius:4px;font-family:var(--font-mono);font-size:8px;font-weight:600;color:var(--ink-0);display:grid;place-items:center}.thread-head .pcrumb .g.bronze{background:var(--accent)}.thread-head .pcrumb .g.sage{background:#69b27a}.thread-head .pcrumb .g.slate{background:#5bb0d7}.thread-head .pcrumb .g.dim{background:var(--ink-4);color:var(--text-mute)}.artifact-panel{min-width:0;background:var(--ink-0);border-left:1px solid var(--hair);display:flex;flex-direction:column;overflow:hidden}.artifact-head{display:flex;align-items:center;gap:10px;padding:14px 20px;border-bottom:1px solid var(--hair);background:var(--ink-1)}.artifact-body{flex:1;overflow-y:auto;padding:28px 36px 80px}.artifact-doc{max-width:760px;margin:0 auto}.artifact-code,.artifact-text{background:var(--ink-2);border:1px solid var(--hair);border-radius:10px;padding:18px 20px;font-family:var(--font-mono);font-size:13px;line-height:1.6;color:var(--text);white-space:pre;overflow-x:auto}.artifact-text{white-space:pre-wrap}.continue-card{background:var(--ink-1);border:1px solid var(--accent);border-radius:14px;box-shadow:var(--shadow-1);overflow:hidden}.continue-card-body{display:flex;align-items:center;gap:14px;padding:14px 18px}.continue-card-icon{width:32px;height:32px;border-radius:8px;background:var(--accent-wash);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.continue-card-title{font-size:13px;font-weight:600;color:var(--text);margin-bottom:2px}.continue-card-sub{font-size:12px;color:var(--text-mute);line-height:1.4}.artifact-docx-wrap{background:var(--ink-2);padding:20px 0 60px;border-radius:10px;min-height:60vh}.docx-host{display:flex;flex-direction:column;align-items:center;gap:18px}.docx-host .docx-wrapper,.docx-host section.docx,.docx-host article.docx{background:#fff;color:#1f1c16;box-shadow:0 6px 24px #00000073;border-radius:4px}.docx-host .docx-wrapper{padding:0!important}.docx-host section.docx{padding:48px 56px;width:min(780px,calc(100% - 48px));line-height:1.5}.docx-host table{border-collapse:collapse}.docx-host table td,.docx-host table th{border:1px solid #d0d0d0;padding:6px 10px}.docx-host a{color:#0b5cab}.docx-host p{margin:0 0 8px}.artifact-tabs{display:inline-flex;background:var(--ink-2);border:1px solid var(--hair);border-radius:8px;padding:2px;gap:2px}.artifact-tab{display:inline-flex;align-items:center;justify-content:center;width:28px;height:24px;padding:0;border-radius:6px;color:var(--text-mute);background:transparent;border:0;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.artifact-tab:hover{color:var(--text)}.artifact-tab.active{background:var(--ink-0);color:var(--text);box-shadow:0 1px 2px #00000040}.artifact-html-frame{width:100%;min-height:calc(100vh - 180px);border:1px solid var(--hair);border-radius:10px;background:#fff}.artifact-pptx-wrap{background:var(--ink-2);margin:-28px -36px 0;padding:20px 0 60px;min-height:calc(100vh - 100px);display:flex;justify-content:stretch}.pptx-host{width:100%;min-width:0;flex:1;padding:0 20px;display:flex;flex-direction:column;align-items:stretch;gap:20px}.pptx-slot{display:flex;justify-content:center}.pptx-slot .pptx-preview-wrapper{background:#fff;box-shadow:0 8px 28px #00000073;border-radius:4px;overflow:hidden;max-width:100%}.pptx-slot button,.pptx-slot .pptx-pagination,.pptx-slot>*:not(.pptx-preview-wrapper):not(:empty){display:none!important}.artifact-pdf-wrap{margin:-28px -36px 0;padding:20px 16px 60px;background:var(--ink-2);border-radius:10px;min-height:calc(100vh - 100px);display:flex;flex-direction:column;align-items:center;gap:16px}.artifact-pdf-wrap .pdf-host-inner{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}.pdf-page-slot{background:#fff;box-shadow:0 8px 28px #00000073;border-radius:4px;overflow:hidden;max-width:100%}.pdf-page-slot canvas{display:block;max-width:100%}.ws-root{flex:1;overflow-y:auto;background:var(--ink-0);position:relative}.ws-inner{max-width:1080px;margin:0 auto;padding:32px 40px 80px}.ws-back{font-size:12px;margin-bottom:18px}.ws-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:22px}.ws-titles{flex:1;min-width:0}.ws-titles h1{font-size:26px;font-weight:600;letter-spacing:-.02em;margin:0;color:var(--text)}.ws-titles p{font-size:13.5px;color:var(--text-mute);margin:6px 0 0;max-width:640px;line-height:1.55}.ws-meta{display:flex;gap:8px;font-size:11px;color:var(--text-dim);margin-top:8px}.ws-tabs{display:flex;gap:2px;border-bottom:1px solid var(--ink-3);margin-bottom:24px}.ws-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;background:transparent;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--text-dim);font-size:13px;font-weight:500;cursor:pointer;transition:color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.ws-tab:hover{color:var(--text)}.ws-tab.active{color:var(--text);border-bottom-color:var(--accent)}.ws-tab-count{font-size:11px;font-family:var(--font-mono);background:var(--ink-2);padding:1px 7px;border-radius:999px;color:var(--text-mute)}.ws-tab.active .ws-tab-count{background:var(--accent-wash, var(--ink-3));color:var(--text)}.ws-section-h{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;font-weight:500;margin:0 0 10px}.pf-root{position:relative;border:1px solid var(--hair);border-radius:14px;background:var(--ink-1);overflow:hidden}.pf-root.dragging{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash, rgba(180, 140, 90, .18))}.pf-toolbar{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--hair);background:var(--ink-1)}.pf-breadcrumbs{display:flex;align-items:center;gap:6px;flex:1;min-width:0;flex-wrap:wrap}.pf-crumb{display:inline-flex;align-items:center;gap:4px;background:transparent;border:0;color:var(--text-mute);font-size:12.5px;padding:4px 7px;border-radius:6px;cursor:pointer}.pf-crumb:hover{background:var(--ink-2);color:var(--text)}.pf-crumb-sep{color:var(--text-dim);font-size:11px}.pf-toolbar-actions{display:flex;gap:6px}.pf-progress{position:relative;height:3px;background:var(--ink-2);overflow:hidden;font-size:0}.pf-progress-bar{height:100%;background:var(--accent);transition:width .2s ease}.pf-progress span{position:absolute;top:8px;right:14px;font-size:11px;color:var(--text-dim);background:var(--ink-1);padding:0 6px}.pf-header{display:grid;grid-template-columns:1fr 100px 110px 80px;gap:12px;padding:8px 14px 8px 50px;font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--hair-soft)}.pf-h-meta,.pf-h-when{text-align:left}.pf-list{display:flex;flex-direction:column;min-height:240px}.pf-row{display:grid;grid-template-columns:28px 1fr 100px 110px 80px;gap:10px;align-items:center;padding:8px 14px;cursor:default;border-bottom:1px solid var(--hair-soft);position:relative}.pf-row:hover{background:var(--ink-2)}.pf-row-name{min-width:0;overflow:hidden}.pf-name-btn{background:transparent;border:0;padding:0;font-size:13.5px;color:var(--text);cursor:pointer;text-align:left;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-name-btn:hover{color:var(--accent)}.pf-row-meta,.pf-row-when{font-size:12px;color:var(--text-mute);font-variant-numeric:tabular-nums}.pf-row-actions{display:flex;gap:4px;justify-content:flex-end;opacity:0;transition:opacity var(--dur-fast) var(--ease);position:relative}.pf-row:hover .pf-row-actions{opacity:1}.pf-icon-btn{background:transparent;border:0;width:24px;height:24px;display:grid;place-items:center;border-radius:6px;color:var(--text-dim);cursor:pointer}.pf-icon-btn:hover{background:var(--ink-3);color:var(--text)}.pf-row-menu{position:absolute;top:100%;right:8px;z-index:30;min-width:150px;background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--r-md);box-shadow:0 12px 28px #00000059;padding:4px;display:flex;flex-direction:column}.pf-rename-input{width:100%;font:inherit;font-size:13.5px;color:var(--text);background:var(--ink-0);border:1px solid var(--accent);border-radius:6px;padding:4px 8px;outline:none}.pf-row-new{background:var(--accent-wash, rgba(180, 140, 90, .1))}.pf-empty{padding:60px 24px;text-align:center;color:var(--text-dim);display:flex;flex-direction:column;align-items:center;gap:8px}.pf-empty.error{color:var(--fail)}.pf-empty-title{font-size:14px;color:var(--text);margin-top:4px}.pf-empty-sub{font-size:12.5px;color:var(--text-dim);max-width:360px;line-height:1.5}.file-glyph{width:28px;height:28px;border-radius:6px;display:grid;place-items:center;flex-shrink:0;font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.03em;color:#fff;text-transform:uppercase}.file-glyph.folder{background:var(--ink-3);color:var(--text-mute)}.file-glyph-text{line-height:1}.file-glyph.ext-red{background:#b85a5a}.file-glyph.ext-blue{background:#4a7bc8}.file-glyph.ext-green{background:#5fa073}.file-glyph.ext-orange{background:#d97a3e}.file-glyph.ext-purple{background:#8a6bb1}.file-glyph.ext-sage{background:#6b9b7d}.file-glyph.ext-amber{background:#c89b48}.file-glyph.ext-neutral{background:var(--ink-4);color:var(--text)}.pf-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#14161cc7;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:20;border:2px dashed var(--accent);border-radius:14px;pointer-events:none}.pf-drop-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 32px;background:var(--ink-1);border-radius:12px;box-shadow:0 12px 32px #0006;color:var(--text)}.pf-drop-title{font-size:15px;font-weight:600}.pf-drop-sub{font-size:12px;color:var(--text-mute);font-family:var(--font-mono)}.pf-convo-section{border-top:1px solid var(--ink-3);background:var(--ink-0)}.pf-convo-head{display:flex;align-items:center;gap:10px;padding:10px 14px 8px;font-size:11px}.pf-convo-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:600}.pf-convo-count{color:var(--text-dim);font-family:var(--font-mono);margin-right:auto}.pf-convo-group{display:flex;flex-direction:column}.pf-convo-group-head{display:flex;align-items:center;gap:8px;padding:6px 14px 4px 50px;font-size:11px;color:var(--text-dim)}.pf-convo-subject{color:var(--text-mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px}.pf-convo-when{font-family:var(--font-mono);margin-left:auto}.pf-row.pf-row-convo{cursor:pointer}.pf-row.pf-row-convo .pf-name-btn{color:var(--text-mute)}.pf-row.pf-row-convo:hover .pf-name-btn{color:var(--accent)}.kn-root{display:flex;flex-direction:column;gap:18px}.kn-card{background:var(--ink-1);border:1px solid var(--hair);border-radius:14px;padding:22px 24px}.kn-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.kn-head-l{flex:1;min-width:0}.kn-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:600;color:var(--accent);margin-bottom:8px}.kn-head h3{margin:0;font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.kn-head p{margin:6px 0 0;font-size:13px;color:var(--text-mute);line-height:1.55;max-width:640px}.kn-status{font-size:11px;color:var(--text-dim);display:flex;align-items:center;flex-shrink:0;height:22px}.kn-status-saving{display:inline-flex;align-items:center;gap:5px;color:var(--text-dim)}.kn-status-saved{display:inline-flex;align-items:center;gap:5px;color:var(--ok, #5fb37c);animation:kn-fade-in .2s ease}.kn-status-error{display:inline-flex;align-items:center;gap:5px;color:var(--fail)}@keyframes kn-fade-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.kn-textarea{width:100%;background:var(--ink-0);border:1px solid var(--ink-3);border-radius:10px;padding:14px 16px;font:inherit;font-family:var(--font-mono);font-size:13px;line-height:1.65;color:var(--text);resize:vertical;outline:none;min-height:120px;max-height:600px;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.kn-textarea::placeholder{color:var(--text-dim);white-space:pre-line}.kn-textarea.focused,.kn-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash, rgba(180, 140, 90, .18))}.kn-foot{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;color:var(--text-dim)}.kn-hint{display:inline-flex;align-items:center;gap:4px}.kn-hint kbd{font-family:var(--font-mono);font-size:10px;background:var(--ink-2);border:1px solid var(--hair);border-radius:4px;padding:1px 5px;color:var(--text-mute)}.kn-count.warn{color:var(--accent)}.kn-mem-list{display:flex;flex-direction:column;gap:8px}.kn-memory{background:var(--ink-0);border:1px solid var(--ink-3);border-radius:10px;padding:12px 14px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.kn-memory:hover{border-color:var(--accent-hair, var(--ink-4));background:var(--ink-2)}.kn-memory.editing{cursor:default;background:var(--ink-1);border-color:var(--accent);display:flex;flex-direction:column;gap:8px}.kn-mem-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}.kn-mem-label-display{font-size:12px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0}.kn-mem-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-dim);opacity:.6;transition:opacity var(--dur-fast) var(--ease)}.kn-memory:hover .kn-mem-meta{opacity:1}.kn-mem-source.agent{display:inline-flex;align-items:center;gap:3px;background:var(--accent-wash, rgba(180, 140, 90, .15));color:var(--accent);padding:1px 6px;border-radius:4px;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.kn-mem-when{font-family:var(--font-mono)}.kn-mem-del{background:transparent;border:0;width:22px;height:22px;display:grid;place-items:center;border-radius:5px;color:var(--text-dim);cursor:pointer;opacity:0}.kn-memory:hover .kn-mem-del{opacity:1}.kn-mem-del:hover{background:var(--fail-wash);color:var(--fail)}.kn-mem-value-display{font-size:13.5px;color:var(--text);line-height:1.5;word-wrap:break-word}.kn-mem-label,.kn-mem-value{width:100%;font:inherit;font-size:13.5px;color:var(--text);background:var(--ink-0);border:1px solid var(--ink-3);border-radius:8px;padding:8px 10px;outline:none}.kn-mem-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}.kn-mem-label:focus,.kn-mem-value:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash, rgba(180, 140, 90, .18))}.kn-mem-value{resize:vertical;font-family:var(--font-mono);line-height:1.55;min-height:60px}.kn-mem-actions{display:flex;justify-content:flex-end;gap:8px}.kn-empty{padding:36px 20px;text-align:center;background:var(--ink-0);border:1px dashed var(--ink-3);border-radius:10px;color:var(--text-dim);display:flex;flex-direction:column;align-items:center;gap:6px}.kn-empty-title{color:var(--text);font-size:14px;margin-top:4px}.kn-empty-sub{color:var(--text-dim);font-size:12.5px;max-width:360px;line-height:1.5}.agent-timeline{display:flex;flex-direction:column;gap:14px;margin-top:8px}.tl-trace-block{background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-lg);overflow:hidden}.tl-trace-head{width:100%;display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:0;cursor:pointer;font:inherit;color:var(--text-mute);text-align:left;transition:background var(--dur-fast) var(--ease)}.tl-trace-head:hover{background:var(--ink-2)}.tl-trace-head .chev{flex:0 0 auto;color:var(--text-faint);transition:transform .15s ease}.tl-trace-head .chev.open{transform:rotate(90deg);color:var(--text-mute)}.tl-trace-head .label{font-size:12px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;color:var(--text-dim)}.tl-trace-head .count{font-size:12px;color:var(--text-faint);font-family:var(--font-mono)}.tl-trace-head .pulse{margin-left:auto;width:6px;height:6px;border-radius:999px;background:var(--run);animation:pulse-soft 1s ease-in-out infinite}.tl-trace-body{border-top:1px solid var(--hair-soft);padding:6px 12px 8px;display:flex;flex-direction:column;gap:2px}.tl-trace-body .tl-tool-row{margin-left:0}.tl-tool.dispatch .tl-tool-row .label{color:var(--text-mute);font-weight:500}.tl-tool.dispatch .dispatch-icon{color:var(--accent);flex:0 0 auto}.tl-child-run{margin-top:8px;padding:4px 0 2px 12px;border-left:2px solid var(--accent);background:linear-gradient(90deg,color-mix(in oklab,var(--accent) 6%,transparent),transparent 20%);border-radius:0 6px 6px 0}.tl-child-run .agent-timeline{margin-top:4px;gap:10px}.tl-child-run .tl-trace-block{background:var(--ink-2)}.tl-prose{color:var(--text);font-size:14.5px;line-height:1.65}.tl-prose h1,.tl-prose h2,.tl-prose h3{color:var(--text);font-weight:600;letter-spacing:-.01em;margin:18px 0 8px}.tl-prose h3{font-size:15.5px}.tl-prose p{margin:0 0 12px}.tl-prose ul,.tl-prose ol{margin:0 0 12px;padding-left:22px}.tl-prose li{margin-bottom:6px}.tl-prose li::marker{color:var(--text-dim)}.tl-prose strong{color:var(--text);font-weight:600}.tl-prose code{font-family:var(--font-mono);font-size:12.5px;background:var(--ink-3);color:var(--text);padding:1px 6px;border-radius:4px;border:1px solid var(--ink-4)}.tl-prose pre code{background:transparent;border:0;padding:0}.tl-prose .caret{display:inline-block;width:6px;height:14px;background:var(--text-mute);margin-left:2px;vertical-align:-2px;animation:blink-caret 1s step-end infinite}.tl-tool{border-radius:6px}.tl-tool-row{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;margin-left:-8px;background:transparent;border:0;color:var(--text-dim);font:inherit;font-size:13.5px;cursor:pointer;border-radius:6px;text-align:left;max-width:100%;min-width:0}.tl-tool-row:hover{background:var(--ink-2);color:var(--text-mute)}.tl-tool-row .chev{flex:0 0 auto;color:var(--text-faint);transition:transform .15s ease}.tl-tool-row .chev.open{transform:rotate(90deg);color:var(--text-mute)}.tl-tool-row .label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-tool-row .meta{flex:0 0 auto;font-family:var(--font-mono);font-size:11.5px;color:var(--text-faint)}.tl-tool.live .tl-tool-row{color:var(--text-mute)}.tl-tool-row .pulse{width:7px;height:7px;border-radius:50%;background:var(--run);box-shadow:0 0 0 0 var(--run-wash);animation:tl-pulse 1.4s ease-in-out infinite}@keyframes tl-pulse{0%,to{box-shadow:0 0 0 0 var(--run-wash);opacity:.85}50%{box-shadow:0 0 0 6px transparent;opacity:1}}.tl-tool.failed .tl-tool-row{color:var(--fail)}.tl-tool.failed .tl-tool-row:hover{background:var(--fail-wash)}.tl-tool.failed .tl-tool-body{border-color:var(--fail-wash)}.tl-tool-body{margin:6px 0 4px 22px;padding:10px 12px;background:var(--ink-2);border:1px solid var(--ink-3);border-radius:8px;display:flex;flex-direction:column;gap:8px;min-width:0}.tl-file-link{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:transparent;border:1px solid var(--ink-4);border-radius:4px;color:var(--text-mute);font:inherit;font-size:12.5px;cursor:pointer;align-self:flex-start}.tl-file-link:hover{color:var(--text);border-color:var(--text-faint)}.tl-preview{margin:0;font-family:var(--font-mono);font-size:12px;line-height:1.55;color:var(--text-mute);white-space:pre-wrap;word-break:break-word;max-height:280px;overflow:auto}.tl-error{font-family:var(--font-mono);font-size:12px;color:var(--fail);white-space:pre-wrap}.tl-error-row{display:flex;flex-direction:column;gap:4px}.tl-error-head{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;margin-left:-8px;background:transparent;border:0;color:var(--text-dim);font:inherit;font-size:13.5px;text-align:left;cursor:pointer;border-radius:6px;max-width:100%;min-width:0}.tl-error-head:hover:not(:disabled){background:var(--ink-2)}.tl-error-head:disabled{cursor:default}.tl-error-head .chev{flex:0 0 auto;color:var(--text-faint);transition:transform .15s ease}.tl-error-head .chev.open{transform:rotate(90deg);color:var(--text-mute)}.tl-error-head .warn-icon{flex:0 0 auto;color:var(--wait, #d29022)}.tl-error-head .title{color:var(--text-mute);font-weight:500}.tl-error-head .snippet{color:var(--text-faint);font-family:var(--font-mono);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tl-error-detail{margin:4px 0 0;padding:8px 12px;background:var(--ink-2);border-left:2px solid var(--wait, #d29022);border-radius:0 6px 6px 0;font-family:var(--font-mono);font-size:12px;color:var(--text-mute);white-space:pre-wrap;overflow-x:auto}.tl-approval-badge{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;background:var(--wait-wash);border:1px solid var(--wait);border-radius:999px;color:var(--wait);font-size:12.5px;align-self:flex-start}.tl-thinking{color:var(--text-dim);font-style:italic;font-size:14px}.doc{color:var(--text);font-size:15px;line-height:1.65}.doc h1,.doc h2,.doc h3,.doc h4,.doc h5,.doc h6{color:var(--text);font-weight:600;letter-spacing:-.015em;line-height:1.25;margin:22px 0 8px}.doc h1{font-size:24px;letter-spacing:-.02em;margin-top:4px}.doc h2{font-size:19px}.doc h3{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-mute);font-weight:600;margin-top:24px}.doc h4{font-size:14px;color:var(--text-mute)}.doc>*:first-child{margin-top:0}.doc p{margin:10px 0}.doc strong{color:var(--text);font-weight:600}.doc em{color:var(--text);font-style:italic}.doc a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent-hair)}.doc a:hover{border-bottom-color:var(--accent)}.doc ul,.doc ol{padding-left:22px;margin:10px 0}.doc li{margin:4px 0}.doc li>p{margin:4px 0}.doc ul ul,.doc ol ol,.doc ul ol,.doc ol ul{margin:4px 0}.doc li input[type=checkbox]{margin-right:8px;accent-color:var(--accent)}.doc blockquote{margin:14px 0;padding:10px 16px;border-left:2px solid var(--accent);background:var(--ink-2);border-radius:0 8px 8px 0;color:var(--text-mute);font-style:italic}.doc blockquote>:first-child{margin-top:0}.doc blockquote>:last-child{margin-bottom:0}.doc hr{border:0;border-top:1px solid var(--hair-soft);margin:22px 0}.doc code{background:var(--ink-2);border:1px solid var(--hair-soft);padding:1px 6px;border-radius:5px;font-family:var(--font-mono);font-size:12.5px;color:var(--text)}.doc pre{background:var(--ink-1);border:1px solid var(--hair);border-radius:10px;padding:14px 16px;overflow-x:auto;margin:14px 0;font-size:12.5px;line-height:1.6}.doc pre code{background:transparent;border:0;padding:0;border-radius:0;color:var(--text);font-size:inherit}.doc .hljs{background:transparent;color:var(--text);padding:0}.doc table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13px}.doc th,.doc td{border-bottom:1px solid var(--hair-soft);padding:8px 12px;text-align:left;vertical-align:top}.doc th{color:var(--text-dim);font-weight:500;text-transform:uppercase;font-size:10px;letter-spacing:.08em;border-bottom:1px solid var(--hair);background:transparent}.doc tbody tr:last-child td{border-bottom:0}.doc tbody tr:hover{background:var(--ink-2)}.doc img{max-width:100%;border-radius:8px;border:1px solid var(--hair-soft);margin:10px 0}.doc .md-file-chip,.md-file-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px 2px 6px;margin:0 2px;border-radius:6px;background:var(--accent-wash);border:1px solid var(--accent);color:var(--accent);font-family:var(--font-mono);font-size:.88em;line-height:1.3;cursor:pointer;vertical-align:baseline;transition:background var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.doc .md-file-chip:hover,.md-file-chip:hover{background:var(--accent);color:var(--ink-0)}.doc .md-file-chip svg,.md-file-chip svg{flex-shrink:0}.doc .md-cite-chip,.md-cite-chip{display:inline;align-items:center;gap:4px;padding:1px 6px 1px 5px;margin:0 2px;border-radius:5px;background:var(--ink-2);border:1px dashed var(--hair);color:var(--text-mute);font-family:inherit;font-size:.92em;line-height:1.3;cursor:pointer;transition:all var(--dur-fast) var(--ease)}.doc .md-cite-chip:hover,.md-cite-chip:hover{background:var(--accent-wash);border-color:var(--accent);color:var(--accent);border-style:solid}.md-cite-chip svg{flex-shrink:0;vertical-align:-1px;margin-right:2px;opacity:.6}.md-cite-chip:hover svg{opacity:1}.mermaid-block{display:block;margin:14px 0;padding:12px;background:var(--ink-2);border:1px solid var(--hair);border-radius:8px;overflow-x:auto;text-align:center}.mermaid-block svg{max-width:100%;height:auto}.cite-flash{background:var(--accent-wash)!important;outline:1px solid var(--accent);border-radius:3px;transition:background 1.2s ease,outline 1.2s ease}.md-line{display:inline}.artifact-docx-wrap{margin:-28px -36px -80px;padding:0;background:var(--ink-2);min-height:calc(100vh - 100px);overflow:auto}.docx-viewer-wrap{width:100%;height:100%}.docx-host{display:flex;flex-direction:column;align-items:center;padding:18px 12px 40px}.docx-host .docx-wrapper{background:transparent;padding:0}.docx-host .docx-wrapper section.docx{background:#fff;color:#000;box-shadow:0 1px 3px #0000004d,0 4px 12px #00000040;margin:0 0 14px}.docx-host .docx-wrapper section.docx:last-child{margin-bottom:0}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}
