/* One selected-node workspace; the live form and bounded viewer remain shared. */
.tool-detail{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:var(--bg-surface-alt);color:var(--text-primary);font-family:var(--font-family-app);font-size:var(--font-size-md);overflow:auto;overscroll-behavior:contain}
.tool-detail[open]{display:flex;flex-direction:column}.tool-detail [hidden]{display:none!important}.tool-detail::backdrop{background:var(--bg-surface)}
.tool-detail button{min-height:38px;padding:8px 13px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-surface);font:inherit;color:var(--text-primary);cursor:pointer}
.tool-detail button:hover:not(:disabled){border-color:var(--accent);background:var(--control-bg-hover)}.tool-detail :is(button,input,select,textarea):focus-visible{outline:3px solid var(--accent-focus);outline-offset:2px}
.tool-detail .td-primary{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--bg-surface);font-weight:600}
.td-top{display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:22px 32px;background:var(--bg-surface);flex-shrink:0}.td-heading{min-width:0}.td-brand{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:6px;overflow-wrap:anywhere}.td-brand span{margin-left:12px;padding-left:12px;border-left:1px solid var(--border-soft)}
.td-top h1{font-size:calc(var(--font-size-title) + 8px);font-weight:600;line-height:1.25;overflow-wrap:anywhere}.td-heading p{margin-top:8px;color:var(--text-muted);line-height:1.6;max-width:760px}.td-actions,.td-tool-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.td-actions{flex-shrink:0}.td-tool-actions{min-width:0}.td-actions button{min-height:40px}.td-actions #configPanelManualSave{background:var(--accent-strong);color:var(--bg-surface);border-color:var(--accent-strong)}.tool-detail button:disabled{opacity:.5;cursor:default}.td-actions button{white-space:nowrap}
.td-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:0 32px;background:var(--bg-surface);border-bottom:1px solid var(--border-soft);flex-shrink:0}.td-tabs{display:flex;gap:24px}.td-tabs button{border:0;border-bottom:3px solid transparent;border-radius:0;min-height:48px;padding:12px 2px;background:transparent;font-weight:600}.td-tabs button[aria-selected=true]{border-bottom-color:var(--accent-strong);color:var(--accent-strong)}#toolDetailState{font-size:var(--font-size-sm);color:var(--text-muted)}
/* Graph neighbors use canvas appearance without canvas interaction handles. */
.td-title-row{display:flex;align-items:center;gap:16px}.td-title-row>div{min-width:0}.td-node-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid var(--border-soft);border-radius:var(--radius-md);color:var(--block-color,var(--accent));background:var(--bg-surface)}.td-node-icon svg{width:26px;height:26px}.td-node-icon.is-disabled{border-style:dashed}.td-title-row>.td-node-icon{width:60px;height:60px}.td-title-row>.td-node-icon svg{width:32px;height:32px}
.td-body{display:grid;grid-template-columns:176px minmax(0,1fr) 176px;gap:24px;padding:24px 28px 28px;flex:1;min-height:0;overflow:hidden}.td-neighbors{min-width:0;overflow:auto;padding:4px}.td-neighbors h2{display:flex;align-items:center;gap:8px;font-size:var(--font-size-md);font-weight:600;margin:0 0 14px}.td-neighbors h2 span{font-size:var(--font-size-lg);color:var(--text-muted)}.td-neighbors>.td-muted{padding:12px 0}.tool-detail .td-neighbor{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;padding:14px 12px;text-align:left;line-height:1.5;overflow-wrap:anywhere;margin-bottom:12px;min-height:44px;border-radius:var(--radius-lg)}.td-neighbor-heading{display:flex;gap:10px;align-items:center;min-width:0}.td-neighbor-heading strong{font-weight:600;min-width:0}.td-neighbor .td-node-icon{width:36px;height:36px}.td-neighbor .td-node-icon svg{width:22px;height:22px}.td-neighbor-lane,.td-neighbor-summary,.td-neighbor-counts,.td-neighbor-status{font-size:var(--font-size-sm);color:var(--text-muted)}.td-neighbor-lane{font-weight:600}.td-neighbor-source{font-weight:500}.td-neighbor-source,.td-neighbor-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.td-neighbor-counts{padding-top:10px;border-top:1px solid var(--border-soft);font-variant-numeric:tabular-nums}.td-neighbor-status{font-style:italic}

.td-main{padding:4px;min-width:0;min-height:0;overflow:auto}.td-main h2{font-size:calc(var(--font-size-title) + 3px);font-weight:600}.td-data-intro{margin-bottom:18px}.td-data-intro p{line-height:1.6;color:var(--text-muted);margin-top:8px}#toolSettingsPage{max-width:1120px;margin:0 auto}#toolDataPage{height:100%;min-height:280px;display:flex;flex-direction:column}#toolDetailData{min-height:200px;flex:1;display:flex;flex-direction:column}
.td-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:20px}.td-input{padding:20px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--bg-surface);min-width:0}.td-kicker{font-size:var(--font-size-sm);color:var(--text-muted)}.td-input h3{font-size:var(--font-size-lg);font-weight:600;margin:8px 0 4px;overflow-wrap:anywhere}.td-muted{font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.6}.td-columns{margin-top:12px;font-size:var(--font-size-sm);color:var(--text-muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.td-message{padding:12px 16px;margin:0 auto 20px;max-width:1120px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-surface-info);line-height:1.5}.td-message[data-kind=error],.td-message[data-kind=warning],.td-message[data-kind=warn]{background:var(--bg-error-muted);color:var(--action-danger-hover)}
#toolDetail #configPanel{position:static!important;inset:auto!important;display:flex!important;transform:none!important;width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;max-height:none!important;flex-direction:column;border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:none;overflow:visible;contain:none}
#toolDetail .config-panel-header{display:none}#toolDetail .config-panel-body{overflow:visible;padding:24px;max-height:none}#toolDetail .config-panel-footer{position:static;padding:12px 24px}#toolDetail .config-panel-title-name{font-weight:600}#toolDetail .mem-panel-card{box-shadow:none;border-color:var(--border-soft)}#toolDetail .mem-panel-eyebrow{font-weight:500}#toolDetail .mem-panel-chip,#toolDetail .mem-field-chip{font-weight:500;border-radius:var(--radius-sm)}#toolDetail .mem-row-card,#toolDetail .mem-key-row{background:var(--bg-surface-alt)}
#toolDetail #bottomDataViewer{position:static!important;display:flex!important;height:auto!important;max-height:none!important;min-height:200px;flex:1;border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden}#toolDetail .bottom-data-viewer-header{flex-wrap:wrap;gap:8px;padding:14px 16px}#toolDetail .bottom-data-viewer-title{display:none}#toolDetail .bottom-data-viewer-body{height:auto;flex:1;max-height:none;min-height:120px;overflow:auto;display:block}#toolDetail .bottom-data-table :is(th,td){padding:10px 14px}#toolDetail .bottom-data-tab.active{background:var(--bg-surface-info);color:var(--accent-strong);border-color:var(--border-soft)}#toolDetail .bottom-data-viewer-tabs{display:flex;flex-wrap:wrap;overflow:visible}#toolDetail .bottom-data-metadata-toggle::before,#toolDetail .bottom-data-metadata-toggle::after{display:none}
#toolDetail .join-dataset-grid,#toolDetail .is-join-panel .mem-panel-hero{display:none}#toolDetail .config-panel-footer:empty,#toolDetail .config-panel-footer:not(:has(.config-panel-status)){display:none}#toolDetail :is(#panelHelp,#panelDisable,#panelDelete,#configPanelManualSave){border:1px solid var(--border-soft);font-weight:500;box-shadow:none}#toolDetail #panelHelp{color:var(--text-primary)}#toolDetail #panelDelete{color:var(--action-danger-hover)}
@media(max-width:768px){.td-top{padding:20px 16px;align-items:flex-start;flex-direction:column;gap:16px}.td-actions{width:100%}.td-actions button{min-height:44px}.td-tool-actions{display:contents}.td-actions{gap:8px}.td-tabs{gap:20px}.td-toolbar{flex-wrap:wrap;gap:4px}.td-brand span{display:block;margin:6px 0 0;padding:0;border:0}.td-toolbar{padding:0 16px}.td-body{padding:16px 12px}.td-main{padding:4px}.td-inputs{grid-template-columns:1fr}#toolDetail .config-panel-body{padding:16px}#toolDetail .bottom-data-viewer-tabs{flex-wrap:nowrap;overflow:auto;max-width:100%}#toolDetail .bottom-data-tab{min-height:44px;white-space:nowrap}#toolDataPage{height:max(350px,100%)}}

.td-draft{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;margin:0 auto 16px;max-width:1120px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-error-muted);color:var(--action-danger-hover);line-height:1.5}.td-draft button{flex-shrink:0}@media(max-width:768px){.td-draft{align-items:stretch;flex-direction:column}}

@media(max-width:1180px){.td-body{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:max-content max-content;overflow:auto;align-content:start}.td-main{grid-column:1/-1;grid-row:2;overflow:visible;min-height:280px}.td-neighbors{overflow:visible}.td-neighbor-list{display:flex;gap:12px;overflow:auto;padding:4px}.tool-detail .td-neighbor{flex:0 0 min(100%,220px);margin:0}#toolDetailNext{grid-column:2;grid-row:1}.td-neighbor-heading{align-items:flex-start}}
@media(max-width:600px){.td-body{grid-template-columns:1fr;grid-template-rows:max-content max-content max-content}#toolDetailNext{grid-column:1;grid-row:2}.td-main{grid-row:3}.td-title-row{gap:12px}.td-title-row>.td-node-icon{width:48px;height:48px}.td-neighbor-heading{align-items:center}}
