@layer reset, tokens, base, layout, components, utilities;@layer tokens{:root{--color-gray-950:#0d0d14;--color-gray-900:#141420;--color-gray-850:#171723;--color-gray-800:#1e1e2e;--color-gray-750:#252536;--color-gray-700:#2d2d3d;--color-gray-600:#363649;--color-gray-500:#4a4a5a;--color-gray-400:#6c6c7c;--color-gray-300:#a0a0b0;--color-gray-200:#c8c8d8;--color-gray-100:#e8e8e8;--color-gray-50:#f4f4f8;--bg-primary:var(--color-gray-800);--bg-secondary:var(--color-gray-850);--bg-tertiary:var(--color-gray-750);--bg-hover:var(--color-gray-700);--bg-active:var(--color-gray-600);--bg-elevated:var(--color-gray-750);--accent-primary:#29b5e8;--accent-primary-hover:#3dc4f5;--accent-primary-active:#1a8bb8;--accent-secondary:#1a8bb8;--accent-success:#22c55e;--accent-warning:#f59e0b;--accent-error:#ef4444;--accent-info:#3b82f6;--text-primary:var(--color-gray-100);--text-secondary:var(--color-gray-300);--text-muted:var(--color-gray-400);--text-disabled:var(--color-gray-500);--border-default:var(--color-gray-700);--border-subtle:var(--color-gray-750);--border-strong:var(--color-gray-600);--sidebar-width:260px;--sidebar-collapsed:64px;--header-height:52px;--toolbar-height:44px;--font-sans:"Space Grotesk Variable","Space Grotesk","Manrope","Avenir Next","Segoe UI",sans-serif;--font-mono:"IBM Plex Mono","JetBrains Mono","Cascadia Code","Consolas",monospace;--text-xxs:0.6875rem;--text-xs:0.75rem;--text-sm:0.8125rem;--text-base:0.875rem;--text-lg:1rem;--text-xl:1.125rem;--text-2xl:1.25rem;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.625;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0000004d,0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006,0 4px 6px -4px #0006;--shadow-xl:0 20px 25px -5px #00000080,0 8px 10px -6px #00000080;--duration-fast:100ms;--duration-normal:150ms;--duration-slow:250ms;--duration-slower:350ms;--ease-default:cubic-bezier(0.4,0,0.2,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-bounce:cubic-bezier(0.34,1.56,0.64,1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-sidebar:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800;--focus-ring:0 0 0 2px var(--bg-primary),0 0 0 4px var(--accent-primary);--focus-ring-inset:inset 0 0 0 2px var(--accent-primary)}}@layer reset{*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;tab-size:4}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--leading-normal);min-height:100vh;min-height:100dvh;text-rendering:optimizeLegibility}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{color:inherit;font:inherit}button{background:none;border:none;cursor:pointer}a{color:inherit;text-decoration:none}ol,ul{list-style:none}:focus{outline:none}:focus-visible{box-shadow:var(--focus-ring);outline:none}}@layer base{body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--color-gray-600);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}*{scrollbar-color:var(--color-gray-600) #0000;scrollbar-width:thin}::selection{background:var(--accent-primary);color:#fff}}@layer layout{.app{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.app-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-default);display:flex;flex-shrink:0;gap:var(--space-4);height:var(--header-height);padding-inline:var(--space-4);z-index:var(--z-sticky)}.app-body,.main-content{display:flex;flex:1 1;overflow:hidden}.main-content{container-name:main;container-type:inline-size;flex-direction:column;margin-left:var(--sidebar-width);transition:margin-left var(--duration-slow) var(--ease-default)}.main-content.sidebar-collapsed{margin-left:var(--sidebar-collapsed)}.split-pane{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.split-pane-top{border-bottom:1px solid var(--border-default);display:flex;flex:0 0 auto;flex-direction:column;max-height:70%;min-height:180px;position:relative}.split-pane-bottom{display:flex;flex:1 1;flex-direction:column;min-height:150px;overflow:hidden}.resize-handle{background:#0000;bottom:0;cursor:ns-resize;height:6px;left:0;position:absolute;right:0;transition:background var(--duration-fast);z-index:var(--z-base)}.resize-handle.dragging,.resize-handle:hover{background:var(--accent-primary)}}@layer components{.header-brand{border-right:1px solid var(--border-default);gap:var(--space-3);padding-right:var(--space-4)}.header-brand,.header-logo{align-items:center;display:flex}.header-logo{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:var(--radius-md);color:#fff;font-size:var(--text-sm);font-weight:600;height:28px;justify-content:center;width:28px}.header-title{font-size:var(--text-lg);font-weight:600;white-space:nowrap}.header-selectors{align-items:center;display:flex;gap:var(--space-2)}.header-context{background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);gap:var(--space-4);padding:6px 10px}.context-block,.header-context{align-items:center;display:flex}.context-block{gap:var(--space-2)}.context-label{color:var(--text-muted);font-size:var(--text-xxs);letter-spacing:.6px;text-transform:uppercase}.context-pill{align-items:center;background:#29b5e833;border-radius:var(--radius-full);color:var(--accent-primary);display:inline-flex;font-size:var(--text-xs);font-weight:600;height:24px;justify-content:center;width:24px}.context-divider{background:var(--border-subtle);height:24px;width:1px}.header-selector{align-items:center;background:#ffffff08;border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);min-width:160px;padding:var(--space-2) var(--space-3);transition:all var(--duration-fast)}.header-selector.disabled{cursor:not-allowed;opacity:.5}.header-selector:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.header-selector.disabled:hover{background:#ffffff08;border-color:var(--border-default);color:var(--text-secondary)}.header-selector:focus-visible{box-shadow:var(--focus-ring)}.header-selector-label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase}.header-selector-value{flex:1 1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.header-selector-icon{color:var(--text-muted);flex-shrink:0}.header-spacer{flex:1 1}.header-status{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-3)}.status-indicator{background:var(--accent-success);border-radius:var(--radius-full);height:8px;width:8px}.status-indicator.disconnected{background:var(--accent-error)}.status-indicator.connecting{animation:pulse 1.5s ease-in-out infinite;background:var(--accent-warning)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.header-user{align-items:center;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--space-2);padding:var(--space-2);transition:background var(--duration-fast)}.header-user:hover{background:var(--bg-hover)}.header-avatar{align-items:center;background:var(--accent-primary);border-radius:var(--radius-full);color:#fff;display:flex;font-size:var(--text-sm);font-weight:600;height:32px;justify-content:center;width:32px}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-default);bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:fixed;top:var(--header-height);transition:width var(--duration-slow) var(--ease-default);width:var(--sidebar-width);z-index:var(--z-sidebar)}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-header{align-items:center;border-bottom:1px solid var(--border-default);display:flex;flex-shrink:0;height:56px;padding:var(--space-4);position:relative}.sidebar-toggle{align-items:center;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--text-muted);cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:-14px;top:50%;transform:translateY(-50%);transition:all var(--duration-fast);width:28px;z-index:10}.sidebar-toggle:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}}@layer components{.sidebar-toggle:focus-visible{box-shadow:var(--focus-ring)}.sidebar-toggle svg{height:14px;transition:transform var(--duration-normal);width:14px}.sidebar.collapsed .sidebar-toggle svg{transform:rotate(180deg)}.sidebar-title{font-size:var(--text-base);font-weight:600;opacity:1;transition:opacity var(--duration-fast);white-space:nowrap}.sidebar.collapsed .sidebar-title{opacity:0;pointer-events:none}.sidebar-nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:var(--space-3) 0}.nav-section{margin-bottom:var(--space-2)}.nav-section-title{color:var(--text-muted);font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;overflow:hidden;padding:var(--space-2) var(--space-4);text-transform:uppercase;white-space:nowrap}.sidebar.collapsed .nav-section-title{font-size:0;padding:var(--space-2);text-align:center}.nav-item{align-items:center;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;gap:var(--space-3);margin:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-4);position:relative;transition:all var(--duration-fast)}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item:focus-visible{box-shadow:var(--focus-ring-inset)}.nav-item.active{background:var(--bg-tertiary);color:var(--accent-primary)}.nav-item.active:before{background:var(--accent-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;bottom:var(--space-2);content:"";left:0;position:absolute;top:var(--space-2);width:3px}.nav-icon{align-items:center;display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.nav-icon svg{height:18px;width:18px}.nav-label{opacity:1;overflow:hidden;transition:opacity var(--duration-fast);white-space:nowrap}.sidebar.collapsed .nav-label{opacity:0;pointer-events:none;width:0}.sidebar.collapsed .nav-item{justify-content:center;margin:var(--space-1) var(--space-2);padding:var(--space-3)}.sidebar.collapsed .nav-item.active:before{display:none}.query-history{border-top:1px solid var(--border-default);flex-shrink:0;max-height:220px;overflow-y:auto;padding:var(--space-3) 0}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-1);padding:var(--space-2) var(--space-4)}.history-title{font-weight:600;letter-spacing:.5px;text-transform:uppercase}.history-clear,.history-title{color:var(--text-muted);font-size:var(--text-xs)}.history-clear{border-radius:var(--radius-sm);cursor:pointer;padding:var(--space-1) var(--space-2);transition:all var(--duration-fast)}.history-clear:hover{background:var(--bg-hover);color:var(--text-secondary)}.history-item{align-items:center;color:var(--text-muted);cursor:pointer;display:flex;font-family:var(--font-mono);font-size:var(--text-xs);gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--duration-fast)}.history-item:hover{background:var(--bg-hover);color:var(--text-secondary)}.history-status{border-radius:var(--radius-full);flex-shrink:0;height:6px;width:6px}.history-status.success{background:var(--accent-success)}.history-status.error{background:var(--accent-error)}.history-sql{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-time{color:var(--text-disabled);flex-shrink:0;font-size:var(--text-xs)}.editor-section{display:flex;flex:1 1;flex-direction:column;min-height:0}.editor-toolbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-default);flex-shrink:0;gap:var(--space-3);justify-content:space-between;padding:var(--space-2) var(--space-4)}.editor-tabs,.editor-toolbar{align-items:center;display:flex}.editor-tabs{flex:1 1;gap:var(--space-1);overflow-x:auto;padding:var(--space-1) 0}.editor-tab{align-items:center;background:#0000;border:1px solid #0000;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all var(--duration-fast);white-space:nowrap}.editor-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.editor-tab.active{background:var(--bg-tertiary);border-color:var(--border-default);color:var(--text-primary)}.editor-tab-close{align-items:center;border-radius:var(--radius-sm);color:var(--text-muted);display:flex;height:16px;justify-content:center;transition:all var(--duration-fast);width:16px}.editor-tab-close:hover{background:var(--bg-active);color:var(--text-primary)}.editor-tab-add{align-items:center;border-radius:var(--radius-md);color:var(--text-muted);display:flex;height:28px;justify-content:center;transition:all var(--duration-fast);width:28px}.editor-tab-add:hover{background:var(--bg-hover);color:var(--text-primary)}.editor-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--space-2)}.editor-container{flex:1 1;overflow:hidden;position:relative}.sql-textarea{background:var(--bg-primary);border:none;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-base);height:100%;line-height:var(--leading-relaxed);padding:var(--space-4);resize:none;width:100%}.sql-textarea::placeholder{color:var(--text-disabled)}.sql-textarea:focus{outline:none}.cm-editor{font-size:var(--text-base);height:100%}.cm-editor .cm-scroller{font-family:var(--font-mono);line-height:var(--leading-relaxed)}.cm-editor .cm-gutters{background:var(--bg-secondary);border-right:1px solid var(--border-default);color:var(--text-disabled)}.cm-editor .cm-activeLine,.cm-editor .cm-activeLineGutter{background:var(--bg-tertiary)}.shortcut-hint{align-items:center;color:var(--text-muted);display:inline-flex;font-size:var(--text-xs);gap:var(--space-1);margin-left:var(--space-2)}.shortcut-key{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:10px;padding:2px 6px}.btn{align-items:center;border-radius:var(--radius-md);display:inline-flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);justify-content:center;padding:var(--space-2) var(--space-4);transition:all var(--duration-fast);white-space:nowrap}}@layer components{.btn:focus-visible{box-shadow:var(--focus-ring)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-sm{font-size:var(--text-xs);padding:var(--space-1) var(--space-3)}.btn-lg{font-size:var(--text-base);padding:var(--space-3) var(--space-6)}.btn-icon{height:32px;padding:0;width:32px}.btn-icon.btn-sm{height:28px;width:28px}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover)}.btn-primary:active:not(:disabled){background:var(--accent-primary-active)}.btn-secondary{background:var(--bg-tertiary);border:1px solid var(--border-default);color:var(--text-secondary)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.btn-ghost{background:#0000;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--accent-error);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-xs{font-size:11px;height:24px;padding:var(--space-1) var(--space-2)}.btn-icon.btn-xs{height:22px;padding:0;width:22px}.results-section{background:var(--bg-primary);display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.results-toolbar{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-default);display:flex;flex-shrink:0;gap:var(--space-4);justify-content:space-between;padding:var(--space-2) var(--space-4)}.results-title{color:var(--text-primary);font-size:var(--text-sm);font-weight:500}.results-meta{gap:var(--space-4)}.results-meta,.results-stat{align-items:center;display:flex}.results-stat{color:var(--text-muted);font-size:var(--text-xs);gap:var(--space-1)}.results-stat svg{height:14px;width:14px}.results-actions{align-items:center;display:flex;gap:var(--space-2)}.results-table-wrapper{flex:1 1;overflow:auto;position:relative}.results-table{border-collapse:collapse;font-size:var(--text-sm);width:100%}.results-table th{background:var(--bg-tertiary);border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-weight:500;padding:var(--space-2) var(--space-4);position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap;z-index:var(--z-sticky)}.results-table th:hover{background:var(--bg-hover)}.results-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);max-width:400px;overflow:hidden;padding:var(--space-2) var(--space-4);text-overflow:ellipsis;white-space:nowrap}.results-table tr:hover td{background:var(--bg-hover)}.results-table td.null-value{color:var(--text-disabled);font-style:italic}.results-table td.number-value{font-family:var(--font-mono);text-align:right}.results-pagination{align-items:center;background:var(--bg-secondary);border-top:1px solid var(--border-default);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--space-2) var(--space-4)}.pagination-info{color:var(--text-muted);font-size:var(--text-xs)}.pagination-controls{align-items:center;display:flex;gap:var(--space-1)}.pagination-btn{align-items:center;border-radius:var(--radius-md);color:var(--text-secondary);display:flex;height:28px;justify-content:center;transition:all var(--duration-fast);width:28px}.pagination-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.pagination-btn:disabled{color:var(--text-disabled);cursor:not-allowed}.pagination-pages{align-items:center;display:flex;gap:var(--space-1)}.pagination-page{align-items:center;border-radius:var(--radius-md);color:var(--text-secondary);display:flex;font-size:var(--text-xs);height:28px;justify-content:center;min-width:28px;transition:all var(--duration-fast)}.pagination-page:hover{background:var(--bg-hover);color:var(--text-primary)}.pagination-page.active{background:var(--accent-primary);color:#fff}.results-empty{align-items:center;color:var(--text-muted);display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:var(--space-8)}.results-empty-icon{height:64px;margin-bottom:var(--space-4);opacity:.3;width:64px}.results-empty-title{color:var(--text-secondary);font-size:var(--text-lg);font-weight:500;margin-bottom:var(--space-2)}.results-empty-description{font-size:var(--text-sm);max-width:300px;text-align:center}.error-banner{align-items:flex-start;background:#ef44441a;border:1px solid var(--accent-error);border-radius:var(--radius-lg);display:flex;gap:var(--space-3);margin:var(--space-4);padding:var(--space-4)}.error-icon{color:var(--accent-error);flex-shrink:0;height:20px;width:20px}.error-content{flex:1 1;min-width:0}.error-title{color:var(--accent-error);font-size:var(--text-sm);font-weight:500;margin-bottom:var(--space-1)}.error-message{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);word-break:break-word}.error-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--space-2)}.catalog-view{display:flex;flex:1 1;overflow:hidden}.catalog-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-default);display:flex;flex-direction:column;flex-shrink:0;width:300px}.catalog-header{border-bottom:1px solid var(--border-default);flex-shrink:0;padding:var(--space-4)}.catalog-header h2{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-3)}.catalog-search{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);width:100%}.catalog-search:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #29b5e81a}.catalog-search::placeholder{color:var(--text-disabled)}.catalog-list{flex:1 1;overflow-y:auto;padding:var(--space-2) 0}.catalog-tree{display:flex;flex-direction:column;gap:var(--space-1);padding-bottom:var(--space-3)}.catalog-tree-children{border-left:1px dashed var(--border-subtle);margin-left:var(--space-4);padding-left:var(--space-2)}.catalog-tree-group{display:flex;flex-direction:column;gap:var(--space-1)}.catalog-tree-item{align-items:center;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;gap:var(--space-2);margin:0 var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--duration-fast)}.catalog-tree-item.disabled{cursor:default;opacity:.7}.catalog-tree-item:hover{background:var(--bg-hover);color:var(--text-primary)}.catalog-tree-item.disabled:hover{background:#0000}.catalog-tree-item.active{background:var(--bg-tertiary);color:var(--accent-primary)}.catalog-tree-item.level-database{background:#29b5e80f;color:var(--text-primary);font-weight:600}.catalog-tree-item.level-schema,.catalog-tree-item.level-table{font-size:var(--text-sm)}.tree-icon,.tree-leaf,.tree-toggle{align-items:center;color:var(--text-muted);display:inline-flex;justify-content:center;width:18px}.tree-icon{color:var(--accent-primary)}.tree-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-badge{background:#ffffff0f;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-disabled);font-size:var(--text-xs);padding:2px 6px}.catalog-details-error{align-items:center;background:#ef44441f;border-radius:var(--radius-md);color:var(--accent-error);display:inline-flex;font-size:var(--text-xs);gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-3)}.catalog-copy-status{color:var(--text-muted);font-size:var(--text-xs);margin-top:var(--space-2)}.catalog-item{align-items:center;cursor:pointer;display:flex;gap:var(--space-3);padding:var(--space-2) var(--space-4);position:relative;transition:all var(--duration-fast)}.catalog-item:hover{background:var(--bg-hover)}.catalog-item.active{background:var(--bg-tertiary)}.catalog-item.active:before{background:var(--accent-primary);bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.catalog-item-icon{align-items:center;color:var(--accent-primary);display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.catalog-item-name{color:var(--text-primary);flex:1 1;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-item-badge{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-disabled);font-size:var(--text-xs);padding:2px 6px}.catalog-details{flex:1 1;overflow-y:auto;padding:var(--space-6)}.catalog-details h3{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--space-2)}.catalog-details-meta{color:var(--text-muted);font-size:var(--text-sm)}.catalog-details-meta,.catalog-section{margin-bottom:var(--space-6)}.catalog-section h4{color:var(--text-secondary);font-size:var(--text-sm);font-weight:600;letter-spacing:.5px;margin-bottom:var(--space-3);text-transform:uppercase}.columns-table{border-collapse:collapse;font-size:var(--text-sm);width:100%}.columns-table td,.columns-table th{border-bottom:1px solid var(--border-default);padding:var(--space-3) var(--space-4);text-align:left}.columns-table th{background:var(--bg-tertiary);color:var(--text-secondary);font-weight:500}.columns-table td{color:var(--text-primary)}.column-type{background:#29b5e81a;border-radius:var(--radius-sm);color:var(--accent-primary);font-family:var(--font-mono);font-size:var(--text-xs);padding:2px 6px}.catalog-empty{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-sm);height:100%;justify-content:center}.catalog-loading{color:var(--text-muted);padding:var(--space-4);text-align:center}.catalog-error{color:var(--accent-error);font-size:var(--text-sm);padding:var(--space-4)}.nodes-view{display:flex;flex:1 1;flex-direction:column;gap:var(--space-5);overflow:hidden;padding:var(--space-6)}.nodes-header{gap:var(--space-4);justify-content:space-between}.nodes-header,.nodes-title{align-items:center;display:flex}.nodes-title{gap:var(--space-3)}.nodes-title h2{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--space-1)}.nodes-title-icon{align-items:center;background:#29b5e81f;border-radius:var(--radius-lg);color:var(--accent-primary);display:flex;height:36px;justify-content:center;width:36px}.nodes-actions{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-3)}.nodes-scale{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);padding:4px 8px}.nodes-scale,.scale-controls{align-items:center;display:inline-flex;gap:var(--space-2)}.scale-count{color:var(--text-primary);font-weight:600;min-width:20px;text-align:center}.nodes-last-updated{display:none}.nodes-summary{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.summary-card{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4)}.summary-label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.6px;text-transform:uppercase}.summary-value{font-size:var(--text-lg);font-weight:600}.nodes-filters{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);display:flex;gap:var(--space-4);padding:var(--space-3) var(--space-4)}.filter-group{display:flex;flex-direction:column;gap:var(--space-1)}.filter-group label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase}.filter-group select{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);min-width:160px;padding:var(--space-2) var(--space-3)}.filter-toggle{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-sm);gap:var(--space-2)}.nodes-table-wrapper{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);flex:1 1;overflow:auto}.nodes-table{border-collapse:collapse;font-size:var(--text-sm);width:100%}.nodes-table th{background:var(--bg-tertiary);border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-weight:500;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap;z-index:var(--z-sticky)}.nodes-table td,.nodes-table th{padding:var(--space-3) var(--space-4)}.nodes-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:top}.nodes-table tr:hover td{background:var(--bg-hover)}.node-actions{text-align:center;white-space:nowrap}.node-actions .btn-danger{background:#0000;border:1px solid var(--accent-error);color:var(--accent-error);font-size:11px;padding:2px 8px}.node-actions .btn-danger:hover:not(:disabled){background:var(--accent-error);color:#fff}.power-controls{align-items:center;display:flex;gap:var(--space-2);justify-content:center}.power-controls .btn-success,.power-controls .btn-warning{background:#0000;border:1px solid;font-size:11px;font-weight:500;min-width:38px;padding:2px 10px;transition:all var(--duration-normal) var(--ease-default)}.power-controls .btn-success{color:var(--accent-success)}.power-controls .btn-success:hover:not(:disabled){background:var(--accent-success);color:var(--color-gray-950)}.power-controls .btn-warning{color:var(--accent-warning)}.power-controls .btn-warning:hover:not(:disabled){background:var(--accent-warning);color:var(--color-gray-950)}.power-controls .btn-success:disabled,.power-controls .btn-warning:disabled{cursor:not-allowed;opacity:.4}.idle-badge{align-items:center;animation:pulse-idle 2s ease-in-out infinite;background:#f59e0b2e;border-radius:var(--radius-full);color:var(--accent-warning);display:inline-flex;font-size:var(--text-xxs);padding:2px 8px;white-space:nowrap}}@layer components{@keyframes pulse-idle{0%,to{opacity:1}50%{opacity:.7}}.powering-indicator{animation:rotate-gear 1s linear infinite;font-size:14px}@keyframes rotate-gear{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.node-id{align-items:center;display:flex;font-weight:500;gap:var(--space-2)}.node-indicator{background:var(--accent-primary);border-radius:var(--radius-full);height:6px;width:6px}.node-type-badge{align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-full);color:var(--text-secondary);display:inline-flex;font-size:var(--text-xs);padding:2px 8px;text-transform:capitalize}.node-type-badge.coordinator{background:#3b82f626;color:var(--accent-info)}.node-type-badge.worker{background:#29b5e826;color:var(--accent-primary)}.node-type-badge.storage{background:#f59e0b2e;color:var(--accent-warning)}.node-status{align-items:center;display:inline-flex;font-size:var(--text-xs);gap:var(--space-2);text-transform:capitalize}.node-status.healthy{color:var(--accent-success)}.node-status.unhealthy{color:var(--accent-error)}.node-status.disabled,.node-status.unknown{color:var(--text-muted)}.node-status.disabled{opacity:.7}.nodes-empty,.nodes-loading{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;padding:var(--space-8)}.storage-view{display:flex;flex:1 1;flex-direction:column;gap:var(--space-5);overflow:hidden;padding:var(--space-6)}.storage-header{gap:var(--space-4);justify-content:space-between}.storage-header,.storage-title{align-items:center;display:flex}.storage-title{gap:var(--space-3)}.storage-title h2{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--space-1)}.storage-title-icon{align-items:center;background:#22c55e1f;border-radius:var(--radius-lg);color:var(--accent-success);display:flex;height:36px;justify-content:center;width:36px}.storage-actions{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-3)}.storage-last-updated{display:none}.storage-summary{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.storage-sections{grid-gap:var(--space-4);display:grid;flex:1 1;gap:var(--space-4);grid-template-columns:1fr;overflow:auto}@media (min-width:1200px){.storage-sections{grid-template-columns:1fr 1fr}}.storage-section{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-4);overflow:auto;padding:var(--space-4)}.storage-section-header{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-3);padding-bottom:var(--space-3)}.storage-section-header h3{flex:1 1;font-size:var(--text-lg);font-weight:600;margin:0}.storage-info-grid{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.storage-info-item{background:var(--bg-tertiary);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3)}.storage-info-label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.6px;text-transform:uppercase}.storage-info-value{color:var(--text-primary);font-size:var(--text-sm);word-break:break-all}.storage-buckets,.storage-cluster-file,.storage-coordinators{display:flex;flex-direction:column;gap:var(--space-2)}.storage-buckets h4,.storage-cluster-file h4,.storage-coordinators h4{color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;margin:0}.storage-table{background:var(--bg-tertiary);border-collapse:collapse;border-radius:var(--radius-md);font-size:var(--text-sm);overflow:hidden;width:100%}.storage-table th{background:var(--bg-hover);color:var(--text-muted);font-weight:500;text-align:left;white-space:nowrap}.storage-table td,.storage-table th{border-bottom:1px solid var(--border-subtle);padding:var(--space-2) var(--space-3)}.storage-table td{color:var(--text-primary)}.storage-table tr:last-child td{border-bottom:none}.storage-table tr:hover td{background:var(--bg-hover)}.storage-code{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);margin:0;overflow-x:auto;padding:var(--space-3);white-space:pre-wrap;word-break:break-all}.coordinator-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.coordinator-badge{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);display:inline-flex;font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.storage-empty,.storage-loading{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;padding:var(--space-8)}.storage-empty-buckets{background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-3);text-align:center}}@layer utilities{@media (min-width:1100px){.nodes-last-updated,.storage-last-updated{display:inline-flex}}}@layer components{.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:var(--radius-full);border-top-color:initial;height:16px;width:16px}.spinner-sm{border-width:1.5px;height:12px;width:12px}.spinner-lg{border-width:3px;height:24px;width:24px}@keyframes spin{to{transform:rotate(1turn)}}.skeleton{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-tertiary) 0,var(--bg-hover) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;border-radius:var(--radius-sm)}.skeleton-text{height:14px;margin-bottom:var(--space-2)}.skeleton-text:last-child{width:60%}.skeleton-cell{height:20px;width:100%}.skeleton-row{border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-4);padding:var(--space-3) var(--space-4)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}}@layer components{.dropdown{display:inline-block;position:relative}.dropdown-menu{animation:dropdown-in var(--duration-fast) var(--ease-out);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);left:0;min-width:180px;overflow:hidden;position:absolute;top:calc(100% + 4px);z-index:var(--z-dropdown)}.dropdown-menu.right{left:auto;right:0}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-3);padding:var(--space-2) var(--space-4);transition:all var(--duration-fast)}.dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.dropdown-item svg{flex-shrink:0;height:16px;width:16px}.dropdown-divider{background:var(--border-default);height:1px;margin:var(--space-1) 0}.tooltip{animation:tooltip-in var(--duration-fast) var(--ease-out);background:var(--color-gray-900);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:var(--text-primary);font-size:var(--text-xs);padding:var(--space-2) var(--space-3);position:absolute;white-space:nowrap;z-index:var(--z-tooltip)}}@layer components{@keyframes tooltip-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}}@layer components{.toast-container{bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);position:fixed;right:var(--space-6);z-index:var(--z-toast)}.toast{align-items:flex-start;animation:toast-in var(--duration-normal) var(--ease-bounce);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;gap:var(--space-3);max-width:400px;min-width:300px;padding:var(--space-3) var(--space-4)}@keyframes toast-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.toast-icon{flex-shrink:0;height:20px;width:20px}.toast-content{flex:1 1}.toast-title{font-size:var(--text-sm);font-weight:500;margin-bottom:var(--space-1)}.toast-message{color:var(--text-secondary);font-size:var(--text-xs)}.toast-close{align-items:center;border-radius:var(--radius-sm);color:var(--text-muted);display:flex;flex-shrink:0;height:20px;justify-content:center;transition:all var(--duration-fast);width:20px}.toast-close:hover{background:var(--bg-hover);color:var(--text-primary)}.toast.success .toast-icon{color:var(--accent-success)}.toast.error .toast-icon{color:var(--accent-error)}.toast.warning .toast-icon{color:var(--accent-warning)}.toast.info .toast-icon{color:var(--accent-info)}}@layer utilities{.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-primary{color:var(--text-primary)}.text-success{color:var(--accent-success)}.text-error{color:var(--accent-error)}.text-warning{color:var(--accent-warning)}.font-mono{font-family:var(--font-mono)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex{display:flex}.flex-1{flex:1 1}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}}@layer components{.error-boundary{align-items:center;background:var(--bg-primary);display:flex;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--space-6)}.error-boundary-content{max-width:480px;text-align:center}.error-boundary-icon{color:var(--accent-error);margin-bottom:var(--space-4)}.error-boundary h1{font-size:var(--text-2xl);font-weight:600;margin-bottom:var(--space-2)}.error-boundary-message{color:var(--text-secondary);margin-bottom:var(--space-6)}.error-boundary-details{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);margin-bottom:var(--space-6);padding:var(--space-4);text-align:left}.error-boundary-details summary{color:var(--text-secondary);cursor:pointer;font-weight:500;margin-bottom:var(--space-2)}.error-boundary-details pre{background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--accent-error);font-family:var(--font-mono);font-size:var(--text-xs);margin-top:var(--space-2);overflow-x:auto;padding:var(--space-3);white-space:pre-wrap;word-break:break-word}.error-boundary-actions{display:flex;gap:var(--space-3);justify-content:center}}@layer layout{.app-main{display:flex;flex:1 1;flex-direction:column;margin-left:var(--sidebar-width);overflow:hidden;transition:margin-left var(--duration-slow) var(--ease-default)}.app-main.expanded{margin-left:var(--sidebar-collapsed)}.app-main .main-content{margin-left:0}}@layer components{.loading-spinner-large{animation:spin .8s linear infinite;border:3px solid var(--border-default);border-radius:var(--radius-full);border-top-color:var(--accent-primary);height:40px;margin:0 auto var(--space-4);width:40px}.results-loading{align-items:center;color:var(--text-secondary);display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:var(--space-8)}.editor-loading,.results-loading p{font-size:var(--text-sm)}.editor-loading{align-items:center;color:var(--text-muted);display:flex;flex:1 1;flex-direction:column;gap:var(--space-3);justify-content:center}.spinning{animation:spin 1s linear infinite}}@layer base{body{background:radial-gradient(1100px 480px at 20% -15%,#29b5e824,#0000 65%),radial-gradient(900px 420px at 95% 0,#22c55e17,#0000 60%),var(--bg-primary)}}@layer components{.connection-error-text{color:var(--accent-error)}.top-gap-3{margin-top:var(--space-3)}.nav-item{border:none;text-align:left;width:calc(100% - var(--space-2)*2)}.history-title{align-items:center;display:inline-flex;gap:var(--space-2)}.history-title-icon{color:var(--text-muted);flex-shrink:0}.history-item,.results-sort-button{background:#0000;border:none;text-align:left;width:100%}.results-sort-button{align-items:center;color:inherit;display:inline-flex;font:inherit;gap:var(--space-2)}.results-sort-indicator{color:var(--text-muted);font-size:10px;letter-spacing:.4px;margin-left:auto}.catalog-item-loading{opacity:.5}.catalog-item-icon-skeleton{border-radius:var(--radius-sm);height:20px;width:20px}.catalog-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.catalog-header-title{align-items:center;display:inline-flex;gap:var(--space-2)}.catalog-heading-icon{flex-shrink:0}.catalog-search-wrap{position:relative}.catalog-search-icon{color:var(--text-muted);left:10px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.catalog-search{padding-left:32px}.catalog-section-title,.catalog-table-heading{align-items:center;display:inline-flex;gap:var(--space-2)}.catalog-column-name{font-family:var(--font-mono);font-size:var(--text-sm)}.catalog-column-nullable{color:var(--text-muted)}.catalog-column-required{color:var(--text-secondary)}.catalog-primary-key{align-items:center;color:var(--accent-warning);display:inline-flex;gap:4px}.catalog-muted-text{color:var(--text-muted);font-size:var(--text-sm)}.catalog-description{color:var(--text-secondary);line-height:1.6}.catalog-quick-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.catalog-empty-icon{margin-bottom:16px;opacity:.2}.nodes-inline-spinner{height:14px;width:14px}.scale-status{font-size:11px;margin-left:8px}.pair-icon{letter-spacing:.6px;text-transform:uppercase}.pair-icon,.resource-icon{font-size:10px;font-weight:700}.resource-icon{letter-spacing:.4px}.resource-divider{letter-spacing:.8px}.storage-table-icon{margin-right:8px;vertical-align:middle}.metrics-status-dot{background:var(--accent-warning);border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.metrics-status-dot[data-status=ok]{background:var(--accent-success)}.metrics-status-dot[data-status=unreachable]{background:var(--accent-error)}}@layer utilities{@media (max-width:1024px){.sidebar{transform:none}.app-main{margin-left:var(--sidebar-collapsed)!important}.main-content{margin-left:0!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}}@layer components{.error-message{align-items:flex-start;background:#ef44441a;border:1px solid var(--accent-error);border-radius:var(--radius-lg);display:flex;gap:var(--space-3);margin:var(--space-4);padding:var(--space-4)}.error-message .error-icon{align-items:center;background:var(--accent-error);border-radius:var(--radius-full);color:#fff;display:flex;flex-shrink:0;font-size:var(--text-xs);font-weight:600;height:20px;justify-content:center;width:20px}.error-message .error-text{color:var(--accent-error);flex:1 1;font-family:var(--font-mono);font-size:var(--text-sm);word-break:break-word}.error-message .error-dismiss{align-items:center;border-radius:var(--radius-sm);color:var(--text-muted);display:flex;flex-shrink:0;font-size:var(--text-lg);height:24px;justify-content:center;transition:all var(--duration-fast);width:24px}.error-message .error-dismiss:hover{background:#ef444433;color:var(--accent-error)}.dropdown-item.focused{background:var(--bg-hover);color:var(--text-primary)}.dropdown-item.selected{color:var(--accent-primary)}.dropdown-item.selected:before{content:"v";margin-right:var(--space-2)}.dropdown-item.disabled{color:var(--text-muted);cursor:default}.status-indicator.connected{background:var(--accent-success)}.status-indicator.disconnected{background:var(--accent-error)}}@layer utilities{@media (max-width:768px){.sidebar{position:fixed;transform:translateX(-100%);transition:transform var(--duration-slow) var(--ease-default)}.sidebar.open{transform:translateX(0)}.app-main,.main-content{margin-left:0!important}.catalog-view{flex-direction:column}.catalog-sidebar{border-bottom:1px solid var(--border-default);border-right:none;max-height:40vh;width:100%}.header-context{display:none}.app-header{padding-inline:var(--space-3)}}@container main (max-width: 600px){.results-toolbar{flex-wrap:wrap}.results-meta{justify-content:flex-start;margin-top:var(--space-2);order:1;width:100%}.results-actions{gap:var(--space-1)}}}@layer tokens{:root{--plan-node-scan:#3b82f6;--plan-node-filter:#eab308;--plan-node-join:#a855f7;--plan-node-aggregate:#22c55e;--plan-node-sort:#f97316;--plan-node-project:#6b7280;--plan-node-exchange:#ef4444}}@layer components{.worksheet-tabs{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-default);display:flex;flex-shrink:0;gap:var(--space-1);overflow-x:auto;padding:var(--space-2) var(--space-4)}.worksheet-tabs::-webkit-scrollbar{height:4px}.worksheet-tabs::-webkit-scrollbar-track{background:#0000}.worksheet-tabs::-webkit-scrollbar-thumb{background:var(--color-gray-600);border-radius:var(--radius-full)}.worksheet-tab{align-items:center;background:#0000;border:1px solid #0000;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all var(--duration-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.worksheet-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.worksheet-tab.active{background:var(--bg-tertiary);border-color:var(--border-default);color:var(--accent-primary)}.worksheet-tab-name{max-width:150px;overflow:hidden;text-overflow:ellipsis}.worksheet-tab-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--text-base);height:18px;justify-content:center;line-height:1;padding:0;transition:all var(--duration-fast);width:18px}.worksheet-tab-close:hover{background:#ef444426;color:var(--accent-error)}.worksheet-tab-add{align-items:center;background:#0000;border:1px dashed var(--border-default);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;font-size:var(--text-lg);font-weight:400;height:28px;justify-content:center;transition:all var(--duration-fast);width:28px}.worksheet-tab-add:hover{background:#29b5e81a;border-color:var(--accent-primary);color:var(--accent-primary)}.results-tabs{background:var(--bg-secondary);border-bottom:1px solid var(--border-default);display:flex;gap:var(--space-1);padding:var(--space-2) var(--space-4)}.results-tab{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all var(--duration-fast)}.results-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.results-tab.active{background:var(--bg-tertiary);color:var(--accent-primary)}.results-tab-badge{background:var(--bg-active);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;padding:2px 6px}.results-tab.active .results-tab-badge{background:#29b5e833;color:var(--accent-primary)}.results-tab-indicator{background:var(--accent-success);border-radius:var(--radius-full);height:6px;width:6px}.query-plan-container{background:var(--bg-secondary);flex:1 1;min-height:400px;position:relative}.query-plan-empty,.query-plan-error,.query-plan-loading{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:var(--space-3);height:100%;justify-content:center;min-height:300px}.query-plan-error{color:var(--accent-error)}.query-plan-empty svg{opacity:.5}.plan-node{background:var(--bg-primary);border:2px solid var(--node-color,var(--border-default));border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-size:var(--text-sm);max-width:220px;min-width:180px;padding:var(--space-3);transition:all var(--duration-fast)}.plan-node:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.plan-node.selected{border-color:var(--accent-primary);box-shadow:0 0 0 3px #29b5e84d,var(--shadow-lg)}.plan-node-header{align-items:center;color:var(--text-primary);display:flex;font-weight:600;gap:var(--space-2);margin-bottom:var(--space-2)}.plan-node-icon{align-items:center;background:var(--bg-hover);background:var(--node-color,var(--bg-hover));border-radius:var(--radius-sm);color:#fff;display:flex;height:24px;justify-content:center;width:24px}.plan-node-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-node-detail{color:var(--text-secondary);display:flex;font-size:var(--text-xs);gap:var(--space-2);margin-bottom:var(--space-1)}.plan-node-key{color:var(--text-muted);flex-shrink:0}.plan-node-value{font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-node-stats{border-top:1px solid var(--border-subtle);color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-2)}.plan-node-stat{align-items:center;display:flex;gap:var(--space-1)}.plan-node-cost-bar{background:var(--bg-hover);border-radius:var(--radius-full);height:3px;margin-top:var(--space-2);overflow:hidden}.plan-node-cost-fill{background:var(--accent-primary);background:var(--node-color,var(--accent-primary));border-radius:var(--radius-full);height:100%;transition:width var(--duration-normal)}.plan-controls{background:var(--bg-tertiary)!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-md)!important}.plan-controls button{background:#0000!important;border:none!important;color:var(--text-secondary)!important;height:28px!important;width:28px!important}.plan-controls button:hover{background:var(--bg-hover)!important;color:var(--text-primary)!important}.plan-controls button svg{fill:currentColor!important}.plan-stats-panel{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);min-width:160px;padding:var(--space-3)}.plan-stats h4{color:var(--text-primary);font-size:var(--text-sm);font-weight:600;margin:0 0 var(--space-2) 0}.plan-stat{color:var(--text-secondary);display:flex;font-size:var(--text-xs);gap:var(--space-3);justify-content:space-between;padding:var(--space-1) 0}.plan-stat span:last-child{color:var(--text-primary);font-family:var(--font-mono)}.plan-details-panel{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:280px;padding:var(--space-3)}.plan-node-details h4{color:var(--text-primary);font-size:var(--text-sm);font-weight:600;margin:0 0 var(--space-2) 0}.plan-detail-grid{grid-gap:var(--space-1) var(--space-2);display:grid;font-size:var(--text-xs);gap:var(--space-1) var(--space-2);grid-template-columns:auto 1fr}.plan-detail-grid span:nth-child(odd){color:var(--text-muted)}.plan-detail-grid span:nth-child(2n){color:var(--text-primary);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-flow,.react-flow__background{background:var(--bg-secondary)!important}.react-flow__edge-path{stroke:var(--accent-primary)!important;stroke-width:2!important}.react-flow__edge.animated path{stroke-dasharray:5!important;animation:dashdraw .5s linear infinite!important}.react-flow__arrowhead polyline{stroke:var(--accent-primary)!important;fill:var(--accent-primary)!important}.react-flow__attribution{background:var(--bg-tertiary)!important;color:var(--text-muted)!important}.react-flow__attribution a{color:var(--text-secondary)!important}.react-flow__minimap{background:var(--bg-tertiary)!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-lg)!important}.react-flow__minimap-mask{fill:#29b5e81a!important}.react-flow__minimap-node{fill:var(--bg-active)!important;stroke:var(--border-default)!important}.deployment-mode-panel.enhanced{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4)}.panel-header-enhanced{justify-content:space-between}.panel-header-enhanced,.panel-title-group{align-items:center;display:flex;gap:var(--space-3)}.panel-icon{align-items:center;background:#29b5e81f;border-radius:var(--radius-lg);color:var(--accent-primary);display:flex;height:36px;justify-content:center;width:36px}.panel-title-group h3{font-size:var(--text-lg);font-weight:600;margin:0}.panel-subtitle{color:var(--text-muted);font-size:var(--text-xs);margin:0}.mode-status-badge{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-secondary);display:inline-flex;font-size:var(--text-xs);font-weight:500;gap:var(--space-2);padding:var(--space-1) var(--space-3)}.mode-status-badge[data-mode=dual]{background:#29b5e81f;border-color:#29b5e84d;color:var(--accent-primary)}.status-dot-inline{background:var(--text-muted);border-radius:var(--radius-full);height:6px;width:6px}.mode-status-badge[data-mode=dual] .status-dot-inline{background:var(--accent-primary)}.mode-segmented-control{background:var(--bg-tertiary);border-radius:var(--radius-lg);display:flex;gap:var(--space-1);padding:var(--space-1)}.mode-segmented-control .segment{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;flex:1 1;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);justify-content:center;padding:var(--space-2) var(--space-4);transition:all var(--duration-fast)}.mode-segmented-control .segment:hover{background:var(--bg-hover);color:var(--text-primary)}.mode-segmented-control .segment.active{background:var(--accent-primary);box-shadow:var(--shadow-sm);color:#fff}.segment-icon{align-items:center;background:#ffffff26;border-radius:var(--radius-sm);display:flex;font-size:var(--text-xs);font-weight:600;height:20px;justify-content:center;width:20px}.mode-segmented-control .segment:not(.active) .segment-icon{background:var(--bg-active)}.mode-description{color:var(--text-muted);font-size:var(--text-sm);margin:0;padding:var(--space-2) 0}.dual-config-section{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden}.config-section-toggle{align-items:center;background:var(--bg-tertiary);border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:500;justify-content:space-between;padding:var(--space-3) var(--space-4);transition:background var(--duration-fast);width:100%}.config-section-toggle:hover{background:var(--bg-hover)}.toggle-chevron{color:var(--text-muted);font-size:var(--text-lg);transition:transform var(--duration-fast)}.tenant-cards-container{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.worker-pair-banner{align-items:center;background:#29b5e814;border-radius:var(--radius-md);color:var(--accent-primary);display:flex;font-size:var(--text-xs);gap:var(--space-2);padding:var(--space-2) var(--space-3)}.pair-icon{font-size:var(--text-base)}.pair-description{font-style:italic}.tenant-card{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.tenant-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.tenant-card.tenant-a{border-left:3px solid var(--accent-primary)}.tenant-card.tenant-b{border-left:3px solid var(--accent-success)}.tenant-card-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.tenant-avatar{align-items:center;border-radius:var(--radius-md);color:#fff;display:flex;font-size:var(--text-sm);font-weight:600;height:32px;justify-content:center;width:32px}.tenant-card.tenant-a .tenant-avatar{background:var(--accent-primary)}.tenant-card.tenant-b .tenant-avatar{background:var(--accent-success)}.tenant-worker-info{display:flex;flex-direction:column;gap:2px}.worker-nickname{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.worker-role{color:var(--text-muted);font-size:var(--text-xs)}.tenant-card-body{padding:var(--space-3) var(--space-4)}.tenant-card-body label{color:var(--text-muted);display:block;font-size:var(--text-xs);font-weight:500;letter-spacing:.5px;margin-bottom:var(--space-1);text-transform:uppercase}.tenant-card-body input{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);transition:border-color var(--duration-fast),box-shadow var(--duration-fast);width:100%}.tenant-card-body input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #29b5e81a;outline:none}.tenant-card-body input::placeholder{color:var(--text-disabled)}.tenant-card-body input[readonly]{background:var(--bg-secondary);cursor:default}.tenant-id-input-group{align-items:center;display:flex;gap:var(--space-2)}.tenant-id-input-group input{flex:1 1;font-family:var(--font-mono);font-size:12px}.tenant-id-input-group .btn-icon{background:var(--bg-hover);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:all var(--duration-fast)}.tenant-id-input-group .btn-icon:hover{background:var(--bg-tertiary);border-color:var(--accent-primary);color:var(--accent-primary)}.tenant-card-footer{background:var(--bg-tertiary);border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-4)}.resource-badge{align-items:center;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-flex;font-size:var(--text-xs);gap:var(--space-1);padding:var(--space-1) var(--space-2)}.resource-icon{font-size:10px}.resource-summary{align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-md);display:flex;gap:var(--space-3);justify-content:center;margin-top:var(--space-2);padding:var(--space-3)}.resource-summary-item{align-items:center;display:flex;flex-direction:column;gap:2px}.resource-summary .summary-label{color:var(--text-muted);font-size:var(--text-xs)}.resource-summary .summary-value{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.resource-divider{color:var(--accent-primary);font-weight:600}.active-subworkers{border-top:1px solid var(--border-subtle);padding:var(--space-4)}.active-subworkers h4{color:var(--text-secondary);font-size:var(--text-sm);font-weight:600;margin:0 0 var(--space-3) 0}.subworker-cards{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.subworker-card{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-3)}.subworker-header{align-items:center;display:flex;gap:var(--space-2);margin-bottom:var(--space-2)}.status-indicator{background:var(--text-muted);border-radius:var(--radius-full);height:8px;width:8px}.status-indicator.healthy{background:var(--accent-success)}.status-indicator.unhealthy{background:var(--accent-error)}.subworker-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.subworker-details{display:flex;flex-direction:column;gap:var(--space-1)}.detail-row{display:flex;font-size:var(--text-xs);gap:var(--space-2)}.detail-label{color:var(--text-muted)}.detail-value{color:var(--text-secondary)}.mode-actions-enhanced{align-items:center;border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-3);padding-top:var(--space-2)}.mode-actions-enhanced .btn{align-items:center;display:inline-flex;gap:var(--space-2)}.mode-note-enhanced{color:var(--text-muted);font-size:var(--text-xs)}.mode-actions-enhanced .loading-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:var(--radius-full);border-top-color:#fff}.metrics-view{height:100%;overflow-y:auto;padding:var(--space-4)}.metrics-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-4)}.metrics-header-left{align-items:center;display:flex;gap:var(--space-2)}.metrics-header-left h2{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.metrics-service-count{background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-muted);font-size:.8rem;padding:2px 8px}.metrics-header-right{align-items:center;display:flex;gap:var(--space-3)}.metrics-auto-refresh{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.8rem;gap:var(--space-1)}.metrics-auto-refresh input[type=checkbox]{accent-color:var(--accent-primary)}.metrics-timestamp{color:var(--text-muted);font-size:.75rem}.metrics-error{align-items:center;background:color-mix(in srgb,var(--accent-error) 10%,#0000);border:1px solid var(--accent-error);border-radius:var(--radius-md);color:var(--accent-error);display:flex;font-size:.85rem;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3)}.metrics-summary{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:var(--space-4)}.metrics-card{background:var(--bg-secondary);border:1px solid var(--color-gray-700);border-radius:var(--radius-md);padding:var(--space-3);text-align:center;transition:border-color .15s}.metrics-card:hover{border-color:var(--accent-primary)}.metrics-card-value{font-feature-settings:"tnum";color:var(--text-primary);font-size:1.5rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.2}.metrics-card-unit{color:var(--text-muted);font-size:.85rem;font-weight:400;margin-left:2px}.metrics-card-label{color:var(--text-secondary);font-size:.75rem;letter-spacing:.03em;margin-top:var(--space-1);text-transform:uppercase}.metrics-card-subtitle{color:var(--text-muted);font-size:.7rem;margin-top:2px}.metrics-services{display:flex;flex-direction:column;gap:var(--space-3)}.metrics-service-panel{background:var(--bg-secondary);border:1px solid var(--color-gray-700);border-radius:var(--radius-lg);overflow:hidden}.metrics-service-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4);transition:background .15s;-webkit-user-select:none;user-select:none}.metrics-service-header:hover{background:var(--bg-hover)}.metrics-service-title{align-items:center;color:var(--text-primary);display:flex;font-weight:600;gap:var(--space-2)}.metrics-service-name{font-size:.95rem;text-transform:capitalize}.metrics-service-version{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.7rem;padding:1px 6px}.metrics-service-meta{align-items:center;display:flex;gap:var(--space-3)}.metrics-service-uptime{color:var(--accent-success);font-size:.75rem}.metrics-service-error{color:var(--accent-error);font-size:.75rem}.metrics-chevron{color:var(--text-muted);font-size:.85rem;transition:transform .15s}.metrics-panel-content{border-top:1px solid var(--color-gray-700);padding:var(--space-2) var(--space-4) var(--space-4)}.metrics-grid{grid-gap:var(--space-2);display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-bottom:var(--space-2)}.metrics-grid:last-child{margin-bottom:0}.metrics-panel-content .metrics-card{background:var(--bg-tertiary);border-color:var(--color-gray-600);padding:var(--space-2)}.metrics-panel-content .metrics-card-value{font-size:1.15rem}.metrics-empty{font-size:.85rem;padding:var(--space-3)}.metrics-empty,.metrics-empty-state{align-items:center;color:var(--text-muted);display:flex;gap:var(--space-2)}.metrics-empty-state{flex-direction:column;padding:var(--space-8) var(--space-4);text-align:center}.metrics-empty-state h3{color:var(--text-secondary);margin:0}.metrics-empty-state p{color:var(--text-muted);margin:0;max-width:360px}.metrics-raw{font-family:var(--font-mono);font-size:.8rem}.metrics-raw-item{border-bottom:1px solid var(--color-gray-700);display:flex;gap:var(--space-2);padding:2px 0}.metrics-raw-name{color:var(--accent-primary);flex:1 1}.metrics-raw-type{color:var(--text-muted);font-size:.7rem}.metrics-raw-value{font-feature-settings:"tnum";color:var(--text-primary);font-variant-numeric:tabular-nums}.spinning{animation:spin 1s linear infinite}.tests-view{flex:1 1;flex-direction:column;overflow:auto;padding:var(--space-5)}.tests-header,.tests-view{display:flex;gap:var(--space-4)}.tests-header{align-items:center;flex-wrap:wrap;justify-content:space-between}.tests-title{align-items:center;display:flex;gap:var(--space-3)}.tests-title h2{font-size:var(--text-xl);font-weight:600;margin:0 0 var(--space-1)}.tests-title-icon{align-items:center;background:#f59e0b24;border-radius:var(--radius-lg);color:var(--accent-warning);display:inline-flex;height:36px;justify-content:center;width:36px}.tests-actions{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-3)}.tests-last-updated{white-space:nowrap}.tests-auto-refresh{align-items:center;cursor:pointer;display:inline-flex;gap:var(--space-2)}.tests-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:1.2fr 1fr}.tests-panel{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-3);min-height:0;padding:var(--space-4)}.tests-panel h3{font-size:var(--text-lg);font-weight:600;margin:0}.tests-form-grid{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.tests-field{display:flex;flex-direction:column;gap:var(--space-1)}.tests-field span{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase}.tests-field input,.tests-field select{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);padding:var(--space-2) var(--space-3);width:100%}.tests-mode-field{max-width:360px}.tests-inline-options{align-items:center;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:var(--space-4)}.tests-inline-options label{align-items:center;display:inline-flex;gap:var(--space-2)}.tests-suite-description{color:var(--text-muted);font-size:var(--text-sm);margin:0}.tests-run-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tests-runs-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:320px;overflow:auto;padding-right:var(--space-1)}.tests-run-item{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:inherit;padding:var(--space-3);text-align:left;transition:border-color var(--duration-fast);width:100%}.tests-run-item.active,.tests-run-item:hover{border-color:var(--accent-primary)}.tests-run-item.active{box-shadow:var(--focus-ring-inset)}.tests-run-main{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between}.tests-run-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.tests-run-meta{color:var(--text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-2);justify-content:space-between;margin-top:var(--space-1)}.tests-run-status{align-items:center;border:1px solid #0000;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);justify-content:center;min-width:76px;padding:2px 8px;text-transform:capitalize}.tests-run-status.success{background:#22c55e1f;border-color:#22c55e66;color:var(--accent-success)}.tests-run-status.running{background:#29b5e824;border-color:#29b5e866;color:var(--accent-primary)}.tests-run-status.warning{background:#f59e0b29;border-color:#f59e0b66;color:var(--accent-warning)}.tests-run-status.error{background:#ef444429;border-color:#ef444466;color:var(--accent-error)}.tests-log-panel{flex:1 1;min-height:280px}.tests-log-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between}.tests-log-actions{flex-wrap:wrap}.tests-log-actions,.tests-log-meta{align-items:center;display:inline-flex;gap:var(--space-2)}.tests-log-meta{color:var(--text-muted);font-size:var(--text-xs)}.tests-log-summary{align-items:center;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:var(--text-xs);gap:var(--space-3)}.tests-log-output{background:var(--color-gray-900);border:1px solid var(--color-gray-700);border-radius:var(--radius-md);color:var(--color-gray-100);flex:1 1;font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.5;margin:0;max-height:420px;min-height:220px;overflow:auto;padding:var(--space-3);white-space:pre-wrap;word-break:break-word}.tests-empty{color:var(--text-muted);justify-content:center;min-height:80px}.tests-empty,.tests-error{align-items:center;display:flex;font-size:var(--text-sm);gap:var(--space-2)}.tests-error{background:#ef44441a;border:1px solid var(--accent-error);border-radius:var(--radius-md);color:var(--accent-error);padding:var(--space-2) var(--space-3)}.tests-perf-panel{background:var(--color-gray-800);border:1px solid var(--color-gray-700);border-radius:var(--radius-md);margin-bottom:var(--space-3);padding:var(--space-3)}.tests-perf-panel h4{color:var(--text-primary);font-size:var(--text-sm);font-weight:600;margin:0 0 var(--space-3) 0}.tests-perf-panel h5{color:var(--text-muted);font-size:var(--text-xs);font-weight:500;letter-spacing:.05em;margin:var(--space-3) 0 var(--space-2) 0;text-transform:uppercase}.tests-perf-summary{grid-gap:var(--space-2);display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.tests-perf-stat{background:var(--color-gray-900);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:2px;padding:var(--space-2)}.tests-perf-label{color:var(--text-muted);font-size:var(--text-xs)}.tests-perf-value{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600}.tests-perf-timing-grid{grid-gap:2px var(--space-3);display:grid;font-family:var(--font-mono);font-size:var(--text-xs);gap:2px var(--space-3);grid-template-columns:auto 1fr;max-width:280px}.tests-perf-timing-grid span:nth-child(odd){color:var(--text-muted)}.tests-perf-timing-grid span:nth-child(2n){color:var(--text-primary);text-align:right}.tests-perf-indent{font-style:italic;padding-left:12px}.tests-perf-verify-detail{color:var(--text-muted);display:flex;font-family:var(--font-mono);font-size:var(--text-xs);gap:var(--space-3);margin-top:var(--space-1)}.tests-perf-table-wrapper{overflow-x:auto}.tests-perf-table{border-collapse:collapse;font-family:var(--font-mono);font-size:var(--text-xs);width:100%}.tests-perf-table td,.tests-perf-table th{border-bottom:1px solid var(--color-gray-700);padding:4px 8px;text-align:right;white-space:nowrap}.tests-perf-table th{color:var(--text-muted);font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.tests-perf-table td{color:var(--text-primary)}.tests-perf-table-name{font-weight:500;text-align:left!important}.tests-perf-table th:first-child{text-align:left}.tests-perf-table tbody tr:hover{background:var(--color-gray-700)}.tests-perf-result{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);margin-top:var(--space-3)}}@layer utilities{@media (max-width:1200px){.tests-grid{grid-template-columns:1fr}}@media (max-width:768px){.tests-view{padding:var(--space-3)}.tests-form-grid{grid-template-columns:1fr}.tests-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}}}@layer components{.login-page{align-items:center;background:linear-gradient(135deg,#1a1f2e,#0f1419);display:flex;justify-content:center;min-height:100vh;padding:var(--space-4)}.login-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0006;max-width:420px;padding:var(--space-8);text-align:center;width:100%}.login-header{margin-bottom:var(--space-6)}.login-icon{color:var(--accent-primary);margin-bottom:var(--space-3)}.login-card h1{color:var(--text-primary);font-size:var(--text-xl);font-weight:600;margin:0 0 var(--space-2) 0}.login-card p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.google-sso-button{align-items:center;background:#fff;border:1px solid #dadce0;border-radius:var(--radius-md);color:#3c4043;cursor:pointer;display:flex;font-size:var(--text-base);font-weight:500;gap:var(--space-2);justify-content:center;padding:var(--space-3) var(--space-4);transition:all .2s ease;width:100%}.google-sso-button:hover:not(:disabled){background:#f8f9fa;box-shadow:0 1px 3px #0000001a}.google-sso-button:active:not(:disabled){background:#f1f3f4}.google-sso-button:disabled{cursor:not-allowed;opacity:.6}.google-icon{flex-shrink:0;height:20px;width:20px}.button-spinner{animation:spin .6s linear infinite;border:2px solid #dadce0;border-radius:50%;border-top-color:#3c4043;height:16px;width:16px}.login-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:var(--radius-md);color:#fca5a5;margin-bottom:var(--space-4);padding:var(--space-3)}.login-error p{color:#fca5a5;font-size:var(--text-sm);margin:0}.login-footer{color:var(--text-muted);font-size:var(--text-xs);margin-top:var(--space-6)}.auth-loading{align-items:center;background:var(--bg-app);color:var(--text-secondary);display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;min-height:100vh}.loading-spinner-large{animation:spin .8s linear infinite;border:4px solid var(--border-subtle);border-radius:50%;border-top-color:var(--accent-primary);height:48px;width:48px}.user-menu{position:relative}.header-user{align-items:center;background:#0000;border:1px solid var(--border-subtle);border-radius:50%;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.header-user:hover{background:var(--bg-hover);border-color:var(--border-hover)}.user-avatar{border-radius:50%;height:32px;object-fit:cover;width:32px}.header-avatar{align-items:center;color:var(--text-secondary);display:flex;height:100%;justify-content:center;width:100%}.user-dropdown{animation:slideDown .15s ease-out;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000004d;min-width:240px;padding:var(--space-2);position:absolute;right:0;top:calc(100% + var(--space-2));z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-info{padding:var(--space-3) var(--space-3) var(--space-2)}.user-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-1)}.user-email{color:var(--text-secondary);font-size:var(--text-xs)}.user-divider{background:var(--border-subtle);height:1px;margin:var(--space-2) 0}.user-menu-item{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-3);text-align:left;transition:all .15s ease;width:100%}.user-menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.user-menu-item svg{color:var(--text-secondary);flex-shrink:0}@media (max-width:480px){.login-card{max-width:100%;padding:var(--space-6)}.login-card h1{font-size:var(--text-lg)}.google-sso-button{font-size:var(--text-sm)}}}.admin-panel{background:var(--bg-primary);bottom:0;left:0;overflow-y:auto;padding:var(--space-6);position:fixed;right:0;top:0;z-index:1000}.admin-header{align-items:center;display:flex;flex-direction:column;gap:var(--space-3);margin:0 auto var(--space-8);max-width:800px;text-align:center}.admin-header h1{color:var(--text-primary);font-size:var(--text-2xl);font-weight:600;margin:0}.admin-header p{color:var(--text-secondary);margin:0}.admin-error{align-items:center;display:flex;flex-direction:column;gap:var(--space-4);margin:100px auto;max-width:500px;text-align:center}.admin-error h2{color:var(--text-primary);font-size:var(--text-xl);font-weight:600;margin:0}.admin-error p{color:var(--text-secondary);margin:0}.admin-message{border-radius:var(--radius-md);font-size:var(--text-sm);margin:0 auto var(--space-4);max-width:800px;padding:var(--space-3) var(--space-4)}.admin-message-error{background:#ef44441a;border:1px solid #ef444433;color:#ef4444}.admin-message-success{background:#22c55e1a;border:1px solid #22c55e33;color:#22c55e}.admin-section{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin:0 auto var(--space-8);max-width:800px;padding:var(--space-6)}.admin-section h2{color:var(--text-primary);font-size:var(--text-lg);font-weight:600;margin:0 0 var(--space-4) 0}.admin-form{display:flex;flex-direction:column;gap:var(--space-4)}.admin-form-group{align-items:center;display:flex;gap:var(--space-3)}.admin-input{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);flex:1 1;font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);transition:all .2s ease}.admin-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #38bdf81a;outline:none}.admin-input:disabled{cursor:not-allowed;opacity:.5}.admin-button{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all .2s ease;white-space:nowrap}.admin-button:disabled{cursor:not-allowed;opacity:.5}.admin-button-primary{background:var(--accent-primary);color:#fff}.admin-button-primary:hover:not(:disabled){background:var(--accent-hover)}.admin-button-danger{background:#ef44441a;border:1px solid #ef444433;color:#ef4444}.admin-button-danger:hover:not(:disabled){background:#ef444433}.admin-empty,.admin-loading{color:var(--text-secondary);padding:var(--space-8);text-align:center}.admin-users-list{display:flex;flex-direction:column;gap:var(--space-2)}.admin-user-item{align-items:center;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4);transition:all .2s ease}.admin-user-item:hover{border-color:var(--border-default)}.admin-user-info{align-items:center;display:flex;flex:1 1;gap:var(--space-3)}.admin-user-email{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm)}.admin-user-badge{align-items:center;background:#38bdf81a;border:1px solid #38bdf833;border-radius:var(--radius-sm);color:var(--accent-primary);display:inline-flex;font-size:11px;font-weight:600;letter-spacing:.5px;padding:2px var(--space-2);text-transform:uppercase}.admin-close-button{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;padding:var(--space-2);position:fixed;right:var(--space-4);top:var(--space-4);transition:all .2s ease;z-index:1001}.admin-close-button:hover{background:var(--bg-hover);border-color:var(--border-default);color:var(--text-primary)}.notebook-view{height:100%;overflow-y:auto;padding:var(--space-6)}.notebook-cells,.notebook-view{display:flex;flex-direction:column;width:100%}.notebook-cells{gap:var(--space-4);margin:0 auto;max-width:70%}.cell{background:var(--bg-elevated);border:1px solid #0000;border-radius:var(--radius-lg);position:relative;transition:border-color .2s ease,box-shadow .2s ease}.cell:hover{border-color:var(--border-default)}.cell-active{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary)}.cell-toolbar{display:flex;gap:var(--space-1);position:absolute;right:var(--space-2);top:var(--space-2);z-index:10}.cell-active .cell-toolbar{opacity:1;pointer-events:auto}.cell-actions-left,.cell-actions-right{display:flex;gap:var(--space-1)}.cell-action-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .15s ease;width:28px}.cell-action-btn:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.cell-action-delete{color:var(--accent-error)}.cell-action-delete:hover{background:#ef44441a;border-color:var(--accent-error)}.cell-content{padding:var(--space-4)}.sql-cell{width:100%}.sql-cell .cm-editor{border-radius:var(--radius-md);overflow:hidden}.sql-cell-controls{border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-2);margin-bottom:var(--space-3);padding-bottom:var(--space-3)}.sql-cell-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all .15s ease}.sql-cell-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent-primary);color:var(--text-primary)}.sql-cell-btn:disabled{cursor:not-allowed;opacity:.5}.sql-cell-btn-run{color:var(--accent-success)}.sql-cell-btn-run:hover:not(:disabled){background:#22c55e1a;border-color:var(--accent-success)}.sql-cell-btn-explain{color:var(--accent-info)}.sql-cell-btn-explain:hover:not(:disabled){background:#60a5fa1a;border-color:var(--accent-info)}.markdown-cell{border-radius:var(--radius-md);cursor:text;min-height:60px;padding:var(--space-4);transition:background .15s ease}.markdown-cell.active,.markdown-cell:hover{background:var(--bg-hover)}.markdown-cell.empty{align-items:center;display:flex;justify-content:center;min-height:100px}.markdown-placeholder{color:var(--text-muted);font-size:var(--text-sm);text-align:center}.markdown-cell.editing{padding:0}.markdown-editor{background:var(--bg-secondary);border:1px solid var(--accent-primary);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-relaxed);min-height:150px;padding:var(--space-4);resize:vertical;width:100%}.markdown-editor:focus{box-shadow:0 0 0 2px var(--accent-primary);outline:none}.markdown-cell h1,.markdown-cell h2,.markdown-cell h3,.markdown-cell h4,.markdown-cell h5,.markdown-cell h6{color:var(--text-primary);font-weight:600;margin-bottom:var(--space-3);margin-top:var(--space-5)}.markdown-cell h1{border-bottom:1px solid var(--border-default);font-size:var(--text-2xl);padding-bottom:var(--space-2)}.markdown-cell h2{border-bottom:1px solid var(--border-subtle);font-size:var(--text-xl);padding-bottom:var(--space-2)}.markdown-cell h3{font-size:var(--text-lg)}.markdown-cell p{color:var(--text-primary);line-height:var(--leading-relaxed);margin:var(--space-3) 0}.markdown-cell code{background:var(--bg-secondary);border-radius:var(--radius-sm);color:var(--accent-primary);font-family:var(--font-mono);font-size:var(--text-xs);padding:2px 6px}.markdown-cell pre{border-radius:var(--radius-md);margin:var(--space-3) 0;overflow-x:auto}.markdown-cell pre code{background:#0000;color:inherit;padding:0}.markdown-cell ol,.markdown-cell ul{color:var(--text-primary);margin:var(--space-3) 0;padding-left:var(--space-6)}.markdown-cell li{margin:var(--space-1) 0}.markdown-cell blockquote{border-left:3px solid var(--accent-primary);color:var(--text-secondary);font-style:italic;margin:var(--space-3) 0;padding-left:var(--space-4)}.markdown-cell table{border-collapse:collapse;margin:var(--space-3) 0;width:100%}.markdown-cell td,.markdown-cell th{border:1px solid var(--border-default);padding:var(--space-2) var(--space-3);text-align:left}.markdown-cell th{background:var(--bg-secondary);color:var(--text-primary);font-weight:600}.cell-output{border-top:1px solid var(--border-subtle);margin-top:var(--space-3);padding-top:var(--space-3)}.cell-output-error{align-items:center;background:#ef44441a;border:1px solid var(--accent-error);border-radius:var(--radius-md);display:flex;font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--space-4)}.cell-output-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3);padding:0 var(--space-4)}.cell-output-stats{color:var(--text-secondary);display:flex;font-size:var(--text-xs);gap:var(--space-4)}.stat-item{align-items:center;display:flex;gap:var(--space-2)}.stat-item svg{opacity:.6}.cell-output-content{max-height:500px;overflow:auto}.cell-add-buttons{display:flex;gap:var(--space-2);justify-content:center;margin-top:var(--space-2);opacity:0;padding:var(--space-2);transition:opacity .2s ease}.cell:hover .cell-add-buttons{opacity:1}.cell-add-btn{align-items:center;background:var(--bg-tertiary);border:1px dashed var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-xs);gap:var(--space-1);padding:var(--space-1) var(--space-3);transition:all .15s ease}.cell-add-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary);border-style:solid;color:var(--text-primary)}.notebook-add-cell-end{display:flex;gap:var(--space-3);justify-content:center;margin-top:var(--space-4);padding:var(--space-6) 0}.notebook-add-btn{align-items:center;background:#0000;border:2px dashed var(--border-default);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);padding:var(--space-3) var(--space-5);transition:all .2s ease}.notebook-add-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary);border-style:solid;color:var(--text-primary)}.notebook-empty{align-items:center;display:flex;justify-content:center;min-height:400px;padding:var(--space-8)}.notebook-empty-content{max-width:400px;text-align:center}.notebook-empty-content h3{color:var(--text-primary);font-size:var(--text-xl);margin-bottom:var(--space-3)}.notebook-empty-content p{color:var(--text-secondary);margin-bottom:var(--space-5)}.notebook-empty-actions{display:flex;gap:var(--space-3);justify-content:center}.notebook-empty-actions .btn{align-items:center;display:flex;gap:var(--space-2)}.notebook-shortcuts-hint{border-top:1px solid var(--border-subtle);margin-top:var(--space-6);padding:var(--space-6) 0;text-align:center}.notebook-shortcuts-hint p{color:var(--text-muted);font-size:var(--text-xs)}.notebook-shortcuts-hint strong{color:var(--text-secondary);font-weight:600}@media (max-width:768px){.notebook-view{padding:var(--space-3)}.notebook-cells{max-width:100%}.cell-toolbar{justify-content:flex-end;margin-bottom:var(--space-2);position:static}.cell-add-buttons,.notebook-add-cell-end{flex-direction:column}}.react-flow{direction:ltr}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{cursor:grab;z-index:1}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{overflow:visible;pointer-events:none}.react-flow__connection-path,.react-flow__edge-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{cursor:pointer;pointer-events:visibleStroke}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:grab;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background:#1a192b;border:1px solid #fff;border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{bottom:-4px;left:50%;top:auto;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{left:-4px;top:50%;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{margin:15px;position:absolute;z-index:5}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translateX(-50%)}.react-flow__attribution{background:#ffffff80;font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{height:100%;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{background-color:#fff;border:1px solid #1a192b;border-radius:3px;color:#222;font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{align-items:center;background:#fefefe;border:none;border-bottom:1px solid #eee;box-sizing:initial;cursor:pointer;display:flex;height:16px;justify-content:center;padding:5px;-webkit-user-select:none;user-select:none;width:16px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{max-height:12px;max-width:12px;width:100%}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;height:4px;transform:translate(-50%,-50%);width:4px}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}
/*# sourceMappingURL=main.60c6548c.css.map*/