#ExecutionPane,#vis-snippet,.vis-scope{overflow:auto}#snippet,#vis-automate-pause{display:none}tr td{padding:1px!important}.code-line-number{color:#a6a6a6}#vis-snippet{height:320px;max-height:fit-content;font-family:Monaco,Lucida Console,Liberation Mono,Dejavu sans Mono,Bitstream Vera Sans Mono,Courier New;font-size:16px;font-weight:400;line-height:19px;resize:vertical}#vis-output{height:200px!important;resize:vertical;margin-bottom:1em!important}.table-borderless>:not(caption)>*>*{border-bottom:1px solid #fcfcfc;border-bottom-width:.5}.table-borderless-abs>:not(caption)>*>*{border-bottom:0;border-bottom-width:.5}.table-borderless>:not(:first-child){border-top-width:0}.vis-scope{border-radius:1em}#snippet{white-space:pre}.vis-auto-btn{float:right;margin-right:2em;border:none}#vis-edit-btn{border:1px solid #0f0;background-color:#fafafa}#vis-current-line{font-size:18px}#vis-automate{border:none;background:#fff}.vis-btn{float:left;width:19%;margin:0;box-sizing:border-box;border:none;border-left:5px solid #fff;border-radius:3px}#vis-right-header{margin-top:10px}#vis-clear-btn{float:right;background-color:#88f!important;color:#fff;border-radius:2px;border:none}.vis-scope{width:100%;cellspacing:0 border-collapse: collapse!important}.vis-active-scope{border:1px solid #fa3a3a}
/* Visualizer panel UI enhancements */
.vis-panel{display:none}
.vis-panel.active{display:block}
.vis-panel-header{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.vis-panel-tabs{display:flex;gap:6px;flex-wrap:wrap}
.vis-tab{border:1px solid #ddd;background:#f7f7f7;border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer;color:#555}
.vis-tab.active{background:#fff;border-color:#88f;color:#334}
.vis-panel-actions{display:flex;align-items:center;gap:8px}
.vis-progress{flex:1;height:6px;background:#eee;border-radius:6px;overflow:hidden}
.vis-progress-bar{height:100%;width:0;background:#88f;transition:width .2s ease}
.vis-step-counter{font-size:12px;color:#667;min-width:60px;text-align:right}
.vis-line-preview{display:flex;gap:6px;align-items:center;background:#fafafa;border:1px solid #eee;border-radius:6px;padding:6px 8px;font-size:12px;color:#666}
.vis-line-preview code{font-family:monospace;font-size:12px;color:#444;white-space:pre-wrap}
.vis-scope-toolbar{display:flex;justify-content:flex-end;margin-bottom:6px}
#vis-toggle-global{border:none;background:transparent;color:#667;font-size:12px;cursor:pointer}
#vis-toggle-global.active{color:#88f}
.vis-scope-card{border:1px solid #e3e3e3;border-radius:10px;padding:4px;margin-bottom:10px;background:#fff;transition:opacity .2s ease,border-color .2s ease,box-shadow .2s ease}
.vis-scope-card.inactive{opacity:.45}
.vis-scope-card.active{border-color:#88f;box-shadow:0 2px 8px rgba(136,136,255,.15)}
.vis-scope-card.is-hidden{display:none}
.vis-output-line{display:flex;gap:8px;align-items:flex-start}
.vis-output-line-tag{font-size:11px;color:#88a;min-width:40px}
.vis-empty-state{font-size:13px;color:#888;border:1px dashed #ddd;border-radius:8px;padding:12px;background:#fbfbfb}
.vis-speed{margin-left:8px;border:1px solid #ddd;border-radius:6px;font-size:12px;padding:2px 6px;background:#fff;color:#555}
.vis-stack-list{display:flex;flex-direction:column;gap:6px}
.vis-stack-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;border:1px solid #eee;background:#fff;font-size:12px;color:#444}
.vis-stack-item .vis-stack-depth{font-weight:600;color:#667}
.vis-stack-item.active{border-color:#88f;box-shadow:0 2px 6px rgba(136,136,255,.12)}
.vis-stdout-grid{display:grid;grid-template-columns:40px 1fr;gap:8px;align-items:start}
.vis-step-map{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow:auto;padding-right:4px}
.vis-step-node{font-size:11px;color:#999;text-align:right;padding:2px 0}
.vis-step-node.active{color:#88f;font-weight:600}
.vis-line-badges{display:flex;gap:4px;margin-left:6px}
.vis-line-badge{font-size:10px;background:#eef;border-radius:10px;padding:2px 6px;color:#556}
#vis-pin-stdout,#vis-reset-btn{border:1px solid #ddd;background:#fff;border-radius:6px;font-size:12px;padding:4px 8px;cursor:pointer;color:#556}
#vis-pin-stdout.active{border-color:#88f;color:#334}
.vis-focus-btn{border:1px solid #ddd;background:#fff;border-radius:6px;font-size:12px;padding:4px 8px;cursor:pointer;color:#556}
.vis-focus-btn.active{border-color:#88f;color:#334}
#vis-snippet.focus-mode tr{opacity:.5;transition:opacity .15s ease}
#vis-snippet.focus-mode tr.last-executed{opacity:1;background:#f2f4ff}
.vis-line-tooltip{position:fixed;z-index:9999;background:#fff;border:1px solid #ddd;border-radius:8px;padding:8px 10px;font-size:12px;color:#444;box-shadow:0 8px 18px rgba(0,0,0,.1);max-width:240px;display:none;pointer-events:none}
.vis-line-tooltip strong{display:block;margin-bottom:4px;color:#667}
#vis-snippet{background:#fff;border:1px solid #e6e6e6;border-radius:8px;padding:6px;box-shadow:0 1px 6px rgba(0,0,0,.04)}
#vis-snippet .vis-line-code{background:transparent}
#vis-output{background:#fbfbfd;border:1px solid #e6e6f0;border-radius:8px;padding:8px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;line-height:1.45}
.vis-output-line{padding:2px 0}
.vis-output-line-tag{color:#667}
#vis-snippet.focus-mode tr{opacity:.78}
#vis-snippet.focus-mode tr:hover{opacity:1}
#vis-snippet.focus-mode tr.last-executed{opacity:1;background:#eef1ff}

/* Terminal-like stdout (non-black) */
#vis-output{background:#1c2030;border:1px solid #2b3146;color:#e9edf7}
.vis-output-line-tag{color:#9fb0ff}
.vis-output-line{color:#e9edf7}

/* Execution panel polish */
#ExecutionPane{background:#f7f9fe;border:1px solid #e3e8f4;border-radius:12px;box-shadow:0 2px 10px rgba(27,32,48,.06);padding:6px}
#vis-right-header{background:#fff;border:1px solid #e3e8f4;border-radius:12px;padding:8px;box-shadow:0 2px 8px rgba(27,32,48,.04)}

/* Top controls */
.vis-top-btn{border:1px solid #cfd6e4;background:#f4f6fb;border-radius:8px;padding:4px 10px;font-size:13px;color:#35405a;transition:all .15s ease}
.vis-top-btn.active{background:#fff;border-color:#88f;color:#2b2f4a;box-shadow:0 2px 6px rgba(136,136,255,.18)}
.vis-auto-btn{border:1px solid #cfd6e4;background:#fff;border-radius:8px;padding:4px 8px;color:#35405a}
.vis-speed{border-color:#cfd6e4}

/* Bottom step buttons */
.vis-btn{border:1px solid #d8dde8;background:#f7f8fc;border-radius:8px;padding:6px 8px;color:#36405a;transition:all .15s ease}
.vis-btn:hover{background:#fff;border-color:#bfc8dd}
.vis-btn:disabled{opacity:.6}

/* Focus mode dimming */
#vis-snippet.focus-mode tr{opacity:.82}
#vis-snippet.focus-mode tr.last-executed{background:#e7ecff}
.vis-controls-sticky{position:sticky;top:0;background:#f7f9fe;border-radius:10px;padding:6px;z-index:5}
.vis-compact-btn{border:1px solid #cfd6e4;background:#fff;border-radius:8px;padding:4px 8px;color:#35405a}
.vis-compact-btn{width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.vis-compact-btn svg{display:block}
body.vis-compact #vis-snippet{height:260px;font-size:14px;line-height:17px}
body.vis-compact #vis-output{height:160px}
body.vis-compact .vis-btn{padding:4px 6px;font-size:12px}
body.vis-compact .vis-panel-header{gap:6px}
body.vis-compact .vis-line-preview{padding:4px 6px}
body.vis-compact .vis-panel-tabs .vis-tab{padding:2px 8px;font-size:11px}
body.vis-compact .vis-speed{font-size:11px}
body.vis-compact #ExecutionPane{padding:4px}
body.vis-compact #vis-right-header{padding:6px}
#vis-snippet-resizer{height:8px;cursor:row-resize;background:linear-gradient(90deg,#e8edf7,#f6f8fc);border-radius:4px;margin:6px 0}
