@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(MaterialIcons-Regular.eot);
  src: local('Material Icons'),
  local('MaterialIcons-Regular'),
  url(MaterialIcons-Regular.woff) format('woff'),
  url(MaterialIcons-Regular.ttf) format('truetype');
}

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
}

.diagram-container {
  display: block;
}

.diagram-container > span.toggle {
  z-index: 9;
}

.diagram {
  overflow: hidden;
  display: none;
  padding-top:15px;
}

.diagram svg {
  display: block;
  position: static;
  visibility: visible;
  z-index: auto;
  margin: auto;
}

.diagram-help {
  float:right;
  display:none;
}

.magnifying {
  cursor: -webkit-zoom-in ! important;
  cursor: -moz-zoom-in ! important;
  cursor: pointer;
}

#close-link {
  position: absolute;
  z-index: 100;
  font-family: Arial, sans-serif;
  font-size: 10pt;
  text-decoration: underline;
  color: #315479;
}

#close:hover {
  text-decoration: none;
}

#inheritance-diagram {
    padding-bottom: 20px;
}


#inheritance-diagram-container > span.toggle {
  z-index: 2;
}

.diagram-container.full-screen {
  position: fixed !important;
  margin: 0;
  border-radius: 0;
  top: 0em;
  bottom: 3em;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
}

.diagram-container.full-screen > span.toggle {
  display: none;
}

.diagram-container.full-screen > div.diagram {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  margin: auto;
}

#diagram-controls {
  z-index: 2;
  position: absolute;
  bottom: 1em;
  right: 1em;
}

#diagram-controls > button.diagram-btn {
  border-radius: 1.25em;
  height: 2.5em;
  width: 2.5em;
  background-color: #c2c2c2;
  color: #fff;
  border: 0;
  float: left;
  margin: 0 0.1em;
  cursor: pointer;
  line-height: 0.9;
  outline: none;
}

#diagram-controls > button.diagram-btn:hover {
  background-color: #e2e2e2;
}

#diagram-controls > button.diagram-btn > i.material-icons {
  font-size: 1.5em;
}

svg a {
  cursor:pointer;
}

svg text {
  font-size: 8.5px;
}


svg {
  border: 1px solid #999;
  overflow: hidden;
}

svg .node {
  white-space: nowrap;
}

svg .node rect,
svg .node circle,
svg .node ellipse {
  stroke: #333;
  fill: #fff;
  stroke-width: 1.5px;
}

svg .cluster rect {
  stroke: #333;
  fill: #000;
  fill-opacity: 0.1;
  stroke-width: 1.5px;
}

svg .edgePath path.path {
  stroke: #333;
  stroke-width: 1.5px;
  fill: none;
}


