.node-container{background-color:#2b2b2b;border:1px solid #444;border-radius:8px;padding:12px;font-family:Segoe UI,sans-serif;color:#ddd;width:250px;box-sizing:border-box;overflow:visible;position:relative;transform-origin:0 0}.node-container.selected{border:2px solid #0d6efd;box-shadow:0 0 0 2px #0d6efd40}.node-header{display:flex;justify-content:space-between;background-color:#1f1f1f;padding:6px 10px;border-bottom:1px solid #444;border-top-left-radius:7px;border-top-right-radius:7px;font-weight:700;font-size:14px;color:#eee}.node-header .node-badge{background-color:#2c5f2d;color:#b4ff9f;font-size:10px;padding:2px 6px;border-radius:4px}.node-row{display:flex;align-items:center;margin-top:8px}.node-row .row-label{margin-left:8px;font-size:13px;flex-grow:1}.node-row .row-control{margin-left:auto;font-size:13px;background-color:#333;border:1px solid #555;border-radius:4px;color:#eee;height:24px;line-height:24px;padding:0 8px}.node-row .row-control select{background-color:#333;border:none;color:#eee}.node-port.image_in,.node-port.video_out,.node-port.latent_in,.node-port.latent_out{width:24px;height:24px;border-radius:24px}.node-port.model{background-color:#a34ffc}.node-port.positive,.node-port.negative{background-color:#f5a623}.node-port.latent_in,.node-port.latent_out{background-color:#ff3cac}.node-port.audio_in,.node-port.audio_out{background-color:#2c5f2d}.node-row--output{flex-direction:row-reverse;margin-top:8px}.node-row--vertical{flex-direction:column;align-items:flex-start}.node-row--vertical .row-label{margin-bottom:4px}.text-field{background-color:#333;border:1px solid #555;border-radius:4px;color:#eee;height:24px;padding:0 6px;font-size:13px;width:100%;box-sizing:border-box;margin-bottom:6px}.text-field+.delete-btn{background:none;border:none;color:#e64c4c;font-size:14px;cursor:pointer;margin-left:8px}.node-image-preview{width:100%;border:1px solid #444;border-radius:4px;margin:8px 0;-o-object-fit:cover;object-fit:cover}.choice-row{position:relative;display:flex;align-items:center;margin-top:6px}.choice-row .node-port{margin-right:8px}.choice-row .text-field{flex-grow:1;margin-bottom:0;margin-right:8px}.choice-row .delete-btn{background:none;border:none;color:#888;font-size:14px;cursor:pointer;padding:0;margin-right:8px;position:relative;z-index:10}.choice-row .delete-btn:hover{color:#ccc}.node-port.latent_in:not(.connected),.node-port.latent_out:not(.connected){background:transparent!important;border:2px solid #FF3CAC!important}.node-port.latent_in.connected,.node-port.latent_out.connected{background:#ff3cac!important;border:none!important}.node-port.audio_in:not(.connected),.node-port.audio_out:not(.connected){background:transparent!important;border:2px solid #2C5F2D!important}.node-port.audio_in.connected,.node-port.audio_out.connected{background:#2c5f2d!important;border:none!important}:root{--port-color-context: #00B4D8;--port-color-system: #FFD166;--port-color-memory: #9D4EDD;--port-color-instruction: #F72585;--port-color-message: #06D6A0;--port-color-history: #F8961E;--port-color-image: #4CAF50;--port-color-artifact: #FF8500}.node-port{width:24px;height:24px;border-radius:50%}.node-port.context_in:not(.connected),.node-port.context_out:not(.connected){background:transparent!important;border:3px solid var(--port-color-context)!important}.node-port.context_in.connected,.node-port.context_out.connected{background:var(--port-color-context)!important;border:none!important}.node-port.system_prompt_in:not(.connected),.node-port.system_prompt_out:not(.connected){background:transparent!important;border:3px solid var(--port-color-system)!important}.node-port.system_prompt_in.connected,.node-port.system_prompt_out.connected{background:var(--port-color-system)!important;border:none!important}.node-port.memory_context_in:not(.connected),.node-port.memory_context_out:not(.connected){background:transparent!important;border:3px solid var(--port-color-memory)!important}.node-port.memory_context_in.connected,.node-port.memory_context_out.connected{background:var(--port-color-memory)!important;border:none!important}.node-port.instruction_context_in:not(.connected),.node-port.instruction_context_out:not(.connected){background:transparent!important;border:3px solid var(--port-color-instruction)!important}.node-port.instruction_context_in.connected,.node-port.instruction_context_out.connected{background:var(--port-color-instruction)!important;border:none!important}.node-port.message_out:not(.connected),.node-port.message_in:not(.connected){background:transparent!important;border:3px solid var(--port-color-message)!important}.node-port.message_out.connected,.node-port.message_in.connected{background:var(--port-color-message)!important;border:none!important}.node-port.history_out:not(.connected),.node-port.history_in:not(.connected){background:transparent!important;border:3px solid var(--port-color-history)!important}.node-port.history_out.connected,.node-port.history_in.connected{background:var(--port-color-history)!important;border:none!important}.node-port.image_out:not(.connected),.node-port.image_in:not(.connected){background:transparent!important;border:3px solid var(--port-color-image)!important}.node-port.image_out.connected,.node-port.image_in.connected{background:var(--port-color-image)!important;border:none!important}.node-port.artifact_context_out:not(.connected),.node-port.artifact_context_in:not(.connected){background:transparent!important;border:3px solid var(--port-color-artifact)!important}.node-port.artifact_context_out.connected,.node-port.artifact_context_in.connected{background:var(--port-color-artifact)!important;border:none!important}.nodrag{cursor:auto;-webkit-user-select:text;-moz-user-select:text;user-select:text}.nodrag,.nodrag span,.nodrag p,.nodrag h4{cursor:text;-webkit-user-select:text;-moz-user-select:text;user-select:text}
