
* {
	margin: 0;
	padding: 0;
}

body {
    font-family: "IBM Plex Mono", monospace;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
}

a {
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
	opacity: 0.8;
}

/******* Landing *******/

div#menu {
    text-align: center;
    margin: 0px;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media only screen and (max-width: 1000px) {
    div#menu {
        padding-top: 10%;
    }
}

div#menu ul {
    list-style: none;
}

div#menu a {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 10em;
    font-weight: bolder;
}

div#menu p {
    text-decoration: none;
    font-size: 2em;
    font-weight: normal;
}


/******* Main ******/
div#main {
    padding: 0 30% 0 30%;
	margin: auto;
	font-size: small;
    font-family: "Menlo", "Meslo LG", monospace;
}

@media only screen and (max-width: 1000px) {
    div#main {
        padding: 0 10% 0 10%;
        font-size: xx-large;
    }
    div#menu li {
        font-size: 1.2em;
        margin-bottom: 5em;
    }
    div#menu p {
        margin-left: 1em;
        margin-right: 1em;
        font-size: 2.5em;
    }
}

div#content {
	padding: 4em 0 0 0;
	text-align: justify;
}

div#content h2 {
	margin-bottom: 24px;
	font-size: 1.6em;
	font-weight: bold;
}

div#content h2 a {
	text-decoration: none;
}

div#content h2 span.date {
	display: block;
	font-size: 0.7em;
}

div.post ul li {
    text-align: left;
}

div#content h3 {
	margin: 32px 0 16px 0;
	font-size: 1.4em;
	font-weight: bold;
}


/****** Post ******/
div.post {
	margin-bottom: 64px;
}
div.post img {
	display: block;
	max-width: 100%;
	margin: 0 auto 16px auto;
}
div.post .right {
	display: inline-block;
	float: right;
	margin: 0 0 16px 16px;
	max-width: 250px;
}
div.post .left {
	display: inline-block;
	float: left;
	margin: 0 16px 16px 0;
	max-width: 250px;
}
div.post div.thumb {
	padding: 6px;
	border-radius: 2px;
	font-size: 1.2em;
}
div.post div.thumb p:first-child {
	margin: 0 !important;
}
div.post div.thumb p img {
	margin: 0 !important;
	border-radius: 3px;
}
div.post div.thumb p:last-child {
	margin: 0;
	padding: 12px 0 !important;
	text-align: center;
	line-height: 1em;
}

div.post p {
	margin: 0 0 16px 0;
	line-height: 1.8em;
}
div.post ul, div.post ol {
	margin: 0 0 16px 32px;
	line-height: 1.8em;
}

div.post blockquote {
	margin-bottom: 16px;
	padding: 16px 16px 1px 16px;
	border-radius: 3px;
}

div.post pre {
	margin-bottom: 16px;
	padding: 16px 24px;
	border-radius: 3px;
	box-shadow: inset 0 0 6px #222;
	font-size: 0.7em;
	line-height: 1.5em;
	overflow-y: auto;
}

div.post code {
	display: inline-block;
	padding: 0 3px;
	font-family: 'andale mono', monospace;
	border-radius: 2px;
}

div.post div.video {
	margin-bottom: 16px;
}


/****** Pagination ******/
div#content div.pagination {
	margin: 0 0 64px 0;
	text-align: center;
}

div#content div.pagination span.previous {
	margin: 0 16px 0 0;
}

div#content div.pagination span.next {
	margin: 0 0 0 16px;
}

div#content div.pagination span a {
	padding: 12px 16px;
	text-decoration: none;
	border-radius: 3px;
}

div#back {
	margin-bottom: 5%;
}

/****** Common stuff... ******/
.clear {
	clear: both;
}


figcaption {
    font-size: small;
    text-align: right;
}

figure.image {
    margin-bottom: 1em;
}


.tag {
  padding: 4px 8px;
  text-align: center;
  border-radius: 5px;
  font-size: x-small;
}


/** Theme Switcher **/

#theme-switcher {
    position: fixed;
    bottom: 10px;
    right: 10px;
    background-color: #ccc;
    color: black;
    padding: 10px;
    border-radius: 5px;
    cursor: pointer;
}

#back svg {
    vertical-align: middle;
}

@media only screen and (max-width: 1000px) {
    #theme-switcher {
        height: 5em;
        width: 5em;
    }
    #theme-switcher svg {
        width: 100%;
        height: 100%;
    }
    svg {
        width: 2em;
        height: 2em;
    }
}
