@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--density-row: 8px;--density-msg: 18px;--density-pad: 16px;--density-bubble: 10px 14px;--density-msg-fs: 14px;--bg: #FBFCFF;--bg-gradient-from: #FBFCFF;--bg-gradient-to: #DEEAFB;--surface: #ffffff;--surface-2: #F7F9FF;--surface-3: #E8F0F8;--surface-hover: #DFE9F3;--surface-active: #D4E5F7;--rail: #ffffff;--rail-soft: #F6F5F5;--border: #F1EFE9;--border-strong: #D8DEE7;--text: #18181b;--text-2: #52525b;--text-3: #98a2b3;--text-inv: #ffffff;--brand-deep: #21529F;--brand-mid: #2F85F3;--brand-bright: #2A93FC;--brand-strong: #1872F9;--brand-vivid: #0848EE;--brand-soft: #F0F4FF;--grad-cta: linear-gradient(90deg, #D4FFFF 0%, #C7DCF9 100%);--grad-canvas: linear-gradient(180deg, #FBFCFF 0%, #DEEAFB 100%);--accent: var(--brand-mid);--accent-fg: #ffffff;--accent-soft: #E8F0F8;--pos: #16a34a;--neg: #dc2626;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 4px 12px rgba(16, 24, 40, .08);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .14);--grid: rgba(0, 0, 0, .06);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px}[data-theme=dark]{--bg: #151515;--bg-gradient-from: #2B2E35;--bg-gradient-to: #151515;--surface: #203030;--surface-2: #112322;--surface-3: #1a3536;--surface-hover: #1a3536;--surface-active: #1a3536;--rail: #151515;--rail-soft: #1a1a1a;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .18);--text: #fafafa;--text-2: #a1a1aa;--text-3: #71717a;--text-inv: #18181b;--brand-soft: #112322;--accent: var(--brand-bright);--accent-fg: #ffffff;--accent-soft: #112322;--grad-canvas: linear-gradient(0deg, #151515 0%, #2B2E35 100%);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 14px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .6);--grid: rgba(255, 255, 255, .05)}[data-density=compact]{--density-row: 5px;--density-msg: 12px;--density-pad: 12px;--density-bubble: 8px 12px;--density-msg-fs: 13px}[data-density=comfortable]{--density-row: 10px;--density-msg: 22px;--density-pad: 20px;--density-bubble: 14px 16px;--density-msg-fs: 14.5px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font-family:inherit}button:not(:disabled){cursor:pointer}.cwd-app{display:grid;grid-template-columns:260px 1fr;height:100vh;width:100vw;overflow:hidden;background:var(--bg);color:var(--text);position:relative}.cwd-app.is-sidebar-closed{grid-template-columns:1fr}.cwd-app.is-panel-open .cwd-scroll{padding-right:312px}.cwd-app.is-panel-open .cwd-composer-wrap{max-width:1192px;padding-right:336px}.cwd-avatar{width:28px;height:28px;border-radius:50%;background:var(--brand-bright);color:#fff;font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;position:relative;letter-spacing:.01em;flex-shrink:0;box-shadow:0 0 0 2px var(--rail)}.cwd-avatar--user{background:var(--brand-bright);color:#fff}.cwd-avatar-dot{position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;border-radius:50%;background:#22c55e;border:2px solid var(--rail)}.cwd-avatar-stack{display:inline-flex}.cwd-avatar-stack>*+*{margin-left:calc(var(--avs, 20px) * -.35)}.cwd-avatar--more{background:var(--surface-3);color:var(--text-2);font-weight:700}.cwd-warn{color:var(--neg)}.cwd-sessions{border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--surface);min-width:0}[data-theme=dark] .cwd-sessions{background:#151515}.cwd-sessions-brand{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 16px;flex-shrink:0}.cwd-brand-logo{display:flex;align-items:center}.cwd-brand-logo img{height:28px;width:auto}.cwd-brand-logo img.cwd-brand-logo--light{display:block}.cwd-brand-logo img.cwd-brand-logo--dark,[data-theme=dark] .cwd-brand-logo img.cwd-brand-logo--light{display:none}[data-theme=dark] .cwd-brand-logo img.cwd-brand-logo--dark{display:block}.cwd-sidebar-collapse{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;border-radius:8px;color:var(--text-2);transition:background .12s}.cwd-sidebar-collapse:hover{background:var(--surface-2);color:var(--text)}.cwd-newchat-wrap{padding:0 12px 10px}.cwd-newchat{display:flex;align-items:center;gap:8px;width:100%;padding:9px 14px;border:0;border-radius:9px;background:var(--grad-cta);color:var(--brand-deep);font-size:13.5px;font-weight:600;letter-spacing:-.01em;transition:opacity .12s,transform .12s}.cwd-newchat:hover{opacity:.9}.cwd-newchat:active{transform:scale(.99)}.cwd-search{margin:0 12px 10px;position:relative;display:flex;align-items:center}.cwd-search-icon{position:absolute;left:12px;color:var(--text-3);display:flex;align-items:center}.cwd-search input{width:100%;padding:8px 12px 8px 34px;background:var(--rail-soft);border:1px solid var(--border);border-radius:9px;font:inherit;font-size:13px;color:var(--text);outline:none;transition:border-color .12s,background .12s}[data-theme=dark] .cwd-search input{background:#f6f5f5;border-color:#f1efe9;color:#18181b}.cwd-search input::placeholder{color:var(--text-3)}.cwd-search input:focus{border-color:var(--brand-mid)}.cwd-empty-list{padding:16px;font-size:12.5px;color:var(--text-3);text-align:center}.cwd-sessions-list{flex:1 1 0;min-height:0;overflow-y:auto;padding:4px 10px 12px;display:flex;flex-direction:column;gap:4px}.cwd-session{text-align:left;background:var(--surface-2);border:0;padding:10px 12px;border-radius:14px;color:var(--text);display:flex;flex-direction:column;gap:2px;transition:background .12s;min-width:0}[data-theme=dark] .cwd-session{background:#112322}.cwd-session:hover{background:var(--surface-hover)}[data-theme=dark] .cwd-session:hover{background:#1a3536}.cwd-session.is-active{background:var(--surface-hover);box-shadow:0 0 0 1.5px #2f85f340 inset}.cwd-session-row{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--text-2)}.cwd-session-assistant{font-weight:600;color:var(--text);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.cwd-session-time{margin-left:auto;color:var(--text-3);font-variant-numeric:tabular-nums;font-size:11px;flex-shrink:0}.cwd-session-title{font-size:13px;font-weight:500;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.cwd-session-snip{font-size:11.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.cwd-canvas{display:flex;flex-direction:column;background:var(--grad-canvas);min-width:0;height:100vh;position:relative}.cwd-canvas-dropzone{position:absolute;top:16px;right:16px;bottom:16px;left:16px;z-index:30;border:2px dashed var(--brand-mid);background:#2f85f31a;border-radius:20px;display:flex;align-items:center;justify-content:center;pointer-events:none;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:cwd-menu-in .12s ease-out}.cwd-canvas-dropzone-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 28px;background:var(--surface);border-radius:16px;color:var(--brand-deep);box-shadow:var(--shadow-lg)}.cwd-canvas-dropzone-title{font-size:16px;font-weight:700;letter-spacing:-.01em}.cwd-canvas-dropzone-sub{font-size:12px;color:var(--text-2);letter-spacing:.02em}[data-theme=dark] .cwd-canvas-dropzone-card{background:#203030;color:#c7dcf9}.cwd-canvas-head{padding:0 24px;height:64px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--surface);flex-shrink:0;gap:12px}[data-theme=dark] .cwd-canvas-head{background:#151515;border-bottom-color:#ffffff14}.cwd-canvas-head-left{display:flex;align-items:center;gap:12px;min-width:0}.cwd-canvas-titles{min-width:0;display:flex;flex-direction:column}.cwd-canvas-title{font-weight:500;font-size:15px;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px}.cwd-canvas-sub{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2);margin-top:1px;flex-wrap:wrap}.cwd-canvas-sub span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd-dotsep{color:var(--text-3)}.cwd-canvas-head-right{display:flex;gap:8px;align-items:center}.cwd-iconbtn{border:1px solid transparent;background:transparent;border-radius:8px;padding:6px 8px;font-size:12px;color:var(--text-2);display:flex;align-items:center;gap:4px;font-weight:500;transition:all .12s;min-height:32px}.cwd-iconbtn:hover{background:var(--surface-2);color:var(--text)}.cwd-iconbtn.is-on{background:var(--surface-3);color:var(--text)}.cwd-theme-toggle{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;color:var(--text-2)}.cwd-theme-toggle:hover{color:var(--text)}.cwd-logout{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:0;background:var(--brand-mid);color:var(--brand-soft);transition:opacity .12s}.cwd-logout:hover{opacity:.9}.cwd-pill-gradient{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:0;border-radius:8px;background:var(--grad-cta);color:var(--brand-deep);font:inherit;font-size:12.5px;font-weight:600;letter-spacing:-.005em;transition:opacity .12s}.cwd-pill-gradient:hover{opacity:.9}.cwd-panel{position:absolute;top:80px;right:16px;bottom:16px;width:280px;z-index:10;background:#ffffffdb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden}[data-theme=dark] .cwd-panel{background:#203030eb;border-color:#ffffff14}.cwd-panel-head{padding:16px 16px 8px;display:flex;align-items:flex-start;justify-content:space-between}.cwd-panel-eyebrow{font-size:12px;color:var(--text-2);font-weight:500}.cwd-panel-title{font-size:14.5px;font-weight:600;letter-spacing:-.01em;margin-top:2px;color:var(--text)}.cwd-panel-x{border:0;background:transparent;width:28px;height:28px;border-radius:50%;color:var(--text-2);display:flex;align-items:center;justify-content:center}.cwd-panel-x:hover{background:var(--surface-2);color:var(--text)}.cwd-panel-meta{display:flex;align-items:center;justify-content:space-between;padding:6px 16px 8px;font-size:12.5px;color:var(--text)}.cwd-panel-meta b{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}.cwd-panel-meta-actions{display:flex;align-items:center;gap:6px}.cwd-panel-meta-actions button{border:0;background:transparent;padding:0;color:var(--text);font:inherit;font-size:12.5px;font-weight:500}.cwd-panel-meta-actions button:hover{text-decoration:underline}.cwd-panel-list{flex:1 1 0;min-height:0;overflow-y:auto;padding:8px 10px 12px;display:flex;flex-direction:column;gap:6px}.cwd-asst-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--surface-3);transition:background .12s}[data-theme=dark] .cwd-asst-row{background:#112322}.cwd-asst-row:hover{background:var(--surface-hover)}[data-theme=dark] .cwd-asst-row:hover{background:#1a3536}.cwd-asst-row.is-on{background:var(--surface-hover)}.cwd-asst-row-check{border:0;background:transparent;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0}.cwd-check{width:18px;height:18px;border:2px solid var(--brand-deep);border-radius:5px;display:flex;align-items:center;justify-content:center;background:transparent;color:transparent;transition:all .1s}.cwd-check.is-on{background:var(--brand-mid);border-color:var(--brand-mid);color:#fff}.cwd-asst-row-main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit}.cwd-asst-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cwd-asst-row-name{font-weight:700;font-size:12.5px;letter-spacing:-.005em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd-asst-row-desc{font-size:11px;color:var(--text-2);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd-asst-row-db{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--brand-deep);align-self:flex-start;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd-asst-row-db svg{flex-shrink:0}.cwd-asst-row-db-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}[data-theme=dark] .cwd-asst-row-db{color:#93c5fd}.cwd-asst-row-only{border:0;background:transparent;color:var(--text-3);font:inherit;font-size:11px;font-weight:500;padding:4px 8px;border-radius:6px;opacity:0;transition:opacity .12s;flex-shrink:0}.cwd-asst-row:hover .cwd-asst-row-only{opacity:1}.cwd-asst-row-only:hover{background:var(--surface);color:var(--text)}.cwd-empty-chat{margin:48px auto;max-width:540px;padding:32px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.cwd-empty-chat--picker{max-width:760px}.cwd-empty-icon{width:48px;height:48px;border-radius:14px;background:var(--grad-cta);color:var(--brand-deep);display:flex;align-items:center;justify-content:center;margin-bottom:8px}.cwd-empty-title{font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.cwd-empty-sub{font-size:13.5px;color:var(--text-2)}.cwd-empty-examples{display:flex;flex-direction:column;gap:6px;margin-top:20px;width:100%;max-width:460px}.cwd-empty-ex{display:flex;align-items:center;gap:10px;padding:12px 16px;border:0;background:var(--surface);border-radius:14px;text-align:left;font:inherit;font-size:13px;color:var(--text);transition:background .12s,transform .12s;cursor:pointer;box-shadow:var(--shadow-sm)}.cwd-empty-ex:hover{background:var(--surface-2);transform:translateY(-1px);box-shadow:var(--shadow-md)}.cwd-asst-picker{margin-top:28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;text-align:left;width:100%}.cwd-asst-picker>.cwd-asst-card:nth-child(odd):last-child{grid-column:1 / -1;justify-self:center;width:calc(50% - 6px)}.cwd-asst-card{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--surface);border:0;border-radius:16px;text-align:left;font:inherit;color:var(--text);cursor:pointer;transition:all .12s;box-shadow:var(--shadow-sm)}.cwd-asst-card:hover:not(:disabled){box-shadow:0 8px 24px #2f85f32e;transform:translateY(-1px)}.cwd-asst-card-head{display:flex;align-items:center;gap:10px}.cwd-asst-card-titles{display:flex;flex-direction:column;gap:2px;min-width:0}.cwd-asst-card-name{font-size:14px;font-weight:700;display:flex;align-items:center;gap:6px;color:var(--text)}.cwd-asst-card-db{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--brand-deep)}[data-theme=dark] .cwd-asst-card-db{color:#93c5fd}.cwd-asst-card-desc{font-size:12px;color:var(--text-2);line-height:1.45}.cwd-asst-card-ex{font-size:11.5px;color:var(--text-3);padding-top:8px;border-top:1px dashed var(--border);display:flex;gap:6px;align-items:baseline}.cwd-asst-card-ex-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--text-3);flex-shrink:0}.cwd-asst-card-ex-text{color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cwd-scroll{flex:1 1 0;min-height:0;overflow-y:auto;scroll-behavior:smooth}.cwd-thread{max-width:880px;margin:0 auto;padding:24px 24px 8px;display:flex;flex-direction:column;gap:var(--density-msg)}.cwd-msg{display:flex;gap:12px}.cwd-msg--user{justify-content:flex-end;align-items:flex-start}.cwd-msg--assistant{align-items:flex-start}.cwd-msg-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.cwd-msg-meta{display:flex;align-items:center;gap:8px;font-size:12px}.cwd-msg-name{font-weight:700;color:var(--text);font-size:13.5px}.cwd-bubble{font-size:var(--density-msg-fs);line-height:1.55;color:var(--text);padding:4px 0;word-wrap:break-word}.cwd-bubble--user{background:var(--brand-strong);color:#fff;padding:10px 16px;border-radius:18px;max-width:70%;white-space:pre-wrap;word-wrap:break-word;font-size:14px;line-height:1.45;border:0;box-shadow:var(--shadow-sm)}.cwd-msg--assistant .cwd-msg-body>.cwd-bubble,.cwd-msg--assistant .cwd-msg-body>.cwd-md{background:var(--surface);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow-sm);color:var(--text)}.cwd-msg--assistant .cwd-msg-body>.cwd-bubble>.cwd-md{background:transparent;padding:0;box-shadow:none}.cwd-msg--assistant>.cwd-avatar{width:36px;height:36px;background:var(--brand-mid);background-image:linear-gradient(135deg,#2f85f3,#0848ee);box-shadow:0 0 0 0 transparent}.cwd-card-wrap{display:flex;flex-direction:column;gap:8px}.cwd-card{background:var(--surface);border:0;border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm)}.cwd-card__head{padding:14px 16px 10px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cwd-card__title{font-weight:700;font-size:13.5px;letter-spacing:-.005em;color:var(--text)}.cwd-card__subtitle{font-size:11.5px;color:var(--text-2);margin-top:2px}.cwd-card__body{padding:14px}.cwd-sql{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.cwd-sql-head{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;background:transparent;border:0;text-align:left;font:inherit;color:var(--text-2);font-size:12px;transition:background .1s}.cwd-sql-head:hover{background:var(--surface-2)}.cwd-sql-chev{display:flex;transition:transform .15s;color:var(--text-3)}.cwd-sql-chev.is-open{transform:rotate(180deg)}.cwd-sql-icon{display:flex;color:var(--text-3)}.cwd-sql-label{font-weight:600;color:var(--text)}.cwd-sql-meta{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.cwd-sql-body{margin:0;padding:12px 14px;font-family:var(--font-mono);font-size:11.5px;line-height:1.55;color:var(--text);background:var(--surface-2);border-top:1px solid var(--border);white-space:pre;overflow-x:auto}.cwd-trace{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--surface);border:0;border-radius:14px;box-shadow:var(--shadow-sm)}.cwd-trace-step{display:flex;align-items:center;gap:8px;font-size:12.5px;font-family:var(--font-mono);color:var(--text-3);transition:color .2s}.cwd-trace-step.is-active{color:var(--text)}.cwd-trace-step.is-done{color:var(--text-2)}.cwd-trace-bullet{width:14px;height:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cwd-trace-step.is-done .cwd-trace-bullet{color:var(--brand-mid)}.cwd-trace-spin{width:10px;height:10px;border:1.5px solid var(--border-strong);border-top-color:var(--brand-mid);border-radius:50%;animation:cwd-spin .7s linear infinite}@keyframes cwd-spin{to{transform:rotate(360deg)}}.cwd-trace-dot{width:5px;height:5px;border-radius:50%;background:var(--text-3);opacity:.5}.cwd-trace-ellipsis{margin-left:-4px;animation:cwd-pulse 1.2s ease-in-out infinite}@keyframes cwd-pulse{0%,to{opacity:.3}50%{opacity:1}}.cwd-composer-wrap{max-width:880px;margin:0 auto;width:100%;padding:8px 24px 20px;flex-shrink:0}.cwd-composer{background:var(--surface);border:0;border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-md);transition:box-shadow .12s;position:relative}[data-theme=dark] .cwd-composer{background:#151515}.cwd-composer:focus-within{box-shadow:0 8px 24px #2f85f333}.cwd-composer-asst{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text);font-weight:600}.cwd-composer-asst .cwd-avatar-stack>.cwd-avatar{box-shadow:0 0 0 1.5px var(--surface)}.cwd-composer textarea{border:0;outline:none;resize:none;width:100%;background:transparent;font:inherit;font-size:14px;line-height:1.5;color:var(--text);min-height:36px;max-height:200px;padding:7px 0}.cwd-composer textarea::placeholder{color:var(--text-3)}.cwd-composer textarea:disabled{color:var(--text-3)}.cwd-composer-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}.cwd-composer-hint{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-3);min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cwd-composer-foot-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.cwd-send{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;border:0;background:var(--brand-strong);color:#fff;font-weight:600;font-size:13px;transition:all .12s;flex-shrink:0;height:36px}.cwd-send:hover:not(:disabled){background:var(--brand-vivid)}.cwd-send:disabled{opacity:.4;cursor:not-allowed}.cwd-send.cwd-cancel{background:#dc2626}.cwd-send.cwd-cancel:hover{background:#b91c1c}.cwd-send-chev{font-size:16px;line-height:1;font-weight:700}.cwd-menu-wrap{position:relative;display:inline-flex}.cwd-export-btn{display:inline-flex;align-items:center;gap:6px;padding:0 12px;height:32px;border-radius:8px;border:0;background:var(--grad-cta);color:var(--brand-deep);font:inherit;font-size:12.5px;font-weight:600;transition:opacity .12s}.cwd-export-btn:hover,.cwd-export-btn.is-open{opacity:.9}.cwd-export-chev{display:inline-flex;align-items:center;margin-left:1px;color:var(--brand-deep)}.cwd-msg-actions{margin-left:auto;opacity:0;transition:opacity .1s}.cwd-msg-actions .cwd-export-btn{height:24px;padding:0 8px;font-size:11px;border-radius:6px;background:transparent;color:var(--text-3)}.cwd-msg-actions .cwd-export-btn:hover,.cwd-msg-actions .cwd-export-btn.is-open{background:var(--surface-2);color:var(--text-2)}.cwd-msg-actions .cwd-export-chev{color:var(--text-3)}.cwd-msg:hover .cwd-msg-actions,.cwd-msg-actions:focus-within{opacity:1}.cwd-menu{position:absolute;top:calc(100% + 4px);min-width:240px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;z-index:50;animation:cwd-menu-in .1s ease-out}.cwd-menu--right{right:0}.cwd-menu--left{left:0}@keyframes cwd-menu-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.cwd-menu-eyebrow{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:700;padding:6px 8px 4px}.cwd-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;background:transparent;border-radius:8px;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background .08s}.cwd-menu-item:hover{background:var(--surface-2)}.cwd-menu-item-text{display:flex;flex-direction:column;line-height:1.25;min-width:0}.cwd-menu-item-label{font-size:13px;font-weight:500}.cwd-menu-item-desc{font-size:11px;color:var(--text-3)}.cwd-fmt-badge{flex-shrink:0;width:32px;height:24px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.02em;color:#fff;background:#71717a;text-transform:uppercase;padding:0 4px;line-height:1}.cwd-fmt-badge.cwd-fmt-csv{background:#16a34a}.cwd-fmt-badge.cwd-fmt-xlsx{background:#15803d}.cwd-fmt-badge.cwd-fmt-md{background:#475569}.cwd-fmt-badge.cwd-fmt-docx{background:var(--brand-vivid)}.cwd-fmt-badge.cwd-fmt-pdf{background:#b91c1c}.cwd-tweaks-toggle{position:fixed;bottom:18px;right:18px;z-index:60;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);color:var(--text-2);transition:all .12s}.cwd-tweaks-toggle:hover{color:var(--text);border-color:var(--border-strong)}.cwd-tweaks-toggle.is-open{background:var(--surface-2);color:var(--text)}.cwd-tweaks-panel{position:fixed;bottom:66px;right:18px;z-index:60;width:280px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden;animation:cwd-menu-in .12s ease-out}.cwd-tweaks-head{padding:14px 16px 10px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.cwd-tweaks-section{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.cwd-tweaks-section:last-child{border-bottom:0}.cwd-tweaks-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:700}.cwd-tweaks-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--text)}.cwd-switch{position:relative;width:34px;height:20px;border-radius:999px;background:var(--border-strong);border:0;flex-shrink:0;transition:background .12s;padding:0;cursor:pointer}.cwd-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform .12s}.cwd-switch.is-on{background:var(--brand-mid)}.cwd-switch.is-on:after{transform:translate(14px)}.cwd-segmented{display:flex;background:var(--surface-2);border:0;border-radius:10px;padding:3px;gap:2px}.cwd-segmented-btn{flex:1;padding:5px 10px;font:inherit;font-size:12px;font-weight:600;border:0;background:transparent;color:var(--text-2);border-radius:7px;transition:all .1s}.cwd-segmented-btn:hover{color:var(--text)}.cwd-segmented-btn.is-on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.cwd-table-wrap{overflow-x:auto;border:0;border-radius:12px;background:var(--surface-3);max-height:360px}[data-theme=dark] .cwd-table-wrap{background:#1a1f2e}.cwd-table{width:100%;border-collapse:collapse;font-size:13px}.cwd-table th{text-align:left;font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);padding:10px 14px;background:var(--surface-active);border-bottom:1px solid var(--border-strong);position:sticky;top:0}[data-theme=dark] .cwd-table th{background:#112322;color:#d4d4d8}.cwd-table th.is-num{text-align:right}.cwd-table td{padding:10px 14px;border-bottom:1px solid rgba(0,0,0,.04);color:var(--text);background:var(--surface-3)}[data-theme=dark] .cwd-table td{background:#203030;color:#d4d4d8}.cwd-table tr:last-child td{border-bottom:0}.cwd-table tr:hover td{background:var(--surface-hover)}[data-theme=dark] .cwd-table tr:hover td{background:#203030}.cwd-table td.is-num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono)}.toast{position:fixed;bottom:24px;right:80px;padding:12px 16px;background:var(--brand-deep);color:#fff;border-radius:10px;box-shadow:var(--shadow-md);z-index:200;font-size:13px}.toast.error{background:var(--neg);color:#fff}.login{height:100vh;display:flex}.login-hero{flex:1;background:linear-gradient(160deg,#0f0c29,#302b63 40%,#24243e,#4a2040);position:relative;overflow:hidden}.login-hero:after{content:"";position:absolute;bottom:-20%;right:-10%;width:70%;height:70%;background:radial-gradient(circle,rgba(180,100,140,.4) 0%,transparent 70%);border-radius:50%}.login-content{flex:1;display:flex;align-items:center;justify-content:center;background:#fff;padding:40px}.login-form{max-width:420px;width:100%;text-align:center}.login-logo{display:flex;justify-content:center;margin-bottom:18px}.login-logo img{height:48px;width:auto}.login-eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6b7280;font-weight:700;margin-bottom:6px}.login-title{margin:0 0 10px;font-size:26px;font-weight:700;letter-spacing:-.02em;color:#111}.login-desc{margin:0 0 24px;color:#6b7280;line-height:1.55;font-size:14px}.login-btn{width:100%;padding:15px 16px;background:#4da6ff;color:#fff;border:0;border-radius:999px;font-weight:700;font-size:16px;cursor:pointer;transition:opacity .12s,transform .12s;letter-spacing:-.005em}.login-btn:hover{opacity:.88}.login-btn:active{transform:scale(.99)}.login-warn{padding:12px 14px;border-radius:10px;background:#fee4e2;color:#b42318;font-size:12.5px;text-align:left;line-height:1.5}@media (max-width: 768px){.login{flex-direction:column}.login-hero{flex:0 0 30vh}.login-content{flex:1}}.cwd-sessions-list::-webkit-scrollbar,.cwd-scroll::-webkit-scrollbar,.cwd-panel-list::-webkit-scrollbar{width:8px;height:8px}.cwd-sessions-list::-webkit-scrollbar-thumb,.cwd-scroll::-webkit-scrollbar-thumb,.cwd-panel-list::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}[data-theme=dark] .cwd-sessions-list::-webkit-scrollbar-thumb,[data-theme=dark] .cwd-scroll::-webkit-scrollbar-thumb,[data-theme=dark] .cwd-panel-list::-webkit-scrollbar-thumb{background:#ffffff1f}.cwd-sessions-list::-webkit-scrollbar-track,.cwd-scroll::-webkit-scrollbar-track,.cwd-panel-list::-webkit-scrollbar-track{background:transparent}.cwd-file-drop{position:relative}.cwd-file-drop.is-drag-over:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px dashed var(--brand-mid);border-radius:12px;background:var(--accent-soft);pointer-events:none;z-index:1}.cwd-file-chips{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:4px}.cwd-file-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px 4px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:11.5px;color:var(--text-2);max-width:180px}.cwd-file-chip.is-error{border-color:var(--neg);color:var(--neg)}.cwd-file-chip.is-uploading{opacity:.7}.cwd-file-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwd-file-chip-spin{width:10px;height:10px;border:1.5px solid var(--border-strong);border-top-color:var(--brand-mid);border-radius:50%;animation:cwd-spin .7s linear infinite;flex-shrink:0}.cwd-file-chip-x{border:0;background:transparent;padding:0;color:var(--text-3);display:flex;align-items:center;border-radius:4px;cursor:pointer}.cwd-file-chip-x:hover{color:var(--text)}.cwd-attach-btn{border:0;background:transparent;color:var(--text-2);display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;transition:all .12s;flex-shrink:0}.cwd-attach-btn:hover{color:var(--text);background:var(--surface-2)}.cwd-file-input-hidden{position:absolute;width:0;height:0;overflow:hidden;opacity:0}.cwd-render-card{position:relative}.cwd-render-card .cwd-card__head{align-items:center}.cwd-dataset-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text-2);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .12s;flex-shrink:0}.cwd-dataset-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.cwd-dataset-btn svg{display:block}.cwd-render-more{margin-top:8px;width:100%;padding:8px 12px;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:transparent;color:var(--text-2);font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:all .12s}.cwd-render-more:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.cwd-pie-legend{list-style:none;margin:0;padding:0 8px;display:flex;flex-direction:column;gap:9px}.cwd-pie-legend li{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--text)}.cwd-pie-legend__dot{width:12px;height:12px;border-radius:3px;flex-shrink:0}.cwd-pie-legend__name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0}.cwd-pie-legend__val{margin-left:auto;padding-left:10px;color:var(--text-2);font-variant-numeric:tabular-nums;flex-shrink:0}.cwd-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#10182873;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px}.cwd-modal{display:flex;flex-direction:column;width:min(1040px,100%);max-height:min(80vh,760px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.cwd-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.cwd-modal__title{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:var(--text)}.cwd-modal__count{font-weight:500;font-size:12px;color:var(--text-3);margin-left:4px}.cwd-modal__close{border:0;background:transparent;color:var(--text-2);display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;cursor:pointer;transition:all .12s;flex-shrink:0}.cwd-modal__close:hover{color:var(--text);background:var(--surface-2)}.cwd-modal__body{flex:1;min-height:0;display:flex;flex-direction:column;padding:0}.cwd-dt{display:flex;flex-direction:column;min-height:0;flex:1}.cwd-dt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}.cwd-dt-search{display:flex;align-items:center;gap:8px;flex:1;max-width:360px;padding:7px 11px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-3)}.cwd-dt-search input{border:0;background:transparent;outline:none;font:inherit;font-size:13px;color:var(--text);width:100%}.cwd-dt-count{font-size:12px;color:var(--text-3);white-space:nowrap}.cwd-dt-tools{display:flex;align-items:center;gap:12px}.cwd-dt-scroll{overflow:auto;flex:1;min-height:0;padding:0 16px 16px}.cwd-dt-colwrap{position:relative}.cwd-dt-colbtn{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .12s}.cwd-dt-colbtn:hover,.cwd-dt-colbtn.is-open{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.cwd-dt-colbadge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--accent-fg);font-size:10px;font-weight:700}.cwd-dt-colmenu{position:absolute;top:calc(100% + 6px);right:0;z-index:10;min-width:200px;max-height:280px;overflow-y:auto;padding:6px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.cwd-dt-colitem{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);font-size:12.5px;color:var(--text);cursor:pointer}.cwd-dt-colitem:hover{background:var(--surface-2)}.cwd-dt-colitem input{accent-color:var(--accent);cursor:pointer}.cwd-table--dt{width:100%}.cwd-table--dt th{position:sticky;top:0;z-index:1}.cwd-dt-th{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;cursor:pointer;font:inherit;font-weight:700;color:inherit;padding:0}.cwd-dt-arrow{color:var(--text-3);font-size:10px;opacity:.6}.cwd-dt-arrow.is-active{color:var(--accent);opacity:1}.cwd-dt-empty{padding:28px 16px;text-align:center;color:var(--text-3);font-size:13px}
