[data-theme=dark]{--surface-primary:#0a0a14;--surface-elevated:#0f0f1ae6;--surface-overlay:#0a0a14d9;--surface-input:#ffffff0a;--text-primary:#e0e0e0;--text-secondary:#ffffffb3;--text-tertiary:#ffffff80;--text-on-accent:#fff;--border-subtle:#ffffff0f;--border-medium:#ffffff14;--accent-input:#3b82f6;--accent-input-text:#60a5fa;--accent-input-soft:#3b82f61f;--accent-input-border:#3b82f659;--accent-input-glow:#3b82f61a;--accent-perceptron:#a855f7;--accent-perceptron-text:#c084fc;--accent-perceptron-soft:#a855f71f;--accent-perceptron-border:#a855f759;--accent-perceptron-glow:#a855f71a;--accent-gate:#f59e0b;--accent-gate-text:#fbbf24;--accent-gate-soft:#f59e0b1f;--accent-gate-border:#f59e0b59;--accent-gate-glow:#f59e0b1a;--accent-output:#22c55e;--accent-output-text:#4ade80;--accent-output-soft:#22c55e1f;--accent-output-border:#22c55e59;--accent-output-glow:#22c55e1a;--accent-ui:#6366f1;--accent-ui-text:#818cf8;--accent-ui-soft:#6366f126;--accent-ui-border:#6366f140;--danger:#f44;--danger-text:#ff6b6b;--danger-soft:#ff44441a;--danger-border:#ff44444d;--shadow-node-input:0 0 20px #3b82f61a,0 4px 16px #0003;--shadow-node-perceptron:0 0 20px #a855f71a,0 4px 16px #0003;--shadow-node-gate:0 0 20px #f59e0b1a,0 4px 16px #0003;--shadow-node-output:0 0 20px #22c55e1a,0 4px 16px #0003;--shadow-panel:0 8px 32px #0000004d;--shadow-dropdown:0 4px 12px #0006;--node-header-input:linear-gradient(180deg,#3b82f61f,#0000);--node-header-perceptron:linear-gradient(180deg,#a855f71f,#0000);--node-header-gate:linear-gradient(180deg,#f59e0b1f,#0000);--node-header-output:linear-gradient(180deg,#22c55e1f,#0000);--node-border-style:1px solid;--node-border-radius:12px;--glass-blur:blur(20px);--glass-bg:#ffffff0a;--glass-border:#ffffff0f;--grid-dot-color:#ffffff0a;--grid-size:24px;--selection-ring:0 0 0 2px #fff9,0 0 24px #ffffff1a;--port-border-color:#0a0a14;--edge-weight-bg:#00000080;--edge-weight-border:#ffffff14;--edge-weight-text:#ffffff80;--accent-ground:#78716c;--accent-ground-soft:#78716c1f;--accent-ground-border:#78716c59;--accent-resistor:#0ea5e9;--accent-resistor-soft:#0ea5e91f;--accent-resistor-border:#0ea5e959;--accent-diode:#f43f5e;--accent-diode-soft:#f43f5e1f;--accent-diode-border:#f43f5e59;--accent-opamp:#8b5cf6;--accent-opamp-soft:#8b5cf61f;--accent-opamp-border:#8b5cf659;--accent-regulator:#10b981;--accent-regulator-soft:#10b9811f;--accent-regulator-border:#10b98159;--accent-comparator:#f97316;--accent-comparator-soft:#f973161f;--accent-comparator-border:#f9731659;--theme-transition:background-color 0.2s,color 0.2s,border-color 0.2s,box-shadow 0.2s}[data-theme=light]{--surface-primary:#f8f9fb;--surface-elevated:#fff;--surface-overlay:#ffffffeb;--surface-input:#f1f3f5;--text-primary:#1e293b;--text-secondary:#64748b;--text-tertiary:#94a3b8;--text-on-accent:#fff;--border-subtle:#e2e5ea;--border-medium:#d1d5db;--accent-input:#2563eb;--accent-input-text:#2563eb;--accent-input-soft:#3b82f614;--accent-input-border:#3b82f64d;--accent-input-glow:none;--accent-perceptron:#9333ea;--accent-perceptron-text:#9333ea;--accent-perceptron-soft:#a855f714;--accent-perceptron-border:#a855f74d;--accent-perceptron-glow:none;--accent-gate:#d97706;--accent-gate-text:#d97706;--accent-gate-soft:#f59e0b14;--accent-gate-border:#f59e0b4d;--accent-gate-glow:none;--accent-output:#16a34a;--accent-output-text:#16a34a;--accent-output-soft:#22c55e14;--accent-output-border:#22c55e4d;--accent-output-glow:none;--accent-ui:#4f46e5;--accent-ui-text:#4f46e5;--accent-ui-soft:#4f46e514;--accent-ui-border:#4f46e533;--danger:#dc2626;--danger-text:#dc2626;--danger-soft:#dc26260f;--danger-border:#dc262633;--shadow-node-input:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-node-perceptron:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-node-gate:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-node-output:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-panel:0 4px 16px #00000014;--shadow-dropdown:0 4px 12px #0000001a;--node-header-input:#0000;--node-header-perceptron:#0000;--node-header-gate:#0000;--node-header-output:#0000;--node-border-style:1px solid;--node-border-radius:8px;--glass-blur:blur(16px);--glass-bg:#fffc;--glass-border:#0000000f;--grid-dot-color:#0000000f;--grid-size:24px;--selection-ring:0 0 0 2px var(--accent-ui);--port-border-color:#f8f9fb;--edge-weight-bg:#ffffffe6;--edge-weight-border:#0000001a;--edge-weight-text:#64748b;--accent-ground:#a8a29e;--accent-ground-soft:#a8a29e1f;--accent-ground-border:#a8a29e59;--accent-resistor:#0284c7;--accent-resistor-soft:#0284c71a;--accent-resistor-border:#0284c74d;--accent-diode:#e11d48;--accent-diode-soft:#e11d481a;--accent-diode-border:#e11d484d;--accent-opamp:#7c3aed;--accent-opamp-soft:#7c3aed1a;--accent-opamp-border:#7c3aed4d;--accent-regulator:#059669;--accent-regulator-soft:#0596691a;--accent-regulator-border:#0596694d;--accent-comparator:#ea580c;--accent-comparator-soft:#ea580c1a;--accent-comparator-border:#ea580c4d;--theme-transition:background-color 0.2s,color 0.2s,border-color 0.2s,box-shadow 0.2s}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.network-editor,.network-editor :not(svg):not(svg *){transition:var(--theme-transition)}.network-editor{background:var(--surface-primary);color:var(--text-primary);display:flex;flex-direction:column;font-family:system-ui,-apple-system,sans-serif;height:100vh;overflow:hidden;width:100vw}.toolbar{align-items:center;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--surface-overlay);border-bottom:1px solid var(--border-subtle);display:flex;flex-shrink:0;gap:12px;height:38px;padding:0 16px;transition:var(--theme-transition);z-index:10}.toolbar-label{color:var(--text-primary);font-size:14px;font-weight:600;margin-right:8px}.toolbar-btn{border:none;border-radius:4px;color:var(--text-on-accent);cursor:pointer;font-size:12px;font-weight:500;padding:6px 14px}.toolbar-btn:hover{filter:brightness(1.15)}.toolbar-btn--input{background:var(--accent-input-soft);border:1px solid var(--accent-input-border);color:var(--accent-input-text)}.toolbar-btn--perceptron{background:var(--accent-perceptron-soft);border:1px solid var(--accent-perceptron-border);color:var(--accent-perceptron-text)}.toolbar-btn--output{background:var(--accent-output-soft);border:1px solid var(--accent-output-border);color:var(--accent-output-text)}.canvas-container{cursor:grab;flex:1 1;overflow:hidden;position:relative}.canvas-container:active{cursor:grabbing}.canvas-inner{left:0;position:absolute;top:0;transform-origin:0 0}.canvas-container:before{background-image:radial-gradient(circle,var(--grid-dot-color) 1.2px,#0000 1.2px);background-size:var(--grid-size) var(--grid-size);content:"";z-index:0}.canvas-container:before,.edge-layer{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.edge-layer{overflow:visible;z-index:1}.edge-path{fill:none;stroke-width:2;cursor:pointer;opacity:.7;pointer-events:stroke}.edge-path:hover{stroke-width:3;opacity:1}.edge-weight-pill{fill:var(--edge-weight-bg);stroke:var(--edge-weight-border);stroke-width:1}.edge-weight-label{fill:var(--edge-weight-text);cursor:pointer;font-family:monospace;font-size:11px;pointer-events:all}.edge-weight-input{background:var(--surface-input);border:1px solid var(--accent-input);border-radius:3px;color:var(--text-primary);font-family:monospace;font-size:11px;padding:2px 4px;text-align:center;width:50px}.edge-delete-btn{fill:var(--danger-text);cursor:pointer;font-size:12px;opacity:0;pointer-events:all;transition:opacity .15s}.edge-group:hover .edge-delete-btn{opacity:1}.edge-hit-area{fill:none;stroke:#0000;stroke-width:12;cursor:pointer;pointer-events:stroke}.edge-bend-handle{fill:var(--accent-input);stroke:var(--text-on-accent);stroke-width:2;cursor:grab;pointer-events:all}.edge-bend-handle:hover{fill:var(--accent-input-text);r:7}.edge-bend-handle:active{cursor:grabbing}.draft-edge{fill:none;stroke:var(--accent-input);stroke-width:2;stroke-dasharray:6 3;opacity:.5}.node{border-radius:var(--node-border-radius);min-width:140px;overflow:visible;position:absolute;transition:var(--theme-transition);-webkit-user-select:none;user-select:none;z-index:2}.node--selected{box-shadow:var(--selection-ring)}.node--error{border:2px solid var(--danger)!important}.node-header{align-items:center;cursor:grab;display:flex;justify-content:space-between;padding:4px 8px}.node-header:active{cursor:grabbing}.node-type-label{color:var(--text-on-accent);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.node-delete-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:12px;line-height:1;padding:0 2px}.node-delete-btn:hover{color:var(--danger-text)}.node-body{padding:8px}.node--input{background:var(--surface-elevated);border:var(--node-border-style) var(--accent-input-border);box-shadow:var(--shadow-node-input)}.node--input .node-header{background:var(--node-header-input)}.input-name{background:none;border:none;border-bottom:1px solid #0000;color:var(--accent-input-text);font-size:11px;margin-bottom:4px;outline:none;padding:0;width:100%}.input-name:focus{border-bottom-color:var(--accent-input)}.input-value-row{align-items:center;display:flex;gap:6px}.input-slider{accent-color:var(--accent-input);flex:1 1}.input-value-display{color:var(--text-primary);font-family:monospace;font-size:12px;min-width:32px;text-align:right}.node--perceptron{background:var(--surface-elevated);border:var(--node-border-style) var(--accent-perceptron-border);box-shadow:var(--shadow-node-perceptron);min-width:160px}.node--perceptron .node-header{background:var(--node-header-perceptron)}.perceptron-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.perceptron-label{color:var(--accent-perceptron-text);font-size:10px}.perceptron-value{color:var(--text-primary);font-family:monospace;font-size:11px}.perceptron-slider{accent-color:var(--accent-perceptron);width:100%}.perceptron-select{border:1px solid var(--border-subtle);color:var(--text-primary);font-size:11px;padding:3px;width:100%}.perceptron-output,.perceptron-select{background:var(--surface-input);border-radius:3px;margin-top:6px}.perceptron-output{padding:4px;text-align:center}.perceptron-output-label{color:var(--accent-perceptron-text);font-size:10px}.perceptron-output-value{color:var(--text-primary);font-family:monospace;font-size:12px}.node--output{background:var(--surface-elevated);border:var(--node-border-style) var(--accent-output-border);box-shadow:var(--shadow-node-output)}.node--output .node-header{background:var(--node-header-output)}.output-value-display{background:var(--surface-input);border-radius:4px;color:var(--accent-output-text);font-family:monospace;font-size:13px;padding:8px;text-align:center}.output-meta{color:var(--text-tertiary);font-size:10px;margin-top:4px;text-align:center}[data-theme=light] .node-type-label{color:var(--text-secondary)}[data-theme=light] .node--input .node-type-label{color:var(--accent-input-text)}[data-theme=light] .node--perceptron .node-type-label{color:var(--accent-perceptron-text)}[data-theme=light] .node--output .node-type-label{color:var(--accent-output-text)}[data-theme=light] .node--input{border-left:3px solid var(--accent-input)}[data-theme=light] .node--perceptron{border-left:3px solid var(--accent-perceptron)}[data-theme=light] .node--output{border-left:3px solid var(--accent-output)}.port{border:2px solid var(--port-border-color);border-radius:50%;cursor:crosshair;height:12px;position:absolute;top:50%;transform:translateY(-50%);width:12px;z-index:3}.port--output{right:-6px}.port--input{left:-6px}.port--input-type{background:var(--accent-input)}.port--perceptron-type{background:var(--accent-perceptron)}.port--output-type{background:var(--accent-output)}.port:hover{filter:brightness(1.3);transform:translateY(-50%) scale(1.3)}.cycle-warning{color:var(--danger);font-size:10px;margin-top:4px;text-align:center}.save-drawer{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--surface-overlay);border-left:1px solid var(--border-subtle);bottom:0;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;padding:16px;position:absolute;right:0;top:0;transition:var(--theme-transition);width:280px;z-index:15}[data-theme=light] .save-drawer{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--surface-elevated);box-shadow:var(--shadow-panel)}.save-drawer__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.save-drawer__title{color:var(--text-tertiary);font-size:12px;letter-spacing:1px;text-transform:uppercase}.save-drawer__count{color:var(--text-tertiary);font-size:11px}.save-drawer__close-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:18px;line-height:1;padding:0 4px}.save-drawer__close-btn:hover{color:var(--text-primary)}.save-drawer__list{display:flex;flex:1 1;flex-direction:column;gap:6px;min-height:0;overflow-y:auto}.save-drawer__item{align-items:center;background:var(--surface-input);border:1px solid var(--border-subtle);border-radius:6px;display:flex;gap:10px;padding:10px 12px}.save-drawer__item--active{background:var(--accent-ui-soft);border-color:var(--accent-ui-border)}.save-drawer__item-info{flex:1 1;min-width:0}.save-drawer__item-name{color:var(--text-primary);font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-drawer__current-badge{color:var(--accent-ui-text);font-size:11px;font-weight:400;margin-left:6px}.save-drawer__item-meta{color:var(--text-tertiary);font-size:11px;margin-top:2px}.save-drawer__item-actions{display:flex;flex-shrink:0;gap:4px}.save-drawer__action-btn{background:none;border:1px solid var(--border-subtle);border-radius:3px;color:var(--text-secondary);cursor:pointer;font-size:11px;line-height:1;padding:4px 8px}.save-drawer__action-btn:hover{border-color:var(--border-medium);color:var(--text-primary)}.save-drawer__action-btn--delete{border-color:var(--danger-border);color:var(--danger-text)}.save-drawer__action-btn--delete:hover{border-color:var(--danger);color:var(--danger)}.save-drawer__rename-input{background:var(--surface-input);border:1px solid var(--accent-ui);border-radius:3px;color:var(--text-primary);font-size:14px;outline:none;padding:2px 6px;width:100%}.save-drawer__new-btn{background:none;border:1px dashed var(--border-subtle);border-radius:6px;color:var(--text-tertiary);cursor:pointer;font-size:13px;margin-top:8px;padding:10px;text-align:center;width:100%}.save-drawer__new-btn:hover{border-color:var(--border-medium);color:var(--text-secondary)}.toolbar-spacer{flex:1 1}.toolbar-network-name{border-bottom:1px dashed var(--text-tertiary);color:var(--text-secondary);cursor:pointer;font-size:13px;padding:2px 4px;-webkit-user-select:none;user-select:none}.toolbar-network-name:hover{border-bottom-color:var(--text-secondary);color:var(--text-primary)}.toolbar-name-input{background:var(--surface-input);border:1px solid var(--accent-ui);border-radius:3px;color:var(--text-primary);font-size:13px;outline:none;padding:2px 6px;width:150px}.toolbar-btn--drawer,.toolbar-btn--save{background:var(--surface-input);border:1px solid var(--border-subtle);color:var(--text-secondary)}.toolbar-btn--drawer-open{background:var(--accent-ui);color:var(--text-on-accent)}.input-mode-toggle{display:flex;gap:2px;margin-bottom:4px}.input-mode-btn{background:var(--surface-input);border:1px solid var(--border-subtle);border-radius:3px;color:var(--text-tertiary);cursor:pointer;font-size:11px;line-height:1.2;padding:1px 6px}.input-mode-btn:hover{border-color:var(--accent-input);color:var(--accent-input-text)}.input-mode-btn--active{background:var(--accent-input);border-color:var(--accent-input);color:var(--text-on-accent)}.input-stepper-row{gap:6px}.input-stepper-btn,.input-stepper-row{align-items:center;display:flex;justify-content:center}.input-stepper-btn{background:var(--surface-input);border:1px solid var(--accent-input-border);border-radius:4px;color:var(--accent-input-text);cursor:pointer;font-size:16px;height:26px;line-height:1;padding:0;width:26px}.input-stepper-btn:hover{background:var(--accent-input);color:var(--text-on-accent)}.input-stepper-value{color:var(--text-primary);font-family:monospace;font-size:14px;min-width:36px;text-align:center}.perceptron-value--clickable{border-bottom:1px dashed var(--border-subtle);cursor:pointer}.perceptron-value--clickable:hover{border-bottom-color:var(--accent-perceptron-text);color:var(--accent-perceptron-text)}.perceptron-bias-input{background:var(--surface-input);border:1px solid var(--accent-perceptron);border-radius:3px;color:var(--text-primary);font-family:monospace;font-size:11px;outline:none;padding:1px 4px;text-align:right;width:50px}.gate-node{cursor:grab;-webkit-user-select:none;user-select:none}.gate-node:active{cursor:grabbing}.gate-node--selected{filter:drop-shadow(0 0 4px rgba(255,255,255,.8))}.gate-node--error{filter:drop-shadow(0 0 4px rgba(255,68,68,.8))}.gate-delete-btn{align-items:center;background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:50%;color:var(--text-tertiary);cursor:pointer;display:flex;font-size:11px;height:18px;justify-content:center;line-height:1;opacity:0;padding:0;position:absolute;right:-8px;top:-8px;transition:opacity .15s;width:18px;z-index:4}.gate-node:hover .gate-delete-btn{opacity:1}.gate-delete-btn:hover{border-color:var(--danger);color:var(--danger-text)}.gate-svg{display:block}.gate-shape-path{fill:var(--surface-elevated);stroke:var(--accent-gate);stroke-width:2;stroke-linejoin:round}.gate-shape-bubble{fill:var(--surface-elevated);stroke:var(--accent-gate);stroke-width:2}.gate-label{fill:var(--accent-gate-text);font-family:system-ui,-apple-system,sans-serif;font-size:11px;font-weight:600;letter-spacing:.5px;pointer-events:none}.gate-output-value{background:var(--surface-input);border:1px solid var(--accent-output-border);border-radius:3px;color:var(--accent-output-text);font-family:monospace;font-size:13px;font-weight:600;padding:2px 4px;position:absolute;right:-28px;top:50%;transform:translateY(-50%)}.gate-port{background:var(--accent-input);border:2px solid var(--port-border-color);border-radius:50%;cursor:crosshair;height:12px;position:absolute;width:12px;z-index:3}.gate-port:hover{filter:brightness(1.3);transform:scale(1.3)}.input-toggle-row{align-items:center;display:flex;justify-content:center;padding:4px 0}.input-toggle-label{align-items:center;cursor:pointer;display:flex;gap:8px}.input-toggle-checkbox{display:none}.input-toggle-switch{background:var(--border-subtle);border-radius:11px;height:22px;position:relative;transition:background .2s;width:40px}.input-toggle-switch:after{background:var(--text-tertiary);border-radius:50%;content:"";height:16px;left:3px;position:absolute;top:3px;transition:transform .2s,background .2s;width:16px}.input-toggle-checkbox:checked+.input-toggle-switch{background:var(--accent-input)}.input-toggle-checkbox:checked+.input-toggle-switch:after{background:var(--text-on-accent);transform:translateX(18px)}.input-toggle-value{color:var(--text-primary);font-family:monospace;font-size:14px;font-weight:600;min-width:14px}.toolbar-gate-dropdown-container{position:relative}.toolbar-btn--gate{background:var(--accent-gate-soft);border:1px solid var(--accent-gate-border);color:var(--accent-gate-text)}.toolbar-gate-dropdown{background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:4px;box-shadow:var(--shadow-dropdown);left:0;margin-top:4px;min-width:100px;position:absolute;top:100%;z-index:20}.toolbar-gate-dropdown-item{background:none;border:none;color:var(--text-primary);cursor:pointer;display:block;font-size:12px;font-weight:500;padding:6px 14px;text-align:left;width:100%}.toolbar-gate-dropdown-item:hover{background:var(--surface-input);color:var(--text-primary)}.toolbar-mode-indicator{align-items:center;border-left:1px solid var(--border-subtle);display:flex;gap:6px;margin-left:8px;padding-left:8px}.toolbar-mode-badge{background:var(--surface-input);border-radius:3px;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.toolbar-btn--mode-toggle,.toolbar-mode-badge{border:1px solid var(--border-subtle);color:var(--text-tertiary);padding:2px 8px}.toolbar-btn--mode-toggle{background:none;font-size:10px}.toolbar-btn--mode-toggle:hover{border-color:var(--border-medium);color:var(--text-secondary)}.toolbar-default-weight{align-items:center;border-left:1px solid var(--border-subtle);display:flex;gap:6px;margin-left:8px;padding-left:8px}.toolbar-default-weight-label{color:var(--text-tertiary);font-size:11px;font-weight:500;-webkit-user-select:none;user-select:none;white-space:nowrap}.toolbar-default-weight-input{-moz-appearance:textfield;background:var(--surface-input);border:1px solid var(--border-subtle);border-radius:3px;color:var(--text-secondary);font-family:inherit;font-size:12px;padding:2px 6px;text-align:center;width:52px}.toolbar-default-weight-input::-webkit-inner-spin-button,.toolbar-default-weight-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.toolbar-default-weight-input:focus{border-color:var(--accent-ui);outline:none}.save-drawer__mode-badge{background:var(--surface-input);border:1px solid var(--border-subtle);border-radius:3px;color:var(--text-tertiary);font-size:10px;font-weight:500;margin-left:6px;padding:1px 5px;text-transform:uppercase}.save-drawer__new-picker{display:flex;gap:8px;margin-top:8px}.save-drawer__new-type-btn{background:var(--surface-input);border:1px solid var(--accent-ui-border);border-radius:6px;color:var(--accent-ui-text);cursor:pointer;flex:1 1;font-size:12px;font-weight:500;padding:10px;text-align:center}.save-drawer__new-type-btn:hover{background:var(--accent-ui-soft);color:var(--text-primary)}.save-drawer__new-type-btn--cancel{border-color:var(--border-subtle);color:var(--text-tertiary);flex:0 1;padding:10px 14px}.save-drawer__new-type-btn--cancel:hover{color:var(--text-secondary)}.port--gate-type{background:var(--accent-gate)}.share-dropdown-container{position:relative}.toolbar-btn--share{background:var(--accent-ui-soft);border:1px solid var(--accent-ui-border);color:var(--accent-ui-text)}.share-dropdown{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:4px;margin-top:4px;min-width:140px;overflow:hidden;position:absolute;right:0;top:100%;z-index:20}.share-dropdown-item{background:none;border:none;color:var(--text-primary);cursor:pointer;display:block;font-size:12px;padding:8px 14px;text-align:left;width:100%}.share-dropdown-item:hover{background:var(--surface-input)}.network-editor--embed{position:relative}.embed-edit-btn{background:var(--accent-ui-soft);border:1px solid var(--accent-ui-border);border-radius:4px;color:var(--accent-ui-text);cursor:pointer;font-size:12px;font-weight:500;padding:6px 16px;position:absolute;right:8px;top:8px;z-index:20}.embed-edit-btn:hover{background:var(--accent-ui)}.embed-toolbar{align-items:center;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--surface-overlay);border-bottom:1px solid var(--border-subtle);display:flex;flex-shrink:0;gap:8px;padding:6px 12px;z-index:10}.toolbar-btn--open-editor{background:var(--accent-ui-soft);color:var(--accent-ui-text);display:inline-block;text-decoration:none}.toolbar-action-group{align-items:center;display:flex;gap:6px}.toolbar-icon-btn{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-tertiary);cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;padding:0;transition:var(--theme-transition);width:28px}.toolbar-icon-btn:hover:not(:disabled){background:var(--surface-input);color:var(--text-secondary)}.toolbar-icon-btn:disabled{cursor:default;opacity:.3}.toolbar-divider{background:var(--border-medium);height:16px;width:1px}.toolbar-new-wrapper{position:relative}.toolbar-new-picker{background:var(--surface-primary);border:1px solid var(--border-medium);border-radius:6px;box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:column;gap:2px;margin-top:6px;padding:4px;position:absolute;right:0;top:100%;white-space:nowrap;z-index:100}.toolbar-new-picker__btn{background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:13px;padding:8px 14px;text-align:left}.toolbar-new-picker__btn:hover{background:var(--accent-ui-soft);color:var(--text-primary)}.tool-palette{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:14px;display:flex;flex-direction:column;gap:4px;left:12px;padding:6px;position:absolute;top:50%;transform:translateY(-50%);transition:var(--theme-transition);z-index:10}[data-theme=light] .tool-palette{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--surface-elevated);border-color:var(--border-subtle);box-shadow:var(--shadow-panel)}.tool-palette-btn{align-items:center;border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;height:40px;justify-content:center;padding:0;position:relative;transition:all .15s;width:40px}.tool-palette-btn:hover{filter:brightness(1.2)}.tool-palette-icon{-webkit-text-stroke:.5px currentColor;font-size:16px;font-weight:700;line-height:1}.tool-palette-tooltip{background:var(--surface-elevated);border:1px solid var(--border-subtle);border-radius:6px;box-shadow:var(--shadow-dropdown);color:var(--text-primary);font-size:11px;left:52px;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .15s;white-space:nowrap}.tool-palette-btn:hover .tool-palette-tooltip{opacity:1}.tool-palette-btn--input{background:var(--accent-input-soft);border-color:var(--accent-input-border);color:var(--accent-input-text)}.tool-palette-btn--perceptron{background:var(--accent-perceptron-soft);border-color:var(--accent-perceptron-border);color:var(--accent-perceptron-text)}.tool-palette-btn--gate{background:var(--accent-gate-soft);border-color:var(--accent-gate-border);color:var(--accent-gate-text)}.tool-palette-btn--output{background:var(--accent-output-soft);border-color:var(--accent-output-border);color:var(--accent-output-text)}.tool-palette-gate-wrapper{position:relative}.tool-palette-gate-menu{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-dropdown);display:flex;flex-direction:column;gap:2px;left:52px;min-width:80px;padding:4px;position:absolute;top:0;z-index:20}[data-theme=light] .tool-palette-gate-menu{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--surface-elevated)}.tool-palette-gate-item{background:none;border:none;border-radius:4px;color:var(--accent-gate-text);cursor:pointer;font-size:11px;font-weight:600;letter-spacing:.5px;padding:6px 10px;text-align:left}.tool-palette-gate-item:hover{background:var(--accent-gate-soft)}.canvas-controls{bottom:16px;display:flex;flex-direction:column;gap:2px;position:absolute;right:16px;z-index:6}.canvas-controls-btn{align-items:center;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;line-height:1;padding:0;width:32px}.canvas-controls-btn:hover{background:var(--surface-overlay);background:var(--surface-hover,var(--surface-overlay))}.canvas-controls-btn:first-child{border-radius:6px 6px 2px 2px}.canvas-controls-btn:last-child{border-radius:2px 2px 6px 6px}.canvas-controls-btn--active{background:#a78bfa26;background:var(--accent-perceptron-soft,#a78bfa26);border-color:#a78bfa;border-color:var(--accent-perceptron,#a78bfa);color:#a78bfa;color:var(--accent-perceptron,#a78bfa)}.node-simplified{cursor:default;position:absolute;-webkit-user-select:none;user-select:none;z-index:2}.node-simplified--selected{filter:drop-shadow(0 0 6px rgba(255,255,255,.5))}.node-simplified-svg{display:block}.node-simplified-circle{fill:var(--surface-elevated);stroke-width:2}.node-simplified-circle--input{stroke:var(--accent-input)}.node-simplified-circle--perceptron{stroke:var(--accent-perceptron)}.node-simplified-circle--output{stroke:var(--accent-output)}.node-simplified-label{fill:var(--text-tertiary);font-family:system-ui,sans-serif;font-family:var(--font-sans,system-ui,sans-serif);font-size:9px}.node-simplified-value{fill:var(--text-primary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:12px;font-weight:600}.node-simplified-bias{fill:var(--text-tertiary)}.node-simplified-bias,.node-simplified-output{font-family:monospace;font-family:var(--font-mono,monospace);font-size:8px}.node-simplified-output{fill:#6ee7b7;fill:var(--accent-success,#6ee7b7)}.node-simplified-sigma{fill:var(--text-primary);font-family:serif;font-size:20px}.node-simplified-activation-box{fill:var(--surface-elevated);stroke:var(--accent-perceptron);stroke-width:1.5}.node-simplified-activation-label{fill:var(--accent-perceptron);fill:var(--accent-perceptron-text,var(--accent-perceptron));font-family:system-ui,sans-serif;font-family:var(--font-sans,system-ui,sans-serif);font-size:9px}.node-simplified .port--output{position:absolute;right:-6px;top:50%;transform:translateY(-50%)}.node-simplified .port--input{left:-6px;position:absolute;top:50%;transform:translateY(-50%)}.analog-node{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--glass-bg);border:var(--node-border-style) var(--glass-border);border-radius:var(--node-border-radius);cursor:grab;transition:var(--theme-transition)}.analog-node--selected{box-shadow:var(--selection-ring)}.analog-shape-path{fill:none;stroke:var(--text-primary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.analog-lead-path{fill:none;stroke:var(--text-primary);stroke-width:1.5}.analog-pin-label{fill:var(--text-secondary);font-size:10px;font-weight:600}.analog-port{background:var(--text-tertiary);border:2px solid var(--port-border-color);border-radius:50%;cursor:crosshair;height:12px;position:absolute;width:12px;z-index:3}.analog-port:hover{background:var(--text-primary)}.analog-delete-btn{align-items:center;background:var(--danger-soft);border:none;border-radius:50%;color:var(--danger-text);cursor:pointer;display:none;font-size:10px;height:18px;justify-content:center;position:absolute;right:-8px;top:-8px;width:18px;z-index:4}.analog-node:hover .analog-delete-btn{display:flex}.analog-value-label{bottom:2px;color:var(--text-secondary);font-size:11px}.analog-name-label,.analog-value-label{left:0;pointer-events:none;position:absolute;right:0;text-align:center}.analog-name-label{color:var(--text-tertiary);font-size:10px;top:2px}.probe-mode-toggle{display:flex;gap:2px;justify-content:center;margin-top:4px}.probe-mode-btn{background:none;border:1px solid var(--border-medium);border-radius:4px;color:var(--text-tertiary);cursor:pointer;font-size:10px;font-weight:600;height:18px;padding:0;width:22px}.probe-mode-btn--active{background:var(--accent-ui-soft);border-color:var(--accent-ui-border);color:var(--accent-ui-text)}.output-probe-value{color:var(--accent-output-text);font-size:13px;font-weight:600;padding:2px 0;text-align:center}.tool-palette-btn--coming-soon{cursor:not-allowed;opacity:.3}.tool-palette-divider{background:var(--border-medium);height:1px;margin:4px 0;width:28px}.analog-node--resistor{border-color:var(--accent-resistor-border)}.analog-node--diode{border-color:var(--accent-diode-border)}.analog-node--opamp{border-color:var(--accent-opamp-border)}.analog-node--regulator{border-color:var(--accent-regulator-border)}.analog-node--comparator{border-color:var(--accent-comparator-border)}.analog-node--ground{border-color:var(--accent-ground-border)}
/*# sourceMappingURL=main.3c01118d.css.map*/