/* spaces: 2 */

/*
curl -s "https://fonts.googleapis.com/css?family=Signika+Negative:300,400,600&subset=latin,latin-ext" | tee fonts.css | grep -Eo "(http|https)://[a-zA-Z0-9./?=_-]*" | xargs wget -q

put ttfs in css/webfont, then take the resulting fonts.css, drop it here, and fixup the paths...
*/

@font-face {
  font-family: 'Signika Negative';
  font-style: normal;
  font-weight: 300;
  src: local('Signika Negative Light'), local('SignikaNegative-Light'), url(webfont/E217_cfngu7HiRpPX3ZpNE4kY5zKal6DupjJ7w.ttf) format('truetype');
}
@font-face {
  font-family: 'Signika Negative';
  font-style: normal;
  font-weight: 400;
  src: local('Signika Negative Regular'), local('SignikaNegative-Regular'), url(webfont//E218_cfngu7HiRpPX3ZpNE4kY5zKYvuhqg.ttf) format('truetype');
}
@font-face {
  font-family: 'Signika Negative';
  font-style: normal;
  font-weight: 600;
  src: local('Signika Negative SemiBold'), local('SignikaNegative-SemiBold'), url(webfont/E217_cfngu7HiRpPX3ZpNE4kY5zKaiqFupjJ7w.ttf) format('truetype');
}

/* Based on HTML5 ✰ Boilerplate */

/*
  html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
  v1.4 2009-07-27 | Authors: Eric Meyer & Richard Clark
  html5doctor.com/html-5-reset-stylesheet/
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display:block;
}

blockquote, q { quotes:none; }

blockquote:before, blockquote:after, q:before, q:after {
  content:'';
  content:none;
}

a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }

ins { background-color:#ff9; color:#000; text-decoration:none; }

mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }

/* tables still need cellspacing="0" in the markup */
table { border-collapse:collapse; border-spacing:0; }

input, select { vertical-align:middle; }

/* END RESET CSS */

/* fonts.css from the YUI Library: developer.yahoo.com/yui/
   Refer to developer.yahoo.com/yui/3/cssfonts/ for font sizing percentages

  There are three custom edits:
   * remove arial, helvetica from explicit font stack
   * we normalize monospace styles ourselves
   * table font-size is reset in the HTML5 reset above so there is no need to repeat
*/
body { font:14px/1.231 sans-serif; *font-size:small; } /* hack retained to preserve specificity */

select, input, textarea, button { font:99% sans-serif; }

/* always force a scrollbar in non-IE */
html { overflow-y: scroll; }

/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: none; }

a, a:active, a:visited { color: #506880; }
a:hover { text-decoration: none; }

ul, ol { margin-left: 1.8em; }
ol { list-style-type: decimal; }

small { font-size: 85%; }
strong, th { font-weight: bold; }

td, td img { vertical-align: top; }

/*sub { vertical-align: sub; font-size: smaller; }*/
/*sup { vertical-align: super; font-size: smaller; }*/
sub {
  vertical-align: bottom;
  position: relative;
  top: 0.5em;
  font-size: smaller;
}
sup {
  vertical-align: top;
  position: relative;
  top: -0.5em;
  font-size: smaller;
}

/* Some form shit */

textarea { overflow: auto; } /* thnx ivannikolic! www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/ */

/* align checkboxes, radios, text inputs with their label
   by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }

/* hand cursor on clickable input elements */
label, input[type=button], input[type=submit], button { cursor: pointer; }

/* webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea { margin: 0; }

/* colors for form validity */
input:valid, textarea:valid   {  }
input:invalid, textarea:invalid {
      border-radius: 1px;
    -moz-box-shadow: 0px 0px 5px red;
 -webkit-box-shadow: 0px 0px 5px red;
         box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid { background-color: #f0dddd; }

/*
 * Non-semantic helper classes
 */

/* Hide for both screenreaders and browsers
   css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden { display: none; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders
   www.webaim.org/techniques/css/invisiblecontent/  &  j.mp/visuallyhidden  */
.visuallyhidden { position: absolute !important;
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px); }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* >> The Magnificent CLEARFIX: Updated to prevent margin-collapsing on child elements << j.mp/bestclearfix */
.clearfix:before, .clearfix:after {
  content: "\0020"; display: block; height: 0; visibility: hidden;
}

.clearfix:after { clear: both; }
/* Fix clearfix: blueprintcss.lighthouseapp.com/projects/15318/tickets/5-extra-margin-padding-bottom-of-page */
.clearfix { zoom: 1; }

body {
  background-color: white;
}

table {
  border-width: 1px;
  border-color: #666666;
  border-collapse: collapse;
}
table th {
  border-width: 1px;
  padding: 8px;
  border-style: solid;
  border-color: #666666;
  font-weight: bold;
  background-color: transparent;
}
table td {
  border-width: 1px;
  padding: 8px;
  border-style: solid;
  border-color: #666666;
  background-color: transparent;
}

.gist td {
  border-style: none;
}

 /* Layout, Colors
 */

/* apply a natural box layout model to all elements */
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

header.primary-header, section, article, footer {
  max-width: 650px;
  width: 70%;
  margin: auto auto auto auto;
}

article header, section header {
  width: 100%;
}

section header, article header {
  margin-top: 20px;
  margin-bottom: 0;
}

header.primary-header {
  margin-top: 55px;
  margin-bottom: 30px;
}
header.primary-header h1 {
  border: 0;
  margin: 0;
}
header.primary-header h1 a,
header.primary-header h1 a:active,
header.primary-header h1 a:visited {
  color: #333;
  text-decoration: none;
  border: 0;
}
header.primary-header h1 a:hover {
  color: #333;
  text-decoration: none;
  border-bottom: 2px solid #333;
}

header.primary-header nav {
  margin: 10px 0;
  line-height: 2em;
}
  header.primary-header nav ul {
    display: block;
    width: 100%;
    margin: 0;
    list-style: none;
  }
    header.primary-header nav ul li {
      display: inline;
      font-size: 1.4em;
      font-weight: 300;
      margin: 0;
      padding: 0;
    }
  header.primary-header nav ul li:after {
    content: "•";
    margin-left: 10px;
    margin-right: 7px;
  }
  header.primary-header nav ul li:last-child:after {
    content: "";
    margin-left: 0;
    margin-right: 0;
  }

section, article {
  margin-bottom: 50px;
}

ul.blog-list {
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 1.5em;
}
ul.blog-list li {
  margin: 0 -12px 16px -12px;
  padding: 4px 12px 4px 12px;
}
ul.blog-list li:hover {
  background-color: #fbfbfb;
}
ul.blog-list .timestamp {
  font-weight: 400;
  text-transform: uppercase;
  font-size: .8em;
  display: inline-block;
}
ul.blog-list .post-title {
  font-size: 1.1em;
  display: inline-block;
}
ul.blog-list .post-info {
  font-size: .8em;
  font-style: italic;
  display: inline-block;
}

ul.networks-list {
  column-count: 3;
  column-gap: 20px;
  -moz-column-count: 3;
  -moz-column-gap: 20px;
  -webkit-column-count: 3;
  -webkit-column-gap: 20px;
  list-style: none;
  margin-left: 0;
}

header .post-meta, header .page-meta {
  margin: -.3em 0 1.4em 0;
  font-size: 1.2em;
  display: block;
}

header .post-meta {
  font-style: italic;
}

header .post-meta a.post-tag {
  margin-left: 0.17em;
  margin-right: 0.17em;
}

header .page-meta .back-text {
  font-style: italic;
}

footer {
  border-top: 2px solid #efefef;
  color: #888;
  clear: both;
  padding: 14px 0 70px 0;
  margin-top: 60px;
}
  footer:hover {
    color: #555;
  }
  footer a, footer a:active, footer a:visited {
    color: #888;
  }
  footer:hover a, footer:hover {
    color: #555;
  }
  footer .footer-likes-emoji {
    float: right;
  }

/* basic content formatting */

p, section ul, p.section ol, article>ul, article>ol, article table, section table {
  margin-bottom: .75em;
}

article p.series, article p.page-top-meta, section p.page-top-meta {
  font-size: 1rem;
  border-left: 1px solid #e2e2e2;
  padding: 10px 12px;
  font-style: italic;
  margin-top: -.6em;
  margin-bottom: 1.2em;
  background-color: #f7f7f7;
}
section p.page-top-meta {
  margin-top: 0 !important;
}

article iframe.twitter-tweet-rendered {
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 2em !important;
}

article#bio iframe.twitter-timeline-rendered {
  margin-top: 10px !important;
  margin-bottom: -20px !important;
}

article iframe.vimeo-embed {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 2em !important;
}

article>ul, article>ol {
  margin-top: -.5em;
}

article h1 + ul, article h1 + ol {
  margin-top: .5em;
}
article h2 + ul, article h2 + ol {
  margin-top: .4em;
}
article h3 + ul, article h3 + ol, article h4 + ul, article h4 + ol, article h5 + ul, article h5 + ol, article h6 + ul, article h6 + ol {
  margin-top: .3em;
}

blockquote ul, blockquote ol {
  margin-top: 0;
  margin-bottom: 0;
}

article h1, section h1 {
  margin: 0 0 .5em 0;
}
h2 {
  margin-bottom: .5em;
  margin-top: 1em;
}
h1,h2,h3,h4,h5,h6 {
  font-family: 'Signika Negative', sans-serif;
  color: #333;
}
h1 a, h1 a:visited, h1 a:active, h1 a:hover,
h2 a, h2 a:visited, h2 a:active, h2 a:hover,
h3 a, h3 a:visited, h3 a:active, h3 a:hover {
  color: #333;
}

blockquote, div.aside {
  margin: 0 15px 1.3em 15px;
  padding: 1em 20px 1em 20px;
  border-left: solid 3px #e0e0e0;
  background-color: #f8f8f8;
}
blockquote p:last-child, div.aside p:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

p.info {  /* legacy */
    background-color: #f7f7f7;
    padding: 8px 16px;
    border: 1px solid #e2e2e2;
}
div.aside.info {
  border-left: solid 3px #17a2b8;
  background-color: #E3FFFF;
}
div.aside.info p:first-child:before {
  content: 'ℹ️ ';
}
div.aside.success {
  border-left: solid 3px #28a745;
  background-color: #DBFFF8;
}
div.aside.success p:first-child:before {
  content: '✅ ';
}
div.aside.warning {
  border-left: solid 3px #ffc107;
  background-color: #FFFFD3;
}
div.aside.warning p:first-child:before {
  content: '⚠️ ';
}
div.aside.danger, div.aside.critical {
  border-left: solid 3px #dc3545;
  background-color: #FFE8F8;
}
div.aside.danger p:first-child:before, div.aside.critical p:first-child:before {
  content: '⛔️ ';
}

article img, section img {
  max-width: 100%;
  max-height: 800px;
}

article p img:only-child, section p img:only-child {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #efefef;
  margin: 1em 0;
  padding:0;
}

img.bio-photo {
  float: right;
  max-width: 250px;
  margin-left: 20px;
  margin-bottom: 20px;
}

h1 .header-link-octicon, h2 .header-link-octicon, h3 .header-link-octicon, h4 .header-link-octicon, h5 .header-link-octicon, h6 .header-link-octicon  {
  visibility: hidden;
}

h1:hover .header-link-octicon, h2:hover .header-link-octicon, h3:hover .header-link-octicon, h4:hover .header-link-octicon, h5:hover .header-link-octicon, h6:hover .header-link-octicon {
  visibility: visible;
}

.header-link-octicon {
  fill: #666;
  padding: 0;
  margin-left: .1em;
  margin-top:  -2px;
  vertical-align: middle;
}

/* TYPOGRAPHY */

body, select, input, textarea {
  color: #222;
  font-family: 'Signika Negative', 'PT Sans', sans-serif;
  font-weight: 300;
}

header.primary-header h1 {
  text-transform: lowercase;
  font-weight: 300;
  font-size: 5em;
}

section p, article p, section>ul, section>ol, article>ul, article>ol, article>table {
  font-size: 1.3em;
  line-height: 1.6em;
}

article#bio p {
  font-size: 1.35em;
  line-height: 1.65em;
}

h1 {
  font-size: 2em;
  font-weight: 400;
}
h2 {
  font-size: 1.55em;
}
h3, h4, h5, h6 {
  font-size: 1.4em;
}
h2, h3, h4, h5, h6 {
  font-weight: 600;
}

footer p {
  font-size: 1.1em;
  line-height: 1.5em;
  margin: 0;
}

.footnotes {
  border-top: 1px solid #ebeaea;
  padding-top: 1em;
  margin-top:  1.8em;
}
.footnotes li p {
  font-size: 1.2em !important;
  line-height: 1.45em !important;
  margin-bottom: .85em !important;
}
.footnotes li:target {
  background-color: #FFFFD3;
}
sup:target {
  background-color: #FFFFA0;
}

/* code/pre */

pre, code, kbd, samp {
  font-family:
     Menlo,
     Consolas,
     Monaco,
     "Andale Mono",
     "Lucida Console",
     "Lucida Sans Typewriter",
     "DejaVu Sans Mono",
     "Bitstream Vera Sans Mono",
     "Liberation Mono",
     "Nimbus Mono L",
     "Courier New",
     Courier,
     monospace !important;
}
pre {
  background-color: #f7f7f7;
  border: 1px solid #e2e2e2;
  padding: 9px 13px 9px 13px;
  margin-bottom: 1.5em;
  font-size: 1em;
  line-height: 1.5em;
  overflow: scroll;
  white-space: pre;
}
blockquote code {
  border: 1px solid #ddd;
}
pre code {
  background-color: transparent;
  padding: 0;
  border: 0;
}
p code, li code {
  font-size: 90%;
  background-color: #f2f2f2;
  padding: 2px;
}
h1 code, h2 code, h3 code, h4 code, h5 code, h6 code, h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
  font-size: 92%;
  background-color: #f6f6f6;
}

/* stl viewer and download widget */
/* TODO(cdzombak): dark theme */

article .stl-viewer {
  border: 1px dashed #333;
  margin-bottom: .5em;
  width: 100%;
  height: 400px;
}

article ul.download-widget {
  display: block;
  width: 100%;
  margin: -.4em 0 .5em -0;
  padding: .4em .8em;
  list-style: none;
  border-left: solid 5px #17a2b8;
  background-color: #E3FFFF;
  font-variant: small-caps;
}
  article ul.download-widget:before {
    content: '💾';
  }
  article ul.download-widget li {
    display: inline;
    margin: 0 .6em;
    padding: 0;
  }
  article ul.download-widget li.license {
    display: block;
    margin-left: .8em;
  }
  article ul.download-widget li.license:before {
    content: '© ';
  }

.post-share-link {
  float: right;
  margin-top: 3px;
}

.post-share-link .post-share-preview {
  opacity: 0;
  visibility: hidden;
  transform: translate(0, 5px);
  position: relative;
  top: .9em;
  left: -250px;
  width: 350px;
  box-shadow: 2px 2px 10px 2px rgba(0, 0, 0, 0.25);
  border: 2px solid white;
  border-radius: 6px;
  font-size: .9em;
  background-color: #fdfdfd;
  /* TODO(cdzombak): nice off white bg color here */
}

.post-share-link .post-share-preview img {
  height: 150px;
  width: 100%;
  object-fit: cover;
  margin: 0;
  border-radius: 4px;
}

.post-share-link .post-share-preview p {
  margin: 4px 8px 0 8px;
  padding: 0;
  font-family: sans-serif;
}

.post-share-link .post-share-preview p.post-share-preview-domain {
  font-size: .95em;
  color: #666;
  text-transform: uppercase;
}

.post-share-link .post-share-preview p.post-share-preview-title, .post-share-link .post-share-preview p.post-share-preview-description {
  line-height: 1.15em;
  margin-bottom: 8px;
}

.post-share-link .post-share-preview p.post-share-preview-title {
  font-weight: 500;
  font-size: 1.25em;
}

.post-share-link .post-share-preview p.post-share-preview-description {
  color: #222;
  font-size: 1.1em;
}

.post-share-link:hover .post-share-preview {
  z-index: 999;
  opacity: 1;
  visibility: visible;
  transform: translate(0, -3px);
  transition: all 0.2s cubic-bezier(0.75, -0.02, 0.2, 0.97);
}

/* toastify */

.toastify {
    padding: 12px 20px;
    color: #ffffff;
    display: inline-block;
    box-shadow: 0 3px 6px -1px rgba(0, 0, 0, 0.12), 0 10px 36px -4px rgba(77, 96, 120, 0.3);
    background: -webkit-linear-gradient(315deg, #73a5ff, #5477f5);
    background: linear-gradient(135deg, #73a5ff, #5477f5);
    position: fixed;
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
    border-radius: 2px;
    cursor: pointer;
    text-decoration: none;
    max-width: calc(50% - 20px);
    z-index: 2147483647;
}

.toastify.on {
    opacity: 1;
}

.toast-close {
    background: transparent;
    border: 0;
    color: white;
    cursor: pointer;
    font-family: inherit;
    font-size: 1em;
    opacity: 0.4;
    padding: 0 5px;
}

.toastify-right {
    right: 20px;
}

.toastify-left {
    left: 20px;
}

.toastify-top {
    top: -150px;
}

.toastify-bottom {
    bottom: -150px;
}

.toastify-rounded {
    border-radius: 25px;
}

.toastify-avatar {
    width: 1.5em;
    height: 1.5em;
    margin: -7px 5px;
    border-radius: 2px;
}

.toastify-center {
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    max-width: fit-content;
    max-width: -moz-fit-content;
}

@media only screen and (max-width: 360px) {
    .toastify-right, .toastify-left {
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0;
        max-width: fit-content;
    }
}

.toastify.toast-success {
  background: #2d4e3d;
  font-weight: bold;
}

/* dark theme */

body.dark {
  background-color: #1a1a1a;
  color: #ddd;
}

body.dark h1, body.dark h2, body.dark h3, body.dark h4, body.dark h5, body.dark h6 {
  color: #eee;
}

body.dark article h1 {
  border-bottom: 1px solid #222;
}
body.dark .primary-header h1 {
  border: 0;
}

body.dark header.primary-header h1 a,
body.dark header.primary-header h1 a:active,
body.dark header.primary-header h1 a:visited
body.dark header.primary-header h1 a:hover {
  color: #eee;
}

body.dark header.primary-header h1 a:hover {
  border-bottom: 2px solid #ddd;
}

body.dark a,
body.dark a:active,
body.dark a:visited {
  color: #ddd;
}

body.dark footer {
  border-top: 2px solid #222;
  color: #777;
}
  body.dark footer:hover {
    color: #aaa;
  }
  body.dark footer a, body.dark footer a:active, body.dark footer a:visited {
    color: #777;
  }
  body.dark footer:hover a, body.dark footer:hover {
    color: #aaa;
  }
  body.dark hr {
    border-top: 2px solid #222;
  }

/* code highlighting */

.hll { background-color: #ffffcc }
.c { color: #408080; font-style: italic } /* Comment */
.err { border: 1px solid #FF0000 } /* Error */
.k { color: #008000; font-weight: bold } /* Keyword */
.o { color: #666666 } /* Operator */
.cm { color: #408080; font-style: italic } /* Comment.Multiline */
.cp { color: #BC7A00 } /* Comment.Preproc */
.c1 { color: #408080; font-style: italic } /* Comment.Single */
.cs { color: #408080; font-style: italic } /* Comment.Special */
.gd { color: #A00000 } /* Generic.Deleted */
.ge { font-style: italic } /* Generic.Emph */
.gr { color: #FF0000 } /* Generic.Error */
.gh { color: #000080; font-weight: bold } /* Generic.Heading */
.gi { color: #00A000 } /* Generic.Inserted */
.go { color: #808080 } /* Generic.Output */
.gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.gs { font-weight: bold } /* Generic.Strong */
.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.gt { color: #0040D0 } /* Generic.Traceback */
.kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.kp { color: #008000 } /* Keyword.Pseudo */
.kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.kt { color: #B00040 } /* Keyword.Type */
.m { color: #666666 } /* Literal.Number */
.s { color: #BA2121 } /* Literal.String */
.na { color: #7D9029 } /* Name.Attribute */
.nb { color: #008000 } /* Name.Builtin */
.nc { color: #0000FF; font-weight: bold } /* Name.Class */
.no { color: #880000 } /* Name.Constant */
.nd { color: #AA22FF } /* Name.Decorator */
.ni { color: #999999; font-weight: bold } /* Name.Entity */
.ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.nf { color: #0000FF } /* Name.Function */
.nl { color: #A0A000 } /* Name.Label */
.nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.nt { color: #008000; font-weight: bold } /* Name.Tag */
.nv { color: #19177C } /* Name.Variable */
.ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.w { color: #bbbbbb } /* Text.Whitespace */
.mf { color: #666666 } /* Literal.Number.Float */
.mh { color: #666666 } /* Literal.Number.Hex */
.mi { color: #666666 } /* Literal.Number.Integer */
.mo { color: #666666 } /* Literal.Number.Oct */
.sb { color: #BA2121 } /* Literal.String.Backtick */
.sc { color: #BA2121 } /* Literal.String.Char */
.sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.s2 { color: #BA2121 } /* Literal.String.Double */
.se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.sh { color: #BA2121 } /* Literal.String.Heredoc */
.si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.sx { color: #008000 } /* Literal.String.Other */
.sr { color: #BB6688 } /* Literal.String.Regex */
.s1 { color: #BA2121 } /* Literal.String.Single */
.ss { color: #19177C } /* Literal.String.Symbol */
.bp { color: #008000 } /* Name.Builtin.Pseudo */
.vc { color: #19177C } /* Name.Variable.Class */
.vg { color: #19177C } /* Name.Variable.Global */
.vi { color: #19177C } /* Name.Variable.Instance */
.il { color: #666666 } /* Literal.Number.Integer.Long */

/* responsive-ish */
@media screen and (max-width: 790px) {
  header.primary-header, section, article, footer {
    width: 86%;
    margin: auto auto auto auto;
  }
  header.primary-header {
    margin-top: 25px;
    margin-bottom: 20px;
  }
  header.primary-header nav {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  header.primary-header nav ul li {
    padding: .2em;
  }
  header.primary-header h1 {
    font-size: 3.5em;
  }

  img.bio-photo {
    float: right;
    max-width: 125px;
    margin-left: 15px;
    margin-bottom: 15px;
  }

  ul.networks-list {
    column-count: 2;
    column-gap: 15px;
    -moz-column-count: 2;
    -moz-column-gap: 15px;
    -webkit-column-count: 2;
    -webkit-column-gap: 15px;
    list-style: none;
    margin-left: 0;
  }

  article img, section img {
    max-width: 100%;
    max-height: 600px;
  }

  article .stl-viewer {
    height: 200px;
  }

  article ul.download-widget li {
    display: block;
    margin: 0 .3em;
    padding: 0;
  }
  article ul.download-widget:before {
    float: right;
  }
  article ul.download-widget li.license {
    margin-left: .2em;
  }

  .post-share-link .post-share-preview {
    position: relative;
    top: .9em;
    left: -325px;
  }
}

@media screen and (max-width: 500px) {
  footer .footer-likes-emoji {
    float: none;
    margin-top: 6px;
    display: block;
  }
}

/*
 print styles, inlined to avoid required HTTP connection www.phpied.com/delay-loading-your-print-css/
 */
@media print {
  * { background: transparent !important; color: #444 !important; text-shadow: none !important; }
  a, a:visited { color: #444 !important; text-decoration: underline; }
  a:after { content: " (" attr(href) ")"; }
  abbr:after { content: " (" attr(title) ")"; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; white-space: pre-wrap; }
  thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
  tr, img { page-break-inside: avoid; }
  @page { margin: 0.6cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3{ page-break-after: avoid; }
  .no-print { display: none; }

  /* site/layout-specific */
  header nav { display: none; }
  header.primary-header { margin-top: 20px; max-width: 100%; }
  header a:after { content: ""; }

  header, section, article, footer {
    max-width: 100%;
  }

  article ul.download-widget {
    display: none;
  }
}
