 .cardDraw .p-card, .cardDraw .p-card .p-card-body, .cardDraw .p-card .p-card-content, .cardDraw .container-draw {
  height: 100%;
  display: block;
 }
 .cardDraw .p-card .p-card-content {
  padding: 0px;
 }
 
 .parent-drawflow {
    display: flex;
    overflow: hidden;
    touch-action: none;
    outline:none;
  }
  
  .drawflow {
    width: 100%;
    height: 100%;
    position: relative;
    user-select: none;
    perspective: 0;
  }
  
  .drawflow .parent-node {
    position: relative;
  
  }
  
  .drawflow .drawflow-node {
    display: block;
    align-items: center;
    position: absolute;
    background: white;
    width: 240px;
    min-height: 40px;
    border-radius:8px;
    border: 1px solid #c3c3c3;
    color: black;
    z-index: 2;
    box-shadow: 0 0px 3px 0px #c3c3c3;
  }
  

  .drawflow .drawflow-node:hover {
    cursor: move;
  }
  
  .drawflow .drawflow-node .inputs, .drawflow .drawflow-node .outputs {
    display: flex;
    width: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    height: 0px;
    gap: 40px;
  }
  
  .drawflow .drawflow-node .drawflow_content_node {
    width: auto;
    display: block;
    padding: 0px;
    height: 50px;
  }
  
  .drawflow .drawflow-node .input, .drawflow .drawflow-node .output {
    display: flex;
    justify-content: center;
    align-items: center;  
    pointer-events: all;
    position: relative;
    width: 18px;
    height: 18px;
    background: white;
    border-radius: 50%;
    border: 1px solid #c3c3c3;
    cursor: crosshair;
    z-index: 1;
    
  }
  
  .drawflow .drawflow-node .input {
    left: 0px;
    top: 0px;
    background: white;
  }
  .drawflow .drawflow-node .output {
    right: 0px;
    bottom: 0px;
  }
  
  .drawflow svg {
    z-index: 0;
    position: absolute;
    overflow: visible !important;
  }
  .drawflow .connection {
    position: absolute;
    pointer-events: none;
    aspect-ratio: 1 / 1;
  }

  .drawflow .connection:hover,  .drawflow .connection.light {
    z-index: 1;
  }

  .drawflow .connection:has(.main-path.drawflowselected) {
    z-index: 1;
  }

  .drawflow .connection .main-path {
    fill: none;
    stroke-width: 4px;
    stroke: #c3c3c3;
    pointer-events: all;
  }
  .drawflow .connection.light .main-path, .drawflow .connection .main-path:hover, .drawflow .connection:has(foreignObject > div:hover) .main-path {
    stroke: #1266ab;
    cursor: pointer;
  }
  
  .drawflow .connection .main-path.drawflowselected {
    stroke: #ff0073;
  }

  .drawflow .connection:not([class*='output']) .main-path {
    z-index: 1;
    stroke: #ff0073;
  }


  .drawflow .connection .point {
    cursor: move;
    stroke: black;
    stroke-width: 2;
    fill: white;
    pointer-events: all;
  }
  
  .drawflow .connection .point.drawflowselected, .drawflow .connection .point:hover {
    fill: #1266ab;
  }
  
  .drawflow .main-path {
    fill: none;
    stroke-width: 5px;
    stroke: #ff0073;
  }
  
  .drawflow-delete {
    position: absolute;
    display: block;
    display: none;
    width: 32px;
    height: 32px;
    background: #c3c3c3;
    color: white;
    z-index: 4;
    border: 1px solid #c3c3c3;
    line-height: 32px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    border-radius: 10px;
    font-family: monospace;
    cursor: pointer;
    padding: 0px;
    box-shadow: 0 0px 3px 0px #c3c3c3;
  }

  .drawflow-delete:hover {
    background: black;
  }

  .drawflow > .drawflow-delete {
    margin-left: -15px;
    margin-top: 15px;
  }
  
  .parent-node .drawflow-delete {
    right: -15px;
    top: -15px;
  }

  .drawflow .drawflow-node .drawflow_content_node {
    display: flex;
    align-items: center;
    gap: 20px;
  }

  .drawflow_content_node .iconbox {
    display: flex;
    align-items: center;
    width: 54px;
    height: 100%;
    border-radius: 6px 0px 0px 6px;
  }

  .drawflow_content_node img {
    width: 24px;
    height: 24px;
    padding: 10px 15px;
  }

  .drawflow_content_node p {
    font-family: Avenir, Helvetica, Arial, sans-serif;
    font-size: 14px;
    color: #5c5c5c;
    margin: 0px;
    pointer-events: none;
    width: 145px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .drawflow_content_node .openDraw {
    display: none;
    position:absolute; 
    top: -6px;
    right: -30px;
  }

  .drawflow-node.drawflowselected .drawflow_content_node .openDraw {
    display: block;
  }



  .drawflow .drawflow-node:hover .input .point, .drawflow .drawflow-node:hover .output .point {
    background: #1266ab;
  }

  .drawflow .drawflow-node:hover .input {
    border: 0px;
    border-top:1px solid #1266ab;
    box-shadow: 0px 3px 3px 0px white, 0px 0px 3px 0px #1266ab;
  }

  .drawflow .drawflow-node:hover .output {
    border: 0px;
    border-bottom: 1px solid #1266ab;
    box-shadow:  0px -3px 3px 0px white, 0px 0px 3px 0px #1266ab;
  }

  .drawflow .drawflow-node:hover {
    border: 1px solid #1266ab;
    box-shadow: 0 0px 3px 0px #1266ab;
  }


    .drawflow .drawflow-node.drawflowPreSelect {
    border: 1px solid #ff84bb;
    box-shadow: 0 0px 3px 0px #ff84bb;
  }

  .drawflow .drawflow-node.drawflowPreSelect .drawflow_content_node .iconbox {
    background: #ff84bb !important;
  }


  .drawflow .drawflow-node.drawflowselected {
    border: 1px solid #ff0073;
    box-shadow: 0 0px 3px 0px #ff0073;
  }

  .drawflow .drawflow-node.drawflowselected .drawflow_content_node .iconbox {
    background: #ff0073 !important;
  }

  .drawflow .drawflow-node .drawflow_content_node img {
    box-sizing: content-box;
    filter: invert(35%);
  }
  .drawflow .drawflow-node .drawflow_content_node img.iconNode {
    pointer-events: none;
    filter: invert(35%);
  }

  .drawflow .drawflow-node.drawflowselected .drawflow_content_node img.iconNode {
    filter: invert(100%);
  }

  .drawflow .drawflow-node.drawflowselected .drawflow_content_node p {
    color: black;
  }

  .drawflow .drawflow-node .input:hover, .drawflow .drawflow-node .output:hover {
    border: 1px solid #ff0073 !important;
    background: #ff0073 !important;
    box-shadow: 0 0px 3px 0px #ff0073;
  }

  .drawflow .drawflow-node .input .point, .drawflow .drawflow-node .output .point {
    pointer-events: none;
    width: 8px;
    height: 8px;
    background: #c3c3c3;
    border-radius: 50%;
  }

  .drawflow .drawflow-node .input {
    border: 0px;
    border-top:1px solid #c3c3c3;
    box-shadow: 0px -1.5px 3px 0px #c3c3c3;
  }

  .drawflow .drawflow-node .output {
    border: 0px;
    border-bottom: 1px solid #c3c3c3;
    box-shadow: 0px 1.5px 3px 0px #c3c3c3;
  }

  .drawflow .drawflow-node .input:hover .point, .drawflow .drawflow-node .output:hover .point {
    background: white;
    box-shadow: 0 0px 3px 0px #ff0073;
  }

  .drawflow .drawflow-node.drawflowselected .input {
    border-top:1px solid #ff0073;
    box-shadow: 0px 3px 3px 0px white, 0px 0px 3px 0px #ff0073;
  }

  .drawflow .drawflow-node.drawflowselected .output {
    border-bottom:1px solid #ff0073;
    box-shadow:  0px -3px 3px 0px white, 0px 0px 3px 0px #ff0073;
  }

  .drawflow .drawflow-node.drawflowselected .input .point, .drawflow .drawflow-node.drawflowselected .output .point {
    background: #ff0073;
  }

  .drawflow .drawflow-node .openDraw {
    cursor:pointer
  }

  .drawflow .drawflow-node .openDraw img {
    padding: 0px;
  }
  .drawflow .drawflow-node .openDraw:hover img {
    filter: invert(0);
  }

  .drawflow .connection .main-path {
    pointer-events: stroke;
 }

  .drawflow .drawflow-node.nodeType-3 .outputs .output_1 {
    background: #8acf81;
  }
  .drawflow .drawflow-node.nodeType-3 .outputs .output_2 {
    background: #ef5d5d;
  }

  .drawflow .drawflow-node.nodeType-5 .outputs .output:last-child {
    background: #ef5d5d;
  }

  .drawflow .drawflow-node.nodeType-3.drawflowselected .output .point {
    background: white;
  }

  .drawflow .connection foreignObject  {
   overflow: visible; 
  }
  .drawflow .connection foreignObject > div {
    width: 100px;
    left: -50px;
    text-align: center;
    background: #EFF1F5;
    pointer-events: all;
    cursor: pointer;
    color: #5c5c5c;
    font-weight: bold;
    border-radius: 6px;
    border: 1px solid transparent;
    /*padding: 2.5px;
    background: white;
    border: 1px solid #c3c3c3;
    box-shadow: 0 0px 3px 0px #c3c3c3; */
  }

  .drawflow .connection foreignObject > div.hidden {
    display: none;
  }

  .drawflow .connection.light foreignObject > div, .drawflow .connection foreignObject > div:hover, .drawflow .connection:has(.main-path:hover) foreignObject > div {
    border: 1px solid #1266ab;
    box-shadow: 0 0px 3px 0px #1266ab;  
  }
  
  .drawflow .connection .main-path.drawflowselected + foreignObject > div {
    border: 1px solid #ff0073;
    box-shadow: 0 0px 3px 0px #ff0073;  
  }

  .parent-drawflow  .node_code {
      position: absolute;
      top: -16px;
      left: 6px;
      font-size: 12px;
      line-height: 12px;
      font-weight: bold;
  }

  .parent-drawflow.es .node_lang_en, .parent-drawflow.es .label_en {
    display: none;
  }

  .parent-drawflow.all .node_lang_en, .parent-drawflow.all .label_en {
    display: none;
  }
  
  .parent-drawflow.en .node_lang_es, .parent-drawflow.en .label_es {
    display: none;
  }

  .drawflow svg.drawflowSelectBox {
    z-index: 2;
  }

  .drawflowSelectBox rect {
    stroke: rgb(66, 133, 244);
    fill: rgb(66, 133, 244, 0.1);
    
  }

  .drawflowSelectBox.partial rect {
    stroke: rgb(51, 163, 23);
    fill: rgb(51, 163, 23, 0.1);
  }

 .gotoAnimation {
  transition: transform 200ms linear;
}

.gotoAnimation .drawflow-node {
  transition: all 200ms linear;
}