@import '../../../../style/sass/lib/_variables.scss';

#xosMcord-slicing,
#xosMcord-slicing > [ui-view],
slicing-topo {
  width: 100%;
  height: 100%;
}

slicing-topo {
  display: block;
}

#xosMcord-slicing {
  .node {
    stroke: $brand-primary;
    fill: white;
  }

  .node,
  .node + text {
    cursor: pointer;
  }

  text {
    pointer-events: none;
    -webkit-user-select: none;  /* Chrome all / Safari all */
    -moz-user-select: none;     /* Firefox all */
    -ms-user-select: none;      /* IE 10+ */
    user-select: none;
  }

  .node.control {
    stroke-dasharray: 5;
    stroke: $brand-danger;
  }

  .node.button {
    stroke-dasharray: 5;
    stroke: $brand-info;
    fill: lighten($brand-info, 30)
  }

  .node.selected{
    stroke-width: 5px;
    stroke-dasharray: 5;
  }

  /* Icons */
  .node ~ .icon {
    stroke: $brand-primary;
    fill: $brand-primary;
  }

  .node.control ~ .icon {
    stroke: $brand-danger;
    fill: $brand-danger;
  }

  .link {
    stroke: darken($brand-primary, 10);
    stroke-width: 2px;
    cursor: pointer;
  }

  .link.control {
    stroke-dasharray: 5;
    stroke: $brand-danger;
  }

  .link.selected {
    stroke-width: 5px;
    stroke-dasharray: 5;
  }

  /*drag line*/
  .dragline {
    stroke-dasharray: 5;
    stroke: darken($brand-primary, 10);
    stroke-width: 2px;
  }

  .dragline.hidden {
    stroke-width: 0;
  }

  /*form styling*/
  div.element-form {
    position: absolute;
    border: 1px solid $brand-info;
    padding: 10px;
    background: #fff;
  }

  .form-line {
    stroke: darken($brand-info, 10);
    stroke-width: 1px;
  }
}