body {
  position: relative;
  font-family: "Helvetica Neue", Helvetica, sans-serif;
  margin: 1em auto 4em auto;
  width: 80%;
}

h1 {
  font-size: 64px;
  font-weight: 300;
  letter-spacing: -2px;
  margin: .3em 0 .1em 0;
}

h2 {
  margin-top: 2em;
}

h1, h2 {
  text-rendering: optimizeLegibility;
}

h2 a {
  color: #ccc;
  left: -20px;
  position: absolute;
  width: 740px;
}

footer {
  font-size: small;
  margin-top: 8em;
}

header aside {
  margin-top: 20px;
}

header aside, footer aside {
  color: #636363;
  text-align: right;
}

aside {
  float:right;
  display:inline;
  font-size: small;
}

.attribution {
  font-size: small;
  margin-bottom: 2em;
}

body > p, li > p {
  line-height: 1.5em;
}

body > p {
  width: 720px;
}

body > blockquote {
  width: 640px;
}

li {
  width: 680px;
}

pre, code, textarea {
  font-family: "Menlo", monospace;
}

code {
  line-height: 1em;
}

textarea {
  font-size: 100%;
}

body > pre {
  border-left: solid 2px #ccc;
  padding-left: 18px;
  margin: 2em 0 2em -20px;
}

.html .value, .javascript .string, .javascript .regexp {
  color: #756bb1;
}

.html .tag, .css .tag, .javascript .keyword {
  color: #3182bd;
}

.comment {
  color: #636363;
}

.html .doctype, .javascript .number {
  color: #31a354;
}

.html .attribute, .css .attribute, .javascript .class, .javascript .special {
  color: #e6550d;
}

svg {
  font: 10px sans-serif;
}

.axis path, .axis line {
  fill: none;
  stroke: #000;
  shape-rendering: crispEdges;
}

sup, sub {
  line-height: 0;
}

q:before, blockquote:before {
  content: "?";
}

q:after, blockquote:after {
  content: "?";
}

blockquote:before {
  position: absolute;
  left: 2em;
}

blockquote:after {
  position: absolute;
}

#chart {
  height: 600px;
}

.node rect {
  cursor: move;
  fill-opacity: .9;
  shape-rendering: crispEdges;
}

.node text {
  pointer-events: none;
  text-shadow: 0 1px 0 #fff;
}

.link {
  fill: none;
  stroke: #000;
  stroke-opacity: .2;
}

.link:hover {
  stroke-opacity: .5;
}

circle.node-dot {
  fill: DarkSlateGray;
  stroke: SlateGray;
  stroke-width: 1px;
}

line.link {
  fill: none;
  stroke: SlateGray;
  stroke-width: 1.5px;
}

marker#defaultMarker {
  fill: SlateGray;
}

line.link.defaultMarker {
  stroke: SlateGray;
}

circle {
  fill: #ccc;
  stroke: #fff;
  stroke-width: 1.5px;
}

text {
  pointer-events: none;
}

text.shadow {
  stroke: #fff;
  stroke-width: 3px;
  stroke-opacity: .8;
}
