: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;--color-postgres: #336791;--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-md);--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: 12px}*,*: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-387b0200]{min-height:100vh;display:flex;flex-direction:column;font-family:var(--font-family-ui);color:var(--text-primary);background:var(--surface-primary);line-height:var(--line-height-normal)}.hero[data-v-387b0200]{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;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);overflow:hidden}.hero-decoration[data-v-387b0200]{position:absolute;pointer-events:none;-webkit-user-select:none;user-select:none}.deco-window[data-v-387b0200]{background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);box-shadow:var(--shadow-md);animation:float-387b0200 6s ease-in-out infinite}.deco-window-header[data-v-387b0200]{background:var(--surface-inverse);color:var(--text-inverse);padding:4px 8px;font-family:var(--font-family-mono);font-size:10px;font-weight:600}.deco-window-body[data-v-387b0200]{padding:8px;font-family:var(--font-family-mono);font-size:9px;line-height:1.4}.deco-window-body code[data-v-387b0200]{display:block;color:var(--text-primary)}.deco-window-1[data-v-387b0200]{top:12%;left:5%;width:180px;animation-delay:0s}.deco-window-2[data-v-387b0200]{top:8%;right:8%;width:180px;animation-delay:-2s}.deco-window-3[data-v-387b0200]{bottom:15%;left:8%;width:210px;animation-delay:-4s}.deco-table[data-v-387b0200]{padding:0}.deco-table-row[data-v-387b0200]{display:grid;grid-template-columns:60px 50px 36px;border-bottom:1px solid var(--border-tertiary)}.deco-table-row[data-v-387b0200]:last-child{border-bottom:none}.deco-table-row span[data-v-387b0200]{padding:3px 6px;font-size:8px;overflow:hidden;text-overflow:ellipsis}.deco-table-header[data-v-387b0200]{background:var(--surface-secondary);font-weight:600}.deco-schema[data-v-387b0200]{top:55%;right:6%;background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);box-shadow:var(--shadow-md);padding:8px 12px;font-family:var(--font-family-mono);font-size:9px;animation:float-387b0200 6s ease-in-out infinite;animation-delay:-1s}.schema-item[data-v-387b0200]{padding:2px 0}.schema-db[data-v-387b0200]{font-weight:700}.schema-table[data-v-387b0200]{padding-left:12px;color:var(--text-secondary)}.schema-table[data-v-387b0200]:before{content:"├ ";color:var(--text-tertiary)}.schema-item:last-child.schema-table[data-v-387b0200]:before{content:"└ "}.deco-bird[data-v-387b0200]{height:auto;filter:drop-shadow(0 0 0 white) drop-shadow(1px 0 0 white) drop-shadow(-1px 0 0 white) drop-shadow(0 1px 0 white) drop-shadow(0 -1px 0 white) drop-shadow(1px 1px 0 white) drop-shadow(-1px 1px 0 white) drop-shadow(1px -1px 0 white) drop-shadow(-1px -1px 0 white) drop-shadow(2px 0 0 white) drop-shadow(-2px 0 0 white) drop-shadow(0 2px 0 white) drop-shadow(0 -2px 0 white) drop-shadow(2px 2px 0 white) drop-shadow(-2px 2px 0 white) drop-shadow(2px -2px 0 white) drop-shadow(-2px -2px 0 white) drop-shadow(3px 0 0 white) drop-shadow(-3px 0 0 white) drop-shadow(0 3px 0 white) drop-shadow(0 -3px 0 white) drop-shadow(3px 3px 0 white) drop-shadow(-3px 3px 0 white) drop-shadow(3px -3px 0 white) drop-shadow(-3px -3px 0 white) drop-shadow(4px 0 0 white) drop-shadow(-4px 0 0 white) drop-shadow(0 4px 0 white) drop-shadow(0 -4px 0 white) drop-shadow(4px 4px 0 white) drop-shadow(-4px 4px 0 white) drop-shadow(4px -4px 0 white) drop-shadow(-4px -4px 0 white) drop-shadow(5px 0 0 white) drop-shadow(-5px 0 0 white) drop-shadow(0 5px 0 white) drop-shadow(0 -5px 0 white) drop-shadow(0 4px 8px rgba(0,0,0,.15));animation:float-387b0200 6s ease-in-out infinite}.deco-bird-1[data-v-387b0200]{top:8%;left:22%;width:180px;animation-delay:-.5s}.deco-bird-2[data-v-387b0200]{top:35%;left:2%;width:320px;animation-delay:-1.5s}.deco-bird-3[data-v-387b0200]{bottom:5%;left:35%;width:210px;animation-delay:-2.5s}.deco-bird-4[data-v-387b0200]{bottom:5%;right:15%;width:315px;animation-delay:-3.5s}.deco-bird-5[data-v-387b0200]{top:35%;right:3%;width:220px;animation-delay:-4.5s}.deco-bird-6[data-v-387b0200]{top:5%;right:35%;width:225px;animation-delay:-5.5s}.deco-note[data-v-387b0200]{bottom:20%;right:5%;background:#fffde7;border:1px solid #e0d87a;padding:8px 10px;font-family:var(--font-family-ui);font-size:9px;transform:rotate(3deg);box-shadow:2px 2px 4px #0000001a;animation:float-387b0200 7s ease-in-out infinite;animation-delay:-3s}.deco-note span[data-v-387b0200]{display:block}.deco-note span[data-v-387b0200]:first-child{font-weight:600;margin-bottom:2px}@keyframes float-387b0200{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.hero-content[data-v-387b0200]{position:relative;z-index:1;text-align:center;padding:var(--space-6);background:#d4d4d4d9;border:var(--border-width-thick) solid var(--border-primary);box-shadow:var(--shadow-lg);max-width:500px}.hero-title[data-v-387b0200]{font-family:var(--font-family-mono);font-size:clamp(48px,12vw,80px);font-weight:700;letter-spacing:.15em;margin:0 0 var(--space-3) 0;color:var(--text-primary)}.hero-tagline[data-v-387b0200]{font-size:clamp(16px,2.5vw,20px);margin:0 0 var(--space-4) 0;color:var(--text-primary)}.btn-primary[data-v-387b0200]{display:inline-block;padding:var(--space-3) var(--space-6);background:var(--surface-inverse);color:var(--text-inverse);border:var(--border-width-thick) solid var(--border-primary);border-radius:var(--border-radius-none);box-shadow:var(--shadow-md);font-family:var(--font-family-mono);font-size:var(--font-size-body);font-weight:600;text-decoration:none;cursor:pointer;transition:transform .1s,box-shadow .1s}.btn-primary[data-v-387b0200]:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-lg)}.btn-primary[data-v-387b0200]:active{transform:translate(2px,2px);box-shadow:var(--shadow-sm)}.scroll-hint[data-v-387b0200]{position:absolute;bottom:30px;left:50%;transform:translate(-50%);z-index:1;animation:bounce-387b0200 1.5s ease-in-out infinite}.scroll-chevron[data-v-387b0200]{display:block;width:14px;height:14px;border-right:2px solid var(--text-primary);border-bottom:2px solid var(--text-primary);transform:rotate(45deg);opacity:.5}@keyframes bounce-387b0200{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-8px)}}.section[data-v-387b0200]{padding:80px var(--space-6);max-width:1200px;margin:0 auto;width:100%}.section-title[data-v-387b0200]{font-family:var(--font-family-mono);font-size:clamp(24px,4vw,32px);letter-spacing:.1em;text-align:center;margin:0 0 48px}.features[data-v-387b0200]{background:var(--surface-secondary);max-width:none}.features .section-title[data-v-387b0200]{max-width:1200px;margin-left:auto;margin-right:auto}.features-grid[data-v-387b0200]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);max-width:1200px;margin:0 auto}.feature-card[data-v-387b0200]{background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);border-radius:var(--border-radius-none);box-shadow:var(--shadow-md);padding:var(--space-6);transition:transform .15s,box-shadow .15s}.feature-card[data-v-387b0200]:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-lg)}.feature-icon[data-v-387b0200]{width:48px;height:48px;margin-bottom:var(--space-4);display:flex;align-items:center;justify-content:center}.icon-grid[data-v-387b0200]{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:36px;height:36px}.icon-grid span[data-v-387b0200]{background:var(--surface-inverse);border-radius:0}.icon-sql[data-v-387b0200]{font-family:var(--font-family-mono);font-size:28px;font-weight:700}.icon-sql .bracket[data-v-387b0200]{color:var(--text-primary)}.icon-sql .cursor[data-v-387b0200]{animation:blink-387b0200 1s step-end infinite}@keyframes blink-387b0200{50%{opacity:0}}.db-stack[data-v-387b0200]{display:flex;flex-direction:column;gap:2px}.db-layer[data-v-387b0200]{width:32px;height:8px;background:var(--surface-inverse);border-radius:2px}.db-layer[data-v-387b0200]:first-child{border-radius:4px 4px 2px 2px}.db-layer[data-v-387b0200]:last-child{border-radius:2px 2px 4px 4px}.csv-icon[data-v-387b0200]{position:relative;width:36px;height:36px}.csv-doc[data-v-387b0200]{position:absolute;top:0;left:4px;width:24px;height:30px;background:var(--surface-inverse);border-radius:2px}.csv-lines[data-v-387b0200]{display:flex;flex-direction:column;gap:4px;padding:6px 4px}.csv-lines span[data-v-387b0200]{height:2px;background:var(--surface-primary);border-radius:1px}.csv-lines span[data-v-387b0200]:nth-child(1){width:100%}.csv-lines span[data-v-387b0200]:nth-child(2){width:70%}.csv-lines span[data-v-387b0200]:nth-child(3){width:85%}.csv-arrow[data-v-387b0200]{position:absolute;bottom:0;right:0;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--surface-inverse)}.map-icon[data-v-387b0200]{position:relative;width:36px;height:32px}.map-fold[data-v-387b0200]{position:absolute;background:var(--surface-inverse);height:100%}.map-fold[data-v-387b0200]:nth-child(1){left:0;width:14px;clip-path:polygon(0 15%,100% 0,100% 100%,0 85%)}.map-fold[data-v-387b0200]:nth-child(2){left:12px;width:14px;clip-path:polygon(0 0,100% 15%,100% 85%,0 100%)}.map-fold[data-v-387b0200]:nth-child(3){left:24px;width:14px;clip-path:polygon(0 15%,100% 0,100% 100%,0 85%)}.map-marker[data-v-387b0200]{position:absolute;top:6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:8px solid var(--surface-primary);filter:drop-shadow(0 0 0 var(--surface-inverse))}.map-marker[data-v-387b0200]:before{content:"";position:absolute;top:-10px;left:-3px;width:6px;height:6px;background:var(--surface-primary);border-radius:50%}.opensource-icon[data-v-387b0200]{font-family:var(--font-family-mono);font-size:24px;font-weight:700;color:var(--text-primary)}.feature-card a[data-v-387b0200]{color:var(--text-primary);text-decoration:underline;text-underline-offset:2px}.feature-card a[data-v-387b0200]:hover{text-decoration-thickness:2px}.feature-card h3[data-v-387b0200]{font-family:var(--font-family-mono);font-size:var(--font-size-heading);margin:0 0 var(--space-3) 0}.feature-card p[data-v-387b0200]{margin:0;color:var(--text-secondary);font-size:var(--font-size-body)}.section-inverted[data-v-387b0200]{background:var(--surface-inverse);color:var(--text-inverse);max-width:none}.pro-container[data-v-387b0200]{max-width:800px;margin:0 auto}.pro .section-title[data-v-387b0200]{color:var(--text-inverse)}.pro-price[data-v-387b0200]{font-family:var(--font-family-mono);font-size:clamp(32px,6vw,48px);text-align:center;margin:0 0 48px}.pro-features[data-v-387b0200]{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:48px}.pro-feature[data-v-387b0200]{display:flex;gap:var(--space-4);padding:var(--space-4);border:1px solid rgba(255,255,255,.2)}.pro-feature.available[data-v-387b0200]{border-color:#fff6}.pro-feature.coming-soon[data-v-387b0200]{opacity:.6}.status-icon[data-v-387b0200]{font-size:20px;line-height:1;flex-shrink:0;width:24px;text-align:center}.pro-feature-content h4[data-v-387b0200]{font-family:var(--font-family-mono);font-size:var(--font-size-body-lg);margin:0 0 var(--space-1) 0}.pro-feature-content p[data-v-387b0200]{margin:0;font-size:var(--font-size-body-sm);opacity:.8}.badge[data-v-387b0200]{font-size:var(--font-size-caption);opacity:.6;font-weight:400}.pro-philosophy[data-v-387b0200]{text-align:center;font-style:italic;opacity:.8;font-size:var(--font-size-lg);margin:0}.testimonials[data-v-387b0200]{background:var(--surface-primary)}.testimonials-grid[data-v-387b0200]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.testimonial-card[data-v-387b0200]{background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);border-radius:var(--border-radius-none);box-shadow:var(--shadow-md);padding:var(--space-5)}.testimonial-main[data-v-387b0200]{grid-column:span 2;grid-row:span 2;display:flex;flex-direction:column;justify-content:center}.testimonial-main blockquote[data-v-387b0200]{font-size:var(--font-size-body-lg);font-style:italic;margin:0 0 var(--space-4) 0;line-height:var(--line-height-relaxed)}.testimonial-main cite[data-v-387b0200]{display:flex;flex-direction:column;font-style:normal}.testimonial-main .author[data-v-387b0200]{font-weight:600;font-family:var(--font-family-mono)}.testimonial-main .role[data-v-387b0200]{font-size:var(--font-size-body-sm);color:var(--text-secondary)}.testimonial-placeholder[data-v-387b0200]{position:relative;display:flex;align-items:center;justify-content:center;min-height:100px;overflow:hidden}.testimonial-placeholder .hatching[data-v-387b0200]{position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 4px,var(--surface-tertiary) 4px,var(--surface-tertiary) 8px);opacity:.5}.testimonial-placeholder span[data-v-387b0200]{position:relative;z-index:1;font-size:var(--font-size-body-sm);color:var(--text-secondary);font-style:italic}.faq[data-v-387b0200]{background:var(--surface-secondary);max-width:none}.faq .section-title[data-v-387b0200]{max-width:800px;margin-left:auto;margin-right:auto}.faq-list[data-v-387b0200]{max-width:800px;margin:0 auto;border:var(--border-width-thick) solid var(--border-primary);box-shadow:var(--shadow-md)}.faq-item[data-v-387b0200]{background:var(--surface-primary);border-bottom:var(--border-width-thin) solid var(--border-primary)}.faq-item[data-v-387b0200]:last-child{border-bottom:none}.faq-question[data-v-387b0200]{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:none;border:none;font-family:var(--font-family-ui);font-size:var(--font-size-body);font-weight:500;text-align:left;cursor:pointer;transition:background .1s}.faq-question[data-v-387b0200]:hover{background:var(--surface-secondary)}.faq-toggle[data-v-387b0200]{font-family:var(--font-family-mono);font-size:20px;font-weight:700;width:24px;text-align:center;flex-shrink:0}.faq-answer[data-v-387b0200]{padding:0 var(--space-4) var(--space-4) calc(var(--space-4) + 24px + var(--space-3))}.faq-answer p[data-v-387b0200]{margin:0;color:var(--text-secondary);line-height:var(--line-height-relaxed)}.landing-footer[data-v-387b0200]{margin-top:auto;background:var(--surface-inverse);color:var(--text-inverse);padding:48px var(--space-6)}.footer-content[data-v-387b0200]{max-width:1200px;margin:0 auto;text-align:center}.footer-logo[data-v-387b0200]{display:block;font-family:var(--font-family-mono);font-size:var(--font-size-heading);font-weight:700;letter-spacing:.1em;margin-bottom:var(--space-4)}.footer-links[data-v-387b0200]{display:flex;justify-content:center;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.footer-links a[data-v-387b0200]{color:#ffffffb3;text-decoration:none;font-size:var(--font-size-body-sm);transition:color .1s}.footer-links a[data-v-387b0200]:hover{color:var(--text-inverse)}.footer-links .divider[data-v-387b0200]{opacity:.3}.footer-tagline[data-v-387b0200]{margin:0;font-size:var(--font-size-body-sm);opacity:.6}@media(max-width:900px){.features-grid[data-v-387b0200],.testimonials-grid[data-v-387b0200]{grid-template-columns:repeat(2,1fr)}.testimonial-main[data-v-387b0200]{grid-column:span 2;grid-row:span 1}}@media(max-width:900px){.deco-window-1[data-v-387b0200],.deco-window-3[data-v-387b0200],.deco-schema[data-v-387b0200]{display:none}.deco-window-2[data-v-387b0200]{top:5%;right:5%}.deco-note[data-v-387b0200]{bottom:10%;right:3%}}@media(max-width:600px){.section[data-v-387b0200]{padding:60px var(--space-4)}.features-grid[data-v-387b0200],.testimonials-grid[data-v-387b0200]{grid-template-columns:1fr}.testimonial-main[data-v-387b0200]{grid-column:span 1}.hero-decoration[data-v-387b0200],.scroll-hint[data-v-387b0200]{display:none}.hero-content[data-v-387b0200]{padding:var(--space-4);margin:var(--space-4);max-width:none}.hero-features[data-v-387b0200]{flex-direction:column;gap:var(--space-1)}.hero-features .separator[data-v-387b0200]{display:none}.pro-feature[data-v-387b0200]{flex-direction:column;gap:var(--space-2)}.status-icon[data-v-387b0200]{display:none}}.infinite-canvas[data-v-1fa51db1]{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-1fa51db1]{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-1fa51db1]{pointer-events:none}.viewport.is-moving[data-v-1fa51db1] .resizable-box{box-shadow:none!important}.viewport.is-moving[data-v-1fa51db1] .resizable-box:before{display:none}.selection-rectangle[data-v-1fa51db1]{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-1fa51db1]: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-4f9a9181]{position:absolute;display:flex;flex-direction:column;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:style;will-change:transform,left,top,width,height;backface-visibility:hidden;-webkit-backface-visibility:hidden}.resizable-box.selected[data-v-4f9a9181]{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-4f9a9181]: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-4f9a9181]{z-index:100;box-shadow:none!important;transition:none!important}.resizable-box.dragging[data-v-4f9a9181]:before{display:none}.box-header[data-v-4f9a9181]{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-4f9a9181]:active{cursor:grabbing}.box-content[data-v-4f9a9181]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;cursor:auto;contain:layout}.resize-handle[data-v-4f9a9181]{position:absolute;background:transparent;z-index:10}.resize-handle.n[data-v-4f9a9181],.resize-handle.s[data-v-4f9a9181]{height:var(--handle-size);left:0;right:0}.resize-handle.e[data-v-4f9a9181],.resize-handle.w[data-v-4f9a9181]{width:var(--handle-size);top:0;bottom:0}.resize-handle.n[data-v-4f9a9181]{top:calc(var(--handle-size) / -2);cursor:ns-resize}.resize-handle.s[data-v-4f9a9181]{bottom:calc(var(--handle-size) / -2);cursor:ns-resize}.resize-handle.e[data-v-4f9a9181]{right:calc(var(--handle-size) / -2);cursor:ew-resize}.resize-handle.w[data-v-4f9a9181]{left:calc(var(--handle-size) / -2);cursor:ew-resize}.resize-handle.n[data-v-4f9a9181]:before,.resize-handle.s[data-v-4f9a9181]: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-4f9a9181]:before,.resize-handle.w[data-v-4f9a9181]: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-4f9a9181],.resize-handle.se[data-v-4f9a9181],.resize-handle.sw[data-v-4f9a9181],.resize-handle.nw[data-v-4f9a9181]{width:var(--handle-size);height:var(--handle-size)}.resize-handle.ne[data-v-4f9a9181]{top:calc(var(--handle-size) / -2);right:calc(var(--handle-size) / -2);cursor:nesw-resize}.resize-handle.se[data-v-4f9a9181]{bottom:calc(var(--handle-size) / -2);right:calc(var(--handle-size) / -2);cursor:nwse-resize}.resize-handle.sw[data-v-4f9a9181]{bottom:calc(var(--handle-size) / -2);left:calc(var(--handle-size) / -2);cursor:nesw-resize}.resize-handle.nw[data-v-4f9a9181]{top:calc(var(--handle-size) / -2);left:calc(var(--handle-size) / -2);cursor:nwse-resize}.box-name-container[data-v-7a628d51]{display:flex;align-items:center;gap:var(--space-2);margin-right:auto;min-width:0}.box-name[data-v-7a628d51]{cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700}.box-name[data-v-7a628d51]:hover{opacity:.7}.name-input[data-v-7a628d51]{background:transparent;border:none;outline:none;color:inherit;font:inherit;padding:0;margin:0;font-weight:700;min-width:100px;max-width:400px;line-height:1}.header-buttons[data-v-7a628d51]{display:flex;gap:var(--space-1);flex-shrink:0}.header-buttons.no-name[data-v-7a628d51]{margin-left:auto}.header-btn[data-v-7a628d51]{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-7a628d51]:hover{background:var(--text-inverse);color:var(--surface-inverse)}.delete-btn[data-v-7a628d51]:hover{background:var(--color-error);color:var(--text-inverse)}.query-editor-wrapper[data-v-9499f819]{position:relative;overflow:hidden;flex-shrink:0;contain:layout}.query-editor[data-v-9499f819],.query-editor[data-v-9499f819] .cm-editor{height:100%;overflow:hidden}.query-editor[data-v-9499f819] .cm-scroller{overflow:auto!important;scrollbar-width:none;scroll-behavior:smooth}.query-editor[data-v-9499f819] .cm-scroller::-webkit-scrollbar{display:none}.run-btn[data-v-9499f819]{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-9499f819]:hover:not(:disabled){background:var(--surface-secondary)}.run-btn[data-v-9499f819]:disabled{color:var(--text-tertiary);cursor:not-allowed;opacity:.5}.elapsed[data-v-9499f819]{font-variant-numeric:tabular-nums}.results-section[data-v-988830bc]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.error-banner[data-v-988830bc]{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;display:flex;align-items:center;gap:var(--space-2)}.fix-loading[data-v-988830bc]{color:var(--text-secondary);font-weight:400;font-style:italic}.table-container[data-v-988830bc]{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;cursor:default;position:relative;scrollbar-width:none;contain:strict}.table-container[data-v-988830bc]::-webkit-scrollbar{display:none}.loading-overlay[data-v-988830bc]{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-988830bc]{font-size:var(--font-size-body-sm);color:var(--text-secondary)}.results-table[data-v-988830bc]{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-988830bc] ::selection{background:var(--color-selection)}.results-table th[data-v-988830bc],.results-table td[data-v-988830bc]{padding:var(--table-cell-padding);white-space:nowrap;vertical-align:baseline}.results-table thead th[data-v-988830bc]{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-988830bc]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s}.results-table thead th.sortable[data-v-988830bc]:hover{background:var(--table-row-hover-bg)}.results-table thead th.sortable.sorted[data-v-988830bc]{font-weight:600}.column-header[data-v-988830bc]{display:inline-flex;align-items:center;gap:var(--space-1)}.type-icon[data-v-988830bc]{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--text-tertiary);flex-shrink:0}.column-name[data-v-988830bc]{flex:1}.sort-indicator[data-v-988830bc]{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-988830bc]{color:var(--text-primary)}.results-table thead th[data-v-988830bc]: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-988830bc]{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-988830bc],.results-table tbody tr:last-child .row-number-col[data-v-988830bc]{border-block-end:none}.results-table tbody tr[data-v-988830bc]{background:var(--surface-primary)}.results-table tbody tr[data-v-988830bc]:hover{background:var(--table-row-hover-bg)}.null-value[data-v-988830bc]{color:var(--text-tertiary);font-style:italic}.number-cell[data-v-988830bc]{text-align:end;font-variant-numeric:tabular-nums}.results-table thead th.number-cell .column-header[data-v-988830bc]{justify-content:flex-end}.results-table .row-number-col[data-v-988830bc]{position:sticky;inset-inline-start:0;width:36px;min-width:36px;padding:var(--space-2);text-align:center;vertical-align:middle;-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-988830bc]{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-988830bc]{background:var(--table-row-hover-bg)}.row-number[data-v-988830bc]{font-size:var(--font-size-caption);font-variant-numeric:tabular-nums;color:var(--text-secondary);transition:opacity .1s}.row-number.hidden[data-v-988830bc]{opacity:0}.detail-btn[data-v-988830bc]{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-988830bc]{opacity:1;pointer-events:auto}.detail-btn[data-v-988830bc]:hover{background:var(--surface-secondary);color:var(--text-primary)}.results-footer[data-v-988830bc]{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-988830bc]{display:flex;align-items:center;gap:var(--space-2)}.stat[data-v-988830bc]{font-size:var(--font-size-body-sm);color:var(--text-primary);white-space:nowrap}.stat[data-v-988830bc]:before{content:"·";margin-inline-end:var(--space-2);color:var(--text-tertiary)}.stat[data-v-988830bc]:first-child:before,.engine-badge+.stat[data-v-988830bc]:before{display:none}.cache-hit[data-v-988830bc]{color:var(--color-success)}.engine-badge[data-v-988830bc]{font-weight:600;padding:2px 6px;border-radius:3px;font-size:var(--font-size-caption)}.engine-badge[data-engine=bigquery][data-v-988830bc]{background:var(--color-bigquery);color:#fff}.engine-badge[data-engine=duckdb][data-v-988830bc]{background:var(--color-duckdb);color:#000}.engine-badge[data-engine=postgres][data-v-988830bc]{background:var(--color-postgres);color:#fff}.results-actions[data-v-988830bc]{display:flex;align-items:center;gap:var(--space-2)}.pagination[data-v-988830bc]{display:flex;align-items:center;gap:var(--space-1)}.pagination-btn[data-v-988830bc]{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-988830bc]:hover:not(:disabled){background:var(--surface-secondary)}.pagination-btn[data-v-988830bc]:disabled{opacity:.3;cursor:not-allowed}.page-info[data-v-988830bc]{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-988830bc]{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-988830bc]:hover:not(:disabled){background:var(--surface-secondary)}.download-btn[data-v-988830bc]:disabled{opacity:.3;cursor:not-allowed}.export-dropdown[data-v-988830bc]{position:relative}.export-menu[data-v-988830bc]{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-988830bc]{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-988830bc]:hover{background:var(--surface-secondary)}.export-option[data-v-988830bc]:not(:last-child){border-bottom:1px solid var(--border-tertiary)}.format-name[data-v-988830bc]{font-size:var(--font-size-body-sm);font-weight:600;color:var(--text-primary)}.format-desc[data-v-988830bc]{font-size:var(--font-size-caption);color:var(--text-secondary);margin-top:2px}.export-spinner[data-v-988830bc]{width:14px;height:14px;border:2px solid var(--border-secondary);border-top-color:var(--text-primary);border-radius:50%;animation:spin-988830bc .8s linear infinite}@keyframes spin-988830bc{to{transform:rotate(360deg)}}.empty-state[data-v-988830bc]{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:var(--font-size-body)}.splitter[data-v-69936df4]{height:var(--border-width-thin);background:var(--border-primary);cursor:ns-resize;flex-shrink:0;position:relative;z-index:10;isolation:isolate}.splitter[data-v-69936df4]:before{content:"";position:absolute;inset:-6px 0;z-index:10}.schema-browser[data-v-ed09d865]{display:flex;height:100%;background:var(--surface-primary);overflow:hidden}.column[data-v-ed09d865]{flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden}.column-schema[data-v-ed09d865]{flex:1;min-width:200px}.resize-handle[data-v-ed09d865]{flex:0 0 var(--border-width-thin);background:var(--border-primary);cursor:col-resize;position:relative}.resize-handle[data-v-ed09d865]:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--space-1) * -1);right:calc(var(--space-1) * -1)}.column-header[data-v-ed09d865]{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-ed09d865]{flex:1;overflow-y:auto;overflow-x:hidden}.item[data-v-ed09d865]{display:flex;align-items:center;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}.db-type-badge[data-v-ed09d865]{flex-shrink:0;font-size:9px;font-weight:600;padding:2px 4px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}.db-type-badge[data-type=duckdb][data-v-ed09d865]{background:var(--color-duckdb);color:#000}.db-type-badge[data-type=bigquery][data-v-ed09d865]{background:var(--color-bigquery);color:#fff}.db-type-badge[data-type=postgres][data-v-ed09d865]{background:var(--color-postgres);color:#fff}.item[data-v-ed09d865]:hover{background:var(--table-row-stripe-bg)}.item.selected[data-v-ed09d865]{background:var(--table-row-stripe-bg);font-weight:500}.item-name[data-v-ed09d865]{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-ed09d865]{font-size:var(--font-size-caption);color:var(--text-secondary);flex-shrink:0}.schema-field[data-v-ed09d865]{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-2) var(--space-3);gap:var(--space-2)}.field-name[data-v-ed09d865]{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-ed09d865]{font-size:var(--font-size-caption);font-family:var(--font-family-mono);color:var(--text-secondary);flex-shrink:0}.loading[data-v-ed09d865]{padding:var(--space-3);text-align:center;color:var(--text-secondary);font-size:var(--font-size-body-sm)}.query-button[data-v-ed09d865]{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-ed09d865]: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)}.modal-overlay[data-v-f41676b3]{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)}.modal-content[data-v-f41676b3]{background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);box-shadow:var(--shadow-lg);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;padding:var(--space-5);border-radius:var(--border-radius-md)}.modal-header[data-v-f41676b3]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:var(--border-width-thin) solid var(--border-secondary)}.header-content[data-v-f41676b3]{display:flex;align-items:center;gap:var(--space-3)}.postgres-icon[data-v-f41676b3]{width:32px;height:32px;object-fit:contain}.modal-header h2[data-v-f41676b3]{font-size:var(--font-size-heading);font-weight:600;color:var(--text-primary);margin:0}.close-btn[data-v-f41676b3]{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:var(--space-1);line-height:1;transition:color .2s}.close-btn[data-v-f41676b3]:hover{color:var(--text-primary)}.connection-form[data-v-f41676b3]{display:flex;flex-direction:column;gap:var(--space-4)}.form-group[data-v-f41676b3]{display:flex;flex-direction:column;gap:var(--space-1)}.form-group label[data-v-f41676b3]{font-size:var(--font-size-body-sm);font-weight:500;color:var(--text-secondary)}.form-group input[data-v-f41676b3],.form-group select[data-v-f41676b3]{padding:var(--space-2) var(--space-3);border:var(--border-width-thick) solid var(--border-primary);border-radius:var(--border-radius-sm);font-size:var(--font-size-body);font-family:var(--font-family-mono);background:var(--surface-primary);color:var(--text-primary);transition:border-color .2s}.form-group input[data-v-f41676b3]:focus,.form-group select[data-v-f41676b3]:focus{outline:none;border-color:var(--color-purple)}.form-group input[data-v-f41676b3]::placeholder{color:var(--text-tertiary)}.form-row[data-v-f41676b3]{display:flex;gap:var(--space-3)}.flex-grow[data-v-f41676b3]{flex:1}.port-field[data-v-f41676b3]{width:100px}.port-field input[data-v-f41676b3]{text-align:center}.port-field input[data-v-f41676b3]::-webkit-outer-spin-button,.port-field input[data-v-f41676b3]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.port-field input[type=number][data-v-f41676b3]{-moz-appearance:textfield}.success-message[data-v-f41676b3]{background:color-mix(in srgb,var(--color-success) 10%,transparent);border:var(--border-width-thin) solid var(--color-success);border-radius:var(--border-radius-sm);padding:var(--space-2) var(--space-3);color:var(--color-success);font-size:var(--font-size-body-sm)}.error-message[data-v-f41676b3]{background:color-mix(in srgb,var(--color-error) 10%,transparent);border:var(--border-width-thin) solid var(--color-error);border-radius:var(--border-radius-sm);padding:var(--space-2) var(--space-3);color:var(--color-error);font-size:var(--font-size-body-sm)}.form-actions[data-v-f41676b3]{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-4);border-top:var(--border-width-thin) solid var(--border-secondary)}.btn-secondary[data-v-f41676b3],.btn-primary[data-v-f41676b3]{padding:var(--space-2) var(--space-4);border-radius:var(--border-radius-sm);font-size:var(--font-size-body);font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary[data-v-f41676b3]{background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);color:var(--text-secondary)}.btn-secondary[data-v-f41676b3]:hover{background:var(--surface-secondary);color:var(--text-primary)}.btn-primary[data-v-f41676b3]{background:var(--color-purple);border:var(--border-width-thick) solid var(--color-purple);color:#fff}.btn-primary[data-v-f41676b3]:hover:not(:disabled){background:color-mix(in srgb,var(--color-purple) 85%,black)}.btn-primary[data-v-f41676b3]:disabled{opacity:.5;cursor:not-allowed}.btn-test[data-v-f41676b3]{padding:var(--space-2) var(--space-4);border-radius:var(--border-radius-sm);font-size:var(--font-size-body);font-weight:500;cursor:pointer;transition:all .2s;background:var(--surface-primary);border:var(--border-width-thick) solid var(--border-primary);color:var(--text-primary)}.btn-test[data-v-f41676b3]:hover:not(:disabled){background:var(--surface-secondary)}.btn-test[data-v-f41676b3]:disabled{opacity:.5;cursor:not-allowed}.btn-test.success[data-v-f41676b3]{background:color-mix(in srgb,var(--color-success) 10%,transparent);border-color:var(--color-success);color:var(--color-success)}.modal-fade-enter-active[data-v-f41676b3],.modal-fade-leave-active[data-v-f41676b3]{transition:opacity .3s ease}.modal-fade-enter-active .modal-content[data-v-f41676b3],.modal-fade-leave-active .modal-content[data-v-f41676b3]{transition:transform .3s ease}.modal-fade-enter-from[data-v-f41676b3],.modal-fade-leave-to[data-v-f41676b3]{opacity:0}.modal-fade-enter-from .modal-content[data-v-f41676b3],.modal-fade-leave-to .modal-content[data-v-f41676b3]{transform:scale(.95)}.menu-bar[data-v-e712e093]{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-e712e093],.menu-right[data-v-e712e093]{display:flex;align-items:center;gap:0;height:100%}.app-name[data-v-e712e093]{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-e712e093]:hover{opacity:.7}.menu-item[data-v-e712e093]{position:relative;height:100%;display:flex;align-items:center}.menu-item.active .menu-button[data-v-e712e093]{background:var(--surface-secondary)}.menu-button[data-v-e712e093]{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-e712e093]:hover:not(:disabled){background:var(--surface-secondary)}.menu-button[data-v-e712e093]:disabled{opacity:.5;cursor:not-allowed}.menu-text[data-v-e712e093]{font-weight:500;white-space:nowrap}.token-expired-indicator[data-v-e712e093]{color:var(--color-error);font-weight:600}.menu-caret[data-v-e712e093]{display:flex;align-items:center;justify-content:center;opacity:.6}.menu-caret svg[data-v-e712e093]{display:block}.dropdown[data-v-e712e093]{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-e712e093],.right-dropdown[data-v-e712e093]{right:0;left:auto}.user-menu-item[data-v-e712e093]{position:relative}.dropdown-item[data-v-e712e093]{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-e712e093]:last-child{border-bottom:none}.dropdown-item[data-v-e712e093]:hover,.dropdown-item.selected[data-v-e712e093]{background:var(--surface-secondary)}.item-main[data-v-e712e093]{display:flex;align-items:center;gap:var(--space-2);width:100%}.item-text[data-v-e712e093]{flex:1}.item-check[data-v-e712e093]{display:flex;align-items:center;justify-content:center;color:var(--color-accent)}.item-check svg[data-v-e712e093]{display:block}.dropdown-message[data-v-e712e093]{padding:var(--space-3);text-align:center;font-size:var(--font-size-body-sm);color:var(--text-secondary)}.user-button[data-v-e712e093]{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-e712e093]:hover{background:var(--surface-secondary)}.user-initials[data-v-e712e093]{font-size:10px;font-weight:600;color:var(--text-primary)}.user-info[data-v-e712e093]{padding:var(--space-3);border-bottom:var(--border-width-thin) solid var(--border-secondary)}.user-email[data-v-e712e093]{font-size:var(--font-size-caption);color:var(--text-secondary)}.sign-in-btn[data-v-e712e093]{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-e712e093]:hover:not(:disabled){background:var(--surface-secondary)}.sign-in-btn[data-v-e712e093]:disabled{opacity:.5;cursor:not-allowed}.error-toast[data-v-e712e093]{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-e712e093]{min-width:280px;padding:0}.settings-section[data-v-e712e093]{padding:var(--space-3);border-bottom:var(--border-width-thin) solid var(--border-secondary)}.settings-section[data-v-e712e093]:last-child{border-bottom:none}.setting-header[data-v-e712e093]{font-size:var(--font-size-body-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1);display:flex;align-items:center;gap:var(--space-2)}.pro-badge[data-v-e712e093]{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;background:var(--text-primary);color:var(--surface-primary);border-radius:3px}.setting-description[data-v-e712e093]{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-e712e093]{margin-bottom:var(--space-2)}.setting-row[data-v-e712e093]:last-child{margin-bottom:0}.setting-row.disabled[data-v-e712e093]{opacity:.5}.setting-label[data-v-e712e093]{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-e712e093]{width:16px;height:16px;cursor:pointer;margin-right:var(--space-1)}.setting-input-number[data-v-e712e093]{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-e712e093]:focus{border-color:var(--color-accent)}.setting-input-number[data-v-e712e093]:disabled{background:var(--surface-secondary);cursor:not-allowed}.setting-input-number[data-v-e712e093]::-webkit-inner-spin-button,.setting-input-number[data-v-e712e093]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.settings-section-danger[data-v-e712e093]{background:#ff00000d}.action-button[data-v-e712e093]{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-e712e093]:hover:not(:disabled){background:#0056b3}.action-button[data-v-e712e093]:active:not(:disabled){background:#004494}.action-button[data-v-e712e093]:disabled{background:var(--surface-secondary);color:var(--text-tertiary);cursor:not-allowed;opacity:.5}.reset-button[data-v-e712e093]{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-e712e093]:hover{background:#c82333}.reset-button[data-v-e712e093]:active{background:#bd2130}.setting-input-number[type=number][data-v-e712e093]{-moz-appearance:textfield}.connection-dropdown[data-v-e712e093]{min-width:300px;max-width:400px;overflow:visible}.dropdown-section[data-v-e712e093]{padding:0}.section-label[data-v-e712e093]{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-e712e093]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.connection-item.expired[data-v-e712e093]{opacity:.6}.connection-info[data-v-e712e093]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.connection-name[data-v-e712e093]{font-size:var(--font-size-body-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expired-badge[data-v-e712e093]{font-size:var(--font-size-caption);color:var(--color-error);font-weight:600}.connection-actions[data-v-e712e093]{display:flex;gap:var(--space-1);flex-shrink:0}.reconnect-btn[data-v-e712e093],.delete-btn[data-v-e712e093]{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:inherit;cursor:pointer;padding:0;border-radius:2px;transition:all .2s}.reconnect-btn svg[data-v-e712e093],.delete-btn svg[data-v-e712e093]{display:block}.reconnect-btn[data-v-e712e093]:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.delete-btn[data-v-e712e093]:hover{background:var(--color-error);border-color:var(--color-error);color:#fff}.section-divider[data-v-e712e093]{height:var(--border-width-thin);background:var(--border-primary);margin:var(--space-1) 0}.add-section[data-v-e712e093]{background:var(--surface-secondary)}.add-item[data-v-e712e093]{color:var(--color-primary);font-weight:500;display:flex;align-items:center;gap:var(--space-2)}.add-icon[data-v-e712e093]{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0}.add-icon svg[data-v-e712e093]{display:block}.dropdown-arrow[data-v-e712e093]{display:flex;align-items:center;justify-content:center;width:10px;height:10px;flex-shrink:0;margin-left:auto;opacity:.6}.dropdown-arrow svg[data-v-e712e093]{display:block}.submenu-trigger[data-v-e712e093]{position:relative}.submenu-trigger:has(.flyout-menu) .add-item[data-v-e712e093]{background:var(--surface-secondary)}.flyout-menu[data-v-e712e093]{position:absolute;left:calc(100% - 2px);top:-1px;min-width:160px;background:var(--surface-primary);border:var(--border-width-thin) solid var(--border-primary);box-shadow:4px 4px #00000026;z-index:2001}.flyout-item[data-v-e712e093]{display:flex;align-items:center;gap:var(--space-2);border-bottom:none}.flyout-item[data-v-e712e093]:hover{background:var(--surface-secondary)}.db-icon[data-v-e712e093]{width:16px;height:16px}.project-item[data-v-e712e093]{font-family:var(--font-family-mono);font-size:var(--font-size-body-sm)}.placeholder-text[data-v-e712e093]{color:var(--text-secondary);font-style:italic}.about-dropdown[data-v-e712e093]{min-width:180px}.about-dropdown .dropdown-item[data-v-e712e093]{display:flex;align-items:center;gap:var(--space-2)}.item-icon[data-v-e712e093]{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-e712e093]{color:var(--text-primary)}.external-link-icon[data-v-e712e093]{margin-left:auto;font-size:12px;color:var(--text-tertiary)}.modal-overlay[data-v-e712e093]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:3000}.modal-content[data-v-e712e093]{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-e712e093]{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-e712e093]{font-size:var(--font-size-body);font-weight:600;color:var(--text-primary);margin:0}.modal-close[data-v-e712e093]{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-e712e093]:hover{background:var(--surface-secondary);color:var(--text-primary)}.modal-body[data-v-e712e093]{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-e712e093]{margin:0 0 var(--space-3) 0}.modal-body p[data-v-e712e093]: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-f5297e79]{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-f5297e79]{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-f5297e79]{text-align:center;margin-bottom:var(--space-6)}.modal-header h1[data-v-f5297e79]{font-size:var(--font-size-heading);font-weight:700;color:var(--text-primary);margin:0 0 var(--space-2) 0}.modal-subtitle[data-v-f5297e79]{font-size:var(--font-size-body);color:var(--text-secondary);margin:0}.options-grid[data-v-f5297e79]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);margin-bottom:var(--space-5)}.option-card[data-v-f5297e79]{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-f5297e79]: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-f5297e79]:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.option-card[data-v-f5297e79]:focus-visible{outline:2px solid var(--color-purple);outline-offset:2px}.option-icon[data-v-f5297e79]{width:48px;height:48px;margin-bottom:var(--space-2);object-fit:contain}.option-icon-disabled[data-v-f5297e79]{filter:grayscale(100%);opacity:.5}.option-card-disabled[data-v-f5297e79]{cursor:not-allowed;opacity:.7}.option-card-disabled[data-v-f5297e79]:hover{background:var(--surface-primary);box-shadow:none;transform:none;border-color:var(--border-primary)}.option-badge-soon[data-v-f5297e79]{color:var(--text-secondary);background:var(--surface-secondary)}.option-card h2[data-v-f5297e79]{font-size:var(--font-size-body-lg);font-weight:600;color:var(--text-primary);margin:0}.option-card p[data-v-f5297e79]{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-f5297e79]{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-f5297e79]{text-align:center;padding-top:var(--space-4);border-top:var(--border-width-thin) solid var(--border-secondary)}.skip-button[data-v-f5297e79]{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-f5297e79]:hover{color:var(--text-primary);text-decoration:underline}.skip-button[data-v-f5297e79]:focus-visible{outline:2px solid var(--color-purple);outline-offset:2px;border-radius:var(--border-radius-sm)}.modal-fade-enter-active[data-v-f5297e79],.modal-fade-leave-active[data-v-f5297e79]{transition:opacity .3s ease}.modal-fade-enter-active .onboarding-modal[data-v-f5297e79],.modal-fade-leave-active .onboarding-modal[data-v-f5297e79]{transition:transform .3s ease}.modal-fade-enter-from[data-v-f5297e79],.modal-fade-leave-to[data-v-f5297e79]{opacity:0}.modal-fade-enter-from .onboarding-modal[data-v-f5297e79],.modal-fade-leave-to .onboarding-modal[data-v-f5297e79]{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-c8389230]{position:relative;width:100%;height:100vh;padding-top:32px;overflow:hidden}.page-footer[data-v-c8389230]{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-c8389230]{color:#888}.footer-links[data-v-c8389230]{display:flex;gap:16px}.footer-links a[data-v-c8389230]{color:#666;text-decoration:none}.footer-links a[data-v-c8389230]: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-92f5de5e]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#1a1a2e;color:#fff}.loading[data-v-92f5de5e],.error[data-v-92f5de5e]{text-align:center}.spinner[data-v-92f5de5e]{width:48px;height:48px;border:4px solid #333;border-top-color:#4285f4;border-radius:50%;animation:spin-92f5de5e 1s linear infinite;margin:0 auto 16px}@keyframes spin-92f5de5e{to{transform:rotate(360deg)}}.error h2[data-v-92f5de5e]{color:#ff6b6b;margin-bottom:8px}.error p[data-v-92f5de5e]{color:#aaa;margin-bottom:24px}.error button[data-v-92f5de5e]{background:#4285f4;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px}.error button[data-v-92f5de5e]:hover{background:#3367d6}.page-container[data-v-259a6425]{min-height:100vh;background:var(--surface-secondary, #f5f5f5);padding:var(--space-6, 2rem)}.page-content[data-v-259a6425]{max-width:600px;margin:0 auto;background:var(--surface-primary, white);border:2px solid var(--border-primary, black);padding:var(--space-6, 2rem);box-shadow:var(--shadow-md, 6px 6px 0 0 rgba(0, 0, 0, .15))}.page-header[data-v-259a6425]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4, 1rem)}.back-button[data-v-259a6425]{background:transparent;border:1.5px solid var(--border-primary, black);color:var(--text-primary, black);padding:var(--space-2, .5rem) var(--space-3, .75rem);cursor:pointer;font-size:14px;transition:all .1s ease}.back-button[data-v-259a6425]:hover{background:var(--surface-secondary, #f5f5f5)}.sign-out-button[data-v-259a6425]{background:transparent;border:1.5px solid var(--border-primary, black);color:var(--text-primary, black);padding:var(--space-2, .5rem) var(--space-3, .75rem);cursor:pointer;font-size:14px;transition:all .1s ease}.sign-out-button[data-v-259a6425]:hover{background:var(--surface-secondary, #f5f5f5)}h1[data-v-259a6425]{font-size:var(--font-size-heading, 1.5rem);margin-bottom:var(--space-6, 2rem);color:var(--text-primary, black);border-bottom:2px solid var(--border-primary, black);padding-bottom:var(--space-2, .5rem)}.not-logged-in[data-v-259a6425]{text-align:center;padding:var(--space-6, 2rem) 0}.not-logged-in p[data-v-259a6425]{color:var(--text-secondary, #666);margin-bottom:var(--space-4, 1rem)}.sign-in-button[data-v-259a6425]{background:var(--surface-inverse, black);color:var(--text-inverse, white);border:2px solid var(--border-primary, black);padding:var(--space-3, .75rem) var(--space-6, 1.5rem);font-size:14px;cursor:pointer;box-shadow:var(--shadow-sm, 4px 4px 0 0 rgba(0, 0, 0, .15));transition:all .1s ease}.sign-in-button[data-v-259a6425]:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #0003}.sign-in-button[data-v-259a6425]:active{transform:translate(2px,2px);box-shadow:2px 2px #0000001a}.account-sections[data-v-259a6425]{display:flex;flex-direction:column;gap:var(--space-6, 2rem)}.account-section h2[data-v-259a6425]{font-size:var(--font-size-body-lg, 1rem);margin-bottom:var(--space-3, .75rem);color:var(--text-primary, black)}.profile-card[data-v-259a6425]{display:flex;align-items:center;gap:var(--space-4, 1rem);padding:var(--space-4, 1rem);border:1.5px solid var(--border-secondary, #ddd);background:var(--surface-secondary, #f9f9f9)}.profile-avatar[data-v-259a6425]{flex-shrink:0}.avatar-placeholder[data-v-259a6425]{width:48px;height:48px;border-radius:50%;border:2px solid var(--border-primary, black);background:var(--surface-inverse, black);color:var(--text-inverse, white);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.profile-info[data-v-259a6425]{flex:1}.profile-email[data-v-259a6425]{font-weight:600;font-size:var(--font-size-body, .875rem);color:var(--text-primary, black)}.profile-provider[data-v-259a6425]{color:var(--text-tertiary, #999);font-size:var(--font-size-caption, .75rem);margin-top:4px}.plan-card[data-v-259a6425]{padding:var(--space-4, 1rem);border:1.5px solid var(--border-secondary, #ddd);background:var(--surface-secondary, #f9f9f9)}.plan-status[data-v-259a6425]{margin-bottom:var(--space-3, .75rem)}.plan-badge[data-v-259a6425]{display:inline-block;padding:var(--space-1, .25rem) var(--space-3, .75rem);font-size:var(--font-size-caption, .75rem);font-weight:600;text-transform:uppercase;border:1.5px solid var(--border-primary, black)}.plan-badge.free[data-v-259a6425]{background:var(--surface-primary, white);color:var(--text-primary, black)}.plan-badge.pro[data-v-259a6425]{background:var(--color-accent, #42b883);color:#fff;border-color:var(--color-accent, #42b883)}.plan-description[data-v-259a6425]{color:var(--text-secondary, #666);font-size:var(--font-size-body, .875rem);margin-bottom:var(--space-4, 1rem);line-height:1.5}.success-banner[data-v-259a6425]{background:#e8f5e9;border:1.5px solid #4caf50;padding:var(--space-3, .75rem);margin-bottom:var(--space-4, 1rem);color:#2e7d32;font-size:var(--font-size-body, .875rem)}.upgrade-button[data-v-259a6425]{background:var(--surface-inverse, black);color:var(--text-inverse, white);border:2px solid var(--border-primary, black);padding:var(--space-3, .75rem) var(--space-4, 1rem);font-size:14px;cursor:pointer;transition:all .1s ease}.upgrade-button[data-v-259a6425]:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:var(--shadow-md)}.upgrade-button[data-v-259a6425]:disabled{opacity:.6;cursor:not-allowed}.manage-info[data-v-259a6425]{color:var(--text-secondary, #666);font-size:var(--font-size-body, .875rem);margin:0}.settings-card[data-v-259a6425]{padding:var(--space-4, 1rem);border:1.5px solid var(--border-secondary, #ddd);background:var(--surface-secondary, #f9f9f9)}.settings-card p[data-v-259a6425]{color:var(--text-secondary, #666);font-size:var(--font-size-body, .875rem);margin-bottom:var(--space-3, .75rem)}.settings-link[data-v-259a6425]{background:transparent;border:1.5px solid var(--border-primary, black);color:var(--text-primary, black);padding:var(--space-2, .5rem) var(--space-3, .75rem);font-size:14px;cursor:pointer;transition:all .1s ease}.settings-link[data-v-259a6425]:hover{background:var(--surface-secondary, #f5f5f5)}.danger-zone h2[data-v-259a6425]{color:var(--color-error, #c62828)}.danger-card[data-v-259a6425]{padding:var(--space-4, 1rem);border:1.5px solid var(--color-error, #c62828);background:#c628280d}.danger-card p[data-v-259a6425]{color:var(--text-secondary, #666);font-size:var(--font-size-body, .875rem);margin-bottom:var(--space-4, 1rem);line-height:1.5}.delete-button[data-v-259a6425]{background:var(--color-error, #c62828);color:#fff;border:none;padding:var(--space-2, .5rem) var(--space-4, 1rem);font-size:14px;cursor:pointer;transition:all .1s ease}.delete-button[data-v-259a6425]:hover:not(:disabled){background:#a52020}.delete-button[data-v-259a6425]:disabled{opacity:.6;cursor:not-allowed}
