@import"https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500&display=swap";:root{--bg: #ffffff;--bg-soft: #fafaf9;--bg-muted: #f5f5f4;--bg-sunken: #f0f0ef;--line: #e7e5e4;--line-soft: #efedeb;--ink: #0c0a09;--ink-2: #292524;--ink-3: #57534e;--ink-4: #a8a29e;--ink-5: #d6d3d1;--primary: #0c0a09;--primary-hover: #292524;--primary-ink: #ffffff;--success: oklch(58% .1 150);--success-soft: oklch(96% .02 150);--warn: oklch(70% .1 75);--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-xs: 0 1px 2px rgba(12, 10, 9, .04);--shadow-sm: 0 1px 3px rgba(12, 10, 9, .06), 0 1px 2px rgba(12, 10, 9, .04);--shadow-md: 0 4px 12px rgba(12, 10, 9, .06), 0 2px 4px rgba(12, 10, 9, .04);--shadow-lg: 0 12px 32px rgba(12, 10, 9, .08), 0 4px 8px rgba(12, 10, 9, .04);--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}button{font-family:inherit;cursor:pointer;border:0;background:transparent}input,textarea{font-family:inherit;color:inherit}::selection{background:var(--ink);color:var(--bg)}.scrollarea::-webkit-scrollbar{width:10px;height:10px}.scrollarea::-webkit-scrollbar-track{background:transparent}.scrollarea::-webkit-scrollbar-thumb{background:var(--ink-5);border-radius:10px;border:2px solid var(--bg)}.scrollarea::-webkit-scrollbar-thumb:hover{background:var(--ink-4)}.sql-block{margin:0;padding:16px 104px 16px 18px;background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius);font-family:var(--font-mono);font-size:12.5px;line-height:1.7;color:var(--ink-2);max-height:420px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;-moz-tab-size:2;tab-size:2}.sql-shell{position:relative}.sql-block .sql-k{color:var(--ink);font-weight:600}.sql-block .sql-s{color:var(--ink-3);font-style:italic}.sql-block .sql-n{color:var(--ink-2)}.sql-block .sql-c{color:var(--ink-4);font-style:italic}.dt-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow:auto;max-height:320px;background:var(--bg)}.dt{width:100%;border-collapse:collapse;font-size:13px}.dt thead{position:sticky;top:0;background:var(--bg-soft);z-index:1}.dt th{text-align:left;font-weight:500;color:var(--ink-3);padding:10px 14px;border-bottom:1px solid var(--line);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.dt td{padding:10px 14px;border-bottom:1px solid var(--line-soft);color:var(--ink-2);font-family:var(--font-mono);font-size:12.5px;white-space:nowrap}.dt tr:last-child td{border-bottom:0}.dt tr:hover td{background:var(--bg-soft)}.dt-more{padding:8px 14px;font-size:12px;color:var(--ink-3);border-top:1px solid var(--line);background:var(--bg-soft);text-align:center}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink-2);transition:all .15s;white-space:nowrap}.btn:hover{background:var(--bg-muted);color:var(--ink);border-color:var(--ink-5)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{background:var(--bg);color:var(--ink-2);border-color:var(--line)}.btn-primary{background:var(--primary);color:var(--primary-ink);border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-icon{padding:8px;width:32px;height:32px;justify-content:center}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:var(--bg-muted);border-color:transparent}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:500;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--ink-3)}.sync-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:74px;height:28px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--ink-3);font-size:11.5px;font-weight:500;overflow:hidden;white-space:nowrap;flex-shrink:0;transition:background .15s,border-color .15s,color .15s}.sync-btn:before{content:"";position:absolute;left:0;right:auto;bottom:0;width:var(--sync-progress, 0%);height:2px;background:var(--success);transition:width .2s ease}.sync-btn>svg,.sync-btn>span{position:relative;z-index:1}.sync-btn:hover:not(:disabled){background:var(--bg-muted);border-color:var(--ink-5);color:var(--ink)}.sync-btn:disabled{cursor:default}.sync-btn.running svg{animation:syncSpin 1s linear infinite}.sync-btn.done{color:var(--ink-2)}.sync-btn.failed{color:#90302e;border-color:#f4b0aa}.sync-btn.failed:before{background:#d6857f}@keyframes syncSpin{to{transform:rotate(360deg)}}.sync-wrap{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.sync-wrap:after{content:"";position:absolute;top:100%;right:0;width:260px;height:8px}.sync-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:20;width:min(260px,calc(100vw - 24px));padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);box-shadow:var(--shadow-sm);color:var(--ink-3);font-size:11.5px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease}.sync-wrap:hover .sync-panel,.sync-wrap:focus-within .sync-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.sync-panel.running{border-color:#b4d4ba}.sync-panel.failed{border-color:#f4b0aa;background:#fff6f5;background:oklch(98% .015 25)}.sync-panel-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--font-mono);text-transform:uppercase}.sync-panel-top strong{color:var(--ink);font-weight:600}.sync-panel-msg{margin-top:4px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sync-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:7px}.sync-panel-grid span{display:flex;flex-direction:column;gap:1px;min-width:0;padding:4px 5px;border-radius:6px;background:var(--bg-soft);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis}.sync-panel-grid b{color:var(--ink-4);font-family:var(--font-sans);font-size:9.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.result-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--line-soft)}.result-toolbar .btn{padding:6px 10px;font-size:12px;color:var(--ink-3)}.exchange-actions{display:flex;align-items:center;gap:8px;margin-top:12px}.bug-report-action{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink-3);font-size:12px;font-weight:500;transition:background .15s,border-color .15s,color .15s}.bug-report-action:hover{background:#fff7f1;background:oklch(98% .015 55);border-color:#efbf9f;color:var(--ink)}.bug-report-action:disabled{cursor:default;opacity:.7}.disclosure{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.disclosure-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-size:12.5px;font-weight:500;color:var(--ink-3);background:var(--bg-soft);cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;border:0;text-align:left}.disclosure-head:hover{background:var(--bg-muted);color:var(--ink-2)}.disclosure-head svg{transition:transform .15s}.disclosure-head svg.rot{transform:rotate(-90deg)}.disclosure-body{border-top:1px solid var(--line)}.chart-tabs{display:inline-flex;background:var(--bg-muted);border-radius:8px;padding:3px;gap:2px}.chart-tabs button{padding:5px 10px;font-size:12px;border-radius:6px;color:var(--ink-3);display:inline-flex;align-items:center;gap:5px}.chart-tabs button.active{background:var(--bg);color:var(--ink);box-shadow:var(--shadow-xs)}.chart-tabs button:hover:not(.active){color:var(--ink-2)}.kpi{display:flex;flex-direction:column;gap:4px}.kpi-label{font-size:11.5px;font-weight:500;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.kpi-value{font-size:32px;font-weight:600;color:var(--ink);font-feature-settings:"tnum";letter-spacing:-.01em}.kpi-delta{font-size:12px;color:var(--ink-3);display:inline-flex;align-items:center;gap:4px}.suggest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.suggest-card{min-width:0;text-align:left;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:6px}.suggest-card:hover{border-color:var(--ink-4);background:var(--bg-soft)}.suggest-card:disabled{cursor:not-allowed;opacity:.55}.suggest-card:disabled:hover{border-color:var(--line);background:var(--bg)}.suggest-card .sc-label{font-size:11px;font-weight:500;color:var(--ink-4);text-transform:uppercase;letter-spacing:.05em}.suggest-card .sc-text{font-size:13.5px;color:var(--ink-2);line-height:1.45}@media(max-width:980px){.suggest-grid{grid-template-columns:1fr}}.composer{position:relative;display:flex;align-items:flex-end;gap:8px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);padding:10px 12px;transition:border-color .15s,box-shadow .15s}.composer:focus-within{border-color:var(--ink-3);box-shadow:0 0 0 4px #0c0a090a}.composer textarea{flex:1;border:0;outline:0;resize:none;background:transparent;font-size:14.5px;line-height:1.5;padding:6px 4px;max-height:160px;min-height:24px;font-family:var(--font-sans)}.composer textarea::placeholder{color:var(--ink-4)}.composer textarea:disabled{cursor:not-allowed;color:var(--ink-4)}.composer-send{width:32px;height:32px;border-radius:8px;background:var(--primary);color:var(--primary-ink);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,transform .1s}.composer-send:disabled{background:var(--ink-5);cursor:not-allowed}.composer-send:hover:not(:disabled){background:var(--primary-hover)}.composer-send:active:not(:disabled){transform:scale(.95)}.composer-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.composer-actions .btn-ghost{padding:6px;width:30px;height:30px;color:var(--ink-3)}.composer-actions .btn-ghost:hover{color:var(--ink)}.avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.02em}.avatar-ai{background:var(--ink);color:var(--bg)}.avatar-user{background:var(--bg-muted);color:var(--ink-2);border:1px solid var(--line)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeInUp .4s ease-out both}.v1-app{display:grid;grid-template-columns:280px 1fr;height:100vh;background:var(--bg-soft);color:var(--ink);overflow:hidden}.v1-app.collapsed{grid-template-columns:56px 1fr}.v1-app.right-panel-open{grid-template-columns:280px minmax(0,1fr) 360px}.v1-app.collapsed.right-panel-open{grid-template-columns:56px minmax(0,1fr) 360px}.v1-app.database-open{grid-template-columns:280px minmax(0,1fr) minmax(420px,34vw)}.v1-app.collapsed.database-open{grid-template-columns:56px minmax(0,1fr) minmax(420px,34vw)}.v1-side{background:var(--bg-soft);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;overflow:hidden}.v1-side-head{display:flex;align-items:center;justify-content:space-between;padding:16px 14px 12px}.v1-brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:14px;letter-spacing:-.01em}.v1-brand-mark{width:26px;height:26px;background:var(--ink);color:var(--bg);border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.v1-new{margin:0 12px 12px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg);display:flex;align-items:center;gap:9px;font-size:13px;font-weight:500;color:var(--ink-2);transition:all .15s}.v1-new:hover{border-color:var(--ink-4);background:var(--bg-soft);color:var(--ink)}.v1-search{margin:0 12px 12px;display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--bg-muted);border-radius:8px;color:var(--ink-3)}.v1-search input{flex:1;border:0;outline:0;background:transparent;font-size:13px;padding:0}.v1-search input::placeholder{color:var(--ink-4)}.v1-clear-history{margin:0 12px 10px;padding:7px 10px;border-radius:8px;color:var(--ink-3);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;transition:background .15s,color .15s}.v1-clear-history:hover:not(:disabled){background:var(--bg-muted);color:#90302e}.v1-clear-history:disabled{opacity:.45;cursor:not-allowed}.v1-history{flex:1;overflow-y:auto;padding:0 8px;min-height:0}.v1-hgroup{margin-bottom:14px}.v1-hgroup-label{font-size:11px;font-weight:500;color:var(--ink-4);text-transform:uppercase;letter-spacing:.06em;padding:6px 8px}.v1-hitem-row{width:100%;border-radius:7px;display:flex;align-items:center;transition:background .1s;background:transparent;border:1px solid transparent}.v1-hitem-row:hover{background:var(--bg-muted)}.v1-hitem-row.active{background:var(--bg);border-color:var(--line)}.v1-hitem{flex:1;min-width:0;text-align:left;padding:8px 10px;font-size:13px;color:var(--ink-2);display:flex;align-items:center;gap:8px;background:transparent}.v1-hitem-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1-hitem-delete{width:28px;height:28px;margin-right:3px;border-radius:6px;color:var(--ink-4);display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s,background .12s,color .12s}.v1-hitem-row:hover .v1-hitem-delete,.v1-hitem-row.active .v1-hitem-delete{opacity:1}.v1-hitem-delete:hover{background:#ffecea;background:oklch(96% .03 25);color:#90302e}.v1-side-foot{display:flex;align-items:center;gap:10px;padding:12px 10px;border-top:1px solid var(--line);background:var(--bg-soft)}.v1-foot-info{flex:1;min-width:0}.v1-foot-name{font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1-foot-meta{display:flex;align-items:center;gap:5px;min-width:0;margin-top:2px;font-size:11.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1-foot-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis}.v1-foot-dot{width:5px;height:5px;flex:0 0 auto;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px #4b8b5a24}.v1-main{display:grid;grid-template-rows:auto 1fr auto;background:var(--bg);min-height:0;min-width:0;overflow:hidden}.v1-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;min-height:58px;padding:10px 20px;border-bottom:1px solid var(--line);background:var(--bg)}.v1-topbar-title{flex:1;min-width:0;font-size:14px;font-weight:500;color:var(--ink);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1-topbar-actions{position:relative;display:flex;align-items:center;gap:6px;flex:0 1 auto;min-width:0;justify-content:flex-end}.v1-topbar-actions>.chip{min-width:0;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1-app.right-panel-open .v1-topbar-actions>.chip{display:none}.topbar-btn.active{background:var(--bg-muted);color:var(--ink)}.v1-db-dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px #4b8b5a26;display:inline-block}.debug-panel{position:relative;z-index:2;background:var(--bg);border-left:1px solid var(--line);display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.debug-head{min-height:58px;padding:10px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.debug-title{font-size:13px;font-weight:600;color:var(--ink)}.debug-subtitle{max-width:220px;margin-top:2px;font-size:11.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.debug-close{padding:6px 8px;font-size:12px}.debug-actions{padding:10px 14px;border-bottom:1px solid var(--line-soft)}.debug-body{flex:1;min-height:0;overflow:auto;padding:12px}.debug-section{padding:12px 0;border-bottom:1px solid var(--line-soft)}.debug-section:first-child{padding-top:0}.debug-section-title{margin-bottom:10px;font-size:11px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.debug-kv{display:grid;grid-template-columns:88px minmax(0,1fr);gap:7px 10px;align-items:start;font-size:12px}.debug-kv span{color:var(--ink-4)}.debug-kv b{min-width:0;color:var(--ink-2);font-weight:500;overflow-wrap:anywhere}.debug-code,.debug-json{margin:10px 0 0;max-height:180px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-sunken);color:var(--ink-2);font-family:var(--font-mono);font-size:11.5px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.ai-trace-list{display:grid;gap:8px;margin-top:12px}.semantic-plan-card{display:grid;gap:8px;margin-top:12px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.ai-trace-item{display:grid;gap:7px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.ai-trace-head,.ai-trace-meta{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap}.ai-trace-head b{min-width:0;color:var(--ink);font-size:12.5px;overflow:hidden;text-overflow:ellipsis}.ai-trace-status{border:1px solid var(--line);border-radius:999px;padding:2px 7px;background:var(--bg);color:var(--ink-3);font-size:10.5px;font-family:var(--font-mono)}.ai-trace-status.success{border-color:#99cda3;color:#0b5d2a}.ai-trace-status.error,.ai-trace-status.fallback{border-color:#f4b0aa;color:#90302e}.ai-trace-meta{color:var(--ink-4);font-size:10.5px;font-family:var(--font-mono)}.ai-trace-item p{margin:0;color:var(--ink-3);font-size:11.5px;line-height:1.45;overflow-wrap:anywhere}.ai-trace-item p span{margin-right:6px;color:var(--ink-4);font-family:var(--font-mono)}.ai-trace-summary{max-height:110px;margin:0;overflow:auto;border:1px solid var(--line-soft);border-radius:7px;background:var(--bg);color:var(--ink-3);padding:8px;font-family:var(--font-mono);font-size:10.5px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.ai-trace-flags{display:flex;flex-wrap:wrap;gap:5px}.ai-trace-flags span{border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--ink-3);padding:2px 7px;font-size:10.5px}.ai-trace-error{color:#90302e!important}.debug-empty{padding:18px 4px;color:var(--ink-3);font-size:13px}.database-panel{position:relative;z-index:2;background:var(--bg);border-left:1px solid var(--line);display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.database-head{min-height:58px;padding:10px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.database-title{font-size:13px;font-weight:600;color:var(--ink)}.database-subtitle{margin-top:2px;font-size:11.5px;color:var(--ink-3)}.database-actions{padding:10px 14px;border-bottom:1px solid var(--line-soft)}.database-body{flex:1;min-height:0;overflow:auto;padding:12px}.database-error{margin-bottom:10px;padding:9px 10px;border:1px solid oklch(82% .08 25);border-radius:8px;background:#fff6f5;background:oklch(98% .015 25);color:#90302e;font-size:12px}.database-section{padding:12px 0;border-bottom:1px solid var(--line-soft)}.database-section:first-child{padding-top:0}.database-section-title{margin-bottom:10px;font-size:11px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;overflow-wrap:anywhere}.database-table-list{display:flex;flex-direction:column;gap:6px}.database-table-item{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);text-align:left;cursor:pointer}.database-table-item:hover{background:var(--bg-soft)}.database-table-item.active{border-color:var(--ink);background:var(--bg-muted)}.database-table-item b,.database-table-item span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.database-table-item b{font-size:12.5px;font-weight:600}.database-table-item span{margin-top:3px;color:var(--ink-3);font-size:11.5px}.database-columns{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.database-columns span{max-width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft);color:var(--ink-2)}.database-columns b,.database-columns small{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.database-columns b{font-size:11.5px;font-weight:600}.database-columns small{margin-top:2px;color:var(--ink-4);font-size:10.5px}.database-sample-head{margin-bottom:8px;color:var(--ink-3);font-size:12px}.database-sample{max-height:340px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.database-sample table{width:max-content;min-width:100%;border-collapse:collapse;font-size:11.5px}.database-sample th,.database-sample td{max-width:220px;padding:8px 10px;border-bottom:1px solid var(--line-soft);border-right:1px solid var(--line-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.database-sample th{position:sticky;top:0;z-index:1;background:var(--bg-soft);color:var(--ink-2);font-weight:600;text-align:left}.database-sample td{color:var(--ink-3);font-family:var(--font-mono)}.topbar-btn{height:32px;padding:0 9px;font-size:12px}.danger-icon{color:var(--ink-3)}.danger-icon:hover:not(:disabled){background:#ffecea;background:oklch(96% .03 25);color:#90302e}.danger-icon:disabled{opacity:.35;cursor:not-allowed}.topbar-error{max-width:220px;padding:6px 9px;border:1px solid oklch(82% .08 25);border-radius:8px;background:#fff6f5;background:oklch(98% .015 25);color:#90302e;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1-scroll{overflow-y:auto;min-height:0;min-width:0}.v1-thread{width:100%;max-width:820px;min-width:0;margin:0 auto;padding:32px 28px 24px;box-sizing:border-box}.v1-empty{text-align:left;padding:60px 0 20px}.v1-empty-mark{width:48px;height:48px;border-radius:12px;background:var(--ink);color:var(--bg);display:flex;align-items:center;justify-content:center;margin-bottom:22px}.v1-empty-title{font-size:30px;font-weight:600;margin:0 0 8px;letter-spacing:-.02em;color:var(--ink)}.v1-empty-sub{font-size:15px;color:var(--ink-3);margin:0 0 28px;max-width:540px;line-height:1.5}.v1-exchange{margin-bottom:36px}.v1-msg{display:flex;gap:14px;margin-bottom:28px}.v1-msg-body{flex:1;min-width:0}.v1-msg-role{font-size:12px;font-weight:600;color:var(--ink-3);margin-bottom:6px;display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.05em}.v1-meta{font-size:11px;font-weight:400;color:var(--ink-4);text-transform:none;letter-spacing:0;display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono)}.v1-user-text{font-size:16px;font-weight:500;color:var(--ink);line-height:1.5;letter-spacing:-.005em;word-break:break-word}.v1-summary{font-size:14.5px;color:var(--ink-2);line-height:1.65;margin-bottom:18px;white-space:pre-line}.v1-summary strong{color:var(--ink);font-weight:600}.v1-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;padding:18px 20px;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius)}.v1-kpi-cell+.v1-kpi-cell{border-left:1px solid var(--line);padding-left:18px}.v1-chart{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);margin-bottom:14px;overflow:hidden}.v1-chart-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg-soft)}.v1-chart-body{padding:18px}.v1-pie-wrap{display:flex;gap:36px;align-items:center;justify-content:center;flex-wrap:wrap}.v1-pie-legend{display:flex;flex-direction:column;gap:14px;min-width:220px}.v1-pie-row{display:grid;grid-template-columns:12px 1fr auto auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line-soft);font-size:13px}.v1-pie-row:last-child{border-bottom:0}.v1-pie-dot{width:12px;height:12px;border-radius:3px}.v1-pie-label{font-weight:500;color:var(--ink)}.v1-pie-val{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-2)}.v1-pie-pct{font-family:var(--font-mono);font-size:12px;color:var(--ink-3);background:var(--bg-muted);padding:2px 7px;border-radius:4px;min-width:50px;text-align:right}.v1-copy{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:6px;background:var(--bg);border:1px solid var(--line);font-size:11.5px;color:var(--ink-3);font-weight:500;font-family:var(--font-sans)}.v1-copy:hover{background:var(--bg-muted);color:var(--ink)}.v1-thinking{display:flex;gap:14px;margin-bottom:28px}.v1-thinking-body{flex:1;padding-top:4px}.v1-thinking-line{font-size:14px;color:var(--ink-2);display:flex;align-items:center;gap:10px;margin-bottom:12px;font-weight:500}.v1-thinking-steps{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-3)}.v1-step{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12.5px}.v1-step.done{color:var(--success)}.v1-step.active{color:var(--ink-2)}.v1-step-spin{width:11px;height:11px;border:1.5px solid var(--ink-5);border-top-color:var(--ink-2);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.thinking-dots{display:inline-flex;gap:4px;align-items:center}.thinking-dots span{width:6px;height:6px;border-radius:50%;background:var(--ink-3);animation:tdb 1.2s ease-in-out infinite}.thinking-dots span:nth-child(2){animation-delay:.15s}.thinking-dots span:nth-child(3){animation-delay:.3s}@keyframes tdb{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.v1-bottom{border-top:1px solid var(--line);background:var(--bg);padding:14px 24px 18px}.v1-composer-wrap{max-width:820px;margin:0 auto}.v1-composer-hints{display:flex;align-items:center;gap:14px;padding:8px 4px 0;font-size:11.5px;color:var(--ink-4);font-family:var(--font-mono)}.v1-db-pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);color:var(--ink-3)}.v1-error{background:#ffecea;background:oklch(96% .03 25);border:1px solid oklch(82% .08 25);color:#90302e;padding:10px 14px;border-radius:var(--radius);font-size:13px}.v1-notice{background:var(--bg-soft);border:1px solid var(--line);color:var(--ink-2);padding:10px 14px;border-radius:var(--radius);font-size:13.5px}.clarify-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.clarify-option{max-width:100%;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink-2);font-size:12.5px;font-weight:500;line-height:1.35;text-align:left;transition:background .15s,border-color .15s,color .15s}.clarify-option:hover{background:var(--bg-muted);border-color:var(--ink-5);color:var(--ink)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg-soft)}.auth-card{width:min(420px,100%);padding:26px;border:1px solid var(--line);border-radius:14px;background:var(--bg);box-shadow:var(--shadow-sm)}.auth-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--ink);color:var(--bg);font-size:12px;font-weight:700;margin-bottom:14px}.auth-card h1{margin:0 0 8px;font-size:22px;letter-spacing:0}.auth-card p{margin:0 0 18px;color:var(--ink-3);font-size:13.5px;line-height:1.55}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:16px;border-radius:9px;background:var(--bg-muted)}.auth-tabs button{height:34px;border-radius:7px;color:var(--ink-3);font-size:13px;font-weight:600}.auth-tabs button.active{background:var(--bg);color:var(--ink);box-shadow:var(--shadow-xs)}.auth-field{display:grid;gap:6px;margin-bottom:12px;color:var(--ink-3);font-size:12px;font-weight:600}.auth-field input{height:38px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:0 11px;outline:none;font-size:14px}.auth-field input:focus{border-color:var(--ink-4);box-shadow:0 0 0 3px #0c0a090f}.auth-error{margin:4px 0 12px;padding:9px 11px;border:1px solid oklch(82% .08 25);border-radius:8px;background:#fff6f5;background:oklch(98% .015 25);color:#90302e;font-size:12.5px}.auth-submit{width:100%;justify-content:center;margin-top:4px}.pending-card{text-align:left}.user-chip{max-width:260px;overflow:hidden;text-overflow:ellipsis}.admin-panel{background:var(--bg);border-left:1px solid var(--line);display:flex;flex-direction:column;min-width:0;min-height:0}.admin-body{flex:1;min-height:0;overflow:auto;padding:12px}.admin-error{max-width:none;margin-bottom:10px}.admin-users{display:grid;gap:10px}.admin-user-row{display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.admin-user-main{min-width:0;display:grid;gap:4px}.admin-user-main b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:13px}.admin-user-main span{color:var(--ink-3);font-size:11.5px}.admin-user-row select{height:32px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink-2);padding:0 8px;font-size:12.5px}.admin-page{min-height:100vh;background:var(--bg-soft);color:var(--ink)}.admin-page-topbar{min-height:68px;padding:16px 28px;border-bottom:1px solid var(--line);background:var(--bg);display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-page-topbar h1{margin:0;font-size:18px;letter-spacing:0}.admin-page-topbar p{margin:3px 0 0;color:var(--ink-3);font-size:12.5px}.admin-page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.admin-page-content{width:min(1080px,calc(100% - 32px));margin:24px auto;display:grid;gap:16px}.admin-cost-grid{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:16px;align-items:stretch}.admin-card{border:1px solid var(--line);border-radius:10px;background:var(--bg);box-shadow:var(--shadow-xs);padding:16px}.admin-card h2{margin:0;font-size:15px;letter-spacing:0}.admin-card p{margin:5px 0 0;color:var(--ink-3);font-size:12.5px;line-height:1.5}.admin-card-head,.admin-settings-card{display:flex;align-items:center;justify-content:space-between;gap:14px}.admin-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-sql-card{display:grid;gap:14px}.admin-sql-form{display:grid}.admin-sql-form textarea{width:100%;min-height:160px;resize:vertical;border:1px solid var(--line);border-radius:8px;background:var(--bg-sunken);color:var(--ink);padding:12px;outline:none;font-family:var(--font-mono);font-size:12.5px;line-height:1.55}.admin-sql-form textarea:focus{border-color:var(--ink-4);box-shadow:0 0 0 3px var(--bg-soft)}.admin-sql-form textarea:disabled{color:var(--ink-4);cursor:wait}.admin-sql-result{display:grid;gap:10px;min-width:0}.admin-sql-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:var(--ink-4);font-family:var(--font-mono);font-size:11px}.admin-sql-executed{max-height:130px;margin:0;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft);color:var(--ink-2);padding:10px;overflow:auto;font-family:var(--font-mono);font-size:11.5px;line-height:1.5;white-space:pre-wrap}.admin-cost-total,.admin-cost-leaderboard{display:grid;gap:14px}.admin-cost-metric{display:grid;gap:3px;align-content:end}.admin-cost-metric strong{font-family:var(--font-mono);font-size:clamp(24px,4vw,38px);line-height:1;letter-spacing:0;color:var(--ink)}.admin-cost-metric span{color:var(--ink-3);font-size:12.5px}.admin-cost-users{display:grid;gap:8px}.admin-cost-user{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.admin-cost-rank{width:28px;height:28px;border-radius:999px;background:var(--bg);border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-3);font-family:var(--font-mono);font-size:12px}.admin-cost-user div{min-width:0;display:grid;gap:2px}.admin-cost-user b,.admin-cost-user span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-cost-user b{color:var(--ink);font-size:13px}.admin-cost-user span{color:var(--ink-3);font-size:11.5px}.admin-cost-user strong{font-family:var(--font-mono);font-size:13px;color:var(--ink)}.admin-ai-monitor,.admin-plan-monitor{display:grid;gap:14px}.admin-plan-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.admin-plan-metrics span{min-width:0;display:grid;gap:2px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.admin-plan-metrics b{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--ink);font-family:var(--font-mono);font-size:13px;white-space:nowrap}.admin-plan-metrics small{color:var(--ink-3);font-size:11px}.admin-plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-plan-resolver{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.admin-plan-head{display:flex;justify-content:space-between;gap:10px;min-width:0}.admin-plan-head div{display:grid;gap:2px;min-width:0}.admin-plan-head b,.admin-plan-head span,.admin-plan-head small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-plan-head b{color:var(--ink);font-size:13px}.admin-plan-head span,.admin-plan-head small{color:var(--ink-3);font-family:var(--font-mono);font-size:11px}.admin-plan-resolver p{margin:0;color:var(--ink-3);font-size:12px;line-height:1.45}.admin-plan-examples{display:grid;gap:5px}.admin-plan-examples span{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--ink-3);font-size:11.5px;white-space:nowrap}.admin-plan-examples.muted span{color:var(--ink-4)}.admin-ai-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:14px;align-items:start}.admin-ai-title{margin-bottom:8px;color:var(--ink-3);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.admin-ai-agents,.admin-ai-summary{min-width:0}.admin-ai-api-cost{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.admin-ai-api-cost p{margin:-3px 0 0;color:var(--ink-3);font-size:12px;line-height:1.45}.admin-ai-api-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.admin-ai-api-metrics span{min-width:0;display:grid;gap:2px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.admin-ai-api-metrics b{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--ink);font-family:var(--font-mono);font-size:13px;white-space:nowrap}.admin-ai-api-metrics small{color:var(--ink-3);font-size:11px}.admin-ai-source-list{display:grid;gap:7px}.admin-ai-source-row{display:grid;grid-template-columns:minmax(90px,1fr) repeat(3,auto);gap:9px;align-items:center;font-size:11.5px}.admin-ai-source-row b{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--ink);white-space:nowrap}.admin-ai-source-row span{color:var(--ink-3);font-family:var(--font-mono);white-space:nowrap}.admin-ai-agent{display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.admin-ai-agent+.admin-ai-agent{margin-top:8px}.admin-ai-agent div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.admin-ai-agent b,.admin-ai-agent span,.admin-ai-agent small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-ai-agent b{color:var(--ink);font-size:13px}.admin-ai-agent span,.admin-ai-agent small{color:var(--ink-3);font-size:11.5px}.admin-ai-agent-meta{display:flex;flex-wrap:wrap;gap:5px}.admin-ai-agent-meta span{width:auto;max-width:100%;border:1px solid var(--line);border-radius:999px;background:var(--bg);padding:2px 7px;color:var(--ink-3);font-family:var(--font-mono);font-size:10.5px}.admin-ai-summary-table{display:grid;gap:7px}.admin-ai-summary-row{display:grid;grid-template-columns:minmax(120px,1fr) repeat(4,auto);gap:9px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);font-size:11.5px}.admin-ai-summary-row b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:12px}.admin-ai-summary-row span{color:var(--ink-3);font-family:var(--font-mono);white-space:nowrap}.admin-ai-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.admin-ai-search input{min-width:0;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);padding:0 11px;font:inherit;font-size:13px;outline:none}.admin-ai-search input:focus{border-color:var(--ink-4);box-shadow:0 0 0 3px var(--bg-sunken)}.admin-ai-calls{max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:8px}.admin-ai-calls table{width:max-content;min-width:100%;border-collapse:collapse;font-size:11.5px}.admin-ai-calls th,.admin-ai-calls td{max-width:260px;padding:8px 10px;border-bottom:1px solid var(--line-soft);border-right:1px solid var(--line-soft);text-align:left;vertical-align:top}.admin-ai-calls th{position:sticky;top:0;z-index:1;background:var(--bg-soft);color:var(--ink-2);font-weight:600}.admin-ai-calls td{color:var(--ink-3);font-family:var(--font-mono)}.admin-ai-call-summary{max-width:360px;max-height:72px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink-3)}.admin-page-error{margin:14px 0 0}.admin-page-users{margin-top:14px}.admin-page-user-row{grid-template-columns:minmax(0,1fr) 132px 76px;background:var(--bg)}.admin-history-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;margin-top:14px}.admin-history-search input{min-width:0;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);padding:0 11px;font:inherit;font-size:13px;outline:none}.admin-history-search input:focus{border-color:var(--ink-4);box-shadow:0 0 0 3px var(--bg-sunken)}.admin-history-layout{display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:14px;margin-top:14px;align-items:start}.admin-history-users{display:grid;gap:7px}.admin-history-user{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);padding:10px;text-align:left;display:grid;gap:3px;cursor:pointer}.admin-history-user:hover{background:var(--bg-soft)}.admin-history-user.active{border-color:var(--ink-4);background:var(--bg-sunken)}.admin-history-user b,.admin-history-user span,.admin-history-user small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-history-user b{font-size:13px}.admin-history-user span,.admin-history-user small{color:var(--ink-3);font-size:11.5px}.admin-history-detail{min-width:0}.admin-history-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px}.admin-history-detail-head h3{margin:0;font-size:14px;letter-spacing:0}.admin-history-groups{display:grid;gap:12px;margin-top:12px}.admin-history-group{border:1px solid var(--line);border-radius:9px;background:var(--bg-soft);overflow:hidden}.admin-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-bottom:1px solid var(--line);background:var(--bg)}.admin-history-head b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.admin-history-head span{flex-shrink:0;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-3);font-family:var(--font-mono);font-size:11.5px}.admin-history-items{display:grid}.admin-history-item{padding:12px;border-bottom:1px solid var(--line-soft)}.admin-history-item:last-child{border-bottom:0}.admin-history-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:6px;color:var(--ink-4);font-size:11px;font-family:var(--font-mono)}.admin-history-question{color:var(--ink);font-size:13.5px;font-weight:500;line-height:1.45}.admin-history-item p{margin:6px 0 0;color:var(--ink-3);font-size:12.5px;line-height:1.5}.admin-bug-card{display:grid;gap:14px}.admin-bug-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.admin-bug-search input{min-width:0;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);padding:0 11px;font:inherit;font-size:13px;outline:none}.admin-bug-search input:focus{border-color:var(--ink-4);box-shadow:0 0 0 3px var(--bg-sunken)}.admin-bug-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:14px;align-items:start}.admin-bug-section{min-width:0}.admin-bug-list{display:grid;gap:9px}.admin-bug-item{display:grid;gap:8px;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.admin-bug-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:var(--ink-4);font-family:var(--font-mono);font-size:11px}.admin-bug-question{min-width:0;color:var(--ink);font-size:13.5px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.admin-bug-summary{margin:0;color:var(--ink-3);font-size:12.5px;line-height:1.45;overflow-wrap:anywhere}.admin-bug-solved{color:var(--success);font-size:11.5px}.admin-bug-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding-top:6px;border-top:1px solid var(--line-soft)}.admin-bug-actions .btn{padding:6px 10px;font-size:12px}.admin-semantic-studio{display:grid;gap:14px}.admin-semantic-search{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-semantic-search input,.admin-semantic-fields input,.admin-semantic-wide textarea{border:1px solid var(--line);border-radius:8px;background:var(--bg-sunken);color:var(--ink);outline:none}.admin-semantic-search input{min-width:min(420px,100%);flex:1;height:38px;padding:0 11px}.admin-semantic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:720px;overflow:auto;padding-right:4px}.admin-semantic-item{border:1px solid var(--line);border-radius:8px;background:var(--bg-soft);padding:12px;display:grid;gap:10px;min-width:0}.admin-semantic-item.disabled{opacity:.62}.admin-semantic-head,.admin-semantic-actions,.admin-semantic-samples{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-semantic-head b{display:block;font-size:13px;overflow-wrap:anywhere}.admin-semantic-head span,.admin-semantic-samples span{display:block;margin-top:3px;color:var(--ink-4);font-size:11.5px}.admin-semantic-toggle{display:inline-flex;align-items:center;gap:6px;color:var(--ink-3);font-size:12px}.admin-semantic-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-semantic-fields label,.admin-semantic-wide{display:grid;gap:5px;color:var(--ink-3);font-size:12px}.admin-semantic-fields input{height:34px;padding:0 9px}.admin-semantic-wide textarea{min-height:54px;padding:8px 9px;resize:vertical;font:inherit}.admin-semantic-samples{border-top:1px solid var(--line);padding-top:8px}.admin-semantic-samples b{color:var(--ink-2);font-size:12px;font-weight:500;overflow-wrap:anywhere}@media(max-width:760px){.admin-cost-grid,.admin-ai-grid,.admin-ai-api-metrics,.admin-plan-metrics,.admin-plan-list,.admin-ai-search,.admin-semantic-list,.admin-semantic-fields,.admin-bug-search,.admin-bug-columns,.admin-settings-grid,.admin-history-search,.admin-history-layout{grid-template-columns:1fr}.admin-ai-summary-row,.admin-ai-source-row{grid-template-columns:1fr 1fr}}.toggle-switch{width:48px;height:28px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--bg-sunken);display:inline-flex;align-items:center;justify-content:flex-start;transition:background .15s,border-color .15s;flex-shrink:0}.toggle-switch span{width:20px;height:20px;border-radius:999px;background:var(--bg);box-shadow:var(--shadow-xs);transition:transform .15s}.toggle-switch.on{background:var(--success-soft);border-color:#92be9a}.toggle-switch.danger.on{background:#ffece9;background:oklch(96% .035 25);border-color:#e6a49e}.toggle-switch.on span{transform:translate(20px)}.toggle-switch:disabled{opacity:.55;cursor:not-allowed}@media(max-width:900px){html,body,#root{min-width:0}.v1-app,.v1-app.collapsed,.v1-app.right-panel-open,.v1-app.collapsed.right-panel-open,.v1-app.database-open,.v1-app.collapsed.database-open{position:relative;display:grid;grid-template-columns:minmax(0,1fr);height:100dvh;min-height:100dvh;overflow:hidden}.v1-side{position:fixed;inset:0 auto 0 0;z-index:30;width:min(86vw,320px);max-width:320px;box-shadow:var(--shadow-lg)}.v1-app.collapsed .v1-side{width:56px;box-shadow:none}.v1-main{height:100dvh}.v1-app.collapsed .v1-main{padding-left:56px}.v1-side-head{min-height:54px;padding:10px 12px}.v1-app.collapsed .v1-side-head{justify-content:center;padding:10px}.v1-new{min-height:40px}.v1-app.collapsed .v1-new{width:36px;height:36px;justify-content:center;margin:0 10px 12px;padding:0}.v1-topbar{min-height:0;align-items:stretch;flex-direction:column;gap:8px;padding:8px 10px}.v1-topbar-title{width:100%;font-size:13.5px}.v1-topbar-actions{width:100%;justify-content:flex-start;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.v1-topbar-actions::-webkit-scrollbar{display:none}.v1-topbar-actions>.chip{flex:0 0 auto;max-width:170px}.v1-topbar-actions>.user-chip{display:none}.topbar-btn{flex:0 0 auto;height:36px;padding:0 10px}.sync-btn{width:auto;min-width:72px;height:36px}.sync-panel{position:fixed;top:96px;right:10px;left:66px;z-index:60;width:auto;max-width:none}.topbar-error{flex:0 0 auto;max-width:190px}.debug-panel,.database-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;width:100%;max-width:none;border-left:0}.debug-head,.database-head{min-height:60px;padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 10px}.debug-subtitle{max-width:calc(100vw - 122px)}.debug-body,.database-body{padding:12px;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}.database-sample{max-height:260px}.v1-scroll{overflow-x:hidden}.v1-thread{max-width:none;padding:20px 14px 14px}.v1-empty{padding:32px 0 12px}.v1-empty-mark{width:42px;height:42px;margin-bottom:16px}.v1-empty-title{font-size:24px;line-height:1.15}.v1-empty-sub{margin-bottom:18px;font-size:13.5px}.suggest-card{padding:12px}.v1-exchange{margin-bottom:30px}.v1-msg{gap:10px;margin-bottom:22px}.avatar{width:24px;height:24px;font-size:10px}.v1-msg-role{flex-wrap:wrap;gap:6px}.v1-meta{width:100%}.v1-user-text{font-size:15px}.v1-summary{margin-bottom:14px;font-size:14px;line-height:1.6}.v1-kpis{grid-template-columns:1fr;gap:8px;padding:0;border:0;background:transparent}.v1-kpi-cell,.v1-kpi-cell+.v1-kpi-cell{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg-soft)}.kpi-value{overflow-wrap:anywhere;font-size:24px}.v1-chart-head{align-items:stretch;flex-direction:column;gap:8px}.chart-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.chart-tabs button{justify-content:center;padding:7px 6px}.v1-chart-body{overflow-x:auto;padding:10px}.v1-chart svg{max-width:100%;height:auto}.v1-pie-wrap{gap:14px}.v1-pie-legend{width:100%;min-width:0}.v1-pie-row{grid-template-columns:12px minmax(0,1fr) auto auto;gap:8px}.v1-pie-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.disclosure-head{min-height:42px;gap:10px;padding:11px 12px}.dt-wrap{max-height:280px;border-radius:8px}.dt th,.dt td{padding:9px 10px;font-size:11.5px}.sql-shell{display:grid;gap:8px}.sql-block{max-height:300px;padding:12px;font-size:11px}.v1-copy{position:static;justify-self:start;min-height:34px}.result-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.result-toolbar .btn{width:100%;min-height:36px;justify-content:center}.v1-bottom{padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px))}.composer{align-items:flex-end;gap:6px;padding:8px;border-radius:12px}.composer-actions{display:none}.composer textarea{max-height:120px;font-size:16px}.composer-send{width:36px;height:36px}.v1-composer-hints{gap:8px;overflow:hidden;font-size:10.5px}.v1-db-pill{display:none}.auth-shell{padding:12px}.auth-card{padding:20px}.admin-page-topbar{align-items:stretch;flex-direction:column;padding:12px}.admin-page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.admin-page-actions .btn{justify-content:center}.admin-page-content{width:100%;margin:0;padding:12px;gap:12px}.admin-card{padding:12px;border-radius:8px}.admin-card-head,.admin-settings-card,.admin-history-detail-head{align-items:stretch;flex-direction:column}.admin-sql-form textarea{min-height:130px;font-size:12px}.admin-cost-user{grid-template-columns:28px minmax(0,1fr)}.admin-cost-user strong{grid-column:2}.admin-ai-agent div:first-child{align-items:flex-start;flex-direction:column;gap:4px}.admin-ai-summary-row,.admin-ai-source-row{grid-template-columns:1fr;gap:5px}.admin-ai-calls{max-height:320px}.admin-ai-calls th,.admin-ai-calls td{max-width:220px}.admin-history-head{align-items:flex-start;flex-direction:column;gap:5px}.admin-history-head span{max-width:100%}.admin-page-user-row,.admin-user-row{grid-template-columns:1fr}}@media(max-width:520px){.v1-app.collapsed .v1-side{width:48px}.v1-app.collapsed .v1-main{padding-left:48px}.v1-app.collapsed .v1-side-head{padding:8px 6px}.v1-app.collapsed .v1-new{width:34px;height:34px;margin-right:7px;margin-left:7px}.btn-icon{width:36px;height:36px}.v1-topbar{padding:8px}.v1-topbar-actions>.chip:not(.user-chip){max-width:150px}.topbar-btn span{display:none}.sync-panel{top:92px;left:58px}.v1-thread{padding:16px 10px 10px}.v1-empty-title{font-size:22px}.v1-msg{gap:8px}.avatar{display:none}.v1-kpi-cell,.v1-kpi-cell+.v1-kpi-cell{padding:10px}.kpi-value{font-size:22px}.v1-pie-row{grid-template-columns:12px minmax(0,1fr) auto}.v1-pie-pct{display:none}.result-toolbar{grid-template-columns:1fr}.v1-bottom{padding-right:8px;padding-left:8px}.v1-composer-hints span:nth-child(2){display:none}.admin-page-actions,.admin-ai-api-metrics,.admin-ai-search,.admin-history-search{grid-template-columns:1fr}}
