.rete{position:relative;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:14px}.rete .node{background:#fff;border:2px solid #4a5568;border-radius:8px;box-shadow:0 2px 8px #0000001a;min-width:200px;padding:10px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.rete .node.selected{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e54d}.rete .node-title{font-weight:600;color:#1f2937;margin-bottom:8px;padding:4px 8px;background:#f3f4f6;border-radius:4px}.rete .node-body{color:#6b7280;font-size:12px;padding:4px 8px}.rete .socket{width:12px;height:12px;background:#4f46e5;border:2px solid #fff;border-radius:50%;cursor:pointer;display:inline-block;vertical-align:middle}.rete .input,.rete .output{display:flex;align-items:center;padding:4px 0}.rete .input-title,.rete .output-title{font-size:12px;color:#6b7280;margin:0 8px}.rete .output{justify-content:flex-end;text-align:right}.rete .connection{overflow:visible!important;position:absolute!important;z-index:0!important;pointer-events:none!important}.rete .connection path{fill:none!important;stroke:#3b82f6!important;stroke-width:3px!important;stroke-linecap:round!important;pointer-events:stroke!important;opacity:1!important}.rete .connection path:hover{stroke:#2563eb!important;stroke-width:4px!important}.rete svg{overflow:visible!important;position:absolute!important;pointer-events:none!important;z-index:0!important}.operators-fab{position:absolute;bottom:20px;right:20px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#9c27b0,#7b1fa2);border:none;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 4px 12px #9c27b066;display:none;align-items:center;justify-content:center;z-index:999;transition:all .3s ease}.operators-fab:hover{transform:scale(1.1);box-shadow:0 6px 16px #9c27b099}.operators-fab:active{transform:scale(.95)}.operators-floating-panel{position:absolute;top:20px;left:20px;width:280px;max-height:600px;background:#fff;border:2px solid #9c27b0;border-radius:8px;box-shadow:0 4px 20px #0003;z-index:1000;overflow:hidden}.panel-header{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff;padding:10px 15px;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center}.panel-header:active{cursor:grabbing}.panel-title{font-weight:600;font-size:14px}.panel-controls{display:flex;gap:5px}.btn-panel-control{background:#fff3;border:none;color:#fff;width:24px;height:24px;border-radius:4px;cursor:pointer;font-size:18px;line-height:1;transition:background .2s}.btn-panel-control:hover{background:#ffffff4d}.panel-body{max-height:550px;overflow-y:auto;padding:10px}.panel-body details{margin-bottom:8px;border:1px solid #e0e0e0;border-radius:4px;overflow:hidden}.panel-body summary{background:#f5f5f5;padding:8px 12px;cursor:pointer;font-weight:600;font-size:12px;color:#9c27b0;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .2s}.panel-body summary:hover{background:#e0e0e0}.panel-body details[open] summary{background:#9c27b0;color:#fff}.panel-body button{display:block;width:100%;padding:6px 12px;margin:0;border:none;background:#fff;text-align:left;font-size:12px;cursor:pointer;transition:background .2s;border-bottom:1px solid #f0f0f0}.panel-body button:hover{background:#f8f8f8;color:#9c27b0}.panel-body button:last-child{border-bottom:none}.panel-body::-webkit-scrollbar{width:6px}.panel-body::-webkit-scrollbar-track{background:#f1f1f1}.panel-body::-webkit-scrollbar-thumb{background:#9c27b0;border-radius:3px}.panel-body::-webkit-scrollbar-thumb:hover{background:#7b1fa2}
