:root{--font-family-ui: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-size-caption: 11px;--font-size-body-sm: 12px;--font-size-body: 14px;--font-size-body-lg: 16px;--font-size-heading: 18px;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--surface-primary: white;--surface-secondary: #f9fafb;--surface-tertiary: #e8e8e8;--surface-inverse: black;--text-primary: black;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--text-inverse: white;--border-primary: black;--border-secondary: #d1d5db;--border-tertiary: #eee;--border-error: #c62828;--color-accent: #42b883;--color-error: #c62828;--color-error-bg: #ffebee;--color-success: #10b981;--color-warning: #f59e0b;--color-purple: rgb(147, 51, 234);--color-selection: rgba(147, 51, 234, .3);--color-bigquery: #4285f4;--color-duckdb: #ffc107;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--border-width-thin: 1.5px;--border-width-thick: 2px;--border-radius-none: 0;--border-radius-sm: 2px;--border-radius-md: 4px;--border-radius-lg: 8px;--shadow-sm: 2px 2px 0 0 rgba(0, 0, 0, .15);--shadow-md: 6px 6px 0 0 rgba(0, 0, 0, .25);--shadow-lg: 8px 8px 0 0 rgba(0, 0, 0, .3);--box-border-width: var(--border-width-thick);--box-border-color: var(--border-primary);--box-border-radius: var(--border-radius-none);--box-shadow: var(--shadow-md);--box-shadow-selected: var(--shadow-lg);--box-header-bg: var(--surface-inverse);--box-header-text: var(--text-inverse);--box-header-padding: var(--space-2) var(--space-3);--button-padding: var(--space-1) var(--space-3);--button-border-width: var(--border-width-thin);--button-border-radius: var(--border-radius-none);--button-font-size: var(--font-size-body);--input-padding: var(--space-2) var(--space-3);--input-border-width: var(--border-width-thin);--input-border-radius: var(--border-radius-none);--input-font-size: var(--font-size-body);--table-cell-padding: var(--space-2) var(--space-3);--table-border-width: var(--border-width-thin);--table-font-size: var(--font-size-body-sm);--table-row-hover-bg: #f8f9fa;--table-row-stripe-bg: #f5f5f5;--canvas-bg: #d4d4d4;--canvas-dot-color: black;--canvas-dot-size: 1.2px;--canvas-dot-spacing: 7px;--editor-bg: white;--editor-selection-bg: #d7d7d7;--editor-active-line-bg: #f5f5f5;--editor-gutter-color: #999;--menu-border-width: var(--border-width-thin);--menu-item-padding: var(--space-2) var(--space-3);--menu-section-padding: var(--space-3);--handle-size: 8px}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-family-ui);line-height:var(--line-height-normal);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.app{width:100%;height:100vh}.landing-page[data-v-93954148]{min-height:100vh;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:#1a1a1a;line-height:1.6}.hero[data-v-93954148]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:80px 24px;text-align:center}.hero-content[data-v-93954148]{max-width:800px;margin:0 auto}.hero h1[data-v-93954148]{font-size:3.5rem;font-weight:700;margin:0 0 16px;letter-spacing:-.02em}.tagline[data-v-93954148]{font-size:1.5rem;opacity:.95;margin:0 0 16px}.description[data-v-93954148]{font-size:1.125rem;opacity:.9;max-width:600px;margin:0 auto 32px}.cta-button[data-v-93954148]{background:#fff;color:#667eea;border:none;padding:16px 48px;font-size:1.125rem;font-weight:600;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s}.cta-button[data-v-93954148]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0003}.cta-button[data-v-93954148]:active{transform:translateY(0)}.features[data-v-93954148]{padding:80px 24px;background:#fafafa}.features h2[data-v-93954148]{text-align:center;font-size:2rem;margin:0 0 48px}.features-grid[data-v-93954148]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:1200px;margin:0 auto}.feature-card[data-v-93954148]{background:#fff;padding:32px;border-radius:12px;box-shadow:0 2px 8px #00000014}.feature-card h3[data-v-93954148]{font-size:1.25rem;margin:0 0 12px;color:#667eea}.feature-card p[data-v-93954148]{margin:0;color:#666}.how-it-works[data-v-93954148]{padding:80px 24px;max-width:800px;margin:0 auto}.how-it-works h2[data-v-93954148]{text-align:center;font-size:2rem;margin:0 0 48px}.steps[data-v-93954148]{list-style:none;padding:0;margin:0;counter-reset:step}.steps li[data-v-93954148]{display:flex;flex-direction:column;padding:24px 0 24px 80px;position:relative;border-left:2px solid #e0e0e0;margin-left:24px}.steps li[data-v-93954148]:last-child{border-left-color:transparent}.steps li[data-v-93954148]:before{counter-increment:step;content:counter(step);position:absolute;left:-25px;top:24px;width:48px;height:48px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.25rem}.steps li strong[data-v-93954148]{font-size:1.125rem;color:#1a1a1a}.steps li span[data-v-93954148]{color:#666;margin-top:4px}.landing-footer[data-v-93954148]{margin-top:auto;background:#1a1a1a;color:#fff;padding:48px 24px}.footer-content[data-v-93954148]{max-width:1200px;margin:0 auto;text-align:center}.footer-links[data-v-93954148]{display:flex;justify-content:center;gap:32px;margin-bottom:24px}.footer-links a[data-v-93954148]{color:#aaa;text-decoration:none;transition:color .2s}.footer-links a[data-v-93954148]:hover{color:#fff}.copyright[data-v-93954148]{margin:0;color:#666;font-size:.875rem}@media(max-width:768px){.hero[data-v-93954148]{padding:60px 20px}.hero h1[data-v-93954148]{font-size:2.5rem}.tagline[data-v-93954148]{font-size:1.25rem}.features[data-v-93954148],.how-it-works[data-v-93954148]{padding:60px 20px}.steps li[data-v-93954148]{padding-left:60px}}.infinite-canvas[data-v-53d54e92]{position:fixed;inset:0;overflow:hidden;background-color:var(--canvas-bg);background-image:radial-gradient(circle,var(--canvas-dot-color) var(--canvas-dot-size),transparent var(--canvas-dot-size));background-size:var(--canvas-dot-spacing) var(--canvas-dot-spacing);cursor:grab;contain:layout size style}.viewport[data-v-53d54e92]{transform-origin:0 0;width:100%;height:100%;position:relative;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.viewport.is-moving[data-v-53d54e92]{pointer-events:none}.viewport.is-moving[data-v-53d54e92] .resizable-box{box-shadow:none!important}.viewport.is-moving[data-v-53d54e92] .resizable-box:before{display:none}.selection-rectangle[data-v-53d54e92]{position:absolute;border:2px solid color-mix(in srgb,var(--color-purple) 60%,transparent);background-color:color-mix(in srgb,var(--color-purple) 15%,transparent);pointer-events:none;z-index:9999}.infinite-canvas.dragging-file[data-v-53d54e92]:before{content:"Drop CSV file to import";position:fixed;inset:0;background:color-mix(in srgb,var(--color-purple) 15%,transparent);border:3px dashed color-mix(in srgb,var(--color-purple) 60%,transparent);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:600;color:color-mix(in srgb,var(--color-purple) 90%,transparent);pointer-events:none;z-index:10000}.resizable-box[data-v-b6901615]{position:absolute;display:flex;flex-direction:column;overflow:hidden;background:var(--surface-primary);border:var(--box-border-width) solid var(--box-border-color);border-radius:var(--box-border-radius);box-shadow:var(--box-shadow);isolation:isolate;contain:layout style;will-change:transform,left,top,width,height;backface-visibility:hidden;-webkit-backface-visibility:hidden}.resizable-box.selected[data-v-b6901615]{z-index:10;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-purple) 30%,transparent),0 0 20px 5px color-mix(in srgb,var(--color-purple) 40%,transparent),0 4px 12px #00000026}.resizable-box.selected[data-v-b6901615]:before{content:"";position:absolute;inset:calc(var(--space-1) * -1);border:var(--border-width-thick) solid color-mix(in srgb,var(--color-purple) 80%,transparent);border-radius:var(--box-border-radius);box-shadow:inset 0 0 20px color-mix(in srgb,var(--color-purple) 20%,transparent);pointer-events:none}.resizable-box.dragging[data-v-b6901615]{z-index:100;box-shadow:none!important;transition:none!important}.resizable-box.dragging[data-v-b6901615]:before{display:none}.box-header[data-v-b6901615]{display:flex;justify-content:space-between;align-items:center;padding:var(--box-header-padding);background:var(--box-header-bg);color:var(--box-header-text);font-size:var(--font-size-body);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.box-header[data-v-b6901615]:active{cursor:grabbing}.box-content[data-v-b6901615]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;cursor:auto}.resize-handle[data-v-b6901615]{position:absolute;background:transparent;z-index:10}.resize-handle.n[data-v-b6901615],.resize-handle.s[data-v-b6901615]{height:var(--handle-size);left:0;right:0}.resize-handle.e[data-v-b6901615],.resize-handle.w[data-v-b6901615]{width:var(--handle-size);top:0;bottom:0}.resize-handle.n[data-v-b6901615]{top:calc(var(--handle-size) / -2);cursor:ns-resize}.resize-handle.s[data-v-b6901615]{bottom:calc(var(--handle-size) / -2);cursor:ns-resize}.resize-handle.e[data-v-b6901615]{right:calc(var(--handle-size) / -2);cursor:ew-resize}.resize-handle.w[data-v-b6901615]{left:calc(var(--handle-size) / -2);cursor:ew-resize}.resize-handle.n[data-v-b6901615]:before,.resize-handle.s[data-v-b6901615]:before{content:"";position:absolute;top:calc(var(--handle-size) / -2);bottom:calc(var(--handle-size) / -2);left:0;right:0}.resize-handle.e[data-v-b6901615]:before,.resize-handle.w[data-v-b6901615]:before{content:"";position:absolute;left:calc(var(--handle-size) / -2);right:calc(var(--handle-size) / -2);top:0;bottom:0}.resize-handle.ne[data-v-b6901615],.resize-handle.se[data-v-b6901615],.resize-handle.sw[data-v-b6901615],.resize-handle.nw[data-v-b6901615]{width:var(--handle-size);height:var(--handle-size)}.resize-handle.ne[data-v-b6901615]{top:calc(var(--handle-size) / -2);right:calc(var(--handle-size) / -2);cursor:nesw-resize}.resize-handle.se[data-v-b6901615]{bottom:calc(var(--handle-size) / -2);right:calc(var(--handle-size) / -2);cursor:nwse-resize}.resize-handle.sw[data-v-b6901615]{bottom:calc(var(--handle-size) / -2);left:calc(var(--handle-size) / -2);cursor:nesw-resize}.resize-handle.nw[data-v-b6901615]{top:calc(var(--handle-size) / -2);left:calc(var(--handle-size) / -2);cursor:nwse-resize}.box-name-container[data-v-a657867e]{display:flex;align-items:center;gap:var(--space-2);margin-right:auto;min-width:0}.box-name[data-v-a657867e]{cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.box-name[data-v-a657867e]:hover{opacity:.7}.name-input[data-v-a657867e]{background:transparent;border:none;outline:none;color:inherit;font:inherit;padding:0;margin:0;min-width:100px;max-width:400px;line-height:1}.header-buttons[data-v-a657867e]{display:flex;gap:var(--space-1);flex-shrink:0}.header-buttons.no-name[data-v-a657867e]{margin-left:auto}.header-btn[data-v-a657867e]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:var(--border-radius-sm);color:var(--text-inverse);cursor:pointer;transition:background .1s,color .1s}.header-btn[data-v-a657867e]:hover{background:var(--text-inverse);color:var(--surface-inverse)}.delete-btn[data-v-a657867e]:hover{background:var(--color-error);color:var(--text-inverse)}.query-editor-wrapper[data-v-e9d87cdc]{position:relative;overflow:hidden;flex-shrink:0;contain:layout}.query-editor[data-v-e9d87cdc],.query-editor[data-v-e9d87cdc] .cm-editor{height:100%;overflow:hidden}.query-editor[data-v-e9d87cdc] .cm-scroller{overflow:auto!important;scrollbar-width:none}.query-editor[data-v-e9d87cdc] .cm-scroller::-webkit-scrollbar{display:none}.run-btn[data-v-e9d87cdc]{position:absolute;bottom:var(--space-2);right:var(--space-2);display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--surface-primary);border:none;border-radius:var(--border-radius-sm);color:var(--text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-body-sm);line-height:1;cursor:pointer;z-index:1}.run-btn[data-v-e9d87cdc]:hover:not(:disabled){background:var(--surface-secondary)}.run-btn[data-v-e9d87cdc]:disabled{color:var(--text-tertiary);cursor:not-allowed;opacity:.5}.elapsed[data-v-e9d87cdc]{font-variant-numeric:tabular-nums}.results-section[data-v-821149c5]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.error-banner[data-v-821149c5]{padding:var(--space-2) var(--space-3);background:var(--color-error-bg);border-block-end:var(--border-width-thin) solid var(--border-error);color:var(--color-error);font-size:var(--font-size-body-sm);font-weight:600;flex-shrink:0}.table-container[data-v-821149c5]{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;cursor:default;position:relative;scrollbar-width:none;contain:strict}.table-container[data-v-821149c5]::-webkit-scrollbar{display:none}.loading-overlay[data-v-821149c5]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--surface-primary);opacity:.8;z-index:10}.loading-text[data-v-821149c5]{font-size:var(--font-size-body-sm);color:var(--text-secondary)}.results-table[data-v-821149c5]{width:max-content;min-width:100%;border-collapse:collapse;font-size:var(--table-font-size);font-family:var(--font-family-mono);color:var(--text-primary);text-align:start}.results-table[data-v-821149c5] ::selection{background:var(--color-selection)}.results-table th[data-v-821149c5],.results-table td[data-v-821149c5]{padding:var(--table-cell-padding);white-space:nowrap;vertical-align:baseline}.results-table thead th[data-v-821149c5]{position:sticky;inset-block-start:0;z-index:2;background:var(--surface-primary);font-weight:500;text-align:start;min-width:150px;-webkit-user-select:text;user-select:text;cursor:text;box-shadow:inset 0 -1px 0 var(--border-secondary);isolation:isolate}.results-table thead th.sortable[data-v-821149c5]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s}.results-table thead th.sortable[data-v-821149c5]:hover{background:var(--table-row-hover-bg)}.results-table thead th.sortable.sorted[data-v-821149c5]{font-weight:600}.column-header[data-v-821149c5]{display:inline-flex;align-items:center;gap:var(--space-1)}.type-icon[data-v-821149c5]{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--text-tertiary);flex-shrink:0}.column-name[data-v-821149c5]{flex:1}.sort-indicator[data-v-821149c5]{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--text-secondary);flex-shrink:0}.sorted .sort-indicator[data-v-821149c5]{color:var(--text-primary)}.results-table thead th[data-v-821149c5]:not(:last-child):after{content:"";position:absolute;inset-block:0;inset-inline-end:0;width:1px;background:var(--border-secondary)}.results-table td[data-v-821149c5]{min-width:150px;-webkit-user-select:text;user-select:text;cursor:text;border-block-end:1px solid var(--border-tertiary)}.results-table tbody tr:last-child td[data-v-821149c5],.results-table tbody tr:last-child .row-number-col[data-v-821149c5]{border-block-end:none}.results-table tbody tr[data-v-821149c5]{background:var(--surface-primary)}.results-table tbody tr[data-v-821149c5]:hover{background:var(--table-row-hover-bg)}.null-value[data-v-821149c5]{color:var(--text-tertiary);font-style:italic}.number-cell[data-v-821149c5]{text-align:end;font-variant-numeric:tabular-nums}.results-table thead th.number-cell .column-header[data-v-821149c5]{justify-content:flex-end}.results-table .row-number-col[data-v-821149c5]{position:sticky;inset-inline-start:0;width:36px;min-width:36px;padding:var(--space-2);text-align:center;-webkit-user-select:none;user-select:none;background:var(--surface-primary);box-shadow:inset -1px 0 0 var(--border-secondary)}.results-table thead .row-number-col[data-v-821149c5]{z-index:3;box-shadow:inset 0 -1px 0 var(--border-secondary),inset -1px 0 0 var(--border-secondary)}.results-table tbody tr:hover .row-number-col[data-v-821149c5]{background:var(--table-row-hover-bg)}.row-number[data-v-821149c5]{font-size:var(--font-size-caption);font-variant-numeric:tabular-nums;color:var(--text-secondary);transition:opacity .1s}.row-number.hidden[data-v-821149c5]{opacity:0}.detail-btn[data-v-821149c5]{position:absolute;inset:0;margin:auto;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--border-radius-sm);cursor:pointer;color:var(--text-secondary);opacity:0;pointer-events:none;transition:opacity .1s,background .1s}.detail-btn.visible[data-v-821149c5]{opacity:1;pointer-events:auto}.detail-btn[data-v-821149c5]:hover{background:var(--surface-secondary);color:var(--text-primary)}.results-footer[data-v-821149c5]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--box-header-padding);background:var(--surface-primary);border-block-start:var(--border-width-thin) solid var(--border-primary);flex-shrink:0}.results-meta[data-v-821149c5]{display:flex;align-items:center;gap:var(--space-2)}.stat[data-v-821149c5]{font-size:var(--font-size-body-sm);color:var(--text-primary);white-space:nowrap}.stat[data-v-821149c5]:before{content:"·";margin-inline-end:var(--space-2);color:var(--text-tertiary)}.stat[data-v-821149c5]:first-child:before,.engine-badge+.stat[data-v-821149c5]:before{display:none}.cache-hit[data-v-821149c5]{color:var(--color-success)}.engine-badge[data-v-821149c5]{font-weight:600;padding:2px 6px;border-radius:3px;font-size:var(--font-size-caption)}.engine-badge[data-engine=bigquery][data-v-821149c5]{background:var(--color-bigquery);color:#fff}.engine-badge[data-engine=duckdb][data-v-821149c5]{background:var(--color-duckdb);color:#000}.results-actions[data-v-821149c5]{display:flex;align-items:center;gap:var(--space-2)}.pagination[data-v-821149c5]{display:flex;align-items:center;gap:var(--space-1)}.pagination-btn[data-v-821149c5]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--border-radius-sm);color:var(--text-primary);cursor:pointer;transition:background .1s}.pagination-btn[data-v-821149c5]:hover:not(:disabled){background:var(--surface-secondary)}.pagination-btn[data-v-821149c5]:disabled{opacity:.3;cursor:not-allowed}.page-info[data-v-821149c5]{font-size:var(--font-size-body-sm);font-variant-numeric:tabular-nums;color:var(--text-primary);padding:0 var(--space-1);-webkit-user-select:none;user-select:none}.download-btn[data-v-821149c5]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--border-radius-sm);color:var(--text-primary);cursor:pointer;transition:background .1s}.download-btn[data-v-821149c5]:hover:not(:disabled){background:var(--surface-secondary)}.download-btn[data-v-821149c5]:disabled{opacity:.3;cursor:not-allowed}.export-dropdown[data-v-821149c5]{position:relative}.export-menu[data-v-821149c5]{position:absolute;bottom:100%;right:0;margin-bottom:var(--space-1);background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--border-radius-md);box-shadow:0 4px 12px #00000026;min-width:180px;z-index:100;overflow:hidden}.export-option[data-v-821149c5]{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;transition:background .1s}.export-option[data-v-821149c5]:hover{background:var(--surface-secondary)}.export-option[data-v-821149c5]:not(:last-child){border-bottom:1px solid var(--border-tertiary)}.format-name[data-v-821149c5]{font-size:var(--font-size-body-sm);font-weight:600;color:var(--text-primary)}.format-desc[data-v-821149c5]{font-size:var(--font-size-caption);color:var(--text-secondary);margin-top:2px}.export-spinner[data-v-821149c5]{width:14px;height:14px;border:2px solid var(--border-secondary);border-top-color:var(--text-primary);border-radius:50%;animation:spin-821149c5 .8s linear infinite}@keyframes spin-821149c5{to{transform:rotate(360deg)}}.empty-state[data-v-821149c5]{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:var(--font-size-body)}.splitter[data-v-80848b9a]{height:var(--border-width-thin);background:var(--border-primary);cursor:ns-resize;flex-shrink:0;position:relative;z-index:1}.splitter[data-v-80848b9a]:before{content:"";position:absolute;inset:calc(var(--space-2) * -1) 0}.schema-browser[data-v-9f2824d0]{display:flex;height:100%;background:var(--surface-primary);overflow:hidden}.column[data-v-9f2824d0]{flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden}.column-schema[data-v-9f2824d0]{flex:1;min-width:200px}.resize-handle[data-v-9f2824d0]{flex:0 0 var(--border-width-thin);background:var(--border-primary);cursor:col-resize;position:relative}.resize-handle[data-v-9f2824d0]:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--space-1) * -1);right:calc(var(--space-1) * -1)}.column-header[data-v-9f2824d0]{padding:var(--table-cell-padding);background:var(--surface-primary);border-bottom:var(--table-border-width) solid var(--border-primary);font-size:var(--font-size-body-sm);font-weight:700;color:var(--text-primary);flex-shrink:0}.column-content[data-v-9f2824d0]{flex:1;overflow-y:auto;overflow-x:hidden}.item[data-v-9f2824d0]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s ease,font-weight .1s ease}.item[data-v-9f2824d0]:hover{background:var(--table-row-stripe-bg)}.item.selected[data-v-9f2824d0]{background:var(--table-row-stripe-bg);font-weight:500}.item-name[data-v-9f2824d0]{flex:1;font-size:var(--font-size-body-sm);font-family:var(--font-family-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-meta[data-v-9f2824d0]{font-size:var(--font-size-caption);color:var(--text-secondary);flex-shrink:0}.schema-field[data-v-9f2824d0]{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-2) var(--space-3);gap:var(--space-2)}.field-name[data-v-9f2824d0]{font-size:var(--font-size-body-sm);font-family:var(--font-family-mono);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.field-type[data-v-9f2824d0]{font-size:var(--font-size-caption);font-family:var(--font-family-mono);color:var(--text-secondary);flex-shrink:0}.loading[data-v-9f2824d0]{padding:var(--space-3);text-align:center;color:var(--text-secondary);font-size:var(--font-size-body-sm)}.query-button[data-v-9f2824d0]{padding:2px 6px;background:var(--surface-secondary);border:none;border-radius:3px;cursor:pointer;font-size:10px;color:var(--text-primary);opacity:.7;transition:opacity .2s ease;flex-shrink:0}.query-button[data-v-9f2824d0]:hover{opacity:1;background:var(--surface-tertiary)}.sticky-note-content[data-v-0e63d849]{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-3);background:var(--surface-primary)}.note-textarea[data-v-0e63d849]{flex:1;width:100%;border:none;outline:none;resize:none;font-family:Comic Sans MS,Marker Felt,Bradley Hand,cursive;font-size:30px;line-height:1.6;color:var(--text-primary);background:transparent;padding:0}.note-textarea[data-v-0e63d849]::placeholder{color:var(--text-secondary);opacity:.5}.note-textarea[data-v-0e63d849]:focus{outline:none}.detail-content[data-v-c3ade7fa]{flex:1;display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;padding:var(--space-3);background:var(--surface-primary)}.detail-field[data-v-c3ade7fa]{border:var(--border-width-thin) solid var(--border-secondary);padding:var(--space-2) var(--space-3);background:var(--surface-secondary);border-radius:var(--border-radius-sm);transition:background .15s ease}.detail-field[data-v-c3ade7fa]:hover{background:var(--surface-primary)}.field-label[data-v-c3ade7fa]{font-size:var(--font-size-caption);font-weight:700;color:var(--text-secondary);margin-bottom:var(--space-1);text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.field-value[data-v-c3ade7fa]{font-family:var(--font-family-mono);font-size:var(--font-size-body-sm);color:var(--text-primary);word-wrap:break-word;white-space:pre-wrap;-webkit-user-select:text;user-select:text;cursor:text}.field-value[data-v-c3ade7fa]::selection{background:var(--color-selection)}.empty-state[data-v-c3ade7fa]{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:var(--font-size-body)}.menu-bar[data-v-ffa968ff]{position:fixed;top:0;left:0;right:0;height:32px;background:var(--surface-primary);border-bottom:var(--border-width-thin) solid var(--border-primary);display:flex;justify-content:space-between;align-items:center;padding:0 var(--space-3);z-index:1000;font-family:var(--font-family-ui);font-size:var(--font-size-body-sm)}.menu-left[data-v-ffa968ff],.menu-right[data-v-ffa968ff]{display:flex;align-items:center;gap:0;height:100%}.app-name[data-v-ffa968ff]{font-size:var(--font-size-body);font-weight:700;color:var(--text-primary);margin-right:var(--space-4);-webkit-user-select:none;user-select:none;display:flex;align-items:center;height:100%;text-decoration:none;transition:opacity .15s}.app-name[data-v-ffa968ff]:hover{opacity:.7}.menu-item[data-v-ffa968ff]{position:relative;height:100%;display:flex;align-items:center}.menu-item.active .menu-button[data-v-ffa968ff]{background:var(--surface-secondary)}.menu-button[data-v-ffa968ff]{height:100%;display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-3);background:transparent;border:none;color:var(--text-primary);font-size:var(--font-size-body-sm);font-family:var(--font-family-ui);cursor:pointer;outline:none;transition:background .15s}.menu-button[data-v-ffa968ff]:hover:not(:disabled){background:var(--surface-secondary)}.menu-button[data-v-ffa968ff]:disabled{opacity:.5;cursor:not-allowed}.menu-text[data-v-ffa968ff]{font-weight:500;white-space:nowrap}.token-expired-indicator[data-v-ffa968ff]{color:var(--color-error);font-weight:600}.menu-caret[data-v-ffa968ff]{font-size:10px;opacity:.6}.dropdown[data-v-ffa968ff]{position:absolute;top:100%;left:0;min-width:200px;background:var(--surface-primary);border:var(--border-width-thin) solid var(--border-primary);box-shadow:var(--shadow-md);margin-top:1px;z-index:2000;max-height:400px;overflow-y:auto}.user-dropdown[data-v-ffa968ff]{right:0;left:auto}.dropdown-item[data-v-ffa968ff]{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-bottom:var(--border-width-thin) solid var(--border-secondary);text-align:left;font-size:var(--font-size-body-sm);font-family:var(--font-family-ui);color:var(--text-primary);cursor:pointer;outline:none;transition:background .1s}.dropdown-item[data-v-ffa968ff]:last-child{border-bottom:none}.dropdown-item[data-v-ffa968ff]:hover,.dropdown-item.selected[data-v-ffa968ff]{background:var(--surface-secondary)}.item-main[data-v-ffa968ff]{display:flex;align-items:center;gap:var(--space-2);width:100%}.item-text[data-v-ffa968ff]{flex:1}.item-check[data-v-ffa968ff]{color:var(--color-accent);font-weight:700}.dropdown-message[data-v-ffa968ff]{padding:var(--space-3);text-align:center;font-size:var(--font-size-body-sm);color:var(--text-secondary)}.user-button[data-v-ffa968ff]{width:24px;height:24px;border-radius:50%;border:var(--border-width-thin) solid var(--border-primary);background:var(--surface-primary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;outline:none;transition:background .15s}.user-button[data-v-ffa968ff]:hover{background:var(--surface-secondary)}.user-avatar[data-v-ffa968ff]{width:100%;height:100%;border-radius:50%;object-fit:cover}.user-initials[data-v-ffa968ff]{font-size:10px;font-weight:600;color:var(--text-primary)}.user-info[data-v-ffa968ff]{padding:var(--space-3);border-bottom:var(--border-width-thin) solid var(--border-secondary)}.user-name[data-v-ffa968ff]{font-size:var(--font-size-body-sm);font-weight:600;color:var(--text-primary);margin-bottom:2px}.user-email[data-v-ffa968ff]{font-size:var(--font-size-caption);color:var(--text-secondary)}.sign-in-btn[data-v-ffa968ff]{height:24px;padding:0 var(--space-3);background:var(--surface-primary);border:var(--border-width-thin) solid var(--border-primary);border-radius:4px;font-size:var(--font-size-caption);font-weight:500;color:var(--text-primary);font-family:var(--font-family-ui);cursor:pointer;outline:none;transition:background .15s}.sign-in-btn[data-v-ffa968ff]:hover:not(:disabled){background:var(--surface-secondary)}.sign-in-btn[data-v-ffa968ff]:disabled{opacity:.5;cursor:not-allowed}.error-toast[data-v-ffa968ff]{position:fixed;top:40px;right:var(--space-3);max-width:300px;padding:var(--space-2) var(--space-3);background:var(--color-error-bg);border:var(--border-width-thin) solid var(--border-error);color:var(--color-error);font-size:var(--font-size-caption);box-shadow:var(--shadow-md);z-index:2001;border-radius:4px}.settings-dropdown[data-v-ffa968ff]{min-width:280px;padding:0}.settings-section[data-v-ffa968ff]{padding:var(--space-3);border-bottom:var(--border-width-thin) solid var(--border-secondary)}.settings-section[data-v-ffa968ff]:last-child{border-bottom:none}.setting-header[data-v-ffa968ff]{font-size:var(--font-size-body-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.setting-description[data-v-ffa968ff]{font-size:var(--font-size-caption);color:var(--text-secondary);margin-bottom:var(--space-3);line-height:var(--line-height-normal)}.setting-row[data-v-ffa968ff]{margin-bottom:var(--space-2)}.setting-row[data-v-ffa968ff]:last-child{margin-bottom:0}.setting-row.disabled[data-v-ffa968ff]{opacity:.5}.setting-label[data-v-ffa968ff]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--font-size-body-sm);color:var(--text-primary);cursor:pointer}.setting-checkbox[data-v-ffa968ff]{width:16px;height:16px;cursor:pointer;margin-right:var(--space-1)}.setting-input-number[data-v-ffa968ff]{width:80px;padding:var(--space-1) var(--space-2);border:none;background:var(--surface-primary);font-size:var(--font-size-body-sm);font-family:var(--font-family-mono);color:var(--text-primary);text-align:right;outline:none;transition:border-color .15s;border-radius:4px}.setting-input-number[data-v-ffa968ff]:focus{border-color:var(--color-accent)}.setting-input-number[data-v-ffa968ff]:disabled{background:var(--surface-secondary);cursor:not-allowed}.setting-input-number[data-v-ffa968ff]::-webkit-inner-spin-button,.setting-input-number[data-v-ffa968ff]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.settings-section-danger[data-v-ffa968ff]{background:#ff00000d}.action-button[data-v-ffa968ff]{width:100%;padding:var(--space-2);background:#007bff;color:#fff;border:none;border-radius:4px;font-size:var(--font-size-body-sm);font-weight:600;cursor:pointer;transition:background .15s}.action-button[data-v-ffa968ff]:hover:not(:disabled){background:#0056b3}.action-button[data-v-ffa968ff]:active:not(:disabled){background:#004494}.action-button[data-v-ffa968ff]:disabled{background:var(--surface-secondary);color:var(--text-tertiary);cursor:not-allowed;opacity:.5}.reset-button[data-v-ffa968ff]{width:100%;padding:var(--space-2);background:#dc3545;color:#fff;border:none;border-radius:4px;font-size:var(--font-size-body-sm);font-weight:600;cursor:pointer;transition:background .15s}.reset-button[data-v-ffa968ff]:hover{background:#c82333}.reset-button[data-v-ffa968ff]:active{background:#bd2130}.setting-input-number[type=number][data-v-ffa968ff]{-moz-appearance:textfield}.connection-dropdown[data-v-ffa968ff]{min-width:300px;max-width:400px}.dropdown-section[data-v-ffa968ff]{padding:0}.section-label[data-v-ffa968ff]{font-size:var(--font-size-caption);font-weight:600;color:var(--text-secondary);padding:var(--space-2) var(--space-3) var(--space-1) var(--space-3);text-transform:uppercase;letter-spacing:.05em;background:var(--surface-secondary)}.connection-item[data-v-ffa968ff]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.connection-item.expired[data-v-ffa968ff]{opacity:.6}.connection-avatar[data-v-ffa968ff]{width:24px;height:24px;border-radius:50%;flex-shrink:0}.connection-info[data-v-ffa968ff]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.connection-name[data-v-ffa968ff]{font-size:var(--font-size-body-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expired-badge[data-v-ffa968ff]{font-size:var(--font-size-caption);color:var(--color-error);font-weight:600}.connection-actions[data-v-ffa968ff]{display:flex;gap:var(--space-1);flex-shrink:0}.reconnect-btn[data-v-ffa968ff],.delete-btn[data-v-ffa968ff]{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:inherit;cursor:pointer;font-size:12px;padding:0;border-radius:2px;transition:all .2s}.reconnect-btn[data-v-ffa968ff]:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.delete-btn[data-v-ffa968ff]:hover{background:var(--color-error);border-color:var(--color-error);color:#fff}.section-divider[data-v-ffa968ff]{height:var(--border-width-thin);background:var(--border-primary);margin:var(--space-1) 0}.add-section[data-v-ffa968ff]{background:var(--surface-secondary)}.add-item[data-v-ffa968ff]{color:var(--color-primary);font-weight:500;display:flex;align-items:center;gap:var(--space-2)}.add-icon[data-v-ffa968ff]{font-size:18px;font-weight:600}.dropdown-arrow[data-v-ffa968ff]{margin-left:auto;font-size:10px;opacity:.6}.nested-menu[data-v-ffa968ff]{padding-left:var(--space-3);background:var(--surface-tertiary)}.nested-item[data-v-ffa968ff]{display:flex;align-items:center;gap:var(--space-2)}.db-icon[data-v-ffa968ff]{width:16px;height:16px}.project-item[data-v-ffa968ff]{font-family:var(--font-family-mono);font-size:var(--font-size-body-sm)}.placeholder-text[data-v-ffa968ff]{color:var(--text-secondary);font-style:italic}.about-dropdown[data-v-ffa968ff]{min-width:180px}.about-dropdown .dropdown-item[data-v-ffa968ff]{display:flex;align-items:center;gap:var(--space-2)}.item-icon[data-v-ffa968ff]{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--text-secondary)}.about-dropdown .dropdown-item:hover .item-icon[data-v-ffa968ff]{color:var(--text-primary)}.external-link-icon[data-v-ffa968ff]{margin-left:auto;font-size:12px;color:var(--text-tertiary)}.modal-overlay[data-v-ffa968ff]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:3000}.modal-content[data-v-ffa968ff]{background:var(--surface-primary);border:var(--border-width-thin) solid var(--border-primary);box-shadow:var(--shadow-lg);width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;border-radius:8px}.modal-header[data-v-ffa968ff]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:var(--border-width-thin) solid var(--border-secondary);flex-shrink:0}.modal-title[data-v-ffa968ff]{font-size:var(--font-size-body);font-weight:600;color:var(--text-primary);margin:0}.modal-close[data-v-ffa968ff]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.modal-close[data-v-ffa968ff]:hover{background:var(--surface-secondary);color:var(--text-primary)}.modal-body[data-v-ffa968ff]{padding:var(--space-4);overflow-y:auto;flex:1;font-size:var(--font-size-body-sm);color:var(--text-primary);line-height:var(--line-height-relaxed)}.modal-body p[data-v-ffa968ff]{margin:0 0 var(--space-3) 0}.modal-body p[data-v-ffa968ff]:last-child{margin-bottom:0}.dependency-arrows[data-v-41bb5679]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:visible;will-change:transform;shape-rendering:geometricPrecision}.arrow-group[data-v-41bb5679]{pointer-events:none}.arrow-path[data-v-41bb5679]{transition:opacity .2s,stroke-width .2s}.arrow-path[data-v-41bb5679]:hover{stroke-width:4}.onboarding-overlay[data-v-d30c5dcb]{position:fixed;inset:0;background:color-mix(in srgb,var(--color-purple) 10%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10001;padding:var(--space-4)}.onboarding-modal[data-v-d30c5dcb]{background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);box-shadow:var(--shadow-lg);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;padding:var(--space-6);border-radius:var(--border-radius-md)}.modal-header[data-v-d30c5dcb]{text-align:center;margin-bottom:var(--space-6)}.modal-header h1[data-v-d30c5dcb]{font-size:var(--font-size-heading);font-weight:700;color:var(--text-primary);margin:0 0 var(--space-2) 0}.modal-subtitle[data-v-d30c5dcb]{font-size:var(--font-size-body);color:var(--text-secondary);margin:0}.options-grid[data-v-d30c5dcb]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);margin-bottom:var(--space-5)}.option-card[data-v-d30c5dcb]{background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);border-radius:var(--border-radius-md);padding:var(--space-5);cursor:pointer;text-align:center;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.option-card[data-v-d30c5dcb]:hover{background:var(--surface-secondary);box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:color-mix(in srgb,var(--color-purple) 40%,var(--border-primary))}.option-card[data-v-d30c5dcb]:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.option-card[data-v-d30c5dcb]:focus-visible{outline:2px solid var(--color-purple);outline-offset:2px}.option-icon[data-v-d30c5dcb]{width:48px;height:48px;margin-bottom:var(--space-2);object-fit:contain}.option-icon-disabled[data-v-d30c5dcb]{filter:grayscale(100%);opacity:.5}.option-card-disabled[data-v-d30c5dcb]{cursor:not-allowed;opacity:.7}.option-card-disabled[data-v-d30c5dcb]:hover{background:var(--surface-primary);box-shadow:none;transform:none;border-color:var(--border-primary)}.option-badge-soon[data-v-d30c5dcb]{color:var(--text-secondary);background:var(--surface-secondary)}.option-card h2[data-v-d30c5dcb]{font-size:var(--font-size-body-lg);font-weight:600;color:var(--text-primary);margin:0}.option-card p[data-v-d30c5dcb]{font-size:var(--font-size-body-sm);color:var(--text-secondary);line-height:var(--line-height-normal);margin:0;flex:1}.option-badge[data-v-d30c5dcb]{font-size:var(--font-size-caption);color:var(--color-purple);font-weight:600;background:color-mix(in srgb,var(--color-purple) 10%,transparent);padding:var(--space-1) var(--space-2);border-radius:var(--border-radius-sm);margin-top:var(--space-2)}.modal-footer[data-v-d30c5dcb]{text-align:center;padding-top:var(--space-4);border-top:var(--border-width-thin) solid var(--border-secondary)}.skip-button[data-v-d30c5dcb]{background:transparent;border:none;color:var(--text-secondary);font-size:var(--font-size-body-sm);cursor:pointer;padding:var(--space-2) var(--space-3);transition:color .2s}.skip-button[data-v-d30c5dcb]:hover{color:var(--text-primary);text-decoration:underline}.skip-button[data-v-d30c5dcb]:focus-visible{outline:2px solid var(--color-purple);outline-offset:2px;border-radius:var(--border-radius-sm)}.modal-fade-enter-active[data-v-d30c5dcb],.modal-fade-leave-active[data-v-d30c5dcb]{transition:opacity .3s ease}.modal-fade-enter-active .onboarding-modal[data-v-d30c5dcb],.modal-fade-leave-active .onboarding-modal[data-v-d30c5dcb]{transition:transform .3s ease}.modal-fade-enter-from[data-v-d30c5dcb],.modal-fade-leave-to[data-v-d30c5dcb]{opacity:0}.modal-fade-enter-from .onboarding-modal[data-v-d30c5dcb],.modal-fade-leave-to .onboarding-modal[data-v-d30c5dcb]{transform:scale(.95)}.upload-progress[data-v-6a7e0b25]{position:fixed;bottom:0;left:0;right:0;background:var(--surface-primary);border-top:var(--border-width-thin) solid var(--border-primary);z-index:10000;padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.progress-bar[data-v-6a7e0b25]{height:4px;background:var(--surface-secondary);border-radius:2px;overflow:hidden}.progress-bar-indeterminate[data-v-6a7e0b25]{height:100%;width:30%;background:var(--color-purple);border-radius:2px;animation:indeterminate-6a7e0b25 1.5s ease-in-out infinite}@keyframes indeterminate-6a7e0b25{0%{transform:translate(-100%)}to{transform:translate(400%)}}.progress-info[data-v-6a7e0b25]{display:flex;justify-content:space-between;align-items:center}.progress-text[data-v-6a7e0b25]{font-size:var(--font-size-body-sm);color:var(--text-primary)}.progress-count[data-v-6a7e0b25]{color:var(--text-secondary)}.slide-enter-active[data-v-6a7e0b25],.slide-leave-active[data-v-6a7e0b25]{transition:transform .2s ease,opacity .2s ease}.slide-enter-from[data-v-6a7e0b25],.slide-leave-to[data-v-6a7e0b25]{transform:translateY(100%);opacity:0}.box-creation-buttons[data-v-31ed4b4d]{pointer-events:none}.creation-button[data-v-31ed4b4d]{position:absolute;pointer-events:auto;width:28px;height:28px;border-radius:6px;border:1px solid rgba(0,0,0,.15);background:#78787859;color:#3c3c3cb3;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.creation-button[data-v-31ed4b4d]:hover{background:#64646480;color:#282828e6;border-color:#00000040}.creation-button[data-v-31ed4b4d]:active{transform:translate(-50%) scale(.95)}.creation-button[data-v-31ed4b4d]:last-child:active{transform:translateY(-50%) scale(.95)}.page[data-v-e62c3410]{position:relative;width:100%;height:100vh;padding-top:32px;overflow:hidden}.page-footer[data-v-e62c3410]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#ffffffe6;border-top:1px solid #e0e0e0;font-size:12px;color:#666;z-index:100}.footer-description[data-v-e62c3410]{color:#888}.footer-links[data-v-e62c3410]{display:flex;gap:16px}.footer-links a[data-v-e62c3410]{color:#666;text-decoration:none}.footer-links a[data-v-e62c3410]:hover{color:#333;text-decoration:underline}.page-container[data-v-8eec496a]{min-height:100vh;background:var(--surface-secondary, #f5f5f5);padding:var(--space-6, 2rem)}.page-content[data-v-8eec496a]{max-width:800px;margin:0 auto;background:var(--surface-primary, white);border:1px solid var(--border-primary, #e0e0e0);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 2rem);box-shadow:0 2px 8px #0000001a}.back-button[data-v-8eec496a]{background:transparent;border:1px solid var(--border-primary, #e0e0e0);color:var(--text-primary, #333);padding:var(--space-2, .5rem) var(--space-3, .75rem);border-radius:var(--radius-md, 4px);cursor:pointer;font-size:14px;margin-bottom:var(--space-4, 1rem);transition:all .2s ease}.back-button[data-v-8eec496a]:hover{background:var(--surface-secondary, #f5f5f5);border-color:var(--border-hover, #999)}.markdown-content[data-v-8eec496a]{color:var(--text-primary, #333);line-height:1.6}.markdown-content[data-v-8eec496a] h1{font-size:2rem;margin-bottom:var(--space-4, 1rem);color:var(--text-primary, #333);border-bottom:2px solid var(--border-primary, #e0e0e0);padding-bottom:var(--space-2, .5rem)}.markdown-content[data-v-8eec496a] h2{font-size:1.5rem;margin-top:var(--space-6, 2rem);margin-bottom:var(--space-3, .75rem);color:var(--text-primary, #333)}.markdown-content[data-v-8eec496a] h3{font-size:1.25rem;margin-top:var(--space-4, 1rem);margin-bottom:var(--space-2, .5rem);color:var(--text-secondary, #666)}.markdown-content[data-v-8eec496a] p{margin-bottom:var(--space-3, .75rem)}.markdown-content[data-v-8eec496a] ul,.markdown-content[data-v-8eec496a] ol{margin-bottom:var(--space-3, .75rem);padding-left:var(--space-5, 1.5rem)}.markdown-content[data-v-8eec496a] li{margin-bottom:var(--space-2, .5rem)}.markdown-content[data-v-8eec496a] a{color:var(--accent-primary, #007bff);text-decoration:none}.markdown-content[data-v-8eec496a] a:hover{text-decoration:underline}.markdown-content[data-v-8eec496a] strong{font-weight:600;color:var(--text-primary, #333)}.markdown-content[data-v-8eec496a] code{background:var(--surface-secondary, #f5f5f5);padding:2px 6px;border-radius:3px;font-family:Monaco,Menlo,monospace;font-size:.9em}.markdown-content[data-v-8eec496a] pre{background:var(--surface-secondary, #f5f5f5);padding:var(--space-3, .75rem);border-radius:var(--radius-md, 4px);overflow-x:auto;margin-bottom:var(--space-3, .75rem)}.markdown-content[data-v-8eec496a] blockquote{border-left:4px solid var(--border-primary, #e0e0e0);padding-left:var(--space-3, .75rem);margin-left:0;color:var(--text-secondary, #666)}.page-container[data-v-97ee51a2]{min-height:100vh;background:var(--surface-secondary, #f5f5f5);padding:var(--space-6, 2rem)}.page-content[data-v-97ee51a2]{max-width:800px;margin:0 auto;background:var(--surface-primary, white);border:1px solid var(--border-primary, #e0e0e0);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 2rem);box-shadow:0 2px 8px #0000001a}.back-button[data-v-97ee51a2]{background:transparent;border:1px solid var(--border-primary, #e0e0e0);color:var(--text-primary, #333);padding:var(--space-2, .5rem) var(--space-3, .75rem);border-radius:var(--radius-md, 4px);cursor:pointer;font-size:14px;margin-bottom:var(--space-4, 1rem);transition:all .2s ease}.back-button[data-v-97ee51a2]:hover{background:var(--surface-secondary, #f5f5f5);border-color:var(--border-hover, #999)}.markdown-content[data-v-97ee51a2]{color:var(--text-primary, #333);line-height:1.6}.markdown-content[data-v-97ee51a2] h1{font-size:2rem;margin-bottom:var(--space-4, 1rem);color:var(--text-primary, #333);border-bottom:2px solid var(--border-primary, #e0e0e0);padding-bottom:var(--space-2, .5rem)}.markdown-content[data-v-97ee51a2] h2{font-size:1.5rem;margin-top:var(--space-6, 2rem);margin-bottom:var(--space-3, .75rem);color:var(--text-primary, #333)}.markdown-content[data-v-97ee51a2] h3{font-size:1.25rem;margin-top:var(--space-4, 1rem);margin-bottom:var(--space-2, .5rem);color:var(--text-secondary, #666)}.markdown-content[data-v-97ee51a2] p{margin-bottom:var(--space-3, .75rem)}.markdown-content[data-v-97ee51a2] ul,.markdown-content[data-v-97ee51a2] ol{margin-bottom:var(--space-3, .75rem);padding-left:var(--space-5, 1.5rem)}.markdown-content[data-v-97ee51a2] li{margin-bottom:var(--space-2, .5rem)}.markdown-content[data-v-97ee51a2] a{color:var(--accent-primary, #007bff);text-decoration:none}.markdown-content[data-v-97ee51a2] a:hover{text-decoration:underline}.markdown-content[data-v-97ee51a2] strong{font-weight:600;color:var(--text-primary, #333)}.markdown-content[data-v-97ee51a2] code{background:var(--surface-secondary, #f5f5f5);padding:2px 6px;border-radius:3px;font-family:Monaco,Menlo,monospace;font-size:.9em}.markdown-content[data-v-97ee51a2] pre{background:var(--surface-secondary, #f5f5f5);padding:var(--space-3, .75rem);border-radius:var(--radius-md, 4px);overflow-x:auto;margin-bottom:var(--space-3, .75rem)}.markdown-content[data-v-97ee51a2] blockquote{border-left:4px solid var(--border-primary, #e0e0e0);padding-left:var(--space-3, .75rem);margin-left:0;color:var(--text-secondary, #666)}.markdown-content[data-v-97ee51a2] hr{border:none;border-top:1px solid var(--border-primary, #e0e0e0);margin:var(--space-6, 2rem) 0}.workbench[data-v-5ac3c779]{min-height:100vh;background:var(--bg-primary);padding:var(--space-6)}.workbench-header[data-v-5ac3c779]{margin-bottom:var(--space-6)}.workbench-header h1[data-v-5ac3c779]{font-size:var(--font-size-heading-lg);color:var(--text-primary);margin:0 0 var(--space-2) 0}.workbench-header p[data-v-5ac3c779]{color:var(--text-secondary);margin:0}.workbench-content[data-v-5ac3c779]{display:grid;grid-template-columns:1fr 350px;gap:var(--space-6);max-width:1400px}.editor-section[data-v-5ac3c779]{background:var(--surface-primary);border-radius:var(--border-radius-lg);overflow:hidden;border:1px solid var(--border-primary)}.section-header[data-v-5ac3c779]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-primary)}.section-header h2[data-v-5ac3c779]{font-size:var(--font-size-body-lg);color:var(--text-primary);margin:0}.actions[data-v-5ac3c779]{display:flex;gap:var(--space-2)}.editor[data-v-5ac3c779]{height:400px}.editor[data-v-5ac3c779] .cm-editor{height:100%}.editor[data-v-5ac3c779] .cm-scroller{overflow:auto}.suggestions-panel[data-v-5ac3c779]{background:var(--surface-primary);border-radius:var(--border-radius-lg);padding:var(--space-4);border:1px solid var(--border-primary);height:fit-content}.suggestions-panel h2[data-v-5ac3c779]{font-size:var(--font-size-body-lg);color:var(--text-primary);margin:0 0 var(--space-4) 0}.suggestion-card[data-v-5ac3c779]{background:var(--surface-secondary);border-radius:var(--border-radius-md);padding:var(--space-3);margin-bottom:var(--space-3)}.suggestion-header[data-v-5ac3c779]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.line-badge[data-v-5ac3c779]{background:var(--surface-tertiary);color:var(--text-secondary);padding:var(--space-1) var(--space-2);border-radius:var(--border-radius-sm);font-size:var(--font-size-body-sm);font-family:var(--font-family-mono)}.message[data-v-5ac3c779]{color:var(--text-secondary);font-size:var(--font-size-body-sm)}.suggestion-diff[data-v-5ac3c779]{font-family:var(--font-family-mono);font-size:var(--font-size-body-sm);margin-bottom:var(--space-3);border-radius:var(--border-radius-sm);overflow:hidden}.diff-line[data-v-5ac3c779]{display:flex;padding:var(--space-2)}.diff-sign[data-v-5ac3c779]{width:20px;flex-shrink:0;font-weight:700}.diff-remove[data-v-5ac3c779]{background:#ef444426;color:#dc2626}.diff-add[data-v-5ac3c779]{background:#22c55e26;color:#16a34a}.btn[data-v-5ac3c779]{padding:var(--space-2) var(--space-3);border-radius:var(--border-radius-sm);font-size:var(--font-size-body-sm);cursor:pointer;border:none;background:var(--surface-accent);color:#fff}.btn[data-v-5ac3c779]:hover{opacity:.9}.btn-secondary[data-v-5ac3c779]{background:var(--surface-secondary);color:var(--text-primary)}.btn-accept[data-v-5ac3c779]{width:100%;background:#22c55e;color:#fff}.btn-accept[data-v-5ac3c779]:hover{background:#16a34a}.auth-callback[data-v-aac4d520]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#1a1a2e;color:#fff}.loading[data-v-aac4d520],.error[data-v-aac4d520]{text-align:center}.spinner[data-v-aac4d520]{width:48px;height:48px;border:4px solid #333;border-top-color:#4285f4;border-radius:50%;animation:spin-aac4d520 1s linear infinite;margin:0 auto 16px}@keyframes spin-aac4d520{to{transform:rotate(360deg)}}.error h2[data-v-aac4d520]{color:#ff6b6b;margin-bottom:8px}.error p[data-v-aac4d520]{color:#aaa;margin-bottom:24px}.error button[data-v-aac4d520]{background:#4285f4;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px}.error button[data-v-aac4d520]:hover{background:#3367d6}
