:root{--bg:#f7f7f5;--surface:#fff;--surface-2:#f0efeb;--border:#e2e0da;--text:#1c1b19;--muted:#6b6860;--accent:#d9a400;--accent-text:#1c1b19;--danger:#c2410c;--ok:#16a34a;--ai:#7c3aed;--env-accent:#9ca3af;--syntax-keyword:#8a3ffc;--syntax-type:#0f62fe;--syntax-string:#198038;--syntax-number:#b45309;--syntax-comment:#8d8d8d;--syntax-quoted:#a2191f;--radius:.375rem;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#121211;--surface:#1a1a18;--surface-2:#232320;--border:#2e2d2a;--text:#ecebe6;--muted:#9a978f;--accent:#f5c518;--danger:#fb923c;--ok:#4ade80;--ai:#a78bfa;--syntax-keyword:#c4a5ff;--syntax-type:#78a9ff;--syntax-string:#6fdc8c;--syntax-number:#f1c21b;--syntax-comment:#8d8d8d;--syntax-quoted:#ff8389}}*{box-sizing:border-box}html{font-size:clamp(100%,100% + 1vw - 14.4px,150%)}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:.875rem / 1.5 var(--font)}code{font-family:var(--mono);background:var(--surface-2);border-radius:.25rem;padding:1px .25rem;font-size:.92em}h1{margin:0 0 .25rem;font-size:1.25rem}a{color:inherit}.muted{color:var(--muted)}.small{font-size:.75rem}.shell{grid-template:"top top"3rem"side main"1fr/16.25rem 1fr;height:100%;display:grid}.topbar{background:var(--surface);border-bottom:1px solid var(--border);border-top:.1875rem solid var(--env-accent);grid-area:top;align-items:center;gap:1rem;padding:0 1rem;display:flex}.topbar-center{flex:1;justify-content:center;display:flex}.topbar-right{align-items:center;gap:.75rem;display:flex}.brand{align-items:center;gap:.5rem;font-weight:600;text-decoration:none;display:inline-flex}.brand-mark{background:var(--accent);width:1.375rem;height:1.375rem;color:var(--accent-text);border-radius:.3125rem;place-items:center;font-size:.8125rem;display:inline-grid}.brand-lg{font-size:1.375rem}.env-chip{border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:.375rem;padding:.1875rem .625rem;font-size:.75rem;display:inline-flex}.env-dot{background:var(--env-accent);border-radius:50%;width:.5rem;height:.5rem}.nav-link{color:var(--muted);text-decoration:none}.nav-link.active,.nav-link:hover{color:var(--text)}.user{align-items:center;gap:.375rem;display:inline-flex}.user-name{text-overflow:ellipsis;white-space:nowrap;max-width:13.75rem;overflow:hidden}.role-badge{background:var(--surface-2);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-radius:.25rem;padding:1px .375rem;font-size:.6875rem}.role-admin{background:var(--accent);color:var(--accent-text)}.sidebar{background:var(--surface);border-right:1px solid var(--border);grid-area:side;padding:.75rem;overflow:auto}.sidebar-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .5rem;font-size:.6875rem}.main{grid-area:main;overflow:auto}.page,.empty{max-width:68.75rem;padding:1.5rem 2rem}.btn{white-space:nowrap;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.375rem;padding:.375rem .75rem;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.btn-primary:hover{filter:brightness(.95);background:var(--accent)}.btn-ghost{background:0 0;border-color:#0000}.btn-block{width:100%;padding:.625rem .75rem}select{font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.1875rem .375rem}.table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;margin-top:1rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:.5rem .75rem}.table th{color:var(--muted);font-size:.75rem;font-weight:500}.alert{border-radius:var(--radius);border:1px solid var(--danger);color:var(--danger);margin-top:.75rem;padding:.5rem .75rem}.alert-warn{color:var(--text);background:#d977061a;border-color:#d97706}.splash,.signin{height:100%;color:var(--muted);place-items:center;display:grid}.signin-card{background:var(--surface);border:1px solid var(--border);width:min(22.5rem,100% - 2rem);color:var(--text);border-radius:.625rem;gap:.75rem;padding:2rem;display:grid}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.mono{font-family:var(--mono)}.page-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:.625rem;margin:1rem 0;padding:1.25rem}.card h2{margin:0 0 1rem;font-size:1rem}.empty-card{text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:.625rem;margin-top:1rem;padding:2rem}.grid-2,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.span-2{grid-column:span 2}@media (width<=720px){.grid-2,.grid-3{grid-template-columns:1fr}.span-2{grid-column:auto}}.field{flex-direction:column;gap:.25rem;min-width:0;margin:0 0 .75rem;display:flex}.field>span:first-child,.field legend{color:var(--muted);font-size:.75rem;font-weight:500}fieldset.field{border:0;padding:0}.field.checkbox{flex-direction:row;align-items:flex-start;gap:.5rem}.field.checkbox>span{color:var(--text);font-size:.875rem;font-weight:400}.field.checkbox small{display:block}.inline-check{color:var(--muted);align-items:center;gap:.375rem;display:flex}:where(input:not([type=checkbox]):not([type=radio]):not([type=color]),textarea){font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text);width:100%;padding:.375rem .5rem}input:focus-visible,textarea:focus-visible,select:focus-visible,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input.invalid{border-color:var(--danger)}.error-text{color:var(--danger)}.segmented{border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;margin-bottom:.375rem;display:inline-flex;overflow:hidden}.segmented label{cursor:pointer;border-right:1px solid var(--border);padding:.375rem .75rem}.segmented label:last-child{border-right:0}.segmented label.active{background:var(--accent);color:var(--accent-text)}.segmented input{opacity:0;pointer-events:none;position:absolute}.form-actions{align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.push-right{margin-left:auto}.btn-small{padding:.1875rem .5rem;font-size:.75rem}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn:disabled{opacity:.5;cursor:not-allowed}.actions{text-align:right}.tag{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:.25rem;padding:1px .375rem;font-size:.6875rem;display:inline-block}.tag-accent{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text);font-family:var(--mono)}.tag-ok{color:var(--text);background:#16a34a33}.tag-danger{background:color-mix(in srgb, var(--danger) 18%, transparent);color:var(--danger)}.tags{gap:.25rem;margin-top:.25rem;display:flex}.test-result{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);margin:.75rem 0;padding:.75rem}.test-summary{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.topology{margin-top:.625rem}.topology-grid{align-items:center;gap:.375rem;margin-top:.375rem;display:grid}.topology-row{display:contents}.topology-host{font-family:var(--mono);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);text-overflow:ellipsis;white-space:nowrap;padding:.375rem .5rem;font-size:.75rem;overflow:hidden}.topology-host.local{border-color:var(--accent);box-shadow:inset .1875rem 0 0 var(--accent)}.swatches{align-items:center;gap:.5rem;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:1.5rem;height:1.5rem;padding:0}.swatch.active{border-color:var(--text)}.var-rows{flex-direction:column;align-items:flex-start;gap:.375rem;display:flex}.var-row{grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:.375rem;width:100%;display:grid}.env-picker{border:1px solid var(--border);border-radius:999px;align-items:center;gap:.375rem;padding:2px .25rem 2px .625rem;display:inline-flex}.env-picker select{background:0 0;border:0;font-weight:600}.env-picker.env-protected{border-color:var(--env-accent);background:color-mix(in srgb, var(--env-accent) 12%, transparent)}.env-dot{flex:none;display:inline-block}.env-list{margin:0 0 1rem;padding:0;list-style:none}.env-item{border-radius:var(--radius);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;padding:.375rem .5rem;display:grid}.env-item:hover{background:var(--surface-2)}.env-item.active{background:color-mix(in srgb, var(--env-accent) 16%, transparent);font-weight:600}.env-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.env-meta{color:var(--muted);font-size:.6875rem;font-weight:400}@media (width<=720px){.shell{grid-template:"top""side""main"1fr/1fr}.topbar{flex-wrap:wrap;padding:.5rem 1rem}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.page,.empty{padding:1rem}}.main:has(.workspace){overflow:hidden}.workspace{flex-direction:column;height:100%;min-height:0;display:flex}.toolbar{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.toolbar-info{margin-left:.25rem}.editor-pane{border-bottom:1px solid var(--border);flex:0 0 38%;min-height:7.5rem;overflow:hidden}.sql-editor{height:100%}.results-pane{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.results-empty{padding:1rem}.results{flex-direction:column;height:100%;min-height:0;display:flex}.result-tabs{border-bottom:1px solid var(--border);flex:none;gap:2px;padding:.375rem .5rem 0;display:flex;overflow-x:auto}.result-tab{border-radius:var(--radius) var(--radius) 0 0;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-bottom:0;padding:.25rem .625rem;font-size:.75rem}.result-tab.active{background:var(--surface);border-color:var(--border);margin-bottom:-1px}.tab-icon{margin-right:.25rem}.status-ok .tab-icon,.status-tag.status-ok{color:#16a34a}.status-error .tab-icon,.status-blocked .tab-icon,.status-tag.status-error,.status-tag.status-blocked{color:var(--danger)}.status-running .tab-icon{animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.status-running .tab-icon{animation:none}}.statement-panel{background:var(--surface);flex-direction:column;flex:1;gap:.5rem;min-height:0;padding:.5rem .75rem;display:flex}.statement-meta{flex-wrap:wrap;align-items:center;gap:.375rem .875rem;font-size:.75rem;display:flex}.query-id{text-overflow:ellipsis;white-space:nowrap;max-width:16.25rem;overflow:hidden}.export{gap:.25rem;display:inline-flex}.tag-button{cursor:pointer;font:inherit;border:0;font-size:.6875rem}.sent-sql pre,.preview-item pre,.text-output{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);white-space:pre-wrap;word-break:break-word;max-height:11.25rem;margin:.25rem 0 0;padding:.5rem;overflow:auto}.text-output{flex:1;max-height:none}.statement-error{white-space:pre-wrap;font-family:var(--mono);margin-top:0;font-size:.75rem}.notice{border-radius:var(--radius);background:color-mix(in srgb, var(--accent) 16%, transparent);padding:.375rem .625rem}.hosts-table{margin-top:0;font-size:.75rem}.preview-panel{border-bottom:1px solid var(--border);background:var(--bg);max-height:30%;padding:.5rem .75rem;overflow:auto}.preview-item+.preview-item{margin-top:.5rem}.preview-item pre.blocked{color:var(--danger)}.cm-statement-badge{font-family:var(--font);vertical-align:1px;cursor:help;-webkit-user-select:none;user-select:none;border-radius:.25rem;margin-left:.75rem;padding:0 .375rem;font-size:.6563rem;line-height:1rem}.cm-badge-cluster{background:color-mix(in srgb, var(--accent) 25%, transparent);color:var(--text)}.cm-badge-muted{background:var(--surface-2);color:var(--muted)}.cm-badge-warn{color:var(--text);background:#f59e0b38}.cm-badge-danger{background:color-mix(in srgb, var(--danger) 20%, transparent);color:var(--danger)}.grid-wrap{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.grid-scroller{overflow-anchor:none;min-height:0;font-family:var(--mono);outline:none;flex:1;font-size:.75rem;overflow:auto}.grid-table:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.grid-table{border-collapse:collapse;display:block}.grid-table tbody{display:block;position:relative}.grid-header tr{display:grid}.grid-header th{font-weight:inherit;border-right:1px solid var(--border);min-width:0;padding:0}.grid-header{z-index:1;background:var(--surface-2);border-bottom:1px solid var(--border);display:block;position:sticky;top:0}.grid-head{border:0;border-right:1px solid var(--border);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;padding:.25rem .5rem;display:flex}.grid-head.num{align-items:flex-end}.grid-header .grid-head{border-right:0;width:100%;height:100%}.grid-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.grid-type{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.6563rem;overflow:hidden}.grid-row{border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);width:100%;display:grid;position:absolute;top:0;left:0}.grid-row:hover{background:color-mix(in srgb, var(--surface-2) 70%, transparent)}.grid-index{color:var(--muted);text-align:right;border-right:1px solid var(--border);background:var(--surface);padding:0 .5rem;line-height:1.625rem;position:sticky;left:0}.grid-header .grid-index{background:var(--surface-2)}.grid-cell{text-overflow:ellipsis;white-space:nowrap;border-right:1px solid color-mix(in srgb, var(--border) 60%, transparent);cursor:default;padding:0 .5rem;line-height:1.625rem;overflow:hidden}.grid-cell.num{text-align:right;font-variant-numeric:tabular-nums}.grid-cell.null{color:var(--muted);font-style:italic}.grid-cell.selected{box-shadow:inset 0 0 0 2px var(--accent)}.grid-foot{border-top:1px solid var(--border);background:var(--surface);padding:.1875rem .5rem}.main{position:relative}.schema-head{justify-content:space-between;align-items:center;display:flex}.schema-head .sidebar-title{margin:0}.schema{font-size:.75rem}.schema-search{margin:.375rem 0 .25rem}.schema-system{margin-bottom:.375rem}.icon-btn{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.25rem;padding:.1875rem .3125rem;font-size:.8125rem;line-height:1}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn:focus-visible{outline:2px solid var(--accent)}.link-btn{color:inherit;font:inherit;text-underline-offset:.1875rem;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.tree,.tree-children{margin:0;padding:0;list-style:none}.tree-children{padding-left:.75rem}.tree-row-wrap{align-items:center;display:flex;position:relative}.tree-row{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.25rem;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:.25rem;padding:2px .375rem;font-size:.7813rem;display:grid}.tree-row:hover{background:var(--surface-2)}.tree-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.tree-column{grid-template-columns:minmax(0,1fr) auto;padding-left:1.75rem}.tree-caret{width:.625rem;color:var(--muted);font-size:.625rem}.tree-icon{color:var(--muted);text-align:center;width:.875rem;font-size:.6875rem}.kind-distributed{color:#2563eb}.kind-view,.kind-materialized_view{color:#7c3aed}.kind-dictionary{color:#0891b2}.tree-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:6.875rem;font-size:.6563rem;overflow:hidden}.tree-note{padding:2px .375rem 2px 1.75rem}.tree-actions{background:var(--surface-2);border-radius:.25rem;display:none;position:absolute;right:2px}.tree-row-wrap:hover .tree-actions,.tree-row-wrap:focus-within .tree-actions{display:inline-flex}.key-mark{color:var(--accent);font-size:.625rem}.details-drawer{z-index:5;background:var(--surface);border-left:1px solid var(--border);width:min(30rem,100%);position:absolute;top:0;bottom:0;right:0;overflow:auto;box-shadow:-.5rem 0 1.5rem #00000014}.details{padding:.875rem 1rem 1.5rem}.details-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.details-head h2{word-break:break-all;outline:none;margin:0;font-size:1rem}.details h3{margin:1.125rem 0 .375rem;font-size:.8125rem}.details-actions{flex-wrap:wrap;gap:.375rem;margin:.625rem 0 .75rem;display:flex}.details-facts{grid-template-columns:max-content minmax(0,1fr);gap:.25rem .75rem;margin:0 0 .375rem;font-size:.8125rem;display:grid}.details-facts dt{color:var(--muted)}.details-facts dd{word-break:break-word;margin:0}.details-columns{margin-top:0;font-size:.75rem}.details-columns td,.details-columns th{vertical-align:top;padding:.25rem .5rem}.details-columns .num{text-align:right;white-space:nowrap}.key-marks{gap:2px;margin-left:.375rem;display:inline-flex}.key-marks abbr{background:color-mix(in srgb, var(--accent) 25%, transparent);border-radius:.1875rem;padding:0 .1875rem;font-size:.625rem;text-decoration:none}.create-query{white-space:pre-wrap;word-break:break-word;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem}.notebook{max-width:68.75rem;margin:0 auto;padding:0 1rem 3rem}.notebook-toolbar{z-index:3;background:var(--bg);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.625rem 0;display:flex;position:sticky;top:0}.notebook-toolbar.protected{border-bottom:2px solid var(--env-accent)}.notebook-title{font:inherit;background:0 0;border:1px solid #0000;min-width:12ch;max-width:40ch;margin:0;font-size:1rem;font-weight:600}.notebook-title:hover,.notebook-title:focus{border-color:var(--border);background:var(--surface)}.notebook-title.static{padding:.375rem .5rem}.toolbar-spacer{flex:1}.save-state{color:var(--muted);white-space:nowrap}.save-dirty,.save-saving{color:var(--muted);font-style:italic}.save-conflict,.save-error{color:var(--danger);font-weight:600}.btn-danger-text{color:var(--danger)}.notebook-banner{margin:0 0 .75rem}.cells{flex-direction:column;display:flex}.cell{background:var(--surface);border:1px solid var(--border);border-radius:.5rem;position:relative}.cell:focus-within{border-color:color-mix(in srgb, var(--env-accent) 60%, var(--border))}.cell.cell-running{box-shadow:inset .1875rem 0 0 var(--env-accent)}.cell.dragging{z-index:2;opacity:.85;box-shadow:0 .5rem 1.5rem #00000026}.cell-head{border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);align-items:center;gap:.25rem;min-height:2rem;padding:.25rem .375rem;display:flex}.cell-index{font-family:var(--mono);min-width:3ch}.cell-summary{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cell-tools{align-items:center;gap:2px;margin-left:auto;display:inline-flex}.drag-handle{cursor:grab;touch-action:none}.cell-editor .cm-editor{border-radius:0 0 .5rem .5rem}.cell-results{border-top:1px solid var(--border)}.cell-results .results{height:auto}.cell-results .statement-panel{flex:none}.cell-results .grid-wrap{flex:none;height:min(21.25rem,45vh)}.cell-results .text-output{max-height:21.25rem}.markdown-view{padding:.5rem 1rem;position:relative}.markdown-view>:first-child{margin-top:.25rem}.markdown-view table{border-collapse:collapse}.markdown-view th,.markdown-view td{border:1px solid var(--border);padding:.25rem .5rem}.markdown-edit{opacity:0;position:absolute;top:.375rem;right:.5rem}.markdown-view:hover .markdown-edit,.markdown-edit:focus-visible{opacity:1}.markdown-input{resize:vertical;border:0;border-radius:0 0 .5rem .5rem;width:100%;min-height:5em;padding:.625rem 1rem;font-size:.8125rem;display:block}.add-cell{opacity:.25;justify-content:center;gap:.375rem;padding:.25rem 0;transition:opacity .12s;display:flex}.add-cell:hover,.add-cell:focus-within{opacity:1}.new-notebook{gap:.375rem;display:flex}.new-notebook input{min-width:13.75rem}.list-search{max-width:22.5rem;margin:.5rem 0 .25rem}.btn-ai{color:var(--ai);border-color:color-mix(in srgb, var(--ai) 40%, var(--border))}.btn-ai:disabled{color:var(--muted);border-color:var(--border)}.fix-btn{margin-top:.375rem}.ai-panel{border:1px solid color-mix(in srgb, var(--ai) 45%, var(--border));border-radius:var(--radius);background:color-mix(in srgb, var(--ai) 4%, var(--surface));flex-direction:column;gap:.375rem;margin:0 .75rem .625rem;padding:.5rem .625rem;display:flex}.ai-head{align-items:center;gap:.5rem;display:flex}.ai-title{color:var(--ai);font-weight:600}.ai-status{align-items:center;gap:.375rem;display:inline-flex}.spinner{border:2px solid color-mix(in srgb, var(--ai) 30%, transparent);border-top-color:var(--ai);border-radius:50%;width:.625rem;height:.625rem;animation:.8s linear infinite spin;display:inline-block}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.ai-prompt{align-items:flex-start;gap:.375rem;display:flex}.ai-prompt textarea{resize:none;min-height:1.875rem;font:inherit;flex:1;padding:.3125rem .5rem}.ai-stream{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);white-space:pre-wrap;max-height:16.25rem;margin:0;padding:.375rem .5rem;font-size:.75rem;overflow:auto}.ai-diff{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.ai-explanation{font-size:.8125rem;line-height:1.5}.ai-explanation p,.ai-explanation ul,.ai-explanation ol{margin:.25rem 0}.ai-explanation code{font-family:var(--mono);background:var(--surface-2);border-radius:.1875rem;padding:0 .1875rem;font-size:.75rem}.ai-actions{align-items:center;gap:.375rem;display:flex}.ai-valid{color:var(--ok);margin:0}.ai-retry,.ai-note,.ai-error-line{margin:0}.ai-retry .mono,.ai-invalid .mono{word-break:break-word}.ai-disclosure{margin:0;font-size:.6875rem}.ai-active{margin-bottom:.75rem}.test-results{flex-direction:column;gap:.25rem;display:flex}.test-ok{background:color-mix(in srgb, var(--ok) 14%, transparent)}.cell-notice{margin:0 .75rem .5rem}.tabs{border-bottom:1px solid var(--border);gap:.25rem;margin:.5rem 0 .75rem;display:flex}.tab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.375rem .75rem}.tab.active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.audit-filters{grid-template-columns:repeat(auto-fill,minmax(10.625rem,1fr));align-items:end;gap:.5rem .75rem;margin-bottom:.75rem;display:grid}.audit-filters .field{margin:0}.audit-search{grid-column:span 2}.audit-filter-actions{gap:.375rem;display:flex}.audit-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.audit-row{border-bottom:1px solid var(--border)}.audit-row:last-child{border-bottom:none}.audit-row>summary{cursor:pointer;align-items:center;gap:.5rem;min-width:0;padding:.4375rem .75rem;list-style:none;display:flex}.audit-row>summary::-webkit-details-marker{display:none}.audit-row[open]>summary{background:var(--surface-2)}.audit-time{color:var(--muted);white-space:nowrap}.audit-sql{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.audit-detail{flex-direction:column;gap:.375rem;padding:.5rem .75rem .75rem;display:flex}.audit-detail pre{background:var(--surface-2);border-radius:var(--radius);white-space:pre-wrap;word-break:break-word;max-height:20rem;margin:0;padding:.5rem;overflow:auto}.audit-meta{flex-wrap:wrap;gap:.25rem .875rem;display:flex}.audit-more{margin-top:.75rem}.tag-ai{color:var(--ai)}.error-detail{white-space:pre-wrap;word-break:break-word;font:.8125rem / 1.5 var(--mono);color:var(--danger);background:var(--surface-2);border-radius:var(--radius);margin:0 0 1rem;padding:.75rem}.dialog{border:1px solid var(--border);border-radius:calc(var(--radius) * 2);background:var(--surface);color:var(--text);max-height:calc(100vh - 2rem);padding:0;box-shadow:0 1rem 3rem #00000040}.dialog::backdrop{background:#00000059}.dialog-head{border-bottom:1px solid var(--border);background:var(--surface);z-index:1;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex;position:sticky;top:0}.dialog-head h2{margin:0;font-size:1rem}.dialog-body{padding:.75rem 1rem 1rem}.table-builder{width:min(68rem,100vw - 2rem)}.builder h3{margin:1rem 0 .5rem;font-size:.8125rem}.builder-topology{margin:0 0 .5rem}.builder-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:end;gap:0 .75rem;display:grid}.builder-check{margin:0 0 1.125rem}.builder-columns-wrap{margin-bottom:.5rem;overflow-x:auto}.builder-columns{min-width:56rem}.builder-columns td,.builder-columns th{vertical-align:middle;padding:.1875rem .25rem}.builder-columns td.center{text-align:center}.builder-columns input:not([type=checkbox]),.builder-columns select{padding:.1875rem .375rem}.builder-default{gap:.25rem;display:flex}.builder-default select{flex:none;width:7.5rem}.builder-columns td:first-child input{min-width:8rem}.builder-columns td:nth-child(2) input{min-width:13rem}.builder-advanced{margin:0 0 .75rem}.builder-advanced-summary{cursor:pointer;color:var(--muted);margin-bottom:.375rem}.builder-sharded{border:1px solid var(--border);border-radius:var(--radius);margin:1rem 0 0;padding:.625rem .75rem 0}.builder-sharded>.inline-check{color:var(--text);flex-wrap:wrap;margin-bottom:.625rem}.builder-sql{background:var(--surface-2);border-radius:var(--radius);white-space:pre-wrap;max-height:18rem;margin:0;padding:.625rem .75rem;overflow:auto}.builder-problems{margin:.5rem 0;padding-left:1.25rem}.builder .alert{margin:.5rem 0}select.invalid,.builder-columns input.invalid{border-color:var(--danger)}.schema-new-table{margin-left:auto}.schema-head{gap:.25rem}.cm-completion-doc{max-width:28rem;padding:.375rem .5rem;font-size:.75rem}.cm-completion-doc p{white-space:pre-wrap;color:var(--muted);margin:.375rem 0 0}
