@font-face {
  font-family: "Megrim";
  font-style: normal;
  font-weight: 400;
  src: local("Megrim"), url(/assets/fonts/Megrim.woff) format("woff");
}

@font-face {
  font-family: "Marcellus";
  font-style: normal;
  font-weight: 400;
  src: local("Marcellus"), local("Marcellus-Regular"), url(/assets/fonts/Marcellus-Regular.woff) format("woff");
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.container {
  *zoom: 1;
  max-width: 61em;
  _width: 61em;
  padding-left: 1em;
  padding-right: 1em;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2em;
}
.container:after {
  content: "";
  display: table;
  clear: both;
}

.description {
  width: 100%;
  float: left;
  margin-right: 1.69492%;
  display: inline;
}

.string {
  width: 100%;
  float: left;
  margin-right: 1.69492%;
  display: inline;
  height: 35em;
  margin-bottom: 2em;
}
.string .display {
  width: 74.57627%;
  float: left;
  margin-right: 1.69492%;
  display: inline;
  height: 100%;
  border: 1px solid black;
  cursor: move;
}
.string .display p {
  text-align: center;
  margin: 2em;
}
.string .controls {
  width: 23.72881%;
  float: right;
  margin-right: 0;
  *margin-left: -1em;
  display: inline;
  height: 100%;
  border: 1px solid black;
}
.string .controls button.string-type {
  font-size: 0.8em;
  padding: 0.5em 1.5em;
  display: inline-block;
  cursor: pointer;
  -webkit-border-radius: 0.5em;
  -moz-border-radius: 0.5em;
  -ms-border-radius: 0.5em;
  -o-border-radius: 0.5em;
  border-radius: 0.5em;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF808080', endColorstr='#FF4D4D4D');
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a6a6a6), color-stop(70%, #808080));
  background: -webkit-linear-gradient(#a6a6a6, #808080 70%);
  background: -moz-linear-gradient(#a6a6a6, #808080 70%);
  background: -o-linear-gradient(#a6a6a6, #808080 70%);
  background: linear-gradient(#a6a6a6, #808080 70%);
  -webkit-box-shadow: #cccccc 0 1px 0 inset;
  -moz-box-shadow: #cccccc 0 1px 0 inset;
  box-shadow: #cccccc 0 1px 0 inset;
  border: 1px solid #737373;
  color: white;
  text-shadow: #636363 0 -1px 0;
  display: block;
  margin: 2.5em auto 0;
}
.string .controls button.string-type:hover {
  text-decoration: none;
}
.string .controls button.string-type:hover {
  background-color: #737373;
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(3%, #9a9a9a), color-stop(75%, #737373));
  background: -webkit-linear-gradient(#9a9a9a 3%, #737373 75%);
  background: -moz-linear-gradient(#9a9a9a 3%, #737373 75%);
  background: -o-linear-gradient(#9a9a9a 3%, #737373 75%);
  background: linear-gradient(#9a9a9a 3%, #737373 75%);
}
.string .controls button.string-type:active {
  -webkit-box-shadow: #6c6c6c 0 1px 2px inset;
  -moz-box-shadow: #6c6c6c 0 1px 2px inset;
  box-shadow: #6c6c6c 0 1px 2px inset;
}
.string .controls button.string-type.disabled, .string .controls button.string-type[disabled] {
  opacity: 0.6;
  background: gray;
  cursor: default;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.string .controls button.string-type::-moz-focus-inner {
  padding: 0 !important;
  margin: -1px !important;
}
.string .controls .modes-control table {
  margin: 1em auto 0;
}
.string .controls .string-mode-coordinate-cell-2 .string-mode-coordinate {
  color: red;
}
.string .controls .string-mode-coordinate-cell-3 .string-mode-coordinate {
  color: green;
}
.string .controls canvas {
  cursor: crosshair;
}

body {
  font-family: Marcellus, sans-serif;
  counter-reset: chapter;
}

header {
  margin-top: 4em;
  margin-bottom: 4em;
  text-align: center;
}
header p {
  margin: 0;
}

h2.numbered:before {
  content: counter(chapter) ". ";
  counter-increment: chapter;
}

h2.numbered {
  counter-reset: section;
}

h3.numbered:before {
  content: counter(chapter) "." counter(section) " ";
  counter-increment: section;
}

h1 {
  font-family: Megrim, sans-serif;
  font-weight: normal;
  font-size: 3em;
  margin: 0;
}

h2 {
  margin-top: 1em;
  font-weight: normal;
  font-size: 1.5em;
}

#contact {
  position: relative;
}
#contact a {
  color: black;
  bottom: 0;
  right: 0;
  position: absolute;
}
