@import"https://fonts.googleapis.com/css2?family=Ubuntu+Mono:ital,wght@0,400;0,700;1,400;1,700&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap";:root{--font-main: "Ubuntu", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "Ubuntu Mono", "Fira Code", "Courier New", monospace;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-card-hover: #fcfdfe;--bg-elevated: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--text-light: #94a3b8;--primary: #4338ca;--primary-hover: #3730a3;--primary-light: #e0e7ff;--primary-subtle: #eef2ff;--accent: #0284c7;--accent-light: #e0f2fe;--success: #059669;--success-light: #d1fae5;--success-text: #065f46;--warning: #d97706;--warning-light: #fef3c7;--warning-text: #92400e;--danger: #e11d48;--danger-light: #ffe4e6;--danger-text: #9f1239;--info: #0284c7;--info-light: #e0f2fe;--info-text: #075985;--border-subtle: #e2e8f0;--border-strong: #cbd5e1;--border-focus: #818cf8;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .07), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .05);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 8px 10px -6px rgba(15, 23, 42, .05);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px}*{box-sizing:border-box;margin:0;padding:0;font-family:Ubuntu,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}html,body{font-family:Ubuntu,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}button,input,select,textarea,optgroup,span,p,h1,h2,h3,h4,h5,h6,label,a,table,th,td{font-family:Ubuntu,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}code,pre,.font-mono,.font-mono *,code *,pre *{font-family:Ubuntu Mono,Fira Code,Courier New,monospace!important}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;max-width:1440px;width:100%;margin:0 auto;padding:24px 20px 60px}.white-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .2s ease}.white-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:9999px;text-transform:uppercase;letter-spacing:.04em}.badge-primary{background:var(--primary-subtle);color:var(--primary);border:1px solid var(--primary-light)}.badge-success{background:var(--success-light);color:var(--success-text);border:1px solid #a7f3d0}.badge-warning{background:var(--warning-light);color:var(--warning-text);border:1px solid #fde68a}.badge-info{background:var(--info-light);color:var(--info-text);border:1px solid #bae6fd}.badge-neutral{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-subtle)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-main);font-size:.875rem;font-weight:600;padding:9px 18px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 2px 4px #4338ca33}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 4px 8px #4338ca4d;transform:translateY(-1px)}.btn-secondary{background:#fff;color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--bg-secondary);border-color:var(--border-strong);color:var(--text-primary)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#047857}.btn-outline-primary{background:transparent;color:var(--primary);border:1px solid var(--primary)}.btn-outline-primary:hover{background:var(--primary-subtle)}.btn-sm{padding:6px 12px;font-size:.8rem;border-radius:var(--radius-sm)}.btn-lg{padding:12px 24px;font-size:1rem;border-radius:var(--radius-lg)}.sql-keyword{color:#4338ca;font-weight:700}.sql-string{color:#059669;font-weight:500}.sql-number{color:#d97706;font-weight:600}.sql-function{color:#0284c7;font-weight:600}.sql-comment{color:#94a3b8;font-style:italic}.sql-table{color:#7c3aed;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #4338ca66}50%{box-shadow:0 0 0 8px #4338ca00}}.animate-fade-in{animation:fadeIn .25s ease-out forwards}.sql-table-container{overflow-x:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#fff}.sql-result-table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}.sql-result-table th{background:var(--bg-tertiary);color:var(--text-secondary);font-weight:600;padding:10px 14px;border-bottom:2px solid var(--border-strong);white-space:nowrap;font-family:var(--font-mono);font-size:.82rem;letter-spacing:.02em}.sql-result-table td{padding:10px 14px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-family:var(--font-mono);font-size:.84rem;white-space:nowrap}.sql-result-table tr:hover td{background:#f8fafc}.sql-result-table td.null-cell{color:#94a3b8;font-style:italic;font-weight:500}
