/**
 * styles.css -- hypepat.com theme
 *
 * @author      Pat Gaffney <pat@hypepat.com>
 * @date        2016-09-22
 * @modified    2016-09-30
 *******************************************************************/
 

/*******************************************************************
 * @section Main Styles
 *******************************************************************/

* { box-sizing: border-box; }

body {
    margin: 0;
    line-height: 1.4;
    font-family: "Trebuchet MS", -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 18px;
    color: #2D2D2D;
    background-color: #E7E7E7;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Avenir Next", "Avenir", sans-serif;
    margin: 5px 0 20px 0;
}

h1 { font-size: 32px; }

h2 {
    font-size: 24px;
    font-style: italic;
    border-bottom: 1px solid #a5a5a5;
}

h3 { font-size: 21px; }

hr {
    height: 1px;
    color: #A5A5A5;
    background: #A5A5A5;
    font-size: 0;
    border: 0;
    margin: 15px 0;
}

img {
    display: block;
    margin: auto;
    height: auto;
    max-width: 100%; 
}

figcaption {
    font-size: 14px;
    font-style: italic;
    text-align: center;
}

blockquote {
    margin: 0 50px;
    padding: 0 25px;
    border: 1px solid #A5A5A5;
    background-color: #CCCCCC;
    font-style: italic;
}

@media (max-width: 700px) {
    blockquote { 
        margin: 0 25px;
        padding: 0 20px;
    }
}

@media (max-width: 550px) {
    blockquote { margin: 0 10px; }
}

/*******************************************************************
 * @section Layout Styles
 *******************************************************************/

header { 
    background-color: #A5A5A5;
    padding: 20px 0 5px 0;
    border-bottom: 1px solid #999999;
    margin-bottom: 25px;
}

footer { 
    background-color: #A5A5A5;
    padding: 20px 0 5px 0;
    border-top: 1px solid #999999;
    margin-top: 25px;
}

.content {
    padding: 25px 10px;
    width: 700px;
    margin: auto;
}

nav ul {
    margin: auto;
    max-width: 700px;
    padding: 5px;
    list-style: none;
}

nav ul li { display: inline-block; }

div.article-footer {
    padding: 10px 50px;
    background-color: #CCCCCC;
    border: 1px solid #A5A5A5;
    line-height: 2
}

div.article-footer h4 { margin: 0; }

@media (max-width: 700px) {
	div.article-footer { padding: 10px 25px; }
	.content { 
        width: 100%;
        border-left: none;
        border-right: none;
    }
}

@media (max-width: 550px) {
    div.article-footer { 
        font-size: 14px;
        padding: 10px 10px;
    }
}

/* Dictionary lists used for index/archive articles list. */
dl {
    margin: 2em 0;
    padding: 0;
}

dl dt {
    position: relative;
	width: 6em;
	font-style: italic;
    float: left;
}

dl dd {
    border-left: 1px solid #A5A5A5;
	margin: 0 0 0 7em;
	padding: 0 0 .5em .5em;
}

dl dd p { margin: 0; }


/*******************************************************************
 * @section Inline Style Classes
 *******************************************************************/

h1#site-title  { font-size: 48px; }
h2#site-author { font-size: 24px; }

.center { text-align: center; }
.right  { float: right; }
.left   { float: left; }

.white      { color: #CCCCCC; }
.green      { color: #99CC99; }
.purple     { color: #CC99CC; }
.gray       { color: #999999; }
.red        { color: #F2777A; }
.orange     { color: #F99157; }
.yellow     { color: #FFCC66; }
.aqua       { color: #66CCCC; }
.blue       { color: #6699CC; }
.dark-green { color: #7BA47B; }
.dark-blue  { color: #416298; }
.dark-red   { color: #C05F62; }
.dark-gray  { color: #6E6E6E; }

.italic { font-style: italic; }

a {
    color: #6699CC;
    text-decoration: none;
    font-weight: 700;
}

a:hover, a:focus {
    text-decoration: underline;
}

a.tag {
    white-space: nowrap;
    color: #FBFBFB;
    padding: 2px 10px;
    margin: 0px 2px;
    border: 1px solid #C05F62;
    background-color: #F2777A;
	line-height: 2;
}

a.tag:hover, a.tag:focus {
    text-decoration: none;
    background-color: #C05F62;
}

a.blue-tag {
    white-space: nowrap;
    color: #FBFBFB;
    padding: 2px 10px;
    margin: 0px 2px;
    border: 1px solid #416298;
    background-color: #6699CC;
	line-height: 2;
}

a.blue-tag:hover, a.blue-tag:focus {
    text-decoration: none;
    background-color: #416298;
}

header .tag,
header .blue-tag,
footer .tag,
footer .blue-tag { line-height: 1.4; }

code {
    font-family: "Menlo", "Lucida Console", monospace;
    background-color: #CCCCCC;
    border: 1px solid #A5A5A5;
    padding: 1px 4px;
    font-size: 16px;
    white-space: nowrap;
}

pre {
    font-size: 15px;
    padding: 10px 10px;
    font-family: "Menlo", "Lucida Console", monospace;
    background-color: #2D2D2D;
    color: #CCCCCC;
    margin: 0;
    overflow-x: scroll;
}

pre code {
    background-color: inherit;
    color: #CCCCCC;
    border: none;
    font-size: 16px;
    margin: 0;
    padding: 0;
    white-space: pre;
}

/* footnotes */
sup { vertical-align: text-top; }
sup a,
a[rev=footnote] {
    color: #FBFBFB;
    padding: 1px 3px;
    border: 1px solid #C05F62;
    background-color: #F2777A;
}
sup a:hover,
a[rev=footnote]:hover,
sup a:focus,
a[rev=footnote]:focus { 
    text-decoration: none;
    background-color: #C05F62;
}

/*******************************************************************
 * @section Pygments Syntax Highlighting
 *******************************************************************/
div.highlight       { margin: 1em 0;}
.highlight .c       { color: #999999 } /* Comment */
.highlight .err     { color: #C05F62; background-color: #FFAAAA } /* Error */
.highlight .k       { color: #CC99CC; } /* Keyword */
.highlight .o       { color: #66CCCC } /* Operator */
.highlight .p       { color: #CCCCCC; }
.highlight .ch      { color: #999999 } /* Comment.Hashbang */
.highlight .cm      { color: #999999 } /* Comment.Multiline */
.highlight .cp      { color: #999999 } /* Comment.Preproc */
.highlight .cpf     { color: #999999 } /* Comment.PreprocFile */
.highlight .c1      { color: #999999 } /* Comment.Single */
.highlight .cs      { color: #999999; font-weight: bold } /* Comment.Special */
.highlight .gd      { color: #C05F62 } /* Generic.Deleted */
.highlight .ge      { font-style: italic } /* Generic.Emph */
.highlight .gr      { color: #C05F62 } /* Generic.Error */
.highlight .gh      { color: #416298; font-weight: bold } /* Generic.Heading */
.highlight .gi      { color: #99CC99 } /* Generic.Inserted */
.highlight .go      { color: #999999 } /* Generic.Output */
.highlight .gp      { color: #F99157; font-weight: bold } /* Generic.Prompt */
.highlight .gs      { font-weight: bold } /* Generic.Strong */
.highlight .gu      { color: #CC99CC; font-weight: bold } /* Generic.Subheading */
.highlight .gt      { color: #416298 } /* Generic.Traceback */
.highlight .kc      { color: #F99157; font-weight: bold } /* Keyword.Constant */
.highlight .kd      { color: #CC99CC; font-weight: bold } /* Keyword.Declaration */
.highlight .kn      { color: #CC99CC; font-weight: bold } /* Keyword.Namespace */
.highlight .kp      { color: #CC99CC; font-weight: bold } /* Keyword.Pseudo */
.highlight .kr      { color: #CC99CC; font-weight: bold } /* Keyword.Reserved */
.highlight .kt      { color: #CC99CC; font-weight: bold } /* Keyword.Type */
.highlight .m       { color: #F99157; font-weight: bold } /* Literal.Number */
.highlight .s       { color: #99CC99 } /* Literal.String */
.highlight .n       { color: #CCCCCC; } /* name */
.highlight .na      { color: #6699CC; font-style: italic; } /* Name.Attribute */
.highlight .nb      { color: #6699CC; font-style: italic; } /* Name.Builtin */
.highlight .nc      { color: #FFCC66; font-weight: bold } /* Name.Class */
.highlight .no      { color: #F99157; font-weight: bold } /* Name.Constant */
.highlight .nd      { color: #6E6E6E; font-weight: bold } /* Name.Decorator */
.highlight .ni      { color: #F2777A; font-weight: bold } /* Name.Entity */
.highlight .ne      { color: #F2777A; font-weight: bold } /* Name.Exception */
.highlight .nf      { color: #6699CC; font-weight: bold } /* Name.Function */
.highlight .nl      { color: #FFCC66; font-weight: bold } /* Name.Label */
.highlight .nn      { color: #CCCCCC; font-weight: bold } /* Name.Namespace */
.highlight .nt      { color: #F2777A } /* Name.Tag */
.highlight .nv      { color: #F2777A } /* Name.Variable */
.highlight .ow      { color: #CCCCCC; font-weight: bold } /* Operator.Word */
.highlight .w       { color: #CCCCCC } /* Text.Whitespace */
.highlight .mb      { color: #F99157; font-weight: bold } /* Literal.Number.Bin */
.highlight .mf      { color: #F99157; font-weight: bold } /* Literal.Number.Float */
.highlight .mh      { color: #F99157; font-weight: bold } /* Literal.Number.Hex */
.highlight .mi      { color: #F99157; font-weight: bold } /* Literal.Number.Integer */
.highlight .mo      { color: #F99157; font-weight: bold } /* Literal.Number.Oct */
.highlight .sb      { color: #99CC99 } /* Literal.String.Backtick */
.highlight .sc      { color: #99CC99 } /* Literal.String.Char */
.highlight .sd      { color: #99CC99 } /* Literal.String.Doc */
.highlight .s2      { color: #99CC99 } /* Literal.String.Double */
.highlight .se      { color: #F99157; font-weight: bold; } /* Literal.String.Escape */
.highlight .sh      { color: #99CC99 } /* Literal.String.Heredoc */
.highlight .si      { color: #99CC99 } /* Literal.String.Interpol */
.highlight .sx      { color: #99CC99; } /* Literal.String.Other */
.highlight .sr      { color: #F99157; } /* Literal.String.Regex */
.highlight .s1      { color: #99CC99 } /* Literal.String.Single */
.highlight .ss      { color: #F99157 } /* Literal.String.Symbol */
.highlight .bp      { color: #F2777A } /* Name.Builtin.Pseudo (self) */
.highlight .vc      { color: #FFCC66 } /* Name.Variable.Class */
.highlight .vg      { color: #CCCCCC; font-weight: bold } /* Name.Variable.Global */
.highlight .vi      { color: #CCCCCC } /* Name.Variable.Instance */
.highlight .il      { color: #F99157; font-weight: bold } /* Literal.Number.Integer.Long */