@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root,[data-theme=default-dark]{--bg-main: #0b0f17;--bg-card: #111827;--bg-card-hover: #1f2937;--bg-elevated: #1e293b;--border: #2d3748;--border-focus: #3b82f6;--text-main: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b;--primary: #3b82f6;--primary-hover: #2563eb;--primary-glow: rgba(59, 130, 246, .25);--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--code-bg: #090d16;--editor-gutter-bg: #070a10;--table-header-bg: #070a10;--syntax-comment: #64748b;--syntax-string: #4ade80;--syntax-date: #22d3ee;--syntax-number: #facc15;--syntax-keyword: #c084fc;--syntax-secondary: #f472b6;--syntax-function: #fb923c;--syntax-operator: #38bdf8;--syntax-identifier: #e2e8f0;--syntax-bracket: #94a3b8;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace}[data-theme=tokyo-night]{--bg-main: #1a1b26;--bg-card: #24283b;--bg-card-hover: #2f3549;--bg-elevated: #292e42;--border: #414868;--border-focus: #7aa2f7;--text-main: #c0caf5;--text-muted: #9aa5ce;--text-dim: #565f89;--primary: #7aa2f7;--primary-hover: #89b4fa;--primary-glow: rgba(122, 162, 247, .3);--success: #9ece6a;--warning: #e0af68;--danger: #f7768e;--code-bg: #16161e;--editor-gutter-bg: #13141c;--table-header-bg: #1f2335;--syntax-comment: #565f89;--syntax-string: #9ece6a;--syntax-date: #7dcfff;--syntax-number: #ff9e64;--syntax-keyword: #bb9af7;--syntax-secondary: #f7768e;--syntax-function: #7aa2f7;--syntax-operator: #89ddff;--syntax-identifier: #c0caf5;--syntax-bracket: #7dcfff}[data-theme=solarized-dark]{--bg-main: #002b36;--bg-card: #073642;--bg-card-hover: #0e4b5a;--bg-elevated: #0a3d4a;--border: #586e75;--border-focus: #268bd2;--text-main: #93a1a1;--text-muted: #839496;--text-dim: #657b83;--primary: #268bd2;--primary-hover: #2aa198;--primary-glow: rgba(38, 139, 210, .3);--success: #859900;--warning: #b58900;--danger: #dc322f;--code-bg: #00212b;--editor-gutter-bg: #001b24;--table-header-bg: #00242e;--syntax-comment: #586e75;--syntax-string: #2aa198;--syntax-date: #268bd2;--syntax-number: #d33682;--syntax-keyword: #859900;--syntax-secondary: #6c71c4;--syntax-function: #b58900;--syntax-operator: #cb4b16;--syntax-identifier: #93a1a1;--syntax-bracket: #839496}[data-theme=solarized-light]{--bg-main: #fdf6e3;--bg-card: #eee8d5;--bg-card-hover: #e4ddc7;--bg-elevated: #f5eedc;--border: #d3cbb7;--border-focus: #268bd2;--text-main: #073642;--text-muted: #586e75;--text-dim: #93a1a1;--primary: #268bd2;--primary-hover: #1e70a9;--primary-glow: rgba(38, 139, 210, .25);--success: #859900;--warning: #b58900;--danger: #dc322f;--code-bg: #f5eedc;--editor-gutter-bg: #eae3cf;--table-header-bg: #eae3cf;--syntax-comment: #93a1a1;--syntax-string: #2aa198;--syntax-date: #268bd2;--syntax-number: #d33682;--syntax-keyword: #859900;--syntax-secondary: #6c71c4;--syntax-function: #b58900;--syntax-operator: #cb4b16;--syntax-identifier: #073642;--syntax-bracket: #586e75}[data-theme=mui-dark]{--bg-main: #121212;--bg-card: #1e1e1e;--bg-card-hover: #292929;--bg-elevated: #2d2d2d;--border: #383838;--border-focus: #90caf9;--text-main: #ffffff;--text-muted: #b0bec5;--text-dim: #78909c;--primary: #90caf9;--primary-hover: #64b5f6;--primary-glow: rgba(144, 202, 249, .25);--success: #66bb6a;--warning: #ffa726;--danger: #f44336;--code-bg: #181818;--editor-gutter-bg: #141414;--table-header-bg: #181818;--syntax-comment: #78909c;--syntax-string: #81c784;--syntax-date: #4fc3f7;--syntax-number: #ffb74d;--syntax-keyword: #ba68c8;--syntax-secondary: #f06292;--syntax-function: #90caf9;--syntax-operator: #29b6f6;--syntax-identifier: #e0e0e0;--syntax-bracket: #b0bec5}[data-theme=mui-light]{--bg-main: #f8f9fa;--bg-card: #ffffff;--bg-card-hover: #f1f3f5;--bg-elevated: #f3f4f6;--border: #e5e7eb;--border-focus: #1976d2;--text-main: #111827;--text-muted: #4b5563;--text-dim: #6b7280;--primary: #1976d2;--primary-hover: #1565c0;--primary-glow: rgba(25, 118, 210, .2);--success: #2e7d32;--warning: #ed6c02;--danger: #d32f2f;--code-bg: #f3f4f6;--editor-gutter-bg: #eaedf1;--table-header-bg: #f3f4f6;--syntax-comment: #6b7280;--syntax-string: #2e7d32;--syntax-date: #0288d1;--syntax-number: #e65100;--syntax-keyword: #7b1fa2;--syntax-secondary: #c2185b;--syntax-function: #1565c0;--syntax-operator: #0097a7;--syntax-identifier: #1f2937;--syntax-bracket: #4b5563}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-main);font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow-x:hidden}button{font-family:inherit;cursor:pointer;transition:all .15s ease-in-out}input,select,textarea{font-family:inherit;background-color:var(--bg-card);color:var(--text-main);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:12px;outline:none;transition:border-color .15s ease-in-out}input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px var(--primary-glow)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .2s cubic-bezier(.16,1,.3,1) forwards}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(2px);padding:3px 8px;border-radius:4px;background:#0f172a;color:#f8fafc;font-size:11px;font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s ease,transform .15s ease;z-index:1000;border:1px solid var(--border);box-shadow:0 4px 12px #00000080;line-height:1.2}[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}[data-tooltip-pos=bottom]:after{bottom:auto;top:calc(100% + 6px);transform:translate(-50%) translateY(-2px)}[data-tooltip-pos=bottom]:hover:after{transform:translate(-50%) translateY(0)}[data-tooltip-pos=left]:after{bottom:auto;left:auto;right:calc(100% + 6px);top:50%;transform:translateY(-50%) translate(2px)}[data-tooltip-pos=left]:hover:after{transform:translateY(-50%) translate(0)}[data-tooltip-pos=right]:after{bottom:auto;left:calc(100% + 6px);right:auto;top:50%;transform:translateY(-50%) translate(-2px)}[data-tooltip-pos=right]:hover:after{transform:translateY(-50%) translate(0)}.btn-primary{background:var(--primary);color:#fff;border:1px solid transparent;border-radius:6px;padding:5px 12px;font-weight:500;font-size:12px;display:inline-flex;align-items:center;gap:6px}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 0 10px var(--primary-glow)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-elevated);color:var(--text-main);border:1px solid var(--border);border-radius:6px;padding:5px 12px;font-weight:500;font-size:12px;display:inline-flex;align-items:center;gap:6px}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);border-color:#475569}.btn-danger{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3);border-radius:6px;padding:4px 10px;font-size:12px}.btn-danger:hover{background:#ef444440}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:6px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-main);font-size:13px;cursor:pointer;transition:all .15s ease-in-out;flex-shrink:0}.btn-icon:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-focus);color:var(--primary)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-icon-primary{background:var(--primary);border-color:transparent;color:#fff}.btn-icon-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 0 10px var(--primary-glow);color:#fff}.btn-icon-danger{background:#ef444426;border-color:#ef44444d;color:#fca5a5}.btn-icon-danger:hover:not(:disabled){background:#ef444440;border-color:#ef444480;color:#fff}.btn-icon-sm{width:24px;height:24px;font-size:11px}.card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:14px 16px}.badge{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:1px 6px;border-radius:9999px;text-transform:uppercase;letter-spacing:.02em}.badge-blue{background:#3b82f626;color:#93c5fd;border:1px solid rgba(59,130,246,.3)}.badge-green{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.badge-purple{background:#a855f726;color:#d8b4fe;border:1px solid rgba(168,85,247,.3)}.badge-yellow{background:#f59e0b26;color:#fcd34d;border:1px solid rgba(245,158,11,.3)}.prql-code-textarea{background:transparent!important;border:none!important;border-radius:0!important;outline:none!important;box-shadow:none!important;color:transparent!important;-webkit-text-fill-color:transparent!important;caret-color:var(--text-main)!important;transition:none!important}.prql-code-textarea:focus{border:none!important;box-shadow:none!important;outline:none!important}.prql-code-textarea::selection{background:#3b82f666!important}.prql-code-textarea::placeholder{color:var(--text-dim)!important;-webkit-text-fill-color:var(--text-dim)!important}.prql-code-pre{background:transparent!important;border:none!important;margin:0!important;pointer-events:none}.col-header-cell{position:relative;cursor:default}.col-header-cell .col-type-tooltip{visibility:hidden;opacity:0;position:absolute;top:calc(100% + 4px);left:12px;background:var(--bg-elevated);color:var(--primary);font-family:var(--font-mono);font-size:11px;font-weight:500;padding:3px 8px;border-radius:4px;border:1px solid var(--border);box-shadow:0 4px 14px #0009;white-space:nowrap;pointer-events:none;transition:opacity .15s ease,transform .15s ease;transform:translateY(-2px);z-index:100}.col-header-cell:hover .col-type-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;overflow-y:auto}.modal-content{background-color:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:0 20px 25px -5px #0009,0 10px 10px -5px #0000004d;padding:24px;position:relative}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
