/* Colors */
header,
footer {
  font-size: xx-large;
  height: 6rem;
  position: fixed;
  width: 100%;
  background-color: #34393f;
  display: flex;
}
header > *,
footer > * {
  height: 100%;
  line-height: 100%;
}
header a,
footer a {
  text-decoration: none;
  color: #c5c5c5;
}
header a:hover,
footer a:hover {
  color: #737480;
}
header nav,
footer nav {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  width: 100%;
  display: flex;
  justify-content: space-between;
}
header > *,
footer > * {
  height: 100%;
  display: flex;
  align-items: center;
}
header .pages > *,
footer .pages > * {
  padding-left: 1rem;
}
header .pages > *:not(:last-child),
footer .pages > *:not(:last-child) {
  padding-right: 1rem;
}

header {
  border-bottom: 3px solid #c5c5c5;
}
header .home {
  height: 100%;
  display: flex;
  align-items: center;
}
header .home i {
  margin: 2rem;
}

footer {
  bottom: 0;
  border-top: 3px solid #c5c5c5;
}

.copyright {
  min-width: 17rem;
}

pre code.hljs {
  display: block;
  overflow-x: auto;
  padding: 1em;
}

code.hljs {
  padding: 3px 5px;
}

/*

Dark style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>

*/
.hljs {
  color: #ddd;
  background: #303030;
}

.hljs-keyword,
.hljs-selector-tag,
.hljs-literal,
.hljs-section,
.hljs-link {
  color: white;
}

.hljs-subst {
  /* default */
}

.hljs-string,
.hljs-title,
.hljs-name,
.hljs-type,
.hljs-attribute,
.hljs-symbol,
.hljs-bullet,
.hljs-built_in,
.hljs-addition,
.hljs-variable,
.hljs-template-tag,
.hljs-template-variable {
  color: #d88;
}

.hljs-comment,
.hljs-quote,
.hljs-deletion,
.hljs-meta {
  color: #979797;
}

.hljs-keyword,
.hljs-selector-tag,
.hljs-literal,
.hljs-title,
.hljs-section,
.hljs-doctag,
.hljs-type,
.hljs-name,
.hljs-strong {
  font-weight: bold;
}

.hljs-emphasis {
  font-style: italic;
}

.content {
  word-wrap: break-word;
}
.content > h2::before {
  content: "#";
  padding-right: 1rem;
  color: #34393f;
}
.content > h3 {
  border-bottom: 3px solid #34393f;
  padding-bottom: 6px;
}
.content > hr {
  margin-bottom: 1rem;
  color: #34393f;
}
.content > * {
  margin-bottom: 1rem;
}
.content > *:has(+ h2, + h3) {
  margin-bottom: 2rem;
}
.content > ol,
.content > ul {
  padding-left: 1rem;
}
.content > ol li::marker,
.content > ul li::marker {
  color: #34393f;
  font-weight: 600;
  padding-right: 1rem;
}
.content > ol li,
.content > ul li {
  padding-left: 1rem;
}
.content > ol li:not(:last-child),
.content > ul li:not(:last-child) {
  padding-bottom: 0.75rem;
}
.content > ul {
  list-style-type: "-";
}
.content > blockquote {
  display: flex;
  border-left: 0.5rem solid #34393f;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.content > blockquote > p {
  padding: 0.5rem 0 0.5rem 1rem;
  padding-left: 1rem;
}
.content > p code {
  color: #d1964a;
}
.content > p a:hover > code {
  color: #a7783b;
}
.content .hljs {
  background: #0f1419 !important;
  border-width: 5px;
  border-style: solid;
  border-color: #447;
  border-radius: 1rem;
}

.blog-entries a h1,
.blog-entries a h2,
.blog-entries a h3,
.blog-entries a h4,
.blog-entries a h5,
.blog-entries a h6 {
  transition-duration: 0.5s;
  color: #737480;
}
.blog-entries a:hover h1,
.blog-entries a:hover h2,
.blog-entries a:hover h3,
.blog-entries a:hover h4,
.blog-entries a:hover h5,
.blog-entries a:hover h6 {
  color: #c5c5c5;
  transition-duration: 0.5s;
}
.blog-entries a:not(:last-child) article {
  border-bottom: 3px solid #34393f;
}
.blog-entries article {
  min-height: 8rem;
}
.blog-entries article h2 {
  margin-bottom: 0.25rem;
}
.blog-entries article .published {
  grid-area: published;
}
.blog-entries article .metadata {
  display: flex;
  justify-content: space-between;
}
.blog-entries article .published,
.blog-entries article .modified {
  color: #737480;
  margin-bottom: 1rem;
}

/* Ellipsis for text overflow */
* {
  margin: 0;
  padding: 0;
}

html,
body {
  min-height: 100vh;
}

body {
  font-family: sans-serif;
  background-color: #0f1419;
  color: #c5c5c5;
}

a {
  text-decoration: none;
  color: #008fc5;
}

a:hover {
  color: #005f81;
}

main {
  font-size: xx-large;
  padding: 7rem 1rem 7rem 1rem;
  max-width: 50rem;
  width: 80vw;
  margin-left: auto;
  margin-right: auto;
}
main .metadata {
  color: #737480;
}

/* wikipedia-style external link */
.external {
  background-image: url("/assets/external.svg");
  background-position: center right;
  background-repeat: no-repeat;
  background-size: 0.7em;
  padding-right: 0.9em;
}
