:root{--brand-pastel:#a7f3d0;--brand-mid:#10b981;--brand-deep:#064e3b;--brand-deep-hover:#053b2c;--bg-app:#fafaf7;--bg-surface:#fff;--bg-subtle:#f4f4ef;--text-primary:#0b1110;--text-secondary:#4a554f;--text-tertiary:#7c8780;--border:oklch(93% .005 150);--border-strong:oklch(86% .008 150);--success:oklch(62% .18 155);--warning:oklch(65% .16 70);--danger:oklch(58% .2 25);--shadow-sm:0 1px 2px 0 #0f172a0a, 0 1px 1px 0 #0f172a08;--shadow-md:0 4px 6px -1px #0f172a0f, 0 2px 4px -2px #0f172a0a;--shadow-lg:0 10px 15px -3px #0f172a14, 0 4px 6px -4px #0f172a0a;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--font-ui:"Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-display:"Inter Tight", "Inter", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body{background:var(--bg-app);color:var(--text-primary);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01", "ss03";margin:0;padding:0;font-size:14px;line-height:1.5}#root{min-height:100vh}button{cursor:pointer;color:inherit;background:0 0;border:0;padding:0;font-family:inherit}input,textarea{font-family:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--brand-deep);outline-offset:2px;border-radius:4px}::selection{background:var(--brand-pastel);color:var(--brand-deep)}.mono{font-family:var(--font-mono);font-feature-settings:"zero", "ss01"}.tnum{font-variant-numeric:tabular-nums}.btn{border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-strong);align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover{background:var(--bg-subtle)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--brand-deep);color:#fff;border-color:var(--brand-deep)}.btn-primary:hover{background:var(--brand-deep-hover)}.btn-danger{color:var(--danger);border-color:var(--border-strong)}.btn-danger:hover{border-color:var(--danger);background:oklch(96% .04 25)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--bg-subtle)}.btn-lg{padding:12px 22px;font-size:16px}.app-shell{grid-template-rows:auto 1fr;min-height:100vh;display:grid}.topbar{background:var(--bg-surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.topbar-brand{font-family:var(--font-display);color:var(--brand-deep);font-size:18px;font-weight:700}.topbar-user{color:var(--text-secondary);align-items:center;gap:12px;font-size:13px;display:flex}.topbar-user .mono{font-size:12px}.app-body{grid-template-columns:280px 1fr;min-height:0;display:grid}@media (width<=880px){.app-body{grid-template-columns:1fr}.sidebar{display:none}}.sidebar{border-right:1px solid var(--border);background:var(--bg-surface);padding:16px 12px;overflow-y:auto}.main{padding:24px 32px;overflow-y:auto}.login-wrap{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-md);text-align:center;padding:40px 32px}.login-brand{font-family:var(--font-display);color:var(--brand-deep);margin-bottom:8px;font-size:32px;font-weight:700}.login-sub{color:var(--text-secondary);margin-bottom:32px;font-size:13px}.login-hint{color:var(--text-tertiary);margin-top:24px;font-size:12px}.tree-section-title{letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);padding:0 8px 8px;font-size:11px;font-weight:600}.tree-row{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary);align-items:center;gap:6px;padding:6px 8px;font-size:13px;display:flex}.tree-row:hover{background:var(--bg-subtle)}.tree-row.active{background:var(--brand-pastel);color:var(--brand-deep);font-weight:500}.tree-row svg{color:var(--text-secondary);flex-shrink:0}.tree-row.active svg{color:var(--brand-deep)}.tree-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-children{padding-left:14px}.tree-toggle{width:16px;height:16px;color:var(--text-tertiary);place-items:center;display:inline-grid}.list-section{margin-top:16px}.list-section h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin:0 0 8px;font-size:11px;font-weight:600}.list{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.list-row{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:24px 1fr auto auto auto;align-items:center;gap:12px;padding:12px 14px;font-size:13px;display:grid}.list-row:last-child{border-bottom:0}.list-row:hover{background:var(--bg-subtle)}.list-row .icon{color:var(--text-secondary)}.list-row .name{font-weight:500}.list-row .meta{color:var(--text-tertiary);font-size:12px}.list-row .kebab{border-radius:var(--radius-sm);color:var(--text-tertiary);padding:4px}.list-row .kebab:hover{background:var(--border);color:var(--text-primary)}.list-empty{text-align:center;color:var(--text-tertiary);padding:32px;font-size:13px}.breadcrumb{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:16px;font-size:13px;display:flex}.breadcrumb a{color:var(--text-secondary)}.breadcrumb a:hover{color:var(--text-primary)}.breadcrumb .sep{color:var(--text-tertiary)}.breadcrumb .current{color:var(--text-primary);font-weight:500}.toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.toolbar h2{font-family:var(--font-display);color:var(--text-primary);margin:0;font-size:22px;font-weight:600}.toolbar-actions{gap:8px;display:flex}.badge{border-radius:var(--radius-full);letter-spacing:.02em;align-items:center;padding:2px 10px;font-size:11px;font-weight:500;display:inline-flex}.badge.queued,.badge.parsing,.badge.matching{color:oklch(45% .12 70);background:oklch(95% .05 70)}.badge.completed{background:var(--brand-pastel);color:var(--brand-deep)}.badge.failed{color:var(--danger);background:oklch(94% .06 25)}.badge.needs_review{color:oklch(45% .15 270);background:oklch(94% .06 270)}.file-detail-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.file-detail-name{font-family:var(--font-display);color:var(--text-primary);margin:0 0 6px;font-size:24px;font-weight:600}.file-meta{color:var(--text-secondary);flex-wrap:wrap;gap:12px;font-size:13px;display:flex}.file-meta span:after{content:"·";color:var(--text-tertiary);margin-left:12px}.file-meta span:last-child:after{content:""}.file-detail-actions{flex-shrink:0;gap:8px;display:flex}.ingestion-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-top:32px;padding:20px}.ingestion-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ingestion-head h3{font-family:var(--font-display);margin:0;font-size:17px}.ingestion-summary{color:var(--text-secondary);gap:12px;margin-bottom:16px;font-size:12px;display:flex}.ingestion-preview{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.ingestion-preview-meta{color:var(--text-secondary);margin-bottom:8px;font-size:12px}.ingestion-preview .tile-table-scroll{border:1px solid var(--border-subtle);border-radius:6px;max-height:480px;position:static;inset:auto;overflow:auto}.ingestion-notes{margin-top:16px}.ingestion-notes h4{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin:0 0 8px;font-size:13px}.ingestion-notes ul{color:var(--text-secondary);margin:0;padding-left:20px;font-size:13px}.region{border-top:1px solid var(--border);padding:16px 0}.region:first-child{border-top:0;padding-top:8px}.region-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.region-title{font-size:13px;font-weight:600}.region-source{color:var(--text-tertiary);font-family:var(--font-mono);margin-left:8px;font-size:11px}.region-stats{color:var(--text-secondary);gap:12px;font-size:12px;display:flex}.region-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);overflow-x:auto}.region-table{border-collapse:collapse;width:100%;min-width:600px;font-size:12px}.region-table th,.region-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 12px}.region-table th{background:var(--bg-subtle);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:11px;font-weight:600}.region-table tbody tr:last-child td{border-bottom:0}.region-table tbody tr:hover{background:var(--bg-subtle)}.region-col-type{font-family:var(--font-mono);color:var(--text-tertiary);text-transform:none;letter-spacing:0;margin-top:2px;font-size:10px;display:block}.modal-backdrop{z-index:50;background:#0b111066;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--bg-surface);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-lg);padding:24px}.modal h3{font-family:var(--font-display);margin:0 0 16px;font-size:18px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.modal-backdrop-full{z-index:60}.modal-xl{max-width:min(1200px,95vw);max-height:90vh;overflow:auto}.modal-sql{flex-direction:column;gap:12px;max-width:min(720px,92vw);max-height:80vh;display:flex}.modal-sql-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.modal-sql-header h3{margin:0}.sql-block{flex-direction:column;gap:8px;min-height:0;display:flex}.sql-block-pre{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-subtle);font-family:var(--font-mono,monospace);white-space:pre-wrap;word-break:break-word;max-height:60vh;margin:0;padding:12px;font-size:13px;line-height:1.45;overflow:auto}.sql-block-actions{justify-content:flex-end;gap:8px;display:flex}.input{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;padding:10px 12px;font-size:14px}.input:focus{outline:2px solid var(--brand-deep);outline-offset:0;border-color:var(--brand-deep)}.banner{border-radius:var(--radius-md);margin-bottom:16px;padding:10px 14px;font-size:13px}.banner-error{color:var(--danger);background:oklch(95% .05 25)}.banner-info{background:var(--bg-subtle);color:var(--text-secondary)}.spinner{border:2px solid var(--border-strong);border-top-color:var(--brand-deep);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.upload-progress{background:var(--bg-subtle);border-radius:var(--radius-md);margin-top:16px;padding:12px;font-size:12px}.upload-row{grid-template-columns:1fr auto;align-items:center;gap:12px;padding:4px 0;display:grid}.upload-bar{background:var(--border);border-radius:2px;height:4px;margin-top:4px;overflow:hidden}.upload-bar-fill{background:var(--brand-mid);height:100%;transition:width .2s}.kebab-menu{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:40;min-width:160px;padding:4px;position:absolute}.kebab-menu button{text-align:left;border-radius:var(--radius-sm);width:100%;padding:8px 12px;font-size:13px;display:block}.kebab-menu button:hover{background:var(--bg-subtle)}.kebab-menu button.danger{color:var(--danger)}.kebab-menu button.danger:hover{background:oklch(96% .04 25)}.sidebar-nav{border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:2px;margin-bottom:16px;padding-bottom:12px;display:flex}.sidebar-nav-link{color:var(--text-secondary);border-radius:var(--radius-sm);padding:6px 10px;font-size:13px;text-decoration:none}.sidebar-nav-link:hover{background:var(--bg-subtle);color:var(--text-primary)}.sidebar-nav-link.active{background:var(--brand-pastel);color:var(--text-primary);font-weight:500}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field>span{color:var(--text-secondary);font-size:12px;font-weight:500}.field input,.field textarea,.field select{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;padding:10px 12px;font-family:inherit;font-size:14px}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--brand-deep);outline-offset:0;border-color:var(--brand-deep)}.field textarea{resize:vertical;min-height:60px}.dashboard-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.dashboard-list-item{padding:0}.dashboard-list-link{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);color:inherit;flex-direction:column;gap:4px;padding:14px 16px;text-decoration:none;transition:border-color 80ms;display:flex}.dashboard-list-link:hover{border-color:var(--brand-deep)}.dashboard-list-name{font-family:var(--font-display);color:var(--text-primary);font-size:16px}.dashboard-list-description{color:var(--text-secondary);font-size:13px}.dashboard-list-meta{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;margin-top:4px;font-size:11px}.dashboard-description{color:var(--text-secondary);margin:-8px 0 16px;font-size:14px}.dashboard-grid-empty{text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-secondary);background:var(--bg-subtle);margin-top:24px;padding:48px 24px;font-size:14px}.dashboard-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:80px;gap:16px;margin-top:16px;display:grid}.tile{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;min-width:0;display:flex;overflow:hidden}.tile-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-subtle);justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;display:flex}.tile-title{font-family:var(--font-display);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:14px;overflow:hidden}.tile-actions{gap:4px;display:flex}.tile-action-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;text-decoration:none;display:inline-flex}.tile-action-btn:hover{background:var(--bg-surface);color:var(--text-primary)}.tile-action-danger:hover{color:var(--danger)}.tile-body{flex:1;min-height:0;display:block;position:relative;overflow:hidden}.tile-chart-fill{position:absolute;inset:8px 12px}.tile-meta{color:var(--text-tertiary);border-top:1px solid var(--border-subtle);background:var(--bg-subtle);padding:6px 14px;font-size:11px}.tile-error{color:var(--danger)}.tile-skeleton{color:var(--text-secondary);justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex;position:absolute;inset:0}.tile-empty{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:13px;display:flex;position:absolute;inset:0}.tile-empty-error{color:var(--danger)}.chart-tick-tooltip{background:var(--brand-deep);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;padding:4px 8px;font-size:11px;display:inline-block;box-shadow:0 2px 6px oklch(20% .02 150/.2)}.tile-table-scroll{width:100%;position:absolute;inset:0;overflow:auto}.tile-table{border-collapse:collapse;width:100%;font-size:12px}.tile-table th,.tile-table td{border-bottom:1px solid var(--border-subtle);text-align:left;white-space:nowrap;padding:4px 8px;font-weight:400}.tile-table th{background:var(--bg-surface);color:var(--text-primary);font-weight:500;position:sticky;top:0}.tile-table-type{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:10px;font-weight:400;display:block}.composer-subtitle{color:var(--text-secondary);font-size:13px;font-weight:400}.composer-layout{grid-template-columns:minmax(320px,2fr) 3fr;gap:24px;margin-top:16px;display:grid}@media (width<=1024px){.composer-layout{grid-template-columns:1fr}}.composer-actions{justify-content:flex-end;gap:8px;display:flex}.composer-preview-column{flex-direction:column;gap:12px;min-width:0;display:flex}.composer-preview{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);flex:none;height:clamp(380px,60vh,640px);display:block;position:relative;overflow:hidden}.composer-preview-aux{flex-direction:column;gap:12px;display:flex}.composer-preview .tile-empty,.composer-preview .tile-skeleton,.composer-preview .tile-table-scroll,.composer-preview .tile-chart-fill{top:56px}.composer-preview-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-subtle);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);justify-content:space-between;align-items:center;min-height:40px;padding:8px 14px;font-size:12px;display:flex}.composer-preview-actions{text-transform:none;letter-spacing:0;align-items:center;gap:12px;display:flex}.composer-raw-sql-toggle{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:11px}.composer-raw-sql-toggle:hover{color:var(--text-primary)}.composer-raw-sql{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);margin-top:12px;padding:12px}.composer-raw-sql summary{cursor:pointer;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;padding-bottom:8px;font-size:12px}.composer-sql-readonly{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);padding:8px 12px}.composer-sql-readonly summary{cursor:pointer;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;padding-bottom:8px;font-size:12px}.composer-sql-readonly[open] summary{padding-bottom:8px}.composer-chat-actions{justify-content:flex-end;padding:0 0 8px;display:flex}.btn-sm{padding:4px 10px;font-size:12px}.appearance-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);flex-wrap:wrap;align-items:center;gap:16px;padding:10px 12px;display:flex}.appearance-row{align-items:center;gap:8px;display:flex}.appearance-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.appearance-swatches{gap:6px;display:flex}.appearance-swatch{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;box-sizing:border-box;background:0 0;width:28px;height:22px;padding:0;display:inline-flex;overflow:hidden}.appearance-swatch:hover{border-color:var(--text-tertiary)}.appearance-swatch-active{border-color:var(--brand-mid);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand-mid) 30%, transparent)}.appearance-swatch-stripe{flex:1 1 0;height:100%}.appearance-toggle{color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex}.appearance-toggle input{margin:0}.appearance-segmented{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.appearance-segment{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:4px 10px;font-size:12px}.appearance-segment:hover{background:var(--bg-subtle);color:var(--text-primary)}.appearance-segment+.appearance-segment{border-left:1px solid var(--border-subtle)}.appearance-segment-active{background:var(--brand-mid);color:#fff}.appearance-segment-active:hover{background:var(--brand-deep);color:#fff}.kpi-tile{flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex;position:absolute;inset:0}.kpi-value{font-family:var(--font-display);color:var(--brand-deep);text-align:center;word-break:break-word;font-size:clamp(20px,4vw,48px);line-height:1}.kpi-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;text-align:center;font-size:11px}.composer-left{flex-direction:column;gap:12px;min-width:0;display:flex}.agent-chat{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;height:clamp(480px,70vh,720px);display:flex;overflow:hidden}.agent-chat-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-subtle);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);justify-content:space-between;align-items:center;padding:10px 14px;font-size:12px;display:flex}.agent-chat-meta{text-transform:none;letter-spacing:0}.agent-chat-messages{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.agent-chat-empty{color:var(--text-secondary);text-align:center;padding:24px 12px;font-size:13px}.agent-chat-message{border-radius:var(--radius-md);white-space:pre-wrap;padding:8px 12px;font-size:13px;line-height:1.45}.agent-chat-user{background:var(--brand-pastel);color:var(--text-primary);align-self:flex-end;max-width:80%}.agent-chat-assistant{background:var(--bg-subtle);color:var(--text-primary);align-self:flex-start;max-width:90%}.agent-chat-tool{background:var(--bg-subtle);color:var(--text-secondary);align-self:flex-start;max-width:90%;font-size:11px}.agent-chat-tool summary{cursor:pointer}.agent-chat-tool pre{background:var(--bg-surface);border-radius:var(--radius-sm);max-height:200px;margin-top:6px;padding:8px;font-size:11px;overflow:auto}.agent-chat-tool-calls{font-family:var(--font-mono,monospace);margin-top:6px;font-size:11px}.agent-chat-tool-call{background:var(--bg-surface);border-radius:var(--radius-sm);color:var(--text-secondary);word-break:break-all;margin-top:4px;padding:4px 6px}.agent-chat-compaction{background:var(--bg-subtle);color:var(--text-secondary);border:1px dashed var(--border-subtle);align-self:stretch;max-width:100%;font-size:11px;font-style:italic}.agent-chat-compaction summary{cursor:pointer}.agent-chat-compaction-body{background:var(--bg-surface);border-radius:var(--radius-sm);white-space:pre-wrap;margin-top:6px;padding:8px;font-size:11px;font-style:normal}.agent-chat-postcheck{align-self:flex-start;max-width:95%;font-size:12px}.agent-chat-postcheck-ok{background:var(--brand-pastel);color:var(--text-primary)}.agent-chat-postcheck-bad{color:var(--danger);background:oklch(95% .05 25)}.agent-chat-postcheck-warn{color:var(--text-primary);background:oklch(96% .04 80)}.agent-chat-question{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);border-left:4px solid var(--brand-deep);align-self:flex-start;max-width:95%;box-shadow:0 1px 2px oklch(20% .02 150/.04)}.agent-chat-question:before{content:"Question for you";letter-spacing:.08em;text-transform:uppercase;color:var(--brand-deep);background:var(--brand-pastel);border-radius:999px;margin-bottom:8px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.agent-chat-question-text{margin-bottom:10px;font-size:15px;font-weight:600;line-height:1.4}.agent-widget{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.agent-widget-hint{letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);flex-basis:100%;margin-bottom:2px;font-size:11px;font-weight:600}.agent-widget-select{flex-direction:column;align-items:stretch}.agent-widget-options{flex-wrap:wrap;gap:6px;display:flex}.agent-widget-option{color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:6px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:500;transition:background .12s,border-color .12s,color .12s,transform 80ms;display:inline-flex}.agent-widget-option:before{content:"→";color:var(--text-tertiary);font-weight:600;transition:color .12s}.agent-widget-option:hover{background:var(--brand-pastel);border-color:var(--brand-deep);color:var(--brand-deep)}.agent-widget-option:hover:before{color:var(--brand-deep)}.agent-widget-option:active{transform:translateY(1px)}.agent-widget-option:focus-visible{outline:2px solid var(--brand-deep);outline-offset:2px}.agent-widget-option:disabled{opacity:.5;cursor:not-allowed}.agent-widget-chip{padding:4px 10px;font-size:12px}.agent-widget-multiselect{flex-direction:column;align-items:flex-start}.agent-widget-chips{flex-wrap:wrap;gap:4px;display:flex}.agent-widget-chip{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;color:var(--text-primary)}.agent-widget-chip-on{background:var(--brand-pastel);border-color:var(--brand-deep);color:var(--brand-deep)}.agent-widget-freeform{align-items:center}.agent-widget-freeform input{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);flex:1;min-width:160px;padding:6px 10px;font-size:13px}.agent-widget-picker{flex-direction:column;align-items:stretch}.agent-widget-picker input{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);margin-bottom:6px;padding:6px 10px;font-size:13px}.agent-widget-picker-list{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;gap:2px;max-height:200px;display:flex;overflow-y:auto}.agent-widget-picker-item{text-align:left;font-size:12px;font-family:var(--font-mono,monospace);color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:6px 10px}.agent-widget-picker-item:hover{background:var(--bg-subtle)}.agent-widget-picker-empty{text-align:center;color:var(--text-tertiary);padding:8px;font-size:12px}.agent-widget-error{color:var(--danger);font-size:12px}.agent-chat-postcheck ul{margin:4px 0 0 16px;padding:0}.agent-chat-thinking{color:var(--text-secondary);background:var(--bg-subtle);align-self:flex-start}.agent-chat-input{border-top:1px solid var(--border-subtle);background:var(--bg-subtle);gap:8px;padding:10px;display:flex}.agent-chat-input textarea{resize:vertical;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);flex:1;padding:8px 10px;font-family:inherit;font-size:13px}.agent-chat-input textarea:focus{outline:2px solid var(--brand-deep);outline-offset:0;border-color:var(--brand-deep)}.folder-agent{border:1px solid var(--border-subtle,var(--border));border-radius:var(--radius-lg);background:var(--bg-surface);flex-direction:column;max-height:640px;margin-top:24px;display:flex}.folder-agent-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;padding:12px 16px;display:flex}.folder-agent-title{font-size:14px;font-weight:600}.folder-agent-subtitle{color:var(--text-secondary,var(--text-tertiary));font-size:12px}.folder-agent-messages{flex-direction:column;flex:1;gap:10px;min-height:200px;padding:12px 16px;display:flex;overflow-y:auto}.folder-agent-empty{color:var(--text-tertiary);text-wrap:pretty;padding:12px 0;font-size:13px}.folder-agent-message{font-size:14px;line-height:1.5}.folder-agent-user{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md);white-space:pre-wrap;align-self:flex-end;max-width:80%;padding:8px 12px}.folder-agent-assistant{white-space:pre-wrap;align-self:flex-start;max-width:90%}.folder-agent-question{background:var(--bg-surface);border:1px solid var(--border);border-left:4px solid var(--brand-deep);border-radius:var(--radius-md);align-self:flex-start;max-width:90%;padding:12px 14px 14px;box-shadow:0 1px 2px oklch(20% .02 150/.04)}.folder-agent-question:before{content:"Question for you";letter-spacing:.08em;text-transform:uppercase;color:var(--brand-deep);background:var(--brand-pastel);border-radius:999px;margin-bottom:8px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.folder-agent-question-text{color:var(--text-primary);margin-bottom:10px;font-size:15px;font-weight:600;line-height:1.4}.folder-agent-chart-message{align-self:stretch}.folder-agent-chart{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);padding:10px 12px}.folder-agent-chart-title{margin-bottom:6px;font-size:13px;font-weight:600}.folder-agent-chart-body{height:240px;position:relative;overflow:hidden}.folder-agent-thinking{background:var(--bg-subtle);border:1px dashed var(--border);border-radius:var(--radius-md);align-self:flex-start;max-width:100%;padding:6px 10px;font-size:12.5px}.folder-agent-thinking>summary{cursor:pointer;color:var(--text-secondary,var(--text-tertiary));list-style:none}.folder-agent-thinking-body{flex-direction:column;gap:10px;padding-top:8px;display:flex}.folder-agent-step{border-left:2px solid var(--border);flex-direction:column;gap:4px;padding-left:10px;display:flex}.folder-agent-step-thinking{color:var(--text-primary);white-space:pre-wrap}.folder-agent-step-tool code{font-size:11.5px;font-family:var(--font-mono,monospace);color:var(--brand-deep)}.folder-agent-step-args,.folder-agent-step-result{background:var(--bg-app,var(--bg-surface));border:1px solid var(--border);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;max-height:180px;margin:0;padding:6px 8px;font-size:11.5px;overflow:auto}.folder-agent-pending{color:var(--text-tertiary);align-self:flex-start;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.folder-agent-input{border-top:1px solid var(--border);gap:8px;padding:12px 16px;display:flex}.folder-agent-input textarea{border:1px solid var(--border-strong,var(--border));border-radius:var(--radius-md);background:var(--bg-surface);resize:vertical;flex:1;padding:8px 10px;font-family:inherit;font-size:13px}.folder-agent-input textarea:focus{outline:2px solid var(--brand-deep);outline-offset:0;border-color:var(--brand-deep)}.agent-chat-assistant>:first-child,.folder-agent-assistant>:first-child{margin-top:0}.agent-chat-assistant>:last-child,.folder-agent-assistant>:last-child{margin-bottom:0}.agent-chat-assistant p,.folder-agent-assistant p{margin:0 0 8px;line-height:1.5}.agent-chat-assistant ul,.agent-chat-assistant ol,.folder-agent-assistant ul,.folder-agent-assistant ol{margin:0 0 8px;padding-left:20px}.agent-chat-assistant li,.folder-agent-assistant li{margin:2px 0}.agent-chat-assistant code,.folder-agent-assistant code{font-family:var(--font-mono,ui-monospace, monospace);background:var(--bg-subtle);border:1px solid var(--border);border-radius:3px;padding:1px 5px;font-size:.92em}.agent-chat-assistant pre,.folder-agent-assistant pre{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md);margin:0 0 8px;padding:8px 10px;font-size:12px;overflow-x:auto}.agent-chat-assistant pre code,.folder-agent-assistant pre code{background:0 0;border:0;padding:0}.agent-chat-assistant table,.folder-agent-assistant table{border-collapse:collapse;margin:0 0 8px;font-size:13px}.agent-chat-assistant th,.agent-chat-assistant td,.folder-agent-assistant th,.folder-agent-assistant td{border:1px solid var(--border);text-align:left;padding:4px 8px}.agent-chat-assistant th,.folder-agent-assistant th{background:var(--bg-subtle);font-weight:600}.agent-chat-assistant blockquote,.folder-agent-assistant blockquote{border-left:3px solid var(--border);color:var(--text-secondary,var(--text-tertiary));margin:0 0 8px;padding:4px 12px}.agent-chat-assistant a,.folder-agent-assistant a{color:var(--brand-deep);text-decoration:underline}
