@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Roboto:200,300,400,500,600,700,400italic,700italic);
@import url(https://fonts.googleapis.com/css?family=Heebo:200,300,400,500,600,700,800,900);
@import url("https://fonts.googleapis.com/css?family=Fira+Code:300,400,500,600,700,800,900");
@import url("https://fonts.googleapis.com/css?family=Playfair+Display");
@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700,400italic,700italic);
@import url(https://fonts.googleapis.com/css?family=Lekton:400,400italic,700);
@import url(https://fonts.googleapis.com/css?family=Roboto:200,300,400,500,600,700,400italic,700italic);
@import url(https://fonts.googleapis.com/css?family=Heebo:200,300,400,500,600,700,800,900);
@import url("https://fonts.googleapis.com/css?family=Fira+Code:300,400,500,600,700,800,900");
@import url("https://fonts.googleapis.com/css?family=Playfair+Display");
@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700,400italic,700italic);
@import url(https://fonts.googleapis.com/css?family=Lekton:400,400italic,700);
body {
  background-color: #ffffff;
}
body .masthead {
  background-color: rgb(242.25, 242.25, 242.25);
}
body {
  color: black;
}

@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-bold-webfont.woff2") format("woff2"), url("/font/mplus-1m-bold-webfont.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-light-webfont.woff2") format("woff2"), url("/font/mplus-1m-light-webfont.woff") format("woff");
  font-weight: 200;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-medium-webfont.woff2") format("woff2"), url("/font/mplus-1m-medium-webfont.woff") format("woff");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-regular-webfont.woff2") format("woff2"), url("/font/mplus-1m-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-thin-webfont.woff2") format("woff2"), url("/font/mplus-1m-thin-webfont.woff") format("woff");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-100Thin-webfont.woff") format("woff");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-100ThinItalic-webfont.woff") format("woff");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-200XLight-webfont.woff") format("woff");
  font-weight: 200;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-200XLightItalic-webfont.woff") format("woff");
  font-weight: 200;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-300Light-webfont.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-300LightItalic-webfont.woff") format("woff");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-400Italic-webfont.woff") format("woff");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-400Regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-500Medium-webfont.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-500MediumItalic-webfont.woff") format("woff");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-600SemiBold-webfont.woff") format("woff");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-600SemiBoldItalic-webfont.woff") format("woff");
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-700Bold-webfont.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-700BoldItalic-webfont.woff") format("woff");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-800Black-webfont.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-800BlackItalic-webfont.woff") format("woff");
  font-weight: 800;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-900XBlack-webfont.woff") format("woff");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-900XBlackItalic-webfont.woff") format("woff");
  font-weight: 900;
  font-style: italic;
}
@font-face {
  font-family: "FontAwesome";
  src: url("/font/fontawesome-webfont.eot");
  src: url("/font/fontawesome-webfont.eot?#iefix") format("embedded-opentype"), url("/font/fontawesome-webfont.woff") format("woff"), url("/font/fontawesome-webfont.ttf") format("truetype"), url("/font/fontawesome-webfont.svgz#FontAwesomeRegular") format("svg"), url("/font/fontawesome-webfont.svg#FontAwesomeRegular") format("svg");
  font-weight: normal;
  font-style: normal;
}
* {
  margin: 0;
  padding: 0;
}

.post, .share, .comments, .series-header, .series-body, .series-overview, .archive-header, .archive-body, .sheet .each-post,
.sheet #navigate-to-other-posts,
.sheet .colophon {
  margin-bottom: 2em;
}

.container {
  max-width: 1120px;
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

@media screen and (max-width: 1025px) {
  .container .masthead, .container .sheet {
    position: static;
    padding-left: 12px;
    padding-right: 12px;
  }
  .container .masthead {
    padding-top: 2rem;
    margin-bottom: 2em;
  }
  .container .masthead .profile-picture {
    text-align: center;
  }
}
@media screen and (min-width: 1025px) {
  .container .masthead {
    width: 30%;
    max-width: 336px;
    padding-left: 1em;
    padding-right: 1em;
    left: 0;
    position: fixed;
    z-index: 9999;
    height: 100%;
    overflow: auto;
  }
  .container .masthead > *:last-child {
    padding-bottom: 66px;
  }
  .container .sheet {
    width: 63%;
    max-width: 705.6px;
    position: absolute;
    right: 0;
    padding-left: 0;
    padding-right: 0.5em;
  }
  .container .masthead, .container .sheet {
    padding-top: 2rem;
  }
}

.center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-bold-webfont.woff2") format("woff2"), url("/font/mplus-1m-bold-webfont.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-light-webfont.woff2") format("woff2"), url("/font/mplus-1m-light-webfont.woff") format("woff");
  font-weight: 200;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-medium-webfont.woff2") format("woff2"), url("/font/mplus-1m-medium-webfont.woff") format("woff");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-regular-webfont.woff2") format("woff2"), url("/font/mplus-1m-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "M+ 1m";
  src: url("/font/mplus-1m-thin-webfont.woff2") format("woff2"), url("/font/mplus-1m-thin-webfont.woff") format("woff");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-100Thin-webfont.woff") format("woff");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-100ThinItalic-webfont.woff") format("woff");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-200XLight-webfont.woff") format("woff");
  font-weight: 200;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-200XLightItalic-webfont.woff") format("woff");
  font-weight: 200;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-300Light-webfont.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-300LightItalic-webfont.woff") format("woff");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-400Italic-webfont.woff") format("woff");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-400Regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-500Medium-webfont.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-500MediumItalic-webfont.woff") format("woff");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-600SemiBold-webfont.woff") format("woff");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-600SemiBoldItalic-webfont.woff") format("woff");
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-700Bold-webfont.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-700BoldItalic-webfont.woff") format("woff");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-800Black-webfont.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-800BlackItalic-webfont.woff") format("woff");
  font-weight: 800;
  font-style: italic;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-900XBlack-webfont.woff") format("woff");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Sinkin Sans";
  src: url("/font/SinkinSans-900XBlackItalic-webfont.woff") format("woff");
  font-weight: 900;
  font-style: italic;
}
@font-face {
  font-family: "FontAwesome";
  src: url("/font/fontawesome-webfont.eot");
  src: url("/font/fontawesome-webfont.eot?#iefix") format("embedded-opentype"), url("/font/fontawesome-webfont.woff") format("woff"), url("/font/fontawesome-webfont.ttf") format("truetype"), url("/font/fontawesome-webfont.svgz#FontAwesomeRegular") format("svg"), url("/font/fontawesome-webfont.svg#FontAwesomeRegular") format("svg");
  font-weight: normal;
  font-style: normal;
}
body {
  background-color: #ffffff;
}
body .masthead {
  background-color: rgb(242.25, 242.25, 242.25);
}
body {
  color: black;
}

@media screen and (max-width: 1025px) {
  body {
    font-size: 1.12rem;
  }
  body h1 {
    font-size: 180%;
  }
  body h2 {
    font-size: 140%;
  }
  body h3, body h4, body h5, body h6 {
    font-size: 120%;
  }
  body aside {
    font-size: 80%;
  }
  body p, body blockquote, body li {
    font-size: 1.12rem;
  }
  body title {
    font-size: 200%;
  }
  body .meta {
    font-size: 80%;
  }
  body article.post pre, article.post body pre,
  body article.post .test-table,
  article.post body .test-table,
  body article.post .user-displayed-message,
  article.post body .user-displayed-message, body article.post-summary pre, article.post-summary body pre,
  body article.post-summary .test-table,
  article.post-summary body .test-table,
  body article.post-summary .user-displayed-message,
  article.post-summary body .user-displayed-message {
    font-size: 80%;
    padding: 1.12rem;
  }
  body .test-table > table th, body .test-table > table td {
    padding: 0.224rem;
  }
  body article.post figure figcaption, article.post figure body figcaption, body article.post-summary figure figcaption, article.post-summary figure body figcaption {
    font-size: 80%;
  }
  body .pullquote-right::before {
    /* Reset metrics. */
    padding: 0;
    border: none;
    /* Content */
    content: attr(data-pullquote);
    /* Pull out to the right, modular scale based margins. */
    float: right;
    width: 40%;
    margin: 0 0 2rem 2rem;
    padding: 0.5em;
    /* Baseline correction */
    position: relative;
    top: 0;
    /* Typography */
    font-family: "Playfair Display", "Source Sans Pro", "Helvetica", sans-serif;
    font-size: 110%;
    line-height: 1.3;
    background-color: rgb(242.9553072626, 190.0446927374, 196.4972067039);
  }
}
@media screen and (min-width: 1025px) {
  body {
    font-size: 1.4rem;
  }
  body h1 {
    font-size: 180%;
  }
  body h2 {
    font-size: 140%;
  }
  body h3, body h4, body h5, body h6 {
    font-size: 120%;
  }
  body aside {
    font-size: 80%;
  }
  body p, body blockquote, body li {
    font-size: 1.4rem;
  }
  body title {
    font-size: 200%;
  }
  body .meta {
    font-size: 80%;
  }
  body article.post pre, article.post body pre,
  body article.post .test-table,
  article.post body .test-table,
  body article.post .user-displayed-message,
  article.post body .user-displayed-message, body article.post-summary pre, article.post-summary body pre,
  body article.post-summary .test-table,
  article.post-summary body .test-table,
  body article.post-summary .user-displayed-message,
  article.post-summary body .user-displayed-message {
    font-size: 80%;
    padding: 1.4rem;
  }
  body .test-table > table th, body .test-table > table td {
    padding: 0.28rem;
  }
  body article.post figure figcaption, article.post figure body figcaption, body article.post-summary figure figcaption, article.post-summary figure body figcaption {
    font-size: 80%;
  }
  body .pullquote-right::before {
    /* Reset metrics. */
    padding: 0;
    border: none;
    /* Content */
    content: attr(data-pullquote);
    /* Pull out to the right, modular scale based margins. */
    float: right;
    width: 40%;
    margin: 0 0 2rem 2rem;
    padding: 0.5em;
    /* Baseline correction */
    position: relative;
    top: 0;
    /* Typography */
    font-family: "Playfair Display", "Source Sans Pro", "Helvetica", sans-serif;
    font-size: 110%;
    line-height: 1.3;
    background-color: rgb(242.9553072626, 190.0446927374, 196.4972067039);
  }
}
body {
  font-family: "Heebo", "Roboto", "Helvetica", sans-serif;
  font-weight: 300;
  color: black;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Playfair Display", "Source Sans Pro", "Helvetica", sans-serif;
}

pre, code {
  font-family: "Fira Code", "M+ 1m", "Lekton", "Monaco", monospace;
  font-weight: 400;
}

a {
  text-decoration: none;
  color: #e36877;
}

sub, sup, code {
  line-height: 0;
}

article.post blockquote > :nth-child(1):before, article.post-summary blockquote > :nth-child(1):before {
  content: "“";
  font-family: "Times New Roman", serif;
  color: #cccccc;
  line-height: 0;
  font-size: 4em;
  vertical-align: -0.4em;
}

.mid-col-container #content {
  margin-top: 1em;
}

ul.post-list {
  list-style-type: none;
}
ul.post-list li {
  margin-top: 0.672rem;
}

.masthead .profile-picture {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.masthead .profile-picture img {
  width: 50%;
  max-width: 160px;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
}
.masthead .blog-title {
  margin-top: 0.5em;
  word-spacing: -0.1em;
  text-transform: uppercase;
}
.masthead .blog-title .alternating-items *:nth-child(even) {
  font-weight: bold;
}
.masthead .blog-title .alternating-items *:nth-child(odd) {
  font-weight: normal;
}
.masthead .blog-subtitle {
  margin-top: 0.5em;
}
.masthead .blog-title, .masthead .blog-subtitle {
  font-family: "Source Sans Pro", "Helvetica", sans-serif;
  line-height: 1;
}
.masthead #main-nav {
  margin-top: 1em;
}
.masthead .main-navigation, .masthead .contact-and-social {
  list-style-type: none;
}
.masthead .main-navigation li, .masthead .contact-and-social li {
  font-weight: 400;
}
.masthead #sub-nav {
  margin-top: 1em;
  padding-bottom: 2rem;
}

.sheet .headline .wbitdd-link {
  background-color: #e36877;
  color: white !important;
  padding: 0.3rem 1.5rem 0.3rem 1.5rem;
  border-radius: 1rem;
}
.sheet .headline .wbitdd-link:hover {
  background-color: white;
  color: #e36877 !important;
}

.sheet {
  padding-top: 0;
}
.sheet .headline {
  padding: 0;
  text-align: center;
}
.post-collection .each-post .continue-reading {
  margin-top: 0.5em;
}

article.post-summary:first-child {
  margin-top: 0;
}
article.post-summary a {
  color: #e36877;
  text-decoration: none;
}
article.post-summary a:hover {
  text-decoration: underline;
}
article.post-summary a:visited {
  color: rgb(193.1787709497, 35.8212290503, 55.0111731844);
}
article.post-summary .highlight a {
  color: rgb(193.1787709497, 35.8212290503, 55.0111731844);
}
article.post-summary .highlight a:visited {
  color: rgb(107.1340782123, 19.8659217877, 30.5083798883);
}
article.post-summary .translation {
  font-style: italic;
}
article.post-summary .centered-text-flow-around, article.post-summary .body-text-block {
  display: block;
  text-align: center;
  margin: auto;
  margin-top: 1em;
  margin-bottom: 1em;
}
article.post-summary .embedded-video-container {
  position: relative;
  height: 0;
  padding-bottom: 65%;
}
article.post-summary .embedded-video-container .embedded-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
article.post-summary .body-text-block {
  max-width: 90%;
  width: 600px;
}
article.post-summary .highlight,
article.post-summary .instruction,
article.post-summary .guideline {
  background-color: rgb(242.9553072626, 190.0446927374, 196.4972067039);
  padding: 1em;
}
article.post-summary .highlight *:first-child,
article.post-summary .instruction *:first-child,
article.post-summary .guideline *:first-child {
  margin-top: 0;
}
article.post-summary .bogus-wrapper figure.code, .bogus-wrapper article.post-summary figure.code, article.post-summary article.post pre, article.post article.post-summary pre, article.post-summary pre,
article.post-summary .test-table,
article.post-summary .user-displayed-message {
  background-color: rgb(250.9329608939, 233.0670391061, 235.2458100559);
  overflow: auto;
}
@media screen and (min-width: 1268.96px) {
  article.post-summary .bogus-wrapper figure.code, .bogus-wrapper article.post-summary figure.code, article.post-summary article.post pre, article.post article.post-summary pre, article.post-summary pre,
  article.post-summary .test-table,
  article.post-summary .user-displayed-message {
    max-width: 1232px;
  }
}
@media screen and (min-width: 1326.64px) {
  article.post-summary .bogus-wrapper figure.code, .bogus-wrapper article.post-summary figure.code, article.post-summary article.post pre, article.post article.post-summary pre, article.post-summary pre,
  article.post-summary .test-table,
  article.post-summary .user-displayed-message {
    max-width: 1288px;
  }
}
@media screen and (min-width: 1442px) {
  article.post-summary .bogus-wrapper figure.code, .bogus-wrapper article.post-summary figure.code, article.post-summary article.post pre, article.post article.post-summary pre, article.post-summary pre,
  article.post-summary .test-table,
  article.post-summary .user-displayed-message {
    max-width: 1400px;
  }
}
@media screen and (min-width: 1730.4px) {
  article.post-summary .bogus-wrapper figure.code, .bogus-wrapper article.post-summary figure.code, article.post-summary article.post pre, article.post article.post-summary pre, article.post-summary pre,
  article.post-summary .test-table,
  article.post-summary .user-displayed-message {
    max-width: 1680px;
  }
}
@media screen and (min-width: 2307.2px) {
  article.post-summary .bogus-wrapper figure.code, .bogus-wrapper article.post-summary figure.code, article.post-summary article.post pre, article.post article.post-summary pre, article.post-summary pre,
  article.post-summary .test-table,
  article.post-summary .user-displayed-message {
    max-width: 2240px;
  }
}
article.post-summary h1,
article.post-summary h2,
article.post-summary h3,
article.post-summary h4,
article.post-summary h5,
article.post-summary h6 {
  margin-top: 3rem;
}
article.post-summary p,
article.post-summary aside,
article.post-summary blockquote,
article.post-summary ol,
article.post-summary ul,
article.post-summary details,
article.post-summary pre,
article.post-summary .test-table,
article.post-summary figure,
article.post-summary .footnotes,
article.post-summary .space-above-paragraph {
  margin-top: 1.12rem;
}
article.post-summary p,
article.post-summary aside,
article.post-summary blockquote,
article.post-summary ol,
article.post-summary ul,
article.post-summary details,
article.post-summary pre,
article.post-summary .footnotes {
  line-height: 1.8;
}
article.post-summary h2 + p,
article.post-summary h3 + p,
article.post-summary h4 + p,
article.post-summary h5 + p,
article.post-summary h6 + p {
  margin-top: 0.56rem;
}
article.post-summary .title {
  line-height: 1;
}
article.post-summary .meta {
  margin-top: 1.12rem;
}
article.post-summary .meta * {
  display: block;
}
article.post-summary ul,
article.post-summary ol {
  list-style-position: initial;
}
@media screen and (max-width: 1025px) {
  article.post-summary ul,
  article.post-summary ol {
    margin-left: 1.2rem;
  }
}
@media screen and (min-width: 1025px) {
  article.post-summary ul,
  article.post-summary ol {
    margin-left: 3rem;
  }
}
article.post-summary ul li,
article.post-summary ol li {
  margin-top: 0.56rem;
}
article.post-summary ul li:first-child,
article.post-summary ol li:first-child {
  margin-top: 0;
}
article.post-summary ul ul,
article.post-summary ul ol,
article.post-summary ol ul,
article.post-summary ol ol {
  margin-top: 0 !important;
}
article.post-summary ul ul > li,
article.post-summary ul ol > li,
article.post-summary ol ul > li,
article.post-summary ol ol > li {
  margin-top: 0.56rem !important;
}
article.post-summary article.post figure figcaption, article.post figure article.post-summary figcaption, article.post-summary div.sourceCode::after, article.post-summary figure figcaption {
  text-align: center;
  margin-left: 10%;
  margin-right: 10%;
}
article.post-summary figure {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
article.post-summary figure img {
  text-align: center;
  max-width: 100%;
}
article.post-summary figure.half-width, article.post-summary .interstitial-visual-element {
  max-width: 400px;
  width: 50%;
}
article.post-summary figure.smaller {
  max-width: 200px;
  width: 25%;
}
article.post-summary .interstitial-visual-element {
  margin-top: 1em;
  margin-bottom: 1em;
}
article.post-summary img.paragraph-eyecatcher {
  float: right;
  width: 30%;
  margin-left: 1ex;
  margin-bottom: 1ex;
}
article.post-summary article.post aside, article.post article.post-summary aside, article.post-summary article.post blockquote, article.post article.post-summary blockquote, article.post-summary aside,
article.post-summary .aside,
article.post-summary .explanation, article.post-summary blockquote {
  color: rgb(76.5, 76.5, 76.5);
  border-left: 4px solid #e36877;
  padding-left: 0.8em;
  padding-right: 0.8em;
}
@media screen and (max-width: 1025px) {
  article.post-summary article.post aside, article.post article.post-summary aside, article.post-summary article.post blockquote, article.post article.post-summary blockquote, article.post-summary aside,
  article.post-summary .aside,
  article.post-summary .explanation, article.post-summary blockquote {
    margin-left: 1.2rem;
  }
}
@media screen and (min-width: 1025px) {
  article.post-summary article.post aside, article.post article.post-summary aside, article.post-summary article.post blockquote, article.post article.post-summary blockquote, article.post-summary aside,
  article.post-summary .aside,
  article.post-summary .explanation, article.post-summary blockquote {
    margin-left: 3rem;
  }
}
article.post-summary aside > :last-child,
article.post-summary .aside > :last-child,
article.post-summary .explanation > :last-child, article.post-summary blockquote > :last-child {
  margin-bottom: inherit !important;
}
article.post-summary .explanation {
  background-color: white;
}
article.post-summary .test-table > table {
  border-collapse: collapse;
}
article.post-summary .test-table > table th,
article.post-summary .test-table > table td {
  border: 1px solid;
}
article.post-summary {
  /* HACK I don't know why I need this in order footnote text to appear on the same line as the footnote number, even though I don't need to do this on blog.jbrains.ca. Weird. */
}
article.post-summary .footnotes p {
  display: inline;
}
article.post-summary div.sourceCode::after {
  content: attr(caption);
  padding: 0;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
article.post-summary .emphasized-paragraph {
  background-color: rgb(242.9553072626, 190.0446927374, 196.4972067039);
  font-size: 125%;
  margin: 1em;
  padding: 1em !important;
}
article.post-summary details.tldr {
  background-color: #eeeeee;
  padding: 1em;
  margin: 1rem;
}
article.post-summary details.tldr summary {
  font-weight: bold;
}
article.post-summary details.tldr section.details {
  font-size: 80%;
}
article.post-summary details.external-excerpt {
  border: 1px solid;
  background-color: lavender;
  padding: 0.5em;
}
article.post-summary details.external-excerpt summary {
  font-weight: bold;
}
article.post-summary details.external-excerpt section.details-content {
  margin-top: 1em;
}
article.post-summary details.external-excerpt section.details-content * {
  margin: 0;
  padding: 0;
}
article.post-summary details.external-excerpt section.details-content {
  display: flex;
  flex-flow: column nowrap;
  gap: 1em;
}
article.post-summary details.external-excerpt section.details-content blockquote {
  margin-left: 10%;
  padding-left: 0.5em;
}
article.post-summary details.external-excerpt section.details-content pre {
  padding: 0.5em;
  overflow-x: scroll;
}
article.post-summary details.external-excerpt section.details-content .note {
  font-size: 80%;
  font-style: italic;
}
article.post-summary .footnotes, article.post-summary .footnoteRef {
  display: none;
}

.series-heading {
  margin-top: 2.24rem;
}

.comments .title {
  color: #e36877;
}

article.post a {
  color: #e36877;
  text-decoration: none;
}
article.post a:hover {
  text-decoration: underline;
}
article.post a:visited {
  color: rgb(193.1787709497, 35.8212290503, 55.0111731844);
}
article.post .highlight a {
  color: rgb(193.1787709497, 35.8212290503, 55.0111731844);
}
article.post .highlight a:visited {
  color: rgb(107.1340782123, 19.8659217877, 30.5083798883);
}
article.post .translation {
  font-style: italic;
}
article.post .centered-text-flow-around, article.post .body-text-block {
  display: block;
  text-align: center;
  margin: auto;
  margin-top: 1em;
  margin-bottom: 1em;
}
article.post .embedded-video-container {
  position: relative;
  height: 0;
  padding-bottom: 65%;
}
article.post .embedded-video-container .embedded-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
article.post .body-text-block {
  max-width: 90%;
  width: 600px;
}
article.post .highlight,
article.post .instruction,
article.post .guideline {
  background-color: rgb(242.9553072626, 190.0446927374, 196.4972067039);
  padding: 1em;
}
article.post .highlight *:first-child,
article.post .instruction *:first-child,
article.post .guideline *:first-child {
  margin-top: 0;
}
article.post .bogus-wrapper figure.code, .bogus-wrapper article.post figure.code, article.post pre,
article.post .test-table,
article.post .user-displayed-message, article.post article.post-summary pre, article.post-summary article.post pre {
  background-color: rgb(250.9329608939, 233.0670391061, 235.2458100559);
  overflow: auto;
}
@media screen and (min-width: 1268.96px) {
  article.post .bogus-wrapper figure.code, .bogus-wrapper article.post figure.code, article.post pre,
  article.post .test-table,
  article.post .user-displayed-message, article.post article.post-summary pre, article.post-summary article.post pre {
    max-width: 1232px;
  }
}
@media screen and (min-width: 1326.64px) {
  article.post .bogus-wrapper figure.code, .bogus-wrapper article.post figure.code, article.post pre,
  article.post .test-table,
  article.post .user-displayed-message, article.post article.post-summary pre, article.post-summary article.post pre {
    max-width: 1288px;
  }
}
@media screen and (min-width: 1442px) {
  article.post .bogus-wrapper figure.code, .bogus-wrapper article.post figure.code, article.post pre,
  article.post .test-table,
  article.post .user-displayed-message, article.post article.post-summary pre, article.post-summary article.post pre {
    max-width: 1400px;
  }
}
@media screen and (min-width: 1730.4px) {
  article.post .bogus-wrapper figure.code, .bogus-wrapper article.post figure.code, article.post pre,
  article.post .test-table,
  article.post .user-displayed-message, article.post article.post-summary pre, article.post-summary article.post pre {
    max-width: 1680px;
  }
}
@media screen and (min-width: 2307.2px) {
  article.post .bogus-wrapper figure.code, .bogus-wrapper article.post figure.code, article.post pre,
  article.post .test-table,
  article.post .user-displayed-message, article.post article.post-summary pre, article.post-summary article.post pre {
    max-width: 2240px;
  }
}
article.post h1,
article.post h2,
article.post h3,
article.post h4,
article.post h5,
article.post h6 {
  margin-top: 3rem;
}
article.post p,
article.post aside,
article.post blockquote,
article.post ol,
article.post ul,
article.post details,
article.post pre,
article.post .test-table,
article.post figure,
article.post .footnotes,
article.post .space-above-paragraph {
  margin-top: 1.12rem;
}
article.post p,
article.post aside,
article.post blockquote,
article.post ol,
article.post ul,
article.post details,
article.post pre,
article.post .footnotes {
  line-height: 1.8;
}
article.post h2 + p,
article.post h3 + p,
article.post h4 + p,
article.post h5 + p,
article.post h6 + p {
  margin-top: 0.56rem;
}
article.post .title {
  line-height: 1;
}
article.post .meta {
  margin-top: 1.12rem;
}
article.post .meta * {
  display: block;
}
article.post ul,
article.post ol {
  list-style-position: initial;
}
@media screen and (max-width: 1025px) {
  article.post ul,
  article.post ol {
    margin-left: 1.2rem;
  }
}
@media screen and (min-width: 1025px) {
  article.post ul,
  article.post ol {
    margin-left: 3rem;
  }
}
article.post ul li,
article.post ol li {
  margin-top: 0.56rem;
}
article.post ul li:first-child,
article.post ol li:first-child {
  margin-top: 0;
}
article.post ul ul,
article.post ul ol,
article.post ol ul,
article.post ol ol {
  margin-top: 0 !important;
}
article.post ul ul > li,
article.post ul ol > li,
article.post ol ul > li,
article.post ol ol > li {
  margin-top: 0.56rem !important;
}
article.post div.sourceCode::after, article.post figure figcaption, article.post article.post-summary figure figcaption, article.post-summary figure article.post figcaption {
  text-align: center;
  margin-left: 10%;
  margin-right: 10%;
}
article.post figure {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
article.post figure img {
  text-align: center;
  max-width: 100%;
}
article.post figure.half-width, article.post .interstitial-visual-element {
  max-width: 400px;
  width: 50%;
}
article.post figure.smaller {
  max-width: 200px;
  width: 25%;
}
article.post .interstitial-visual-element {
  margin-top: 1em;
  margin-bottom: 1em;
}
article.post img.paragraph-eyecatcher {
  float: right;
  width: 30%;
  margin-left: 1ex;
  margin-bottom: 1ex;
}
article.post aside,
article.post .aside,
article.post .explanation, article.post blockquote, article.post article.post-summary blockquote, article.post-summary article.post blockquote, article.post article.post-summary aside, article.post-summary article.post aside {
  color: rgb(76.5, 76.5, 76.5);
  border-left: 4px solid #e36877;
  padding-left: 0.8em;
  padding-right: 0.8em;
}
@media screen and (max-width: 1025px) {
  article.post aside,
  article.post .aside,
  article.post .explanation, article.post blockquote, article.post article.post-summary blockquote, article.post-summary article.post blockquote, article.post article.post-summary aside, article.post-summary article.post aside {
    margin-left: 1.2rem;
  }
}
@media screen and (min-width: 1025px) {
  article.post aside,
  article.post .aside,
  article.post .explanation, article.post blockquote, article.post article.post-summary blockquote, article.post-summary article.post blockquote, article.post article.post-summary aside, article.post-summary article.post aside {
    margin-left: 3rem;
  }
}
article.post aside > :last-child,
article.post .aside > :last-child,
article.post .explanation > :last-child, article.post blockquote > :last-child {
  margin-bottom: inherit !important;
}
article.post .explanation {
  background-color: white;
}
article.post .test-table > table {
  border-collapse: collapse;
}
article.post .test-table > table th,
article.post .test-table > table td {
  border: 1px solid;
}
article.post {
  /* HACK I don't know why I need this in order footnote text to appear on the same line as the footnote number, even though I don't need to do this on blog.jbrains.ca. Weird. */
}
article.post .footnotes p {
  display: inline;
}
article.post div.sourceCode::after {
  content: attr(caption);
  padding: 0;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
article.post .emphasized-paragraph {
  background-color: rgb(242.9553072626, 190.0446927374, 196.4972067039);
  font-size: 125%;
  margin: 1em;
  padding: 1em !important;
}
article.post details.tldr {
  background-color: #eeeeee;
  padding: 1em;
  margin: 1rem;
}
article.post details.tldr summary {
  font-weight: bold;
}
article.post details.tldr section.details {
  font-size: 80%;
}
article.post details.external-excerpt {
  border: 1px solid;
  background-color: lavender;
  padding: 0.5em;
}
article.post details.external-excerpt summary {
  font-weight: bold;
}
article.post details.external-excerpt section.details-content {
  margin-top: 1em;
}
article.post details.external-excerpt section.details-content * {
  margin: 0;
  padding: 0;
}
article.post details.external-excerpt section.details-content {
  display: flex;
  flex-flow: column nowrap;
  gap: 1em;
}
article.post details.external-excerpt section.details-content blockquote {
  margin-left: 10%;
  padding-left: 0.5em;
}
article.post details.external-excerpt section.details-content pre {
  padding: 0.5em;
  overflow-x: scroll;
}
article.post details.external-excerpt section.details-content .note {
  font-size: 80%;
  font-style: italic;
}

#discourse-embed-frame {
  min-height: 600px;
}

.bogus-wrapper figure.code .highlight {
  padding: 0 !important;
  background-color: transparent !important;
}
.bogus-wrapper figure.code .highlight table {
  border-collapse: collapse;
}
.bogus-wrapper figure.code .highlight table td.code pre {
  padding: 0;
}
.bogus-wrapper figure.code * {
  text-align: left;
}

/*# sourceMappingURL=screen.css.map */