@font-face {
    font-family: "Iosevka";
    src: url(iosevka-regular.woff2);
}

@font-face {
    font-family: "Open Sans";
    src: url(OpenSans-Regular.woff2);
}

#content {
    background: #fff;
    padding-top: 3em;
    max-width: 600px;
    position: relative;
    margin: 5px auto;
    padding-left: 10px;
    padding-right: 10px;
}
#header {
    float: right;
    margin-left: 1em;
    margin-bottom: 1em
}
#tagsoup {
    margin-left: 1em;
}
#monthsoup {
    margin-left: 1em;
}
#postamble {
    position: relative;
    max-width: 600px;
    margin: auto;
}
#archive {
    margin-top: 2em;
    font-size: 16px;
}
#disqus_thread {
    margin-top: 1em;
}
.taglist {
    margin-top: 0;
    font-size: 16px;
}
.date {
    font-style: italic
}
.post-date {
    margin-top: 2em;
    color: #888;
}
.article-meta {
    margin-left: 2.2em;
    margin-right: 2.2em;
    margin-bottom: 2.2em
}
.archive-title {
    font-size: 1em
}
.tags-title {
    font-size: 1.7em;
    margin-top: 2em;
    text-transform: uppercase
}
.article-title {
    font-size: 2em
}
.article-content {
    margin-left: 2.2em
}
.fineprint {
    text-align: center;
    font-size: .9em;
    margin-top: .5em
}
.footnum {
    font-weight: bold;
}
.footnotes {
    font-size: 14px;
}
.footpara {
    display: inline;
}
.tag-low {
    font-size: .8em;
    font-weight: 200
}
.tag-medium {
    font-size: 1.2em;
    font-weight: 600
}
.tag-high {
    font-size: 1.8em;
    font-weight: 800
}
.header{
    font-size: 24px;
    line-height: 40px;
    font-weight: 200;
    box-shadow: 0px 2px 2px grey;
    background: #2E435E;
    background: linear-gradient(to top,#228b22,#17aa50);
    color: #eee;
    border: solid 3px transparent;
    border-bottom-color: #aaa;
    text-align: center;
}
.header a {
    color: #eee;
}
.header a:hover {
    color: #fff;
}
.sitelinks, .sitelinks a {
    font-size: 12pt;
    line-height: 30px;
    color: #000;
}
a.title {
    color: #eee;
}
a.title:hover {
    color: #cdf;
}
a.identity {
    font-size: 20px;
    color: #ccc;
}
a.identity:hover {
    color: #cdf;
}
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{
    display:block;
}
audio,canvas,video{
    display:inline-block;
    *display:inline;
    *zoom:1;
}
audio:not([controls]){display:none;}
html{
    font-size:100%;
    -webkit-text-size-adjust:100%;
    -ms-text-size-adjust:100%;
}
a:focus{
    outline:thin dotted;
    outline:5px auto -webkit-focus-ring-color;
    outline-offset:-2px;
}
a:hover,a:active{
    outline:0;
}
sub,sup{
    position:relative;
    font-size:75%;
    line-height:0;
    vertical-align:baseline;
}
sup{
    top:-0.5em;
}
sub{
    bottom:-0.25em;
}
img{
    max-width:100%;
    height:auto;
    border:0;
    -ms-interpolation-mode:bicubic;
}
button,input,select,textarea{
    margin:0;
    font-size:100%;
    vertical-align:middle;
}
button,input{
    *overflow:visible;
line-height:normal;
}
button::-moz-focus-inner,input::-moz-focus-inner{
    padding:0;
    border:0;
}
button,input[type="button"],input[type="reset"],input[type="submit"]{
    cursor:pointer;
    -webkit-appearance:button;
}
input[type="search"]{
    -webkit-appearance:textfield;
    -webkit-box-sizing:content-box;
    -moz-box-sizing:content-box;
    box-sizing:content-box;
}
input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{
    -webkit-appearance:none;
}
textarea{
    overflow:auto;
    vertical-align:top;
}
body{
    margin:0;
    font-family:"Open Sans",sans-serif;
    font-size:13px;
    line-height:18px;
    color:#333333;
    background-color:#ffffff;
    overflow-x: hidden;
    text-align: justify;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
}
a{
    color:#30557c;
    text-decoration:none;
}
a:hover{
    color:#395b7c;
}
a.article-title{
    margin:0;
    font-weight:bold;
    color:#333333;
    text-rendering:optimizelegibility;
    font-size:30px;
    line-height:36px;
}
.row{
    margin-left:-20px;
    *zoom:1;
}.row:before,.row:after{display:table;content:"";}
.row:after{
    clear:both;
}
p{
    margin:12px 0 9px;
    font-family:"Open Sans",sans-serif;
    font-size:16px;
    line-height:24px;
}
p small{
    font-size:11px;
    color:#999999;
}
.lead{
    margin-bottom:18px;
    font-size:20px;
    font-weight:200;
    line-height:27px;
}
h1,h2,h3,h4,h5,h6{
    margin:0;
    font-weight:bold;
    color:#333333;
    text-rendering:optimizelegibility;
}
h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{
    font-weight:normal;
    color:#999999;
}
h1{
    font-size:30px;
    line-height:36px;
}
h1 small{
    font-size:18px;
}
h2{
    font-size:24px;
    line-height:36px;
}
h2 small{
    font-size:18px;
}
h3{
    line-height:27px;
    font-size:18px;
}
h3 small{
    font-size:14px;
}
h4,h5,h6{
    line-height:18px;
}
h4{
    font-size:14px;
}
h4 small{
    font-size:12px;
}
h5{
    font-size:12px;
}
h6{
    font-size:11px;
    color:#999999;
    text-transform:uppercase;
}
.page-header{
    padding-bottom:17px;
    margin:18px 0;
    border-bottom:1px solid #eeeeee;
}
.page-header h1{
    line-height:1;
}
ul,ol{
    padding:0;
    margin:0 0 9px 25px;
}
ul ul,ul ol,ol ol,ol ul{
    margin-bottom:0;
}
ul{
    list-style:disc;
}
ol{
    list-style:decimal;
}
li{
    font-size:16px;
    line-height:25px;
}
ul.unstyled{
    margin-left:0;
    list-style:none;
}
dl{
    margin-bottom:18px;
}
dt,dd{
    line-height:18px;
}
dt{
    font-weight:bold;
}
dd{
    margin-left:9px;
}
hr{
    margin:18px 0;
    border:0;
    border-top:1px solid #e5e5e5;
    border-bottom:1px solid #ffffff;
}
strong{
    font-weight:bold;
}
em{
    font-style:italic;
}
.muted{
    color:#999999;
}
abbr{
    font-size:90%;
    text-transform:uppercase;
    border-bottom:1px dotted #ddd;
    cursor:help;
}
blockquote{
    padding:0 0 0 15px;
    margin:0 0 18px;
    border-left:5px solid #eeeeee;
}
blockquote p{
    margin-bottom:0;
    font-size:16px;
    font-weight:300;
    line-height:22.5px;
}
blockquote small{
    display:block;
    line-height:18px;
    color:#999999;
}
blockquote small:before{
    content:'\2014 \00A0';
}
blockquote.pull-right{
    float:right;
    padding-left:0;
    padding-right:15px;
    border-left:0;
    border-right:5px solid #eeeeee;
}
blockquote.pull-right p,blockquote.pull-right small{
    text-align:right;
}
q:before,q:after,blockquote:before,blockquote:after{
    content:"";
}
address{
    display:block;
    margin-bottom:18px;
    line-height:18px;
    font-style:normal;
}
small{
    font-size:100%;
}
cite{
    font-style:normal;
}
code {
    background: #fcfcfc;
    color: #444;
    font-family: 'Iosevka', monospace;
    font-size: 15px;
    line-height: 18px;
    padding: 2px;
}
pre {
    background: #fcfcfc;
    color: #444;
    font-family: 'Iosevka', monospace;
    padding: 4px;
    padding-left: 6px;
    overflow: auto;
}
.code {
    color: #586e75;
}
.comment {
    color: #93a1a1;
    font-style: italic;
}
.symbol {
    color: #859900;
}
.string {
    color: #2aa198;
}
.paren1 {
    color: #aaaa00;
}
.paren2 {
    color: #888800;
}
.paren3 {
    color: #555500;
}
.underline {
    text-decoration: underline;
}

div.lightbox {
    display: flex;
    flex-direction: row;
    overflow-x: scroll;
    background-color: black;
    padding: 1px 5px 1px 5px;
    box-shadow: 0 0 1px 1px black;
    scrollbar-color: #444 black;
    scrollbar-width: none;
    width: calc(100vw - 10px);
    margin-left: calc(50% - 50vw + 5px);
}

div.lightbox img {
    flex: 0 0 auto;
    height: calc(100% - 4px);
    margin: 2px;
}

div.lightbox figure {
    flex: 0 0 auto;
    height: calc(100% - 4px);
    margin: 2px;
}

div.lightbox figure img {
    height: calc(100% - 16pt);
    margin: 0;
}

div.lightbox figure figcaption {
    font-size: 8pt;
    color: white;
    text-align: center;
}
