.dcc-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:4px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:5px;color:var(--text-primary);line-height:0;cursor:default;transition:color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.dcc-icon-btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--bg-tertiary);color:var(--accent-blue);border-color:var(--accent-blue);transform:scale(1.08)}.dcc-icon-btn:active:not(:disabled):not([aria-disabled=true]){transform:scale(.94)}.dcc-icon-btn:disabled{opacity:.4;cursor:default}.dcc-icon-btn.is-active{color:var(--accent-blue);border-color:var(--accent-blue)}.dcc-icon-btn[aria-disabled=true]{opacity:.4;cursor:default}.dcc-caption-btn{--caption-tint: var(--accent-blue);display:inline-flex;align-items:center;justify-content:center;padding:2px;background:transparent;color:var(--text-secondary);border:none;line-height:0;cursor:default;transition:color var(--transition-fast),transform var(--transition-fast)}.dcc-caption-btn svg{display:block}.dcc-caption-btn:hover:not(:disabled){background:transparent;color:var(--caption-tint);transform:scale(1.15)}.dcc-caption-btn:active:not(:disabled){transform:scale(.95)}.dcc-close-btn{--caption-tint: var(--accent-red)}.ui-tooltip{position:fixed;z-index:var(--z-tooltip, 1000);pointer-events:none;max-width:240px;padding:4px 8px;font-size:var(--font-size-sm, 12px);font-weight:500;line-height:1.3;white-space:normal;overflow-wrap:break-word;color:var(--viz-tooltip-text, #e8eaff);background:var(--viz-tooltip-bg, rgba(20, 30, 60, .92));border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm, 4px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .3));animation:ui-tooltip-in .12s ease both}@keyframes ui-tooltip-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.ui-tooltip{animation:none}}:root{--bc-control-font-size: .85rem;--bc-label-font-size: .82rem;--bc-caption-font-size: .72rem;--bc-title-font-size: .95rem;--bc-hint-font-size: .66rem;--bc-btn-font-size: .95rem;--bc-control-font-family: ui-monospace, SFMono-Regular, Menlo, monospace}.bc-control,.bc-field input[type=number],.bc-field input[type=text],.bc-seed-box,.bc-input,.bc-dual-val{box-sizing:border-box;font-size:var(--bc-control-font-size);font-family:var(--bc-control-font-family);color:var(--text-primary);background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:4px}.bc-control:focus,.bc-field input[type=number]:focus,.bc-field input[type=text]:focus,.bc-seed-box:focus,.bc-input:focus,.bc-dual-val:focus{outline:none;border-color:var(--accent-blue)}.bc-field-label,.bc-field>label,.bc-field-compact>label,.bc-select-row>label,.bc-row>label,.bc-textarea-row>label,.bc-dual-row>label,.bc-seed-labelgroup>label{font-size:var(--bc-label-font-size);text-transform:uppercase;line-height:1.15;text-align:left;color:var(--text-secondary)}.bc-row>label{text-align:right}.bc-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;overflow:auto;padding:16px;box-sizing:border-box}.bc-shell{display:flex;align-items:stretch;max-height:88vh}.bc-card{position:relative;width:680px;max-height:88vh;overflow-y:auto;background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);padding:16px 24px 20px;color:var(--text-primary);font-size:15px;box-sizing:border-box;box-shadow:var(--shadow-md),inset 0 1px #ffffff73}.bc-shell-docked{width:96vw;height:90vh;max-height:90vh;--bc-control-font-size: .72rem;--bc-label-font-size: .68rem;--bc-btn-font-size: .76rem}.bc-config-col{display:contents}.bc-shell-docked .bc-config-col{display:flex;flex-direction:column;flex:0 0 380px;min-width:0;height:100%;min-height:0}.bc-shell-docked .bc-card{width:100%;flex:0 1 auto;max-height:100%;padding:12px 14px 14px;font-size:12px;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.bc-shell-docked .bc-config-aux{flex:1 1 0;min-height:0;width:100%;box-sizing:border-box;display:flex;overflow:hidden;background:var(--bg-secondary);border:2px solid var(--border-primary);border-top:none;border-radius:0 0 0 var(--radius-md);box-shadow:var(--shadow-md),inset 0 1px #ffffff73}.bc-shell-docked .bc-field{grid-template-columns:96px 64px 1fr;column-gap:8px;margin:9px 0;align-items:center}.bc-shell-docked .bc-dual-row{grid-template-columns:100px 1fr 64px;column-gap:8px;margin:9px 0;align-items:center}.bc-shell-docked .bc-ticks{margin:0 7px}.bc-shell-docked .bc-bounds{font-size:.58rem}.bc-shell-docked .bc-row{grid-template-columns:108px 1fr;column-gap:8px;margin:9px 0;align-items:center}.bc-shell-docked .bc-select-row{grid-template-columns:96px 1fr;column-gap:8px;margin:9px 0;align-items:center}.bc-shell-docked .bc-header{font-size:.78rem;padding-bottom:7px;margin-bottom:10px;gap:8px}.bc-shell-docked .bc-header-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.bc-header-right{display:flex;align-items:center;gap:10px;flex:0 0 auto}.bc-swatch{width:14px;height:14px}.bc-shell-docked .bc-field input[type=range]{height:14px;--bc-thumb: 14px}.bc-shell-docked .bc-field input[type=number],.bc-shell-docked .bc-field input[type=text],.bc-shell-docked .bc-dual-val,.bc-shell-docked .bc-input{padding:2px 3px}.bc-shell-docked .bc-dual-val{width:56px}.bc-shell-docked .bc-dual-track{height:22px}.bc-shell-docked .bc-dual-track input[type=range]::-webkit-slider-thumb{width:14px;height:14px}.bc-shell-docked .bc-dual-track input[type=range]::-moz-range-thumb{width:14px;height:14px}.bc-shell-docked .bc-check{font-size:.72rem;margin:6px 0}.bc-shell-docked .bc-check input[type=checkbox]{width:13px;height:13px}.bc-shell-docked .bc-errors,.bc-shell-docked .bc-warnings{font-size:.7rem;padding:6px 9px;margin-top:9px}.bc-shell-docked .bc-actions{margin-top:14px;gap:8px}.bc-shell-docked .bc-btn{padding:4px 14px}.bc-preview-dock{flex:1 1 auto;min-width:0;height:100%;overflow:hidden;background:var(--bg-secondary);border:2px solid var(--border-primary);border-left:none;border-radius:0 var(--radius-md) var(--radius-md) 0;box-sizing:border-box;box-shadow:var(--shadow-md),inset 0 1px #ffffff73}.bc-preview-toggle{flex:0 0 auto}.bc-header{display:flex;align-items:center;gap:10px;padding:2px 0 10px;margin-bottom:14px;border-bottom:1px solid var(--border-secondary);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--header-title-color)}.bc-swatch{width:18px;height:18px;border:1px solid var(--border-primary);border-radius:3px;flex-shrink:0}.bc-title{flex:1;min-width:0}.bc-close{flex:0 0 auto}.bc-field{display:grid;grid-template-columns:150px 84px 1fr;align-items:center;column-gap:14px;margin:6px 0}.bc-field>label{grid-column:1}.bc-slider-cell{grid-column:3;display:flex;flex-direction:column;gap:1px;min-width:0}.bc-ticks{position:relative;height:5px;margin:0 9px}.bc-tick{position:absolute;top:0;width:1px;height:5px;background:var(--border-secondary);transform:translate(-50%)}.bc-tick-mark{top:-2px;width:2px;height:9px;background:var(--accent-blue);border-radius:1px}.bc-bounds{display:flex;justify-content:space-between;margin:0 4px;font-size:.62rem;font-family:var(--bc-control-font-family);color:var(--text-secondary)}.bc-field input[type=range]{width:100%;height:18px;margin:0;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;--bc-thumb: 18px}.bc-field input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent-blue) 0 var(--bc-fill, 0%),var(--border-secondary) var(--bc-fill, 0%) 100%)}.bc-field input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--bc-thumb);height:var(--bc-thumb);margin-top:calc((6px - var(--bc-thumb)) / 2);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.bc-field input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:var(--border-secondary)}.bc-field input[type=range]::-moz-range-progress{height:6px;border-radius:3px;background:var(--accent-blue)}.bc-field input[type=range]::-moz-range-thumb{width:var(--bc-thumb);height:var(--bc-thumb);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.bc-field input[type=number],.bc-field input[type=text]{grid-column:2;width:100%;text-align:center;padding:3px 4px;-moz-appearance:textfield;appearance:textfield}.bc-num-field{grid-column:2;display:flex;align-items:stretch;gap:3px;min-width:0}.bc-num-field input[type=text]{grid-column:auto;flex:1 1 auto;width:auto;min-width:0}.bc-stepper{display:flex;flex-direction:column;flex:0 0 auto}.bc-step-btn{display:flex;align-items:center;justify-content:center;width:15px;flex:1 1 0;padding:0;font-size:7px;line-height:1;color:var(--text-secondary);background:var(--bg-quaternary);border:1px solid var(--border-secondary);cursor:default;user-select:none}.bc-step-btn:first-child{border-radius:4px 4px 0 0;border-bottom:none}.bc-step-btn:last-child{border-radius:0 0 4px 4px}.bc-step-btn:hover:not(:disabled){color:var(--text-primary);background:var(--bg-tertiary);border-color:var(--accent-blue)}.bc-step-btn:disabled{opacity:.35;cursor:default}.bc-field.bc-invalid input[type=number],.bc-field.bc-invalid input[type=text]{border-color:var(--accent-red);background:#e157592e}.bc-field-compact{display:grid;grid-template-columns:1fr 76px;align-items:center;column-gap:10px;margin:6px 0}.bc-field-compact>label{grid-column:1}.bc-value-chip{grid-column:2;position:relative;display:block;width:100%;box-sizing:border-box;color:var(--text-primary);background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:4px;padding:3px 6px;overflow:hidden}.bc-value-chip:hover,.bc-value-chip:focus-within{border-color:var(--accent-blue)}.bc-value-chip-input{width:100%;box-sizing:border-box;margin:0;padding:0;border:none;background:transparent;outline:none;font-size:var(--bc-control-font-size);font-family:var(--bc-control-font-family);text-align:center;color:inherit;cursor:text;-moz-appearance:textfield;appearance:textfield}.bc-value-chip:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:var(--bc-fill, 0%);background:var(--accent-blue)}.bc-field-compact.bc-invalid .bc-value-chip{border-color:var(--accent-red);background:#e157592e}.bc-field-compact-disabled>label{opacity:.6}.bc-value-chip-disabled,.bc-value-chip-disabled:hover,.bc-value-chip-disabled:focus-within{opacity:.55;cursor:not-allowed;border-color:var(--border-secondary)}.bc-value-chip-disabled .bc-value-chip-input{cursor:not-allowed}.bc-value-chip-disabled:after{display:none}.bc-field-compact-seed{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:10px;margin:6px 0}.bc-seed-labelgroup{grid-column:1;display:inline-flex;align-items:center;gap:6px;min-width:0}.bc-seed-controls{grid-column:2;justify-self:end;display:inline-flex;align-items:center;gap:6px}.bc-seed-box{width:76px;text-align:center;padding:3px 6px;-moz-appearance:textfield;appearance:textfield}.bc-vpop{position:fixed;z-index:10001;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 12px 12px;background:var(--bg-secondary, #1d2228);border:1px solid var(--border-secondary);border-radius:8px;box-shadow:0 8px 28px #00000073}.bc-vpop-track{position:relative;height:168px;width:30px;display:flex;align-items:center;justify-content:center}.bc-vpop-track input[type=range]{width:160px;height:18px;margin:0;transform:rotate(-90deg);-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;--bc-thumb: 18px}.bc-vpop-track input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent-blue) 0 var(--bc-fill, 0%),var(--border-secondary) var(--bc-fill, 0%) 100%)}.bc-vpop-track input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--bc-thumb);height:var(--bc-thumb);margin-top:calc((6px - var(--bc-thumb)) / 2);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.bc-vpop-track input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:var(--border-secondary)}.bc-vpop-track input[type=range]::-moz-range-progress{height:6px;border-radius:3px;background:var(--accent-blue)}.bc-vpop-track input[type=range]::-moz-range-thumb{width:var(--bc-thumb);height:var(--bc-thumb);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.bc-vpop-min,.bc-vpop-max{position:absolute;left:50%;transform:translate(-50%);font-size:.6rem;font-family:var(--bc-control-font-family);color:var(--text-secondary);pointer-events:none}.bc-vpop-max{top:-2px}.bc-vpop-min{bottom:-2px}.bc-vpop-ticks{position:absolute;top:9px;bottom:9px;left:50%;width:5px;transform:translate(-50%);pointer-events:none}.bc-vpop-ticks .bc-tick{position:absolute;left:0;width:5px;height:1px;background:var(--border-secondary)}.bc-term{justify-self:start;width:fit-content;border-bottom:1px dotted currentColor;cursor:help;outline:none}.bc-term:hover{color:var(--accent-blue)}.bc-term:focus-visible{border-radius:2px;box-shadow:0 0 0 2px var(--accent-blue, rgba(29, 158, 117, .4))}.bc-dice{grid-column:3;justify-self:start}.bc-check{display:flex;align-items:center;gap:8px;font-size:.9rem;text-transform:uppercase;color:var(--text-secondary);margin:8px 0}.bc-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-blue)}.bc-row{display:grid;grid-template-columns:190px 1fr;align-items:center;column-gap:14px;margin:7px 0}.bc-select-row{display:grid;grid-template-columns:150px 1fr;align-items:center;column-gap:14px;margin:6px 0}.bc-select-row>label{grid-column:1}.bc-select-row select.bc-input{width:auto;max-width:100%;justify-self:start}.bc-input{width:100%;padding:4px 7px}.bc-textarea-row{display:grid;grid-template-columns:150px 1fr;align-items:start;column-gap:14px;margin:6px 0}.bc-textarea-row>label{grid-column:1;padding-top:4px}.bc-textarea{resize:vertical;min-height:3.4em;line-height:1.3;white-space:pre-wrap}.bc-errors{margin:12px 0 0;padding:9px 12px;background:#e1575929;border:1px solid var(--accent-red);border-radius:5px;color:var(--accent-red);font-size:.85rem;list-style:none}.bc-errors li{margin:2px 0}.bc-warnings{margin:8px 0 0;padding:9px 12px;background:#b5760a24;border:1px solid var(--accent-amber);border-radius:5px;color:var(--accent-amber);font-size:.85rem;list-style:none}.bc-warnings li{margin:2px 0}.bc-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.bc-btn{padding:6px 20px;border-radius:5px;border:2px solid var(--border-primary);cursor:default;font-size:var(--bc-btn-font-size);background:var(--btn-secondary-bg);color:var(--text-primary);box-shadow:var(--btn-glow)}.bc-btn:hover{border-color:var(--accent-blue)}.bc-btn-primary{background:var(--btn-primary-bg);border-color:var(--btn-primary-bg);color:var(--btn-primary-text)}.bc-btn-primary:hover{background:var(--btn-primary-hover);border-color:var(--btn-primary-hover)}.bc-btn-danger{background:var(--btn-danger-bg);border-color:var(--btn-danger-bg);color:#fff}.bc-btn-danger:hover{background:var(--btn-danger-hover);border-color:var(--btn-danger-hover)}.bc-btn-remove{margin-right:auto}.bc-btn:disabled{opacity:.5;cursor:not-allowed}.bc-card-confirm{width:460px}.bc-confirm-message{font-size:.95rem;color:var(--text-primary);line-height:1.4;margin:4px 0}.bc-dual-row{display:grid;grid-template-columns:150px 1fr;align-items:center;column-gap:14px;margin:8px 0}.bc-dual-row>label{grid-column:1}.bc-dual{grid-column:2 / -1;display:flex;align-items:center;gap:10px}.bc-dual-track{position:relative;flex:1;min-width:0;height:28px}.bc-dual-track:before{content:"";position:absolute;left:0;right:0;top:50%;height:6px;transform:translateY(-50%);background:var(--border-secondary);border-radius:3px}.bc-dual-fill{position:absolute;top:50%;height:6px;transform:translateY(-50%);background:var(--accent-blue);border-radius:3px;pointer-events:none;z-index:2}.bc-dual.bc-invalid .bc-dual-fill{background:var(--accent-red)}.bc-dual-track input[type=range]{position:absolute;inset:0;width:100%;margin:0;background:transparent;-webkit-appearance:none;appearance:none;pointer-events:none;z-index:3}.bc-dual-track input[type=range]::-webkit-slider-runnable-track,.bc-dual-track input[type=range]::-moz-range-track{background:transparent;border:none}.bc-dual-track input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.bc-dual-track input[type=range]::-moz-range-thumb{pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.bc-dual-val{width:76px;text-align:center;padding:3px;font-variant-numeric:tabular-nums}.bc-dual.bc-invalid .bc-dual-val{border-color:var(--accent-red);background:#e157592e}.bc-shell.ss-shell{width:96vw;height:94vh;max-height:94vh}.ss-shell .bc-config-col{flex:0 0 50%;min-width:0;height:100%;min-height:0;overflow:hidden}.ss-shell .bc-card{flex:1 1 auto;width:100%;height:100%;max-height:none;overflow-y:auto;box-sizing:border-box}.ss-shell .bc-preview-dock{flex:1 1 50%;min-width:0}.ss-shell .bc-field{grid-template-columns:136px 64px 1fr}.ss-shell .bc-select-row,.ss-shell .bc-textarea-row{grid-template-columns:136px 1fr}.ss-shell .bc-field>label,.ss-shell .bc-select-row>label{white-space:nowrap}.ss-preset-row{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--border-secondary)}.ss-track-section{margin-bottom:10px;padding-top:10px;border-top:1px solid var(--border-secondary)}.ss-track-section:first-of-type{border-top:none;padding-top:0}.ss-track-head-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ss-track-heading{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary);flex:1 1 auto;min-width:0}.ss-add-track{margin-top:6px;margin-bottom:10px;border-style:dashed}.ss-loop-row{display:flex;align-items:center;gap:8px;margin:4px 0 10px;font-size:.7rem;color:var(--text-primary);cursor:default}.ss-track-empty{font-size:.78rem;font-style:italic;color:var(--text-tertiary, var(--text-secondary));margin:2px 0 8px}.ss-mut-section{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-secondary)}.ss-mut-label{font-size:var(--bc-caption-font-size);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-amber);margin-bottom:6px}.ss-mut{border:1px solid var(--border-secondary);border-radius:var(--radius-sm);padding:6px 8px;margin-bottom:6px;background:var(--bg-tertiary, var(--bg-secondary))}.ss-mut-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ss-mut.ss-collapsed .ss-mut-head{margin-bottom:0}.ss-mut.ss-collapsed .ss-chevron{transform:rotate(-90deg)}.ss-mut-title{flex:1 1 auto;font-size:.8rem;font-weight:600;color:var(--text-primary)}.ss-mut-addbtns{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.ss-mut-addbtn{font-size:var(--bc-btn-font-size);padding:2px 8px;white-space:nowrap}.ss-stall-row{display:flex;align-items:center;gap:6px}.ss-stall-input{width:70px}.ss-stall-input.ss-stall-bad{border-color:var(--accent-red);background:#e157592e}.ss-stall-hint,.ss-field-hint{margin-top:4px;font-size:var(--bc-hint-font-size);line-height:1.3;color:var(--accent-red)}.ss-stall-dash{color:var(--text-secondary)}.ss-clip-panel{border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:8px;margin-bottom:10px;background:var(--bg-secondary)}.ss-clip-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ss-collapse-btn,.ss-clip-title-btn,.ss-icon-btn{cursor:default}.ss-clip-panel.ss-collapsed .ss-clip-head{margin-bottom:0}.ss-collapse-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:2px;line-height:0;background:transparent;border:none;color:var(--text-secondary);cursor:default;transition:color var(--transition-fast)}.ss-collapse-btn:hover{color:var(--accent-blue)}.ss-chevron{transition:transform var(--transition-fast)}.ss-clip-panel.ss-collapsed .ss-chevron{transform:rotate(-90deg)}.ss-clip-title{font-weight:600;font-size:.85rem;color:var(--text-primary);flex:1 1 auto;min-width:0}.ss-clip-title-btn{cursor:default;user-select:none}.ss-clip-summary{font-weight:400;color:var(--text-secondary)}.ss-track-controls{margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-secondary)}.ss-icon-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:1px;background:transparent;border:none;color:var(--text-secondary);line-height:0;cursor:default;transition:color var(--transition-fast),transform var(--transition-fast)}.ss-icon-btn svg{display:block}.ss-icon-btn:hover:not(:disabled){background:transparent;color:var(--accent-red);transform:scale(1.15)}.ss-icon-btn:active{transform:scale(.95)}.ss-add{display:inline-block;width:auto;margin-top:4px;padding:2px 10px;font-size:var(--bc-btn-font-size);text-align:left;white-space:nowrap}.ss-add-clip{margin-top:8px;margin-bottom:6px}.ss-add-clip-wrap{position:relative;display:inline-block}.ss-addmenu{position:absolute;z-index:30;top:calc(100% + 2px);left:0;right:auto;width:max-content;display:flex;flex-direction:column;gap:1px;padding:4px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);box-shadow:0 6px 20px #00000059}.ss-addmenu-item{text-align:left;font-size:var(--bc-btn-font-size);color:var(--text-primary);background:transparent;border:none;border-radius:var(--radius-sm);padding:5px 8px;cursor:default}.ss-addmenu-item:hover{background:var(--accent-blue);color:#fff}.ss-timeline{display:flex;flex-direction:column;width:100%;height:100%;box-sizing:border-box;padding:10px}.ss-timeline-caption{flex:0 0 auto;font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.ss-timeline-plot{flex:1 1 auto;min-height:0;position:relative}.ss-timeline-msg{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-secondary);font-size:.85rem}.ss-timeline-error{flex-direction:column;gap:8px;padding:16px;box-sizing:border-box;color:var(--accent-red);text-align:center;overflow:auto}.ss-timeline-error pre{margin:0;max-width:100%;max-height:60%;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:.72rem;color:var(--text-secondary)}.ss-track-divider{height:0;border-top:3px solid var(--text-secondary);opacity:.9}.ss-clip-overlap{background:#f0ad4e29;border-left:1px dashed rgba(214,137,16,.7);border-right:1px dashed rgba(214,137,16,.7)}.ss-clip-overlap-badge{position:absolute;bottom:100%;margin-bottom:2px;left:50%;transform:translate(-50%);white-space:nowrap;padding:1px 6px;font-size:.64rem;font-weight:600;color:var(--accent-amber-deep);background:#f0ad4eeb;border-radius:3px;box-shadow:0 1px 2px #00000040}.ss-cursor{position:absolute;top:0;bottom:0;width:1px;background:var(--accent-blue);opacity:.55}.ss-clip-region{box-sizing:border-box;border:1px solid var(--accent-blue);border-radius:3px;cursor:grab;transition:background var(--transition-fast)}.ss-clip-region:hover{background:#1f6feb1a}.ss-clip-region:active{cursor:grabbing}.ss-clip-region.ss-clip-selected{background:#1f6feb2e}.ss-clip-seg-label{position:absolute;bottom:0;left:0;box-sizing:border-box;padding:0 5px;font-size:.62rem;font-weight:600;line-height:1.5;color:var(--onlight-ink-strong);background:#fffffff2;border:1px solid rgba(0,0,0,1);border-radius:7px;box-shadow:0 1px 2px #0003;white-space:nowrap;overflow:visible;pointer-events:none}.ss-clip-handle{position:absolute;top:0;bottom:0;width:3px;cursor:ew-resize;background:var(--accent-blue);opacity:0;transition:opacity var(--transition-fast)}.ss-clip-region:hover .ss-clip-handle{opacity:.55}.ss-clip-region.ss-clip-selected{box-shadow:0 0 0 1px var(--accent-blue),0 0 8px #1f6feb80;z-index:2}.ss-clip-handle-l{left:-1px;border-radius:3px 0 0 3px}.ss-clip-handle-r{right:-1px;border-radius:0 3px 3px 0}.ss-zoomctl{position:absolute;right:0;top:0;display:flex;align-items:stretch;gap:0;background:#fff;border:1px solid var(--onlight-border);border-top:none;border-right:none;border-radius:0 0 0 5px;overflow:hidden;box-shadow:0 1px 3px #0000004d;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;z-index:2}.ss-zoom-btn,.ss-zoom-pct,.ss-zoom-axis{border:none;background:#fff;color:var(--onlight-ink);cursor:default;padding:0;line-height:1}.ss-zoom-axis{width:22px;height:22px;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;border-right:1px solid var(--onlight-line);color:var(--onlight-dim)}.ss-zoom-axis:hover{background:var(--onlight-hover-bg);color:var(--accent-blue)}.ss-zoom-axis.active{background:var(--accent-blue);color:#fff}.ss-zoom-btn{width:22px;height:22px;font-size:16px;display:inline-flex;align-items:center;justify-content:center}.ss-zoom-pct{min-width:46px;font-size:11px;border-left:1px solid var(--onlight-line);border-right:1px solid var(--onlight-line);padding:0 6px}.ss-zoom-fit{border-left:1px solid var(--onlight-line)}.ss-zoom-fit svg{display:block}.ss-zoom-btn:hover,.ss-zoom-pct:hover{background:var(--onlight-hover-bg);color:var(--accent-blue)}.ss-zoom-btn:active,.ss-zoom-pct:active{background:var(--onlight-active-bg)}.bc-shell.ss-inspector-shell{width:96vw;height:92vh;max-height:92vh;--bc-control-font-size: .7rem;--bc-label-font-size: .7rem;--bc-caption-font-size: .72rem;--bc-title-font-size: .95rem;--bc-btn-font-size: .7rem}.ss-inspector-card{width:100%;height:100%;max-height:none;display:flex;flex-direction:column;overflow:hidden;padding:14px 18px 16px;box-sizing:border-box}.ss-inspector-card>.bc-header{flex:0 0 auto;margin-bottom:8px}.ss-header-preset{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;text-transform:none;letter-spacing:normal;font-weight:400;color:var(--text-secondary)}.ss-header-preset-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.ss-header-preset select.bc-input{width:auto;min-width:160px;max-width:240px;font-size:.82rem;text-transform:none;letter-spacing:normal}.ss-inspector-body{flex:1 1 auto;display:flex;min-height:0;gap:14px}.ss-inspector-card>.bc-actions{flex:0 0 auto;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-secondary)}.ss-outline{flex:0 0 272px;min-height:0;overflow-y:auto;padding-right:12px;border-right:1px solid var(--border-secondary)}.ss-outline .bc-select-row{grid-template-columns:auto 1fr;column-gap:6px;margin:4px 0}.ss-outline .bc-select-row>label{white-space:nowrap}.ss-outline .bc-select-row select.bc-input{min-width:0}.ss-outline .ss-add{width:auto;box-sizing:border-box}.ss-outline-track{margin-bottom:10px;padding:8px;border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-secondary)}.ss-track-transition{display:flex;align-items:center;gap:6px;margin:2px 0 8px}.ss-track-transition-label{flex:0 0 auto;font-size:var(--bc-caption-font-size);text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);white-space:nowrap}.ss-track-transition-select.bc-input{flex:1 1 auto;min-width:0}.ss-track-transition-select.bc-input:disabled{opacity:.45;cursor:not-allowed}.ss-outline-track-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ss-outline-track-name{flex:1 1 auto;min-width:0;font-size:var(--bc-caption-font-size);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary)}.ss-outline-clip{display:flex;align-items:center;gap:6px;padding:5px 8px;margin-bottom:6px;border:1px solid var(--border-secondary);border-radius:var(--radius-sm);background:var(--bg-tertiary, var(--bg-secondary));cursor:pointer;font-size:.82rem;color:var(--text-primary)}.ss-outline-clip:hover{border-color:var(--accent-blue)}.ss-outline-clip.ss-selected{background:#1f6feb2e;border-color:var(--accent-blue);box-shadow:inset 2px 0 0 var(--accent-blue)}.ss-outline-clip-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-timeline-pane{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;min-height:0}.ss-inspector-pane{flex:0 0 330px;min-height:0;overflow-y:auto;padding:0 14px;border-right:1px solid var(--border-secondary)}.ss-outline-caption,.ss-inspector-caption,.ss-timeline-pane>.ss-timeline-caption{flex:0 0 auto;font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.ss-inspect-empty{color:var(--text-secondary);font-size:.85rem;font-style:italic;padding:8px 0}.ss-clip-params{display:flex;flex-direction:column}.ss-clip-name-input{width:100%;box-sizing:border-box;font-size:var(--bc-title-font-size);font-weight:700;color:var(--text-primary);margin:0 0 8px;padding:4px 6px;background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm)}.ss-clip-name-input:focus{outline:none;border-color:var(--accent-blue)}.ss-inspector-pane .bc-field{grid-template-columns:1fr 64px auto;column-gap:8px}.ss-inspector-pane .bc-select-row,.ss-inspector-pane .bc-textarea-row{grid-template-columns:92px 1fr}.ss-inspector-pane .bc-field>label,.ss-inspector-pane .bc-select-row>label{white-space:nowrap}.ss-inspector-pane .bc-select-row select.bc-input{justify-self:end}.card-bit-panel{padding:6px}.card-bit-squares{display:flex;flex-wrap:wrap;gap:3px;padding:3px;flex:1 1 auto;min-height:0;min-width:0;overflow:hidden;align-content:flex-start}.card-bit-square{display:flex;align-items:center;justify-content:center;font-family:monospace;font-weight:700;box-sizing:border-box;flex-shrink:0;overflow:hidden}.card-bit-squares-grouped{overflow:auto}.card-bit-group{display:grid;align-content:start;justify-content:start}.card-panel,.card-bit-panel,.card-plot-panel{background:var(--bg-secondary);border:var(--card-bw, 1px) solid var(--border-primary);box-sizing:border-box;width:100%;height:100%;max-width:100%;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.card-panel-controls,.card-bit-panel-controls{display:flex;flex-wrap:wrap;gap:calc(4px * var(--card-scale, 1));margin-bottom:calc(6px * var(--card-scale, 1));font-size:.65rem}.card-panel-icon-btn,.card-bit-toggle-btn,.card-plot-mode-btn{display:inline-flex;align-items:center;justify-content:center;padding:calc(4px * var(--card-scale, 1));border-radius:calc(5px * var(--card-scale, 1));line-height:0;background:#fff;color:var(--text-secondary);border:var(--card-bw, 1px) solid var(--border-primary);cursor:default;transition:color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.card-panel-icon-btn svg,.card-bit-toggle-btn svg,.card-plot-mode-btn svg{display:block;width:calc(var(--card-panel-icon-size) * var(--card-scale, 1));height:calc(var(--card-panel-icon-size) * var(--card-scale, 1))}.card-panel-icon-btn:hover:not(:disabled),.card-bit-toggle-btn:hover:not(:disabled),.card-plot-mode-btn:hover:not(:disabled){color:var(--accent-blue);border-color:var(--accent-blue);transform:scale(1.1)}.card-panel-icon-btn:active:not(:disabled),.card-bit-toggle-btn:active:not(:disabled),.card-plot-mode-btn:active:not(:disabled){transform:scale(.95)}.card-panel-icon-btn[aria-pressed=true],.card-bit-toggle-btn[aria-pressed=true],.card-plot-mode-btn[aria-pressed=true]{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--header-title-color)}.card-panel-icon-btn[aria-pressed=true]:hover:not(:disabled),.card-bit-toggle-btn[aria-pressed=true]:hover:not(:disabled),.card-plot-mode-btn[aria-pressed=true]:hover:not(:disabled){background:var(--btn-primary-hover);color:var(--btn-primary-text)}.card-panel-icon-btn:disabled,.card-bit-toggle-btn:disabled,.card-plot-mode-btn:disabled{opacity:.4;cursor:not-allowed}.card-plot-mode-btn{align-self:flex-start}.card-panel-ctl-btn,.card-bit-ctl-btn{font-size:inherit;padding:.25em .55em;border:var(--card-bw-2, 2px) solid var(--border-primary);border-radius:var(--radius-sm);background:var(--panel-ctl-bg);color:var(--text-primary);cursor:default;white-space:nowrap;line-height:1.3;font-family:inherit;box-shadow:var(--btn-glow)}.card-panel-ctl-btn:hover:not(:disabled),.card-bit-ctl-btn:hover:not(:disabled){background:var(--panel-ctl-bg-hover)}.card-panel-ctl-btn.active,.card-bit-ctl-btn.active{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--header-title-color)}.card-panel-ctl-btn.active:hover:not(:disabled),.card-bit-ctl-btn.active:hover:not(:disabled){background:var(--btn-primary-hover)}.card-panel-ctl-btn:disabled,.card-bit-ctl-btn:disabled{opacity:.4;cursor:not-allowed}.card-plot-panel{padding:4px;flex:1 1 auto}.card-plot-host{flex:1 1 auto;min-height:0;min-width:0}.card-plot-panel.is-empty{align-items:center;justify-content:center;font-size:11px;color:var(--text-secondary)}:root{--xy-node-group-background-color: transparent;--xy-node-border: none;--bg-primary: #999999;--bg-secondary: #cccccc;--bg-tertiary: #d6d6d6;--bg-quaternary: #bcbcbc;--text-primary: #111111;--text-secondary: #555555;--text-tertiary: #777777;--border-primary: #333333;--border-secondary: #555555;--accent-blue: #4a90d9;--accent-blue-hover: #3a6a9f;--accent-green: #52c41a;--accent-orange: #fa8c16;--accent-red: #e15759;--accent-red-hover: #cf1322;--accent-purple: #722ed1;--accent-pink: #eb2f96;--accent-amber: #b5760a;--accent-amber-deep: #7a4a06;--onlight-ink: #222222;--onlight-ink-strong: #1b2330;--onlight-dim: #9aa0a6;--onlight-border: #999999;--onlight-line: #dddddd;--onlight-hover-bg: #eaf2ff;--onlight-active-bg: #d8e6ff;--swatch-colorbits-gradient: linear-gradient(90deg, #4e79a788 0%, #59a14f88 22%, #edc94888 44%, #f28e2b88 66%, #e1575988 84%, #b07aa188 100%);--header-bg: linear-gradient(135deg, #d4d4d4 0%, #b8b8b8 100%);--header-border: 2px solid var(--border-primary);--header-title-color: #0f3460;--header-title-glow: 0 1px 0 rgba(255, 255, 255, .6);--btn-primary-bg: #4a80b5;--btn-primary-hover: var(--accent-blue-hover);--btn-primary-text: #ffffff;--btn-danger-bg: var(--accent-red);--btn-danger-hover: var(--accent-red-hover);--btn-secondary-bg: var(--bg-secondary);--btn-secondary-hover: var(--bg-quaternary);--btn-glow: 1px 2px 4px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .55);--panel-ctl-bg: rgba(0, 0, 0, .07);--panel-ctl-bg-hover: rgba(0, 0, 0, .15);--canvas-bg: #888888;--canvas-dot-color: #777777;--canvas-grid-color: rgba(0, 0, 0, .06);--card-bg: var(--bg-tertiary);--card-border: var(--border-primary);--card-border-hover: var(--border-primary);--card-border-selected: var(--header-title-color);--card-shadow: 2px 4px 8px rgba(0, 0, 0, .4), inset 0 1px 0 rgba(255, 255, 255, .55);--card-shadow-hover: 2px 5px 10px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .55);--card-shadow-selected: 0 0 0 2px rgba(15, 52, 96, .45), 2px 4px 8px rgba(0, 0, 0, .4);--card-header-bg: rgba(15, 52, 96, .1);--card-header-icon-size: 18px;--card-toolbar-height: 26px;--card-activity-min: 22px;--card-header-close-size: 22px;--card-panel-icon-size: 18px;--handle-default: var(--accent-blue);--handle-border: #000000;--handle-hover: var(--header-title-color);--handle-glow: 0 0 0 3px rgba(74, 144, 217, .3);--handle-hit-padding: 20px;--edge-input:#5b7fa6;--edge-context: var(--edge-input);--edge-credit: #b06a86;--edge-scalar-data:#a86f88;--edge-discrete-data: #5f9b86;--edge-reward: #c2913a;--edge-done: #8b5cf6;--edge-action: #000000;--edge-viz: #000000;--edge-dendrite: var(--edge-input);--edge-axon: #2b9ca6;--edge-width: 2px;--edge-width-selected: 3px;--edge-glow: none;--subflow-bg: rgba(15, 52, 96, .06);--subflow-border: 2px dashed rgba(15, 52, 96, .4);--subflow-border-hover: 2px solid rgba(15, 52, 96, .55);--subflow-border-selected: 2px solid var(--header-title-color);--subflow-shadow: inset 0 0 20px rgba(15, 52, 96, .08);--subflow-shadow-selected: 0 4px 16px rgba(15, 52, 96, .25);--subflow-label-bg: rgba(15, 52, 96, .12);--subflow-label-border: 1px solid rgba(15, 52, 96, .4);--subflow-label-text: var(--header-title-color);--viz-plot-bg: #eeeeee;--viz-plot-border: 2px solid var(--border-primary);--viz-plot-line: var(--accent-blue);--viz-plot-fill: rgba(74, 144, 217, .12);--viz-plot-grid: rgba(0, 0, 0, .12);--viz-plot-grid-strong: #888888;--viz-plot-point: var(--header-title-color);--viz-plot-point-stroke: #ffffff;--viz-plot-axis-line: var(--border-primary);--viz-plot-axis-label: var(--text-primary);--viz-tooltip-bg: rgba(20, 30, 60, .9);--viz-tooltip-text: #e8eaff;--viz-plot-axis-title: #333333;--viz-plot-outline: #000000;--viz-plot-label: #000000;--viz-bits-cursor: #0064a3;--viz-bits-on: #111111;--viz-bits-off: #ffffff;--viz-bits-on-text: #ffffff;--viz-bits-off-text: #333333;--viz-chip-border: #777777;--viz-chip-bg: #a8c8e8;--viz-chip-off: #eeeeee;--viz-chip-text: #222222;--viz-vector-1: var(--accent-blue);--viz-vector-2: var(--accent-green);--viz-vector-3: var(--accent-orange);--viz-vector-4: var(--accent-pink);--viz-vector-5: var(--accent-purple);--viz-vector-6: #eab308;--viz-vector-7: #13c2c2;--viz-vector-8: var(--accent-red);--viz-bitfield-bg: var(--bg-secondary);--viz-bitfield-border: 2px solid var(--border-primary);--viz-bitfield-cell-active: #111111;--viz-bitfield-cell-inactive: #ffffff;--viz-bitfield-cell-border: #000000;--viz-bitfield-cell-glow: none;--viz-bitfield-text: var(--border-primary);--shadow-sm: 1px 2px 4px rgba(0, 0, 0, .3);--shadow-md: 2px 4px 8px rgba(0, 0, 0, .4);--shadow-glow-green: 0 0 0 3px rgba(82, 196, 26, .25);--shadow-glow-orange: 0 0 0 3px rgba(250, 140, 22, .25);--shadow-glow-blue: 0 0 0 3px rgba(74, 144, 217, .3);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--tooltip-show-delay: .4s;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px;--spacing-xl: 30px;--circuit-padding: 160px;--circuit-header-height: 84px;--pill-icon-box: 42px;--pill-font-size: 24px;--pill-line-height: 1.25;--circuit-bg: rgba(15, 52, 96, .05);--circuit-border: var(--card-border);--circuit-bg-hover: rgba(15, 52, 96, .08);--circuit-border-hover: var(--card-border-hover);--circuit-border-selected: var(--card-border-selected);--circuit-bg-selected: rgba(15, 52, 96, .09);--circuit-glow-soft: rgba(15, 52, 96, .2);--circuit-card-accent: rgba(15, 52, 96, .7);--font-size-2xs: 9px;--font-size-xs: 10px;--font-size-sm: 12px;--font-size-md: 13px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 32px;--font-size-3xl: 40px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 600;--line-height-tight: 1.2;--line-height-normal: 1.5;--z-canvas: 0;--z-node: 1;--z-panel: 10;--z-dialog: 100;--z-tooltip: 1000}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);overflow:hidden}#app{width:100vw;height:100vh}button{background:var(--bg-quaternary);color:var(--text-primary);border:1px solid var(--border-secondary);padding:6px 12px;border-radius:var(--radius-sm);cursor:default;font-size:var(--font-size-md);transition:background var(--transition-normal);font-family:inherit}button:hover:not(:disabled){background:var(--border-secondary)}button.primary{background:var(--accent-blue);border-color:var(--accent-blue);color:var(--btn-primary-text)}button.primary:hover:not(:disabled){background:var(--accent-blue-hover)}button.danger{background:var(--accent-red);border-color:var(--accent-red);color:var(--btn-primary-text);opacity:.8}button.danger[data-disabled]{opacity:.5}button.danger:hover:not(:disabled){background:var(--accent-red-hover)}button:disabled{opacity:.5;cursor:not-allowed}#learning-toggle{opacity:.8}#learning-toggle[data-pressed]{opacity:.6}#learning-toggle[data-selected]{opacity:1}#learning-toggle[data-selected][data-pressed]{opacity:.8}#learning-toggle[data-disabled]{opacity:.5}select{background:var(--bg-quaternary);color:var(--text-primary);border:1px solid var(--border-secondary);padding:6px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-md);font-family:inherit}select:focus{outline:2px solid var(--accent-blue);outline-offset:1px}input[type=range]{-webkit-appearance:none;appearance:none;background:var(--bg-quaternary);cursor:pointer}input[type=range]::-webkit-slider-track{height:2px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--accent-blue);height:12px;width:12px;border-radius:100%}input[type=range]::-moz-range-track{background:var(--bg-quaternary);height:2px;border-radius:12px}input[type=range]::-moz-range-thumb{background:var(--accent-blue);height:12px;width:12px;border-radius:100%;border:none}input[type=range].dcc-range{width:100%;height:18px;margin:0;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;--range-thumb: 18px}input[type=range].dcc-range::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent-blue) 0 var(--range-fill, 0%),var(--border-secondary) var(--range-fill, 0%) 100%)}input[type=range].dcc-range::-webkit-slider-thumb{-webkit-appearance:none;width:var(--range-thumb);height:var(--range-thumb);margin-top:calc((6px - var(--range-thumb)) / 2);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}input[type=range].dcc-range::-moz-range-track{height:6px;border-radius:3px;background:var(--border-secondary)}input[type=range].dcc-range::-moz-range-progress{height:6px;border-radius:3px;background:var(--accent-blue)}input[type=range].dcc-range::-moz-range-thumb{width:var(--range-thumb);height:var(--range-thumb);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}input[type=checkbox]{cursor:pointer}label{font-size:var(--font-size-md);color:var(--text-secondary);cursor:pointer;user-select:none}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-quaternary);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--border-secondary)}.ui-locked{pointer-events:none!important;opacity:.45}#container{display:flex;flex-direction:column;height:100vh;width:100vw}#header{background:var(--bg-tertiary);padding:var(--spacing-xs) var(--spacing-md);border-bottom:2px solid var(--border-primary);flex-shrink:0}#header h1{font-size:var(--font-size-xl);font-weight:600;color:var(--accent-blue);margin-bottom:10px}#controls-bar{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.control-group,.header-group{display:flex;gap:var(--spacing-sm);align-items:center;border:2px solid var(--border-secondary);padding:10px}.control-group label{display:flex;align-items:center;gap:var(--spacing-sm)}#status-bar{display:flex;gap:20px;margin-top:10px;font-size:var(--font-size-sm);color:var(--text-secondary);border:2px solid var(--border-secondary);padding:10px}#status-bar label{display:flex;align-items:center;gap:var(--spacing-sm)}.status-item{display:flex;gap:var(--spacing-sm);align-items:center;border:2px solid var(--border-secondary);padding:10px}.status-item label{display:flex;align-items:center;gap:var(--spacing-sm)}.status-indicator{width:8px;height:8px;border-radius:50%;background:var(--text-tertiary);transition:all var(--transition-normal)}.status-indicator.active{background:var(--accent-green);box-shadow:var(--shadow-glow-green)}.status-indicator.active.running{background:var(--accent-blue);box-shadow:var(--shadow-glow, 0 0 6px var(--accent-blue));animation:status-pulse 1.1s ease-in-out infinite}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.45}}.status-indicator.learning{background:var(--accent-orange);box-shadow:var(--shadow-glow-orange)}.status-indicator.error{background:var(--accent-red)}#main-content{display:flex;flex:1;overflow:hidden}.sidebar{background:var(--bg-secondary);border-right:2px solid var(--border-primary);overflow-y:auto;flex-shrink:0}.sidebar.left{width:250px}.sidebar.right{width:350px;border-right:none;border-left:2px solid var(--border-primary)}.sidebar h3{font-size:var(--font-size-md);color:var(--accent-blue);padding:15px 20px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);margin:0}#network-panel{flex:1;background:var(--bg-secondary);position:relative;overflow:hidden}#editor-toolbar{position:absolute;top:10px;left:10px;display:flex;gap:var(--spacing-sm);background:var(--bg-tertiary);padding:var(--spacing-sm);border-radius:var(--radius-md);border:1px solid var(--border-primary);z-index:5}.editor-tool{width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:default;border-radius:var(--radius-sm);transition:background var(--transition-fast);font-size:var(--font-size-lg);user-select:none}.editor-tool:hover{background:var(--bg-quaternary)}.editor-tool.active{background:var(--accent-blue)}.editor-tool:active{transform:scale(.95)}.my-custom-control-button{--xy-controls-button-color: var(--text-primary);--xy-controls-button-border-color: var(--bg-secondary);--xy-controls-button-background-color: var(--accent-blue);--xy-controls-button-color-hover: var(--text-primary)}.my-custom-control-button .canvas-view-toggle svg{max-width:none;max-height:none;width:18px;height:18px;fill:none;stroke:currentColor}.my-custom-control-button .canvas-view-toggle:disabled{opacity:.4}.my-custom-control-button .canvas-view-toggle.is-active:not(.colorbits-swatch){background:var(--bg-secondary);color:var(--accent-blue)}#speed-display{min-width:50px;text-align:right;font-size:var(--font-size-md);color:var(--text-secondary)}.metrics-display{display:flex;gap:15px;padding:10px 20px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.metric-item{display:flex;gap:6px;font-size:var(--font-size-sm)}.metric-label{color:var(--text-secondary)}.metric-value{color:var(--text-primary);font-weight:600;font-family:Courier New,monospace}.network-status-footer{display:flex;align-items:center;gap:var(--spacing-sm);max-width:60vw;padding:7px 14px;font-size:13px;font-weight:500;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-primary);border-left:4px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.network-status-footer-icon{flex-shrink:0;font-size:15px;line-height:1}.network-status-footer-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.network-status-footer-warn{border-left-color:var(--accent-orange)}.network-status-footer-warn .network-status-footer-icon{color:var(--accent-orange)}.network-status-footer-error{border-left-color:var(--accent-red)}.network-status-footer-error .network-status-footer-icon{color:var(--accent-red)}.bitfield-node{margin-bottom:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-md);padding:var(--spacing-md)}.bitfield-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-primary)}.bitfield-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.bitfield-size{font-size:var(--font-size-xs);color:var(--text-secondary);font-family:Courier New,monospace}.bitfield-grid{display:grid;gap:2px;background:var(--bg-secondary);padding:4px;border-radius:var(--radius-sm)}.bitfield-cell{width:100%;aspect-ratio:1;border-radius:2px;transition:background var(--transition-fast)}.bitfield-cell.inactive{background:var(--bg-quaternary)}.bitfield-cell.active{background:var(--accent-green);box-shadow:0 0 4px #4aff4a80}.bitfield-cell:hover{opacity:.8;cursor:pointer}.plot-container{margin-bottom:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-md);padding:var(--spacing-md)}.plot-title{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.dcc-icon-btn.colorbits-swatch:not(:disabled),.react-flow__controls-button.colorbits-swatch:not(:disabled){background:#fff}.dcc-icon-btn.colorbits-swatch.is-active:not(:disabled),.react-flow__controls-button.colorbits-swatch.is-active:not(:disabled){background:var(--swatch-colorbits-gradient)}.dcc-icon-btn.colorbits-swatch,.dcc-icon-btn.colorbits-swatch.is-active,.react-flow__controls-button.colorbits-swatch,.react-flow__controls-button.colorbits-swatch.is-active{color:#000;border:1px solid #000;box-sizing:border-box}.dcc-icon-btn.colorbits-swatch:hover:not(:disabled),.react-flow__controls-button.colorbits-swatch:hover:not(:disabled){color:var(--accent-blue);border-color:var(--accent-blue)}.enc-panel{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:8px;color:var(--text-primary);font-size:12px;box-sizing:border-box;box-shadow:0 3px 8px #00000059}.enc-panel-title{font-size:11px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.enc-controls-row{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.enc-controls-row label{font-size:11px;color:var(--border-primary)}.enc-controls-row select,.enc-controls-row input[type=text],.enc-select{font-size:11px;padding:2px 4px;border:1px solid var(--text-tertiary);border-radius:3px;background:#fff;color:var(--text-primary);box-sizing:border-box}.dual-range{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.dual-range-track{position:relative;flex:1;min-width:0;height:28px}.dual-range-track:before{content:"";position:absolute;left:0;right:0;top:50%;height:6px;transform:translateY(-50%);background:var(--border-secondary);border-radius:3px}.dual-range-fill{position:absolute;top:50%;height:6px;transform:translateY(-50%);background:var(--accent-blue);border-radius:3px;pointer-events:none;z-index:2}.dual-range-track input[type=range]{position:absolute;inset:0;width:100%;margin:0;background:transparent;-webkit-appearance:none;appearance:none;pointer-events:none;z-index:3}.dual-range-track input[type=range]::-webkit-slider-runnable-track{background:transparent;border:none}.dual-range-track input[type=range]::-moz-range-track{background:transparent;border:none}.dual-range-track input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer;margin-top:0}.dual-range-track input[type=range]::-moz-range-thumb{pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.dual-range input.dual-range-val{box-sizing:border-box;width:72px;min-width:72px;font-size:.85rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-primary);text-align:center;background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:4px;padding:3px;font-variant-numeric:tabular-nums}.dual-range input.dual-range-val:focus{outline:none;border-color:var(--accent-blue)}.enc-add-btn{font-size:11px;padding:2px 8px;border:1px solid var(--header-title-color);border-radius:var(--radius-sm);background:var(--btn-primary-bg);color:var(--btn-primary-text);cursor:default}.enc-add-btn:disabled{opacity:.4;cursor:not-allowed}.enc-card{border:1px solid #000;border-radius:var(--radius-sm);padding:5px 6px;margin-bottom:6px;background:var(--bg-tertiary)}.enc-card-header{display:flex;align-items:center;gap:5px;margin-bottom:4px}.enc-card-swatch{width:12px;height:12px;border:1px solid #000;border-radius:2px;flex-shrink:0}.enc-card-type{flex:1;font-size:11px;padding:1px 3px;border:1px solid var(--text-tertiary);border-radius:3px;background:#fff;color:var(--text-primary)}.enc-card-remove{border:none;background:transparent;color:var(--accent-red);cursor:default;font-size:14px;line-height:1;padding:0 2px}.enc-card-remove:disabled{opacity:.3;cursor:not-allowed}.enc-field{display:grid;grid-template-columns:52px 1fr 44px;align-items:center;gap:4px;margin:2px 0}.enc-field>label{font-size:10px;color:var(--border-primary);display:flex;align-items:center;gap:1px}.enc-field input[type=range]{width:100%}.enc-field input[type=number]{width:100%;font-size:10px;padding:1px 2px;border:1px solid var(--border-secondary);border-radius:3px;background:#fff;color:var(--text-primary);box-sizing:border-box}.enc-field-check{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--border-primary);margin:2px 0}.enc-mini-bits{display:flex;flex-wrap:wrap;gap:1px;margin-top:4px}.enc-mini-bit{width:7px;height:7px;border:1px solid #000;box-sizing:border-box}.enc-bits-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.enc-bits-header>.enc-panel-title{flex:0 0 auto;margin-bottom:0;white-space:nowrap}.enc-bits-header>.enc-bits-ctl{flex:0 1 auto;justify-content:flex-start;margin-bottom:0}.enc-bits-ctl{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:4px}.enc-bits-ctl-btn{font-size:9px;line-height:1.3;padding:2px 5px;border:1px solid var(--text-tertiary);border-radius:3px;background:#fff;color:var(--text-primary);cursor:default}.enc-bits-ctl-btn.active{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--header-title-color)}.enc-bits-ctl-btn:disabled{opacity:.4;cursor:not-allowed}.enc-bits-rows{display:flex;flex-direction:column;gap:6px}.enc-bits-row-label{font-size:10px;font-weight:700;color:var(--border-primary);display:flex;align-items:center;gap:4px;margin-bottom:2px}.enc-bits-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.enc-bits-squares{display:flex;flex-wrap:wrap;gap:2px}.enc-bit-square{width:16px;height:16px;border:1px solid #000;box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-family:monospace;font-weight:700;font-size:9px}.enc-ref-controls{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-top:6px}.enc-ref-chip{display:inline-flex;align-items:center;gap:3px;font-size:10px;padding:1px 4px;border:1px solid var(--border-primary);border-radius:3px;background:#fff}.enc-ref-chip button{border:none;background:transparent;cursor:default;color:var(--accent-red);font-size:11px;line-height:1}.enc-ref-popup-backdrop{position:fixed;inset:0;z-index:10002}.enc-ref-popup{position:fixed;background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);padding:8px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:6px}.enc-ref-popup-row{display:flex;align-items:center;gap:8px}.enc-ref-popup-actions{display:flex;gap:6px;justify-content:flex-end}.enc-ref-cancel{font-size:11px;padding:2px 8px;border:1px solid var(--text-tertiary);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--border-primary);cursor:default}.enc-cursor{display:flex;align-items:center;gap:10px}.enc-slider-cell{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.enc-bounds{display:flex;justify-content:space-between;margin:0 4px;font-size:.62rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-secondary)}.enc-cursor input.enc-cursor-val{box-sizing:border-box;width:72px;min-width:72px;font-size:.85rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-primary);text-align:center;background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:4px;padding:3px;font-variant-numeric:tabular-nums}.enc-cursor input.enc-cursor-val:focus{outline:none;border-color:var(--accent-blue)}input[type=range].enc-range{-webkit-appearance:none;appearance:none;display:block;width:100%;height:18px;margin:0;background:transparent;cursor:pointer;--enc-thumb: 18px}input[type=range].enc-range::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent-blue) 0 var(--enc-fill, 0%),var(--border-secondary) var(--enc-fill, 0%) 100%)}input[type=range].enc-range::-webkit-slider-thumb{-webkit-appearance:none;width:var(--enc-thumb);height:var(--enc-thumb);margin-top:calc((6px - var(--enc-thumb)) / 2);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}input[type=range].enc-range::-moz-range-track{height:6px;border-radius:3px;background:var(--border-secondary)}input[type=range].enc-range::-moz-range-progress{height:6px;border-radius:3px;background:var(--accent-blue)}input[type=range].enc-range::-moz-range-thumb{width:var(--enc-thumb);height:var(--enc-thumb);border-radius:50%;background:var(--accent-blue);border:none;cursor:pointer}.enc-empty{font-size:11px;color:var(--text-secondary);font-style:italic;padding:8px}.studio-subplot{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:6px;box-sizing:border-box;box-shadow:0 3px 8px #00000059}.studio-subplot--fill{width:100%;height:100%;display:flex;flex-direction:column}.react-flow__node.studio-plot-node,.react-flow__node.studio-plot-node.selected{box-shadow:none;outline:none}.react-flow__node-cursor,.react-flow__node-controls,.react-flow__node-plotrange,.react-flow__node-picker,.react-flow__node-stackedPanel,.react-flow__node-refpoints,.react-flow__node-demos,.react-flow__node-bits{pointer-events:auto!important}.react-flow__node.ui-locked{pointer-events:none!important}.studio-flow .react-flow__handle{visibility:hidden}.studio-subplot-chart{flex:1;min-height:0;min-width:0}.studio-card-title{font-size:11px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.studio-toast{position:absolute;left:50%;bottom:24px;transform:translate(-50%);z-index:50;background:var(--border-primary);color:var(--btn-primary-text);font-size:12px;padding:6px 12px;border-radius:var(--radius-sm);box-shadow:0 3px 8px #00000059;pointer-events:none}.enc-stacked-panel>.enc-panel-title{text-align:center}.enc-stacked-list{display:flex;flex-direction:column;gap:3px}.enc-stacked-chip{display:flex;align-items:center;justify-content:center;width:100%;height:34px;box-sizing:border-box;text-align:center;font-size:11px;line-height:1.2;padding:2px 6px;border-radius:4px;cursor:grab;overflow:hidden}.enc-stacked-chip:active{cursor:grabbing}.enc-stacked-chip-label{display:block;width:100%;text-align:center;overflow-wrap:break-word;white-space:normal;overflow:hidden}.enc-stacked-chip--over{outline:2px dashed var(--accent-blue);outline-offset:1px}.studio-subplot-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px}.subplot-param-ctls{display:inline-flex;flex-direction:column;gap:5px}.subplot-param-btn{width:18px;height:18px;padding:0;font-size:11px;line-height:1;border:var(--card-bw-15, 1.5px) solid var(--border-primary);border-radius:var(--radius-sm);background:#ffffffeb;color:var(--text-primary);cursor:default;flex-shrink:0}.subplot-param-btn:hover{background:var(--bg-tertiary)}.subplot-param-btn.active{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--header-title-color)}:root{--gloss-paper: #eef3f8;--gloss-mint: #8fd9bf}.term{color:var(--navy, var(--header-title-color));border-bottom:1px dotted currentColor;cursor:help;outline:none}.term:focus-visible{border-radius:2px;box-shadow:0 0 0 2px #1d9e7566}.gloss-tip{position:fixed;z-index:9999;max-width:270px;pointer-events:none;background:var(--navy, var(--header-title-color));color:var(--gloss-paper);font:12.5px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;padding:8px 11px;border-radius:8px;box-shadow:0 6px 24px #0f346047;display:none;opacity:0;transition:opacity .12s ease}.gloss-tip b{display:block;margin-bottom:3px;color:var(--gloss-mint);font-weight:700;font-size:11px;letter-spacing:.03em;text-transform:uppercase}.help-icon{border:none;background:transparent;color:var(--header-title-color);cursor:default;font-size:12px;line-height:1;padding:0 2px;flex-shrink:0}.help-icon:hover{color:var(--accent-blue-hover)}.help-popover{position:fixed;z-index:10000;max-width:260px;background:var(--btn-primary-text);border:1px solid var(--border-primary);border-radius:5px;padding:6px 8px;box-shadow:var(--shadow-md);pointer-events:none;font-size:11px;color:var(--text-primary)}.help-popover-title{font-weight:700;margin-bottom:3px}.help-popover-short{color:var(--text-secondary);line-height:1.35}.help-popover-more{margin-top:4px;color:var(--accent-blue-hover);font-style:italic;font-size:10px}.help-backdrop{position:fixed;inset:0;z-index:10001;background:#00000059;display:flex;justify-content:flex-end}.help-drawer{width:420px;max-width:90vw;height:100%;background:var(--bg-tertiary);border-left:2px solid var(--border-primary);box-shadow:-4px 0 16px #00000059;display:flex;flex-direction:column;color:var(--text-primary)}.help-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border-secondary);background:var(--bg-secondary)}.help-drawer-title{font-weight:700;font-size:14px}.help-drawer-close{border:none;background:transparent;font-size:20px;line-height:1;cursor:default;color:var(--text-secondary)}.help-drawer-body{padding:12px 14px;overflow-y:auto;font-size:13px;line-height:1.5}.help-drawer-body h1,.help-drawer-body h2,.help-drawer-body h3{font-size:14px;margin:12px 0 4px}.help-drawer-body code{background:var(--bg-quaternary);padding:0 3px;border-radius:3px;font-size:12px}.help-drawer-body p{margin:6px 0}.help-short{font-style:italic;color:var(--text-secondary)}.help-ai-disclaimer{font-size:11px;color:#663;background:#fdf6dd;border:1px solid #e0d28a;border-radius:var(--radius-sm);padding:5px 7px;margin:0 0 8px}.vec-dock{display:flex;flex-direction:column;gap:10px;padding:12px 14px 14px;box-sizing:border-box;height:100%;overflow:hidden}.vec-aux{flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:row;gap:10px;padding:10px;box-sizing:border-box}.vec-aux-bits{flex:1 1 0;min-width:0;min-height:0;display:flex}.vec-aux-subplots{flex:0 0 130px;min-width:0;min-height:0;display:flex}.vec-aux-bits>.enc-panel,.vec-aux-subplots>.enc-panel{width:100%!important;height:100%;box-sizing:border-box;overflow:auto}.vec-slider-row{display:flex;align-items:center;flex:0 0 auto}.vec-slider-spacer,.vec-slider-wrap{flex:0 0 auto}.vec-chart-cell{flex:1 1 0;min-width:0;min-height:0;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:0 3px 8px #00000059;padding:8px;box-sizing:border-box;overflow:hidden}.conn-host{flex:1 1 0;min-width:0;min-height:0;position:relative;display:flex}.conn-controls{flex:0 0 auto;display:flex;align-items:center;gap:6px;min-width:0;padding:calc(4px * var(--conn-scale)) 0}.conn-status{flex:0 0 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:calc(2px * var(--conn-scale)) 0;font-size:calc(var(--conn-text-px, 7px) * var(--conn-scale));font-family:var(--conn-font-family, system-ui, sans-serif);color:var(--text-primary)}.conn-controls-top,.conn-controls-inspector{flex:0 0 auto}.conn-region{flex-shrink:1;flex-basis:0;min-width:0;position:relative}.conn-region-wiring{min-height:164px}.conn-region-inspector{min-height:156px}.card-wiring-section{--conn-btn-scale: 1.5}.card-wiring-section .conn-btn{font-size:calc(var(--conn-font-base) * var(--conn-btn-scale, 1) * var(--conn-scale));line-height:1.05}.conn-controls-band{display:flex;align-items:center;gap:inherit;min-width:0}.card-wiring-section .conn-controls{gap:calc(2px * var(--conn-btn-scale, 1) * var(--conn-scale));padding:calc(2px * var(--conn-scale)) 0}.conn-btn{font-size:calc(var(--conn-font-base) * var(--conn-btn-scale, 1) * var(--conn-scale));padding:calc(2px * var(--conn-btn-scale, 1) * var(--conn-scale)) calc(6px * var(--conn-btn-scale, 1) * var(--conn-scale));border-radius:calc(2px * var(--conn-btn-scale, 1) * var(--conn-scale));border:calc(var(--card-bw, 1px)*.5*var(--conn-scale)) solid var(--border-primary);background:var(--bg-tertiary, var(--bg-secondary));color:var(--text-primary);cursor:default;box-sizing:border-box}.conn-btn:hover,.conn-btn.is-active{border-color:var(--accent-blue);color:var(--accent-blue)}.conn-surface{--conn-font-base: 7px;--conn-text-scale: 1.5;--conn-text-px: 11px;--conn-font-family: system-ui, sans-serif;--conn-scale: var(--card-scale, 1);flex:1 1 0;min-width:0;min-height:0;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:0 3px 8px #00000059;padding:calc(3px * var(--conn-scale, 1));box-sizing:border-box;overflow:hidden;position:relative;display:flex;flex-direction:column}.conn-surface:focus-visible{outline:2px solid var(--accent-blue);outline-offset:-1px}.conn-canvas{display:block;cursor:crosshair}.conn-tip{position:absolute;z-index:6;width:calc(232px * var(--conn-scale, 1));padding:calc(6px * var(--conn-scale, 1)) calc(9px * var(--conn-scale, 1));border-radius:var(--radius-sm, 4px);background:var(--bg-secondary);border:1px solid var(--border-primary);border-left:calc(4px * var(--conn-scale, 1)) solid var(--border-primary);box-shadow:0 4px 14px #00000073;color:var(--text-primary);pointer-events:none}.conn-tip-title{font-size:calc(var(--conn-font-base, 7px) * var(--conn-scale, 1));font-weight:700;line-height:1.3}.conn-tip-desc{margin-top:calc(2px * var(--conn-scale, 1));font-size:calc(var(--conn-font-base, 7px) * var(--conn-scale, 1));line-height:1.35;color:var(--text-secondary)}.vlc-dock{display:flex;flex-direction:column;gap:10px;padding:12px 14px 14px;box-sizing:border-box;height:100%;overflow:hidden}.vlc-caption{flex:0 0 auto;min-width:0;font-size:18px;line-height:1.35;color:var(--text-primary)}.custom-card{--card-bw: max(1px, calc(1px * var(--card-chrome-scale, 1)));--card-bw-15: max(1.5px, calc(1.5px * var(--card-chrome-scale, 1)));--card-bw-2: max(2px, calc(2px * var(--card-chrome-scale, 1)));--card-header-inset: calc(10px * var(--card-chrome-scale, 1));--card-port-bar: calc(50px * var(--card-chrome-scale, 1));--card-port-thickness: calc(14px * var(--card-chrome-scale, 1));position:relative;box-sizing:border-box;width:100%;height:100%;display:flex;flex-direction:column;background:var(--bg-tertiary);border:var(--card-bw-2) solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--card-shadow);padding:10px;transition:all var(--transition-fast)}.card-header-right{display:flex;align-items:center;align-self:flex-start;gap:calc(4px * var(--card-chrome-scale, 1));flex-shrink:0;z-index:10}.card-header .dcc-icon-btn svg,.card-header .dcc-caption-btn svg{display:block}.card-header .dcc-icon-btn{padding:calc(4px * var(--card-chrome-scale, 1));border-radius:calc(5px * var(--card-chrome-scale, 1));border-width:var(--card-bw)}.card-header .dcc-icon-btn svg{width:calc(var(--card-header-icon-size) * var(--card-chrome-scale, 1));height:calc(var(--card-header-icon-size) * var(--card-chrome-scale, 1))}.card-header .dcc-caption-btn{padding:calc(2px * var(--card-chrome-scale, 1))}.card-header .dcc-caption-btn svg{width:calc(var(--card-header-close-size) * var(--card-chrome-scale, 1));height:calc(var(--card-header-close-size) * var(--card-chrome-scale, 1))}.card-viz-spawn{display:inline-flex}.card-layout-toggle[aria-pressed=true]{color:var(--accent-blue);--caption-tint: var(--accent-blue)}.card-viz-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:7;display:flex;flex-direction:column;min-width:120px;padding:var(--spacing-xs);gap:2px;background:var(--bg-secondary);border:var(--card-bw) solid var(--border-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.card-viz-menu-item{text-align:left;padding:5px 8px;font-size:var(--font-size-sm);color:var(--text-primary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:default}.card-viz-menu-item:hover:not(:disabled){background:var(--bg-quaternary);color:var(--accent-blue)}.card-viz-menu-item:disabled{color:var(--text-tertiary);opacity:.5;cursor:default}.dcc-close-btn{padding:2px}.custom-card:hover{border-color:var(--card-border-hover);box-shadow:var(--card-shadow-hover)}.custom-card.selected{border-color:var(--card-border-selected);box-shadow:0 0 0 4px #0f346073,2px 4px 8px #0006,var(--shadow-md)}.card-alerts{position:absolute;top:0;left:0;transform:translate(-80%,-80%);z-index:6;display:flex;flex-direction:column;align-items:center;gap:calc(3px * var(--card-chrome-scale, 1));flex-shrink:0}.card-alert{display:inline-flex;align-items:center;justify-content:center;width:calc(26px * var(--card-chrome-scale, 1));height:calc(26px * var(--card-chrome-scale, 1));border-radius:var(--radius-sm);line-height:1;background:#fff;border:var(--card-bw-15) solid var(--text-primary);cursor:help;box-shadow:var(--shadow-sm)}.custom-card.card-collapsed .react-flow__handle{z-index:11}.card-inline-section.card-wiring-section{padding:2px}.card-activity{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:calc(var(--card-activity-min) * var(--card-chrome-scale, 1))}.card-activity-dot{flex:0 0 auto;width:calc(16px * var(--card-chrome-scale, 1));height:calc(16px * var(--card-chrome-scale, 1));border-radius:50%;border:var(--card-bw-15) solid var(--border-primary);background:transparent}.card-activity-dot.is-active{border-color:var(--text-primary)}.card-alert svg{width:85%;height:85%}.card-alert-warn{color:var(--accent-orange)}.card-alert-error{color:var(--accent-red)}.card-alert-info{color:var(--accent-blue)}.card-name-row{display:flex;align-items:center;gap:calc(6px * var(--card-chrome-scale, 1));min-width:0}.card-header{flex-shrink:0;display:flex;align-items:center;gap:calc(var(--spacing-sm) * var(--card-chrome-scale, 1));background:var(--bg-secondary);margin:-10px -10px calc(var(--spacing-sm) * var(--card-chrome-scale, 1)) -10px;padding:calc(8px * var(--card-chrome-scale, 1)) var(--card-header-inset, 10px) calc(8px * var(--card-chrome-scale, 1)) var(--card-header-inset, 10px);min-height:calc(24px * var(--card-chrome-scale, 1));border-bottom:var(--card-bw) solid var(--card-border);border-top-left-radius:calc(var(--radius-md) - 2px);border-top-right-radius:calc(var(--radius-md) - 2px)}.card-toolbar{flex-shrink:0;display:flex;align-items:center;justify-content:flex-start;gap:calc(4px * var(--card-chrome-scale, 1));background:var(--bg-quaternary);margin:calc(-1 * var(--spacing-sm) * var(--card-chrome-scale, 1)) -10px calc(var(--spacing-sm) * var(--card-chrome-scale, 1)) -10px;padding:calc(4px * var(--card-chrome-scale, 1)) var(--card-header-inset, 10px);min-height:calc(var(--card-toolbar-height) * var(--card-chrome-scale, 1));border-bottom:var(--card-bw) solid var(--card-border);position:relative;z-index:10}.card-toolbar .dcc-icon-btn{padding:calc(4px * var(--card-chrome-scale, 1));border-radius:calc(5px * var(--card-chrome-scale, 1));border-width:var(--card-bw)}.card-toolbar .dcc-icon-btn svg{width:calc(var(--card-header-icon-size) * var(--card-chrome-scale, 1));height:calc(var(--card-header-icon-size) * var(--card-chrome-scale, 1));display:block}.card-header-left{display:flex;align-items:center;align-self:flex-start;gap:calc(var(--spacing-sm) * var(--card-chrome-scale, 1));flex:1;min-width:0}.card-content{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1;min-width:0}.card-name{font-size:calc(var(--font-size-xl) * var(--card-chrome-scale, 1));font-weight:600;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-id{font-size:calc(var(--font-size-xs) * var(--card-chrome-scale, 1));color:var(--text-secondary);font-family:Courier New,monospace}.custom-card.viz-card .card-content{min-width:0}.custom-card.viz-card .card-id{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-current-value{display:flex;justify-content:space-evenly;align-items:center;margin-top:var(--spacing-sm);padding:6px 8px;background:var(--bg-secondary);border-radius:var(--radius-sm);border:var(--card-bw) solid var(--border-primary)}.value-display{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);font-family:Courier New,monospace;align-content:center}.react-flow__node:has(.custom-card:hover){z-index:1100!important}#network-panel .react-flow__node.draggable{cursor:default}#network-panel .react-flow__node.draggable .card-header{cursor:grab}#network-panel .react-flow__node.draggable.dragging,#network-panel .react-flow__node.draggable.dragging .card-header{cursor:grabbing}#network-panel .react-flow__node:not(.draggable) .card-header{cursor:default}#network-panel .react-flow__pane.selection,#network-panel .react-flow__pane.selection:active{cursor:default}#network-panel .react-flow__nodesselection{display:none}.react-flow__handle{width:var(--card-port-bar, calc(50px * var(--card-chrome-scale, 1)))!important;height:var(--card-port-thickness, calc(14px * var(--card-chrome-scale, 1)))!important;--handle-hit: calc(var(--handle-hit-padding) * var(--card-chrome-scale, 1));background:transparent!important;border:none!important;color:var(--edge-input);filter:none}@keyframes port-spin-to-left{0%{top:0;left:var(--port-along, 50%);transform:translate(-50%,-50%) rotate(0)}42%{top:0;left:0;transform:translate(-50%,-50%) rotate(0)}58%{top:0;left:0;transform:translate(-50%,-50%) rotate(-90deg)}to{top:calc(100% - var(--port-along, 50%));left:0;transform:translate(-50%,-50%) rotate(-90deg)}}@keyframes port-spin-to-bottom{0%{top:calc(100% - var(--port-along, 50%));left:0;transform:translate(-50%,-50%) rotate(-90deg)}42%{top:100%;left:0;transform:translate(-50%,-50%) rotate(-90deg)}58%{top:100%;left:0;transform:translate(-50%,-50%) rotate(-180deg)}to{top:100%;left:calc(100% - var(--port-along, 50%));transform:translate(-50%,-50%) rotate(-180deg)}}@keyframes port-spin-to-right{0%{top:100%;left:calc(100% - var(--port-along, 50%));transform:translate(-50%,-50%) rotate(-180deg)}42%{top:100%;left:100%;transform:translate(-50%,-50%) rotate(-180deg)}58%{top:100%;left:100%;transform:translate(-50%,-50%) rotate(-270deg)}to{top:var(--port-along, 50%);left:100%;transform:translate(-50%,-50%) rotate(-270deg)}}@keyframes port-spin-to-top{0%{top:var(--port-along, 50%);left:100%;transform:translate(-50%,-50%) rotate(-270deg)}42%{top:0;left:100%;transform:translate(-50%,-50%) rotate(-270deg)}58%{top:0;left:100%;transform:translate(-50%,-50%) rotate(-360deg)}to{top:0;left:var(--port-along, 50%);transform:translate(-50%,-50%) rotate(-360deg)}}@keyframes port-dot-to-left{0%{top:0;left:var(--port-along, 50%);transform:translate(-50%,-50%)}50%{top:0;left:0;transform:translate(-50%,-50%)}to{top:calc(100% - var(--port-along, 50%));left:0;transform:translate(-50%,-50%)}}@keyframes port-dot-to-bottom{0%{top:calc(100% - var(--port-along, 50%));left:0;transform:translate(-50%,-50%)}50%{top:100%;left:0;transform:translate(-50%,-50%)}to{top:100%;left:calc(100% - var(--port-along, 50%));transform:translate(-50%,-50%)}}@keyframes port-dot-to-right{0%{top:100%;left:calc(100% - var(--port-along, 50%));transform:translate(-50%,-50%)}50%{top:100%;left:100%;transform:translate(-50%,-50%)}to{top:var(--port-along, 50%);left:100%;transform:translate(-50%,-50%)}}@keyframes port-dot-to-top{0%{top:var(--port-along, 50%);left:100%;transform:translate(-50%,-50%)}50%{top:0;left:100%;transform:translate(-50%,-50%)}to{top:0;left:var(--port-along, 50%);transform:translate(-50%,-50%)}}#network-panel.rf-porting .react-flow__handle,#network-panel.rf-porting .vector-port-pill{transition:top .3s ease,left .3s ease,width .3s ease,height .3s ease}#network-panel.rf-rotating .react-flow__handle-left:not(.port-circle):not(.port-square){animation:port-spin-to-left .3s ease both}#network-panel.rf-rotating .react-flow__handle-bottom:not(.port-circle):not(.port-square){animation:port-spin-to-bottom .3s ease both}#network-panel.rf-rotating .react-flow__handle-right:not(.port-circle):not(.port-square){animation:port-spin-to-right .3s ease both}#network-panel.rf-rotating .react-flow__handle-top:not(.port-circle):not(.port-square){animation:port-spin-to-top .3s ease both}#network-panel.rf-rotating .react-flow__handle-left.port-circle,#network-panel.rf-rotating .react-flow__handle-left.port-square{animation:port-dot-to-left .3s ease both}#network-panel.rf-rotating .react-flow__handle-bottom.port-circle,#network-panel.rf-rotating .react-flow__handle-bottom.port-square{animation:port-dot-to-bottom .3s ease both}#network-panel.rf-rotating .react-flow__handle-right.port-circle,#network-panel.rf-rotating .react-flow__handle-right.port-square{animation:port-dot-to-right .3s ease both}#network-panel.rf-rotating .react-flow__handle-top.port-circle,#network-panel.rf-rotating .react-flow__handle-top.port-square{animation:port-dot-to-top .3s ease both}.card-header button{position:relative;z-index:10}.react-flow__handle:after{content:"";position:absolute;inset:calc(-1*min(var(--handle-hit) / var(--rf-zoom, 1),var(--handle-hit) * 2));pointer-events:none}.react-flow__handle .port-shape{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;display:block}.react-flow__handle .port-shape polygon,.react-flow__handle .port-shape circle,.react-flow__handle .port-shape rect{fill:currentColor;stroke:var(--card-border);stroke-width:2;stroke-linejoin:round}.react-flow__handle.port-circle,.react-flow__handle.port-square{width:calc(16px * var(--card-chrome-scale, 1))!important;height:calc(16px * var(--card-chrome-scale, 1))!important}#network-panel .react-flow__handle-top{top:0;bottom:auto;left:var(--port-along, 50%);right:auto;transform:translate(-50%,-50%) rotate(0);filter:none!important}#network-panel .react-flow__handle-bottom{top:100%;bottom:auto;left:calc(100% - var(--port-along, 50%));right:auto;transform:translate(-50%,-50%) rotate(-180deg);filter:none!important}#network-panel .react-flow__handle-left{left:0;right:auto;top:calc(100% - var(--port-along, 50%));bottom:auto;transform:translate(-50%,-50%) rotate(-90deg);filter:none!important}#network-panel .react-flow__handle-right{left:100%;right:auto;top:var(--port-along, 50%);bottom:auto;transform:translate(-50%,-50%) rotate(-270deg);filter:none!important}#network-panel .react-flow__handle-top.port-circle,#network-panel .react-flow__handle-top.port-square,#network-panel .react-flow__handle-bottom.port-circle,#network-panel .react-flow__handle-bottom.port-square,#network-panel .react-flow__handle-right.port-circle,#network-panel .react-flow__handle-right.port-square,#network-panel .react-flow__handle-left.port-circle,#network-panel .react-flow__handle-left.port-square{transform:translate(-50%,-50%)}.react-flow__handle,.react-flow__handle.port-wire-input{color:var(--edge-input)}.react-flow__handle.port-wire-context{color:var(--edge-context)}.react-flow__handle.port-wire-credit{color:var(--edge-credit)}.react-flow__handle.port-wire-label{color:var(--edge-discrete-data)}.react-flow__handle.port-wire-scalarData{color:var(--edge-scalar-data)}.react-flow__handle.port-wire-discreteData{color:var(--edge-discrete-data)}.react-flow__handle.port-wire-reward{color:var(--edge-reward)}.react-flow__handle.port-wire-done{color:var(--edge-done)}.react-flow__handle.port-wire-action{color:var(--edge-action)}.react-flow__handle[data-handleid=viz-in]{opacity:0;pointer-events:none}.react-flow__handle.port-collapsed{pointer-events:none}.react-flow__handle.port-collapsed .port-shape{opacity:0}#network-panel .react-flow__handle-left.port-vector-dim:after,#network-panel .react-flow__handle-right.port-vector-dim:after{inset:-2px calc(-1*min(var(--handle-hit) / var(--rf-zoom, 1),var(--handle-hit) * 2))}#network-panel .react-flow__handle-top.port-vector-dim:after,#network-panel .react-flow__handle-bottom.port-vector-dim:after{inset:calc(-1*min(var(--handle-hit) / var(--rf-zoom, 1),var(--handle-hit) * 2)) -2px}.vector-port-pill{transition:filter .12s ease}.vector-port-pill:hover{filter:brightness(1.08)}.vector-port-pill:focus,.vector-port-pill:focus-visible{outline:none}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle[data-label]:before,:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .vector-port-pill[data-label]:before{content:attr(data-label);position:absolute;inset:50% auto auto 50%;z-index:7;pointer-events:none;white-space:nowrap;font-size:calc(9px * var(--card-chrome-scale, 1));font-weight:600;line-height:1.2;letter-spacing:.02em;padding:0 calc(4px * var(--card-chrome-scale, 1));color:var(--text-secondary);background:var(--bg-secondary);border:var(--card-bw) solid var(--border-secondary);border-radius:3px;box-shadow:var(--shadow-sm)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-top:before{transform:translate(-50%,-50%) translateY(-17px)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-bottom:before{transform:translate(-50%,-50%) translateY(-17px) rotate(180deg)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-left:before{transform:translate(-50%,-50%) translateY(-24px) rotate(90deg)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-right:before{transform:translate(-50%,-50%) translateY(-24px) rotate(-90deg)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-top.port-circle:before,:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-top.port-square:before{transform:translate(-50%,-50%) translateY(-17px)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-bottom.port-circle:before,:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-bottom.port-square:before{transform:translate(-50%,-50%) translateY(17px)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-left.port-circle:before,:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-left.port-square:before{transform:translate(-50%,-50%) translate(-20px)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-right.port-circle:before,:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .react-flow__handle-right.port-square:before{transform:translate(-50%,-50%) translate(20px)}:is(.circuit-card,.circuit-collapsed) .react-flow__handle[data-label]:before{opacity:0;transition:opacity var(--transition-fast)}:is(.circuit-card,.circuit-collapsed) .react-flow__handle[data-label]:hover:before{opacity:1}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .vector-port-pill[data-side=top]:before{transform:translate(-50%,-50%) translateY(-18px)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .vector-port-pill[data-side=bottom]:before{transform:translate(-50%,-50%) translateY(18px)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .vector-port-pill[data-side=left]:before{transform:translate(-50%,-50%) translate(-22px)}:is(.custom-card:hover,.circuit-card,.circuit-collapsed) .vector-port-pill[data-side=right]:before{transform:translate(-50%,-50%) translate(22px)}.card-fixed{display:flex;flex-direction:column;flex:0 0 auto;min-width:0}.card-inline-section{margin-top:var(--spacing-sm);padding:6px;background:var(--bg-tertiary);border-radius:var(--radius-sm);min-width:0;overflow:hidden;display:flex;flex-direction:column}.card-inline-section.is-fill{flex:1 1 0;min-height:0}.card-inline-section:not(.is-interactive){pointer-events:none}.card-encoder-viz{width:100%;height:100%;overflow:hidden;flex:1 1 auto;min-height:0;min-width:0}.card-encoder-viz>div{width:100%;height:100%}.viz-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:var(--spacing-sm)}.hg-view-controls{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap;font-size:var(--font-size-xs)}.hg-view-controls label{display:flex;gap:3px;align-items:center}.hg-view-controls input[type=number]{width:44px}.viz-target-select{flex:1;min-width:120px;box-sizing:border-box;font-size:var(--font-size-sm);padding:2px 4px;border-radius:var(--radius-sm);border:var(--card-bw) solid var(--border-secondary);background:var(--bg-quaternary, var(--bg-primary));color:var(--text-primary)}.viz-placeholder{font-size:var(--font-size-sm);color:var(--text-tertiary);padding:18px 8px;text-align:center;background:var(--bg-secondary);border-radius:var(--radius-sm)}.policy-readout{padding:4px 8px 6px;font-size:var(--font-size-xs);color:var(--text-secondary)}.policy-readout-title{color:var(--text-tertiary);margin-bottom:3px}.policy-readout-row{display:flex;align-items:center;gap:5px;margin:1px 0}.policy-readout-label{width:1.2em;text-align:center;color:var(--text-primary)}.policy-readout-track{flex:1;height:7px;background:var(--bg-quaternary);border-radius:3px;overflow:hidden}.policy-readout-fill{display:block;height:100%;border-radius:3px;transition:width 80ms linear;background:var(--policy-fill, var(--accent-blue))}.policy-readout-val{font-variant-numeric:tabular-nums;color:var(--text-primary);min-width:2.4em;text-align:right}.policy-readout-baseline{margin-top:3px;color:var(--text-tertiary)}.gym-metric-caption{font-size:var(--font-size-xs);color:var(--text-tertiary);text-align:center;margin-top:2px;font-variant-numeric:tabular-nums}.viz-gym-canvas{display:block;width:100%;height:100%}.viz-gym-kv{display:flex;flex-direction:column;gap:4px;padding:12px 14px;font-size:var(--font-size-lg)}.viz-gym-kv-row{display:flex;justify-content:space-between;gap:12px}.viz-gym-kv-key{color:var(--text-tertiary)}.viz-gym-kv-val{color:var(--text-primary);font-variant-numeric:tabular-nums}.card-plot-empty{text-align:center;padding:var(--spacing-md);font-style:italic}.custom-card.circuit-collapsed{pointer-events:all;z-index:1;--card-bg: var(--circuit-card-accent)}.card-collapse-btn,.circuit-ungroup-btn{flex:0 0 auto}.react-flow__node-group{background-color:transparent!important;border:none!important;padding:0!important}.circuit-card.circuit-hidden{background:none;border:none;box-shadow:none;pointer-events:none}.circuit-card{padding:calc(var(--circuit-padding) + var(--circuit-header-height) * var(--card-chrome-scale, 1)) var(--circuit-padding) var(--circuit-padding);width:100%;height:100%;z-index:-1;position:relative}.react-flow__node-group:has(>.circuit-card:not(.circuit-collapsed):not(.circuit-hidden)){pointer-events:none!important}.react-flow__node-group:has(>.circuit-card:not(.circuit-collapsed):not(.circuit-hidden)) .circuit-header,.react-flow__node-group:has(>.circuit-card:not(.circuit-collapsed):not(.circuit-hidden)) .react-flow__handle{pointer-events:auto}.circuit-card:not(.circuit-collapsed){min-width:400px;min-height:300px}.circuit-card{--card-bw: max(1px, calc(1px * var(--card-chrome-scale, 1)));--card-bw-15: max(1.5px, calc(1.5px * var(--card-chrome-scale, 1)));--card-bw-2: max(2px, calc(2px * var(--card-chrome-scale, 1)));--card-header-inset: calc(10px * var(--card-chrome-scale, 1));--card-port-bar: calc(50px * var(--card-chrome-scale, 1));--card-port-thickness: calc(14px * var(--card-chrome-scale, 1))}.circuit-card.group.circuit-style-2{background:var(--circuit-bg);border:var(--card-bw-2) solid var(--circuit-border);border-radius:var(--radius-md)}.circuit-card.group.circuit-style-2:hover{border-color:var(--circuit-border-hover);background:var(--circuit-bg-hover)}.circuit-card.group.circuit-style-2.selected{border-color:var(--circuit-border-selected);background:var(--circuit-bg-selected);box-shadow:0 0 0 1px var(--circuit-glow-soft)}.circuit-header{position:absolute;top:2px;left:2px;right:2px;z-index:10;display:flex;flex-direction:column;--card-bg: var(--circuit-card-accent);--card-header-inset: calc(10px * var(--card-chrome-scale, 1))}.circuit-header>.card-toolbar{margin:0}.circuit-header>.card-header{margin:0;border-top-left-radius:calc(var(--radius-md) - 2px);border-top-right-radius:calc(var(--radius-md) - 2px)}.react-flow__handle.connectingfrom{box-shadow:0 0 0 4px #4a90d973}.react-flow__handle.valid{box-shadow:0 0 0 5px #2da8608c;border-color:var(--accent-green)!important}.react-flow__handle.connectingto:not(.valid){box-shadow:0 0 0 5px #e1575980;border-color:var(--accent-red)!important;cursor:not-allowed}.react-flow__handle.occupied-target{cursor:not-allowed}#network-panel.rf-connecting .react-flow__handle:not(.viable-target):not(.occupied-target):not(.connectingfrom){cursor:not-allowed}.react-flow__handle.viable-target:after,.react-flow__handle.occupied-target:after,.react-flow__handle.connectingto:after,.react-flow__handle.connectingfrom:after{pointer-events:inherit}.react-flow__handle.viable-target{outline:8px dashed var(--accent-green);outline-offset:20px;border-radius:3px}.react-flow__handle.port-circle.viable-target,.react-flow__handle.port-circle.occupied-target{border-radius:50%}.react-flow__handle.occupied-target{outline:8px dashed var(--accent-red);outline-offset:20px;border-radius:3px}.viz-gym-stats{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 14px 4px;flex:0 0 auto}.viz-gym-stat-lead{display:flex;flex-direction:column;line-height:1.15}.viz-gym-stat-big{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.viz-gym-stat-sub{font-size:var(--font-size-md);color:var(--text-tertiary)}.viz-gym-stat-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:var(--font-size-md);color:var(--text-tertiary);font-variant-numeric:tabular-nums}.viz-gym-ok{color:var(--accent-green);font-weight:600}.viz-gym-bad{color:var(--accent-red);font-weight:600}.viz-gym-render .viz-gym-canvas{flex:1 1 auto;min-height:0}.card-name-editable{cursor:text;border-bottom:var(--card-bw) dashed transparent}.card-name-editable:hover{border-bottom-color:var(--text-tertiary)}.card-name-input{font-size:calc(var(--font-size-xl) * var(--card-chrome-scale, 1));font-weight:600;font-family:inherit;color:inherit;background:var(--bg-secondary);border:var(--card-bw) solid var(--accent-blue);border-radius:var(--radius-sm);padding:0 calc(2px * var(--card-chrome-scale, 1));field-sizing:content;width:auto;min-width:6ch;max-width:100%}.card-subplot-group{display:inline-flex;align-items:center;gap:calc(2px * var(--card-scale, 1))}.card-hg-controls{align-items:center}.card-hg-bounds,.card-hg-res{display:inline-flex;align-items:center;gap:calc(2px * var(--card-scale, 1));color:var(--text-secondary);font-size:inherit;white-space:nowrap}.card-hg-bounds input[type=number]{width:calc(44px * var(--card-scale, 1));flex:0 0 auto}.card-hg-overlay-btn:first-of-type{margin-left:calc(4px * var(--card-scale, 1));padding-left:calc(4px * var(--card-scale, 1));border-left:var(--card-bw) solid var(--border-primary);border-radius:calc(5px * var(--card-scale, 1))}.ih-panel{position:fixed;top:4.5em;left:50%;transform:translate(-50%);z-index:3000;font-size:clamp(7.5px,min(2vw + 5.2px,1.9vh + 4px),15px);--ih-label: 10.6em;width:min(46em,calc(100vw - 2rem));max-height:calc(100vh - 7em);overflow-y:auto;background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--card-shadow);color:var(--text-primary)}.ih-head{display:flex;align-items:center;justify-content:space-between;gap:.6em;padding:.55em .7em .55em .9em;background:var(--card-header-bg);border-bottom:1px solid var(--border-secondary);font-size:1.05em;font-weight:700;letter-spacing:.02em}.ih-close{width:1.5em;height:1.5em;display:grid;place-items:center;font-size:1em;line-height:1;color:var(--text-secondary);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:default}.ih-close:hover{color:var(--text-primary);border-color:var(--border-secondary)}.ih-close:focus-visible{outline:2px solid var(--accent-blue);outline-offset:1px}.ih-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19em),1fr));gap:.2em 1.4em;padding:.7em .9em .85em}.ih-group h3{margin:.5em 0 .25em;text-transform:uppercase;color:var(--text-primary);font-weight:700}.ih-group dl{margin:0;display:grid;gap:.8em}.ih-row{display:grid;grid-template-columns:var(--ih-label) minmax(0,1fr);gap:1.1em;align-items:baseline;padding:0;line-height:1.35}.ih-row dt{min-width:0;color:var(--text-primary)}.ih-row dd{min-width:0;margin:0;text-align:left;color:var(--text-secondary)}.ih-alt{display:block;white-space:nowrap}.ih-row kbd{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:1.55em;min-width:1.55em;padding:0 .3em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;line-height:1;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:3px}.ih-glyph{display:block;width:.7em;height:.8em}.edge-insp-card{min-width:420px;max-width:560px}.edge-insp-body{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}.edge-insp-section h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:600}.edge-insp-row,.edge-insp-received{display:flex;align-items:baseline;gap:var(--spacing-sm);padding:2px 0}.edge-insp-received{flex-direction:column;align-items:stretch}.edge-insp-label{min-width:8rem;color:var(--text-secondary);font-size:var(--font-size-sm)}.edge-insp-value,.edge-insp-metric{color:var(--text-primary);font-size:var(--font-size-sm)}.edge-insp-indices{font-family:var(--font-mono, monospace);font-size:var(--font-size-xs);color:var(--text-secondary);word-break:break-word;max-height:6rem;overflow-y:auto}.edge-insp-muted{color:var(--text-secondary);font-style:italic}.react-flow__edge .react-flow__edge-interaction,.react-flow__edge .react-flow__edge-path,#network-panel .react-flow__edge.selectable{cursor:default}.react-flow__edge-vizLink,.react-flow__edge-vizLink .react-flow__edge-path,.react-flow__edge-vizLink .react-flow__edge-interaction{pointer-events:none}.react-flow__edge .react-flow__edge-path{filter:drop-shadow(0 1px 1px rgba(0,0,0,.45))}.react-flow__edge.input-edge .react-flow__edge-path{stroke:var(--accent-blue);stroke-width:2}.react-flow__edge.input-edge.selected .react-flow__edge-path{stroke:var(--accent-blue);stroke-width:3}.react-flow__edge.input-edge:hover .react-flow__edge-path{stroke:var(--accent-blue-hover)}.react-flow__edge.context-edge .react-flow__edge-path{stroke:var(--accent-orange);stroke-width:2;stroke-dasharray:5,5}.react-flow__edge.context-edge.selected .react-flow__edge-path{stroke:var(--accent-orange);stroke-width:3}.react-flow__edge.context-edge:hover .react-flow__edge-path{stroke:var(--accent-orange)}.react-flow__edge.data-source-edge .react-flow__edge-path{stroke-width:2}.react-flow__edge.data-source-edge.selected .react-flow__edge-path{stroke-width:3}.react-flow__edge.data-source-edge:hover .react-flow__edge-path{opacity:.8}.dendrite-edge path{stroke-linejoin:round}@keyframes dash{to{stroke-dashoffset:-10}}.data-source-edge-animated{animation:dash 1s linear infinite}.react-flow__edge.animated .react-flow__edge-path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}@keyframes dashdraw{to{stroke-dashoffset:-10}}.react-flow__edge.proximity-temp{pointer-events:none}.react-flow__edge.proximity-temp .react-flow__edge-path{stroke:var(--accent-blue);stroke-width:2;stroke-dasharray:4 4;opacity:.55}.react-flow__edge-textbg{fill:var(--bg-tertiary)}.react-flow__edge-text{fill:var(--text-primary);font-size:var(--font-size-xs)}.edge-info-label{pointer-events:none;padding:2px 7px;font-size:var(--pill-font-size);font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:var(--pill-line-height);white-space:nowrap;color:var(--text-primary);background:var(--bg-secondary);border:4px solid var(--edge-info-color, var(--border-secondary));border-radius:8px;box-shadow:var(--shadow-sm),0 0 0 2px var(--bg-secondary)}.edge-info-label.selected{border-width:6px;box-shadow:var(--shadow-md),0 0 0 2px var(--bg-secondary),0 0 0 5px var(--edge-info-color, var(--accent-blue))}.edge-info-label-icon{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;color:var(--text-primary);width:var(--pill-icon-box);height:var(--pill-icon-box);padding:0;line-height:0}.edge-info-icon-lag{display:flex;align-items:center;gap:6px;line-height:var(--pill-line-height)}.edge-info-icon-lag svg{display:block;width:1.15em;height:1.15em}.edge-info-label-icon svg{display:block;width:1.15em;height:1.15em}.edge-offset-stepper{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);z-index:10;display:inline-flex;align-items:center;gap:5px;pointer-events:auto;padding:2px 5px}.edge-offset-value{font-size:22px;min-width:3.5ch;text-align:center}.edge-offset-btn{pointer-events:auto;cursor:default;font-size:22px;line-height:1;font-weight:700;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;color:var(--text-primary);background:var(--bg-secondary);border:2px solid var(--edge-info-color, var(--border-secondary));border-radius:6px}.edge-offset-btn:hover:not(:disabled){background:var(--edge-info-color, var(--border-secondary));color:var(--bg-secondary)}.edge-offset-btn:disabled{opacity:.4;cursor:default}.edge-insp-stepper{display:inline-flex;align-items:center;gap:6px}.edge-insp-hint{font-size:var(--font-size-xs);color:var(--text-secondary)}.react-flow__handle[data-handleid=pill-in],.react-flow__handle[data-handleid=pill-out]{opacity:0;pointer-events:none;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;filter:none!important;background:transparent!important;border:none!important}.edge-label-node{display:inline-flex;align-items:center;justify-content:center;overflow:visible;cursor:grab;position:relative}.edge-label-node:active{cursor:grabbing}.edge-label-node .edge-info-label{pointer-events:auto}.edge-label-floating .edge-info-label{pointer-events:auto;cursor:default}.bc-card.layout-settings-panel{position:fixed;top:60px;right:12px;width:320px;max-width:92vw;max-height:calc(100vh - 76px);overflow-y:auto;margin:0;z-index:900;padding:11px 13px 13px;font-size:11px;--bc-control-font-size: 11px;--bc-label-font-size: 11px;--bc-caption-font-size: 10px;--bc-hint-font-size: 10px;--bc-btn-font-size: 12px}.layout-settings-panel .bc-header{font-size:12px;padding-bottom:6px;margin-bottom:9px}.layout-settings-panel .bc-field{grid-template-columns:90px 46px 1fr;column-gap:6px;margin:8px 0;align-items:center}.layout-settings-panel .bc-select-row{grid-template-columns:90px 1fr;column-gap:6px;margin:8px 0;align-items:center}.layout-settings-panel .bc-select-row select,.layout-settings-panel .bc-input{min-width:0;text-overflow:ellipsis}.layout-settings-panel .bc-check{font-size:.72rem;margin:8px 0}.layout-settings-panel .bc-ticks{margin:0 6px}.layout-settings-panel .bc-bounds{font-size:.56rem}.layout-settings-panel .bc-actions{margin-top:14px;gap:8px}.layout-settings-panel .ls-section-head{display:flex;align-items:baseline;justify-content:space-between;margin:12px 0 7px;padding-top:9px;border-top:1px solid var(--border-secondary);font-size:var(--bc-caption-font-size);text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.layout-settings-panel .ls-reset{background:none;border:none;padding:0;cursor:default;font-size:10px;text-transform:none;letter-spacing:0;color:var(--accent-blue)}.layout-settings-panel .ls-reset:hover{text-decoration:underline}.ls-note{margin:-2px 0 8px;font-size:.68rem;line-height:1.35;color:var(--text-tertiary, var(--text-secondary))}.ls-note-ok{color:var(--accent-green)}.ls-note-capped{color:var(--accent-red);font-weight:500}.ls-note-ok:before{content:"✓ ";font-weight:600}.ls-note-capped:before{content:"▲ ";font-weight:600}.perf-stats{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);font-family:inherit;line-height:var(--line-height-tight);user-select:none}.perf-stats-ribbon{position:fixed;right:0;bottom:0;z-index:var(--z-panel);pointer-events:none}.perf-stats-ribbon .perf-stats{border-radius:var(--radius-md) 0 0 0;border-right:none;border-bottom:none}.perf-stat{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.perf-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.perf-value{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-primary)}.perf-num{font-variant-numeric:tabular-nums}.perf-unit{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--text-tertiary)}.perf-sep{width:1px;align-self:stretch;min-height:14px;background:var(--border-secondary);opacity:.45}.perf-value[data-level=good]{color:var(--accent-green)}.perf-value[data-level=ok]{color:var(--accent-orange)}.perf-value[data-level=poor]{color:var(--accent-red)}.perf-value[data-running=true]{color:var(--accent-blue)}.perf-value[data-running=false]{color:var(--text-tertiary)}.tb-btn{padding:5px 12px;border-radius:5px;cursor:default;font-size:13px;border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary)}.tb-btn-primary{background:var(--accent-blue);color:var(--btn-primary-text);border-color:var(--accent-blue)}.tb-control{min-width:74px;height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;font-size:12.5px;line-height:1;box-sizing:border-box}.tb-select{font-size:13px;padding:4px 6px;border-radius:5px;border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary);max-width:220px}.tb-divider{flex:0 0 auto;width:3px;height:28px;margin:0 10px;border-radius:2px;background:var(--text-secondary)}
