@font-face {
    font-family: 'Amatic SC';
    font-style: normal;
    font-weight: 400;
    src: local('Amatic SC Regular'), local('AmaticSC-Regular'),
        url('amatic-sc-v9-latin-regular.woff') format('woff');
}

.prototype {
    display: none;
}

html {
    font-family: "Apple Garamond", "Baskerville",
        "Times New Roman", "Droid Serif", "Times",
        "Source Serif Pro", serif;
}

h1 {
    font-family: 'Amatic SC', sans-serif;

    font-weight: normal;
    font-style: normal;

    font-size: 40px;
    line-height: 54px;
}

article h1 {
    margin-top: 32px;
    margin-bottom: 0;
}

h2, h3 {
    font-family: inherit;
    font-size: 18px;
    line-height: 32px;
    margin-top: 32px;
    margin-bottom: 0;
}

h2 {
    font-weight: bold;
    font-style: normal;
}

h3 {
    font-weight: normal;
    font-style: italic;
}

article ul, article ol {
    padding-left: 32px;
}

h1+*, h2+*, h3+* {
    margin-top: 0;
}

article>hr {
    border: none;
    border-top: 1px solid black;
    max-width: 400px;
    width: 70%;
    margin: 20px auto;
}

.notice {
    background: lightyellow;
    padding: 16px 48px;
    font-size: 18px;
    line-height: 32px;

    box-sizing: border-box;
    max-width: 616px;
    width: 100%;
    margin: 30px auto;
}

header, article>*, .search {
    box-sizing: border-box;
    max-width: 616px;
    width: 100%;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: auto;
    margin-right: auto;
}

header {
    margin: 0 auto;
}

article {
    margin: 0 auto 120px auto;

    font-size: 18px;
    line-height: 32px;
}

blockquote {
    margin-left: 0;
    padding-left: 12px;
    border: none;
    border-left: 4px solid #eee;
    max-width: 600px;
}

article>blockquote {
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 630px) {
    article>blockquote {
        margin-left: 8px;
        margin-right: 0;
        width: calc(100% - 8px);
    }
}

article>table {
    width: unset;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
}

table {
    border-spacing: 8px 2px;
}

code, pre {
    background: #f8f8f8;
    font-family: "Inconsolata", "Fira Mono",
        "DejaVu Sans Mono",
        "Droid Sans Mono", "Source Code Pro",
        monospace;
}

pre {
    overflow: auto;
}

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

a:hover {
    text-decoration: underline;
}

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

nav {
    text-align: center;
}


/* Sticky footer */
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}
body {
  display: flex;
  flex-direction: column;
}
.container {
  flex: 1;
}


footer {
    padding: 0 8px;

    background: #f8f8f8;
    color: #444;
    text-align: center;
    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", "Roboto", "Oxygen",
        "Ubuntu", "Cantarell", "Fira Sans",
        "Droid Sans", "Helvetica Neue", sans-serif;
}

ul.dense {
    list-style: none;
    padding: 0;
}

article>ul.dense {
    padding: 0 8px;
}

ul.dense>li {
    display: inline;
}

ul.dense>li::after {
    content: "\200B\00B7\200B";
    margin: 0 12px;
}

ul.dense>li:last-child::after {
    content: "";
    margin: 0;
}

li.missing, ul.dense>li.missing {
    display: none;
}

input:focus, textarea:focus {
    outline: none;
}

textarea {
    border: none;
    background: none;
    margin: 0 auto;
    padding: 0;
    font-family: "SF Mono", "Monaco",
        "Inconsolata", "Fira Mono",
        "Droid Sans Mono", "Source Code Pro",
        monospace;

    width: 100%;
    resize: none;
    overflow: hidden;
}

h1>input {
    font: inherit;
    border: none;
    background: none;
    padding: 0;

    width: 100%;
}

.shadow-control {
    visibility: hidden;
    position: fixed;
    height: auto;
    min-height: 100px;
}

.editor {
    display: none;
}

.editor textarea[name="body"] {
    height: 600px;
}

.edit .editor {
    display: block;
}

.edit .rendered {
    display: none;
}

.editor-controls {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;

    background: #91A238;
    padding: 10px 20px;
}

@media (min-width: 630px) {
    .editor-controls {
        position: fixed;
        left: auto;
        right: 20px;
        bottom: 20px;

        box-shadow: 2px 2px 8px rgba(0,0,0, 0.25);
    }
}

article ul.search-results {
    padding-left: 8px;
}
.search-results {
    list-style: none;
}
.search-result {
    padding: 0;
    margin-bottom: 8px;
}
.search-result .title {
    font-weight: bold;
}
.snippet {
    white-space: pre-line;
}
.search-result p {
    margin: 0;
}

.search-result a {
    display: block;
    color: inherit;
    text-decoration: none;
    border: 1px solid #ccc;
    padding: 8px;
}
.search-result a:hover, .search-result a:focus {
    background: #0074D9;
    border-color: #0074D9;
    color: white;
}

.search {
    text-align: center;
    margin-top: 30px;
    position: relative;
}

input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

input[type="search"] {
    -webkit-appearance: textfield;

    box-sizing: border-box;
    width: 100%;
    max-width: 300px;
    transition: max-width 200ms;

    padding: 0 16px;
    margin: 0;
    border: 1px solid #ccc;

    font: inherit;
    font-size: 18px;

    line-height: 32px;
    height: 34px;

    border-radius: 18px;
    text-overflow: ellipsis;
}

.search input:focus, .search.focus input {
    max-width: 300px;
    border-color: #999;
}

.search .live-results {
    text-align: left;

    box-sizing: border-box;
    width: 100%;
    max-width: 266px; /* 300px - padding - border */

    background: white;
    padding: 0;
    margin: 0 auto;

    overflow: hidden;

    transition: max-height 200ms;
    max-height: 0px;
}

.live-results.show {
    max-height: 500px;
}

.live-results .search-result {
    margin: 0;
}
.live-results a {
    border-top: none;
}

@media (min-width: 630px) {
    .search {
        text-align: right;
    }

    .search input {
        max-width: 125px;
    }

    .search .live-results {
        position: absolute;
        right: 8px;
        margin: 0 16px;
        max-height: 0px;
    }

    .search.focus .live-results {
        max-height: 500px;
    }
}