@font-face{
  font-family: "OpenSansLight";
  font-style: normal;
  font-weight: 300;
  src: local("OpenSans-Light"), url(/static/font/OpenSans-Light.woff) format("woff"), url(/static/font/OpenSans-Light.ttf) format("truetype");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: normal;
  src: local("Open Sans"), local("OpenSans-Regular"), url(/static/font/OpenSans-Regular.woff) format("woff"), url(/static/font/OpenSans-Regular.ttf) format("truetype");
}
@font-face {
  font-family: 'OpenSansSemibold';
  src: local("OpenSans-Semibold"), url(/static/font/OpenSans-Semibold.woff) format("woff"), url(/static/font/OpenSans-Semibold.ttf) format("truetype");
  font-weight: 600;
  font-style: normal; 
}
rect { stroke-width: 1px; }
text { text-anchor: middle; font-family: "Open Sans"; font-size: 13px; fill: #545b61; }
text.proto { fill: #afc7d1; font-size: 9; }
path.cloud { fill: #eefaff; stroke: none; }
rect.selected, path.selected { stroke-width: 2px; }
path.selected { stroke: #dcedf4; }
g[data-node-id]{ cursor: pointer; }
.internet { stroke: #bfd7e2; }
line.internet { stroke-dasharray: 5,3,1,3; }
.inject { stroke: #c2c2c2; }
line.inject { stroke-dasharray: 5,3; }
.fork { stroke: #c2c2c2; }
.level0{ fill: #fcfdf9; stroke: #e5e7df; }
.level1{ fill: #fffde7; stroke: #e3deca; }
.level2{ fill: #fff3e0; stroke: #fbdcaf; }
.level3{ fill: #ffedeb; stroke: #f7c5b5; }
.level4{ fill: #fdd9cd; stroke: #eea087; }

/* text decoration */
body {background-color: white;}
.level0{background-color: #fcfdf9;}
.level1{background-color: #fffde7;}
.level2{background-color: #fff3e0;}
.level3{background-color: #ffedeb;}
.level4{background-color: #fdd9cd;}

.level0_border{border:1px solid #e5e7df;}
.level1_border{border:1px solid #e3deca;}
.level2_border{border:1px solid #fbdcaf;}
.level3_border{border:1px solid #f7c5b5;}
.level4_border{border:1px solid #eea087;}
.cloud_border{border:2px solid #c9e3ef;}
