svg text {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-size: 20px;
}

svg text::selection {
    background: none;
}

._protein_rect, ._complex_rect, ._protein_rect_duplicate {
    fill: #DCEDC8;
    stroke: black;
    stroke-width: 1px;
    rx: 10px;
    ry: 10px;
    shape-rendering: geometricPrecision;
}

._metabolite_ellipse, ._metabolite_ellipse_duplicate {
    fill: #F0F4C3;
}

._DNA_rect {
    fill: yellow;
    stroke: black;
    stroke-width: 1px;
    shape-rendering: geometricPrecision;
}

._RNA_polygon {
    fill: greenyellow;
    stroke: black;
    stroke-width: 1px;
    shape-rendering: geometricPrecision;
}

._protein_extra_text {
    font-size: xx-small;
}

ellipse {
    fill: white;
    stroke: black;
    stroke-width: 1px;
    shape-rendering: geometricPrecision;
}

path {
    stroke: black;
    stroke-width: 1px;
    fill: none;
}

svg {
    width: 100%;
    height: 100%;
}

.arrow {
    fill: #333;
    stroke: #333;
}

.joinPoint {
    stroke: transparent;
    fill: black;
    rx: 4px;
    ry: 4px;
}

.protein, .metabolite, .reaction {
    cursor: pointer;
}

.background {
    stroke: #0099cc;
    stroke-width: 2px;
    stroke-dasharray: 10 5;
    fill: transparent
}

.faded {
    fill: transparent;
    stroke: #444444;
}

.highlighted {
    fill: red;
}

text.highlighted {
    fill: white;
}