/* fonts */
@import url("https://fonts.googleapis.com/css2?family=Fira+Mono&display=swap");
/* main styles */

:root {
    --background: #ffffff;
    --accent: rgb(48, 155, 255);
    --lighter-accent: rgb(99, 180, 255);
}

body {
  padding: 16px;
  background: var(--background);
  font-family: sans-serif;
  max-width: 550px;
  margin: auto;
  color: #3a3a3a;
  font-size: 17px;
  line-height: 1.5;
  box-sizing: content-box;
  position: relative;
}

body:not(.blog-post) {
    padding-bottom: 60px;
}

h1,
h2,
h3,
h4 {
  line-height: 1.1;
}

a,
a:visited {
  color: var(--accent);
}

.page-date {
  padding: 0px;
  margin: 0px;
  font-size: 1rem;
  font-weight: normal;
}

.list-link {
  display: inline-block;
  max-width: 55vw;
}

.list-date {
  font-feature-settings: "tnum";
  vertical-align: top;
  -webkit-font-feature-settings: "tnum";
  -moz-font-feature-settings: "tnum";
}

h2.page-title a {
  color: inherit;
  text-decoration: none;
  /* font-family: "Fira Mono", menlo, monospace; */
  font-weight: bold;
}

@media (min-width: 768px) {
}

h2.page-title {
  /* font-size: 2.625rem; */
  font-size: 1.25rem;
  margin-top: 1.25rem;
}

h1 {
  font-size: 1.2rem;
}

h2
{
  font-size: 1.1rem;
}

h3 {
  font-size: 1.1rem;
  font-weight: normal;
  text-decoration: underline;
}

h4 {
    font-size: 0.8rem;
    font-weight: normal;
    text-transform: uppercase;
}

h1,
h2,
h3,
h4 {
  margin-bottom: 0px;
  padding-bottom: 0px;
  margin-top: 1.75rem;
}

iframe {
  width: 31.25rem;
  height: 31.25rem;
}

.title {
  font-weight: bold;
  margin-bottom: 7px;
  font-family: "Fira Mono", menlo, monospace;
  font-size: 1.2rem;
}

p {
  margin-bottom: 0px;
  margin-top: 1rem;
}

p.comment {
  color: var(--accent);
}

ul ul {
  margin-top: 0px;
}

ul {
  margin-top: 0.6rem;
}

html nav {
  padding-bottom:2px;
  padding-top: 8px;
  font-size: 1rem;
}

html nav a {
    margin: 0 1.5rem 0 0;
    font-family: "Iosevka", "Fira Mono", "menlo", monospace;
    font-weight: normal;
    border: none;
    border-bottom: 3px solid transparent;
    border-radius: 0px;
    line-height: 1.75rem;
    text-decoration: none;
    display: inline-block;
    padding-bottom: 1px;
}

@media screen and (max-width: 500px) {
  html nav a {
    line-height: 2.1rem;
  }
}

@media screen and (min-width: 700px) {
  img.agreeability {
    margin-top: 20px;
    position: relative;
    left: -17%;
  }
}

html nav a, html nav a:visited {
  color: #3a3a3a;
}

html nav a:hover {
  color: white;
  /* border-bottom: 3px solid $select-border-color; */
}

html nav a.current-page-link.hovering-sibling {
  color: inherit;
}

.return a {
  padding-top: 0.625rem;
  display: inline-block;
  text-decoration: none;
  color: #3a3a3a;
}

.return a:hover {
    border-bottom: 4px solid var(--accent);
}

hr {
  margin-top: 1rem;
  border-bottom: 0.5px solid black;
  margin-bottom: 1.25rem;
}

code {
  font-size: 0.95rem;
  padding-left: 1px;
  padding-right: 1px;
  color: #ff57da;
  font-family: "Iosevka", "Fira Mono", "menlo", monospace;
}

pre span {
  color: var(--accent);
  font-size: 0.875rem !important;
  font-family: "Iosevka", "Fira Mono", "menlo", monospace;
}

pre {
  overflow-x: scroll;
  border: 1px solid #bbb;
  padding: 5px 10px;
  padding-bottom: 7px;
  background: white;
  tab-size: 4;
}

pre.language-ruby {
    tab-size: 2;
}

#on-the-run {
  background: #eee;
  border-radius: 6px;
}

@media screen and (min-width: 600px) {
  #hedgehog {
    float: right;
    width: 260px;
    position: relative;
    left: -80px;
  }
}


.storyboard {
  margin-top: 1rem;
}

.storyboard img {
  width: 12.5rem;
}

.section ul {
  list-style-type: none;
  padding-left: 0px;

}

.section ul li {
    margin-bottom: 0.25rem;
}


.blog-post li {
    padding-top: 5px;
    padding-bottom: 5px;
}

.blog-post li:last-child {
    padding-bottom: 0px;
}

.blog-post .no-padding {
    padding: 0px;
    margin: 0px;
}

.blog-post .no-padding li {
    padding: 0px;
}


.controls label, .controls button {
    margin-right: 1.25rem;
    display: block;
}
.controls input.slider {
    position: relative;
    top: 0.44rem;
    padding-left: 5px;
}

i,
em {
  padding-right: 3px;
}

button {
  padding: 0.25rem 0.625rem;
}

.footnote-definition {
  display: inline;
}

.picture-of-birch img {
  border: 1px solid black;
}

.picture-of-birch.three img {
  width: 400px;
  display: inline-block;
}

.picture-of-birch.four img {
  width: 300px;
  display: inline-block;
}
.picture-of-birch.five img {
  width: 375px;
  display: inline-block;
}

.picture-of-birch {
  width: 100%;
  text-align: center;
}

blockquote {
  border-left: 4px solid rgb(218, 218, 218);
  padding-left: 10px;
  margin-left:20px;
}

ul br {
  display: block;
  margin-top: 0.8rem;
}

div.indent {
  margin-left: 42px;
}

.blob {
  position: absolute;
  /* top: -1000px; */
  /* left: -1000px; */
  visibility: hidden;
  width: 200px;
  height: 200px;
  z-index: -1;
  /* border: 3px solid black; */
  /* background-color: $select-border-color; */
}

.astrices {
  margin-top: 1.75rem;
  font-weight: bold;
  text-align: center;
  font-size: 1.3rem;
}

.caption {
  font-style: italic;
  text-align: center;
}

form {
    margin-top: 0.9rem;
}

form input[type='email'] {
    border: 1.5px solid #444;
    border-top-color: #aaa;
    border-left-color: #aaa;
    border-right-color: #666;
    outline:none;
    border-radius:4px;
    padding: 4px 6px;
    width: 150px;
}

form input[type='email']:focus {
    border-color: var(--accent);
}

form button[type='submit'] {
    border: 1.5px solid #444;
    border-top-color: #aaa;
    border-left-color: #aaa;
    border-right-color: #666;
    outline:none;
    border-radius:4px;
    padding: 4px 8px;
    font-weight: 500;
    cursor: pointer;
    background: #eee;
    color: #3a3a3a;
}

form button[type='submit']:hover {
    background: #eee;
}

form button[type='submit']:active {
    background: var(--lighter-accent);
    border-color: #444;
}

.blog-post img, .blog-post video, .vimeo-player {
  margin: 10px 0px;
  max-width: 100%;
}

.vimeo-player {
    margin-bottom: 32px;
}


.blog-post img.bordered {
  border: 2px solid #aaa;
  box-shadow: 5px 5px 5px #eee;
}

.blog-post img.wide {
  width: 100vw;
  max-width: 600px;
}

.footnote-definition {
  display: inline-block;
}

.footnote-definition p {
  display: inline;
}

.footnote-definition sup {
  /* font-weight: bold; */
  color: var(--accent);
  text-decoration: underline;
  cursor: pointer;
}

.footnote-definition:target {
  animation-name: fade-background;
  animation-duration: 1s;
}

@keyframes fade-background {
  from {background-color: #ffffc9;}
  to {background-color: transparent;}
}


@media screen and (max-width: 1000px) {
    .table-of-contents {
        display: none;
    }
}

@media print {
    .table-of-contents {
        display: none;
    }
}

.table-of-contents {
    position: fixed;
    top: 50vh;
    transform: translateY(calc(-50% - 30px));
    left: calc(30vw - 300px);
    /* left: 0px; */
    list-style-type: none;
    font-size:14px;
}

.table-of-contents li.active > a {
    color: black !important;
}

.table-of-contents li li {
    margin-left: -6px;
}

/* h2 + ul , h3 + ul { */
/*   padding-left:18px; */
/* } */

ul, ol {
  padding-left:20px;
}
