
@import url('https://fonts.googleapis.com/css?family=Source+Code+Pro:400,700|Source+Sans+Pro:400,400i,700,700i|Source+Serif+Pro:400,700&display=swap');
 * { box-sizing: border-box; }
html {
  font-size: 125%;
}
body {
  font-family: "Source Serif Pro", "Georgia", serif;
  color: hsl(260, 35%, 85%);
  background-color: hsl(260, 25%, 10%);
  line-height: 1.5em;
  padding: 0;
  margin: 0;
}
h1, h2, h3, h4, h5, h6,
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-family: "Source Sans Pro", -apple-system, "Helvetica Neue", "Helvetica", "Calibri", "Verdana", sans-serif;
}
#text-table-of-contents a {
  font-family: "Source Sans Pro", -apple-system, "Helvetica Neue", "Helvetica", "Calibri", "Verdana", sans-serif;
}
h1 {
  margin: 0;
  font-size: 1.6666666666666667em;
  line-height: 0.9em;
  margin-bottom: 0.9em;
}
h2 {
  margin: 0;
  font-size: 1.5em;
  line-height: 1em;
  margin-bottom: 1em;
}
h3 {
  margin: 0;
  font-size: 1.3333333333333333em;
  line-height: 1.125em;
  margin-bottom: 1.125em;
}
h4 {
  margin: 0;
  font-size: 1.1666666666666667em;
  line-height: 1.2857142857142858em;
  margin-bottom: 1.2857142857142858em;
}
p, ul, blockquote, pre, td, th, label {
  margin: 0;
  line-height: 1.5rem;
  margin-bottom: 1.5rem;
}
p, ul, ol, blockquote {
  max-width: 35rem;
}
p.small, #postamble {
  margin: 0;
  font-size: 0.8333333333333334em;
  line-height: 1.5rem;
  margin-bottom: 1.5rem;
}
pre, code {
  font-family: "Source Code Pro", "Monaco", "Menlo", "Consolas", monospace;
}
pre {
  background-color: hsl(260, 25%, 12%);
  line-height: 1.5em;
  font-size: 0.75rem;
  font-family: monospace;
  overflow: auto;
}
#content {
  max-width: 60rem;
  padding-left: 2rem;
  padding-right: 2rem;
  margin-left: auto;
  margin-right: auto;
}
#table-of-contents {
  margin: auto;
}
#postamble {
  clear: both;
  text-align: center;
}
div.outline-2 pre {
  overflow: auto;
}
h1.title {
  margin-top: 10px;
  /* text-align: center; */
  margin-top: 2rem;
}
h1.title {
  font-size: 3em;
  font-weight: bold;
  margin-bottom: 0.8em;
}
.todo {
  color: red;
}
.done {
  color: green;
}
.tag {
  color: blue;
  text-transform: lowercase;
  /* This will be obscured by the surrounding span tag, so blank everything. */
  background: #fff;
  border: none;
/* position: relative;
        text-align: right;
        right: 1em; */
}
.timestamp {
}
.timestamp-kwd  {
  /* keyword associated with a time stamp, like SCHEDULED */
}
.target {
  /* target for links */
}
#table-of-contents h2 {
  /* letter-spacing: -0.03em; */
}
#table-of-contents ul,
#table-of-contents ol {
  padding-left: 1em;
}
h1.title, #table-of-contents, .outline-2 {
  margin-left: auto;
  margin-right: auto;
}
.org-table {
  margin-bottom: 1.5rem;
}
table {
  border-collapse: collapse;
  max-width: 100%;
  font-variant-numeric: lining-nums tabular-nums;
  line-height: 1rem;
}
table, thead, th, tr, td {
  border: 0;
}
colgroup:nth-child(even) {
  background-color: hsl(260, 25%, 12%);
}
colgroup:last-of-type {
  border-right: 0;
}
tr:nth-child(even) {
  background-color: hsla(260, 25%, 100%, 0.02);
}
td, th {
  padding-right: 1rem;
  padding-left: 1rem;
  text-align: left;
  /* line-height: 1rem; */
}
th {
  white-space: nowrap;
  font-weight: bold;
  line-height: 1.5rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
td:first-child, th:first-child {
  padding-left: 0;
}
td:last-child, th:last-child {
  padding-right: 0;
}
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
  /* background-color: #eee; */
  /* padding: 2px; */
  /* border: 1px solid #ccc; */
  position: absolute;
  left: 0;
  width: calc((100vw - 60rem) / 2 - 1rem);
  text-align: right;
}
.todo {
  position: static;
}
a {
  text-decoration: none;
  color: #57d; /* TODO: Find a better colour for this. */
}
a:hover {
  border-bottom: 1px dotted #57d;
}
#postamble p {
  margin: 0px;
}
.footpara { display: inline; }
.footdef { margin-bottom: 3em; font-size: 80%; }
.org-right { text-align: right; }
.org-left { text-align: left; }

.org-src-container {
  overflow-x: auto;
  margin-left: -2rem;
  width: 100vw;
  max-width: 100vw;
}
pre {
  padding-left: 2rem;
  padding-right: 2rem;
}
td:first-child, th:first-child {
  padding-left: 2rem;
}
td:last-child, th:last-child {
  padding-right: 2rem;
}

@media only screen and (max-width: 40rem) {
  .org-table {
    margin-left: -2rem;
    width: 100vw;
    max-width: 100vw;
    overflow-x: auto;
  }
  html {
    font-size: 112.5%;
  }
}

@media only screen and (max-height: 25rem) {
  html {
    font-size: 112.5%;
  }
}

@media only screen and (min-width: 60rem) {
  .org-src-container {
    margin-left: 0;
    width: 100%;
  }
  pre {
    padding-left: 0;
    padding-right: 0;
  }
}
