:root {
    --bg-main: #0d0d0d;
    --bg-dim: #1a1a1a;
    --bg-alt: #333;
    --fg-main: #eee;
    --fg-dim: #ccc;
    --fg-code: #e580ea;
    --fg-link: #81a2be;
}

* {
    margin: 0;
    padding: 0;
}

body {
    background-color: var(--bg-main);
    color: var(--fg-dim);
    font-size: 1rem;
    line-height: 1.3;
    margin: 0 auto;
    max-width: 1000px;
    overflow-wrap: break-word;
    overflow-x: hidden;
    padding: 1rem;
    word-break: break-word;
}

a {
    color: var(--fg-link);
    text-decoration: none;
}

a:hover {
    background-color: var(--fg-link);
    color: var(--bg-main);
}

h1,h2,h3,h4,h5,h6 {
    color: var(--fg-main);
    line-height: 1;
    margin: .5rem 0rem;
    padding: .5rem 0rem;
}

h1 {
    border-bottom: 1px solid var(--bg-alt);
    font-size: 1.6rem;
    margin-bottom: 1rem;
}

h2 {
    border-bottom: 1px solid var(--bg-alt);
    font-size: 1.4rem;
}

h3 {
    font-size: 1.2rem;
}

h4 {
    font-size: 1rem;
}

h5 {
    font-size: .8750rem;
}

h6 {
    font-size: .750rem;
}

img {
    width: 100%;
}

blockquote,
img,
ol,
p,
pre,
table,
ul {
    margin-bottom: 1rem;
}

blockquote {
    background-color: var(--bg-dim);
    border-left: 5px solid var(--bg-alt);
    padding: 1rem;
}

blockquote *:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
}

header {
    background-color: var(--bg-dim);
    border-bottom: 1px solid var(--bg-alt);
    margin: -1rem calc(50% - 50vw) 1rem;
    padding: .5rem;
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
}

nav > *:last-child {
    margin-bottom: .5rem;
}

.nav-link {
    margin-right: .5rem;
}

main {
    padding-bottom: .5rem;
}

#table-of-contents {
    background-color: var(--bg-dim);
    border: 1px solid var(--bg-alt);
    margin-bottom: .5rem;
    padding: .5rem .5rem 0rem;
}

#table-of-contents h2 {
    border: none;
    font-size: 16px;
    line-height: revert;
    margin: 0;
    padding: revert;
}

#table-of-contents ul {
    margin-bottom: 0;
}

#text-table-of-contents {
    margin-bottom: .5rem;
}

img {
    max-width: 100%;
}

p img {
    margin-bottom: 0px;
}

code {
    color: var(--fg-code);
}

code,
pre {
    background-color: var(--bg-dim);
    border-radius: 2px;
    border: 1px solid var(--bg-alt);
    font-size: 90%;
    margin: 1rem 0px;
    padding: 0px 2px;
}

pre {
    max-width: 100%;
    overflow: auto;
    padding: .5rem;
}

table {
    border-collapse: collapse;
    width: 100%;
}

td,
th {
    border: 1px solid var(--bg-alt);
    padding: .5rem;
    text-align: left;
}

th {
    background-color: var(--bg-dim);
}

ol,
ul {
    padding-left: 2rem;
}

footer {
    border-top: 1px solid var(--bg-alt);
    padding: .5rem;
}

footer p {
    font-size: 80%;
    margin: 0;
}

.timestamp { /* org-date */ color: #f0c674; }
.todo { /* org-todo */ color: #ffd400; }

/* colors for #+begin_src diff */
.org-diff-added { background-color: #203d20; }
.org-diff-indicator-added { background-color: #203d20; color: #44bc44; }
.org-diff-indicator-removed { background-color: #5e2526; color: #ff8059; }
.org-diff-refine-added { background-color: #005a36; }
.org-diff-refine-removed { background-color: #852828; }
.org-diff-removed { background-color: #5e2526; }

/* List generated with `htmlize-buffer' for doom-tomorrow-night-theme */

.org-builtin { /* font-lock-builtin-face */ color: #81a2be; }
.org-comment { /* font-lock-comment-face */ color: #5a5b5a; }
.org-comment-delimiter { /* font-lock-comment-delimiter-face */ color: #5a5b5a; }
.org-constant { /* font-lock-constant-face */ color: #de935f; }
.org-custom { /* (:foreground "#cc9393") */ color: #cc9393; }
.org-doc { /* font-lock-doc-face */ color: #717171; }
.org-doom-themes-org-hash-tag { /* doom-themes-org-hash-tag */ color: #717171; }
.org-function-name { /* font-lock-function-name-face */ color: #81a2be; }
.org-hl-todo { /* hl-todo */ color: #cc6666; font-weight: bold; }
.org-keyword { /* font-lock-keyword-face */ color: #b294bb; }
.org-negation-char { /* font-lock-negation-char-face */ color: #c5c8c6; font-weight: bold; }
.org-block { /* org-block */ background-color: #292b2b; }
.org-block-begin-line { /* org-block-begin-line */ color: #5a5b5a; background-color: #292b2b; }
.org-block-end-line { /* org-block-end-line */ color: #5a5b5a; background-color: #292b2b; }
.org-code { /* org-code */ color: #de935f; background-color: #292b2b; }
.org-date { /* org-date */ color: #f0c674; }
.org-document-info-keyword { /* org-document-info-keyword */ color: #5c5e5e; }
.org-document-title { /* org-document-title */ color: #81a2be; font-weight: bold; }
.org-drawer { /* org-drawer */ color: #5a5b5a; }
.org-hide { /* org-hide */ color: #1d1f21; }
.org-indent { /* org-indent */ color: #1d1f21; }
.org-level-1 { /* org-level-1 */ color: #81a2be; font-weight: bold; }
.org-level-2 { /* org-level-2 */ color: #c9b4cf; font-weight: bold; }
.org-level-3 { /* org-level-3 */ color: #b294bb; font-weight: bold; }
.org-level-4 { /* org-level-4 */ color: #a0b9ce; font-weight: bold; }
.org-level-5 { /* org-level-5 */ color: #d6c6db; font-weight: bold; }
.org-level-6 { /* org-level-6 */ color: #c0d0de; font-weight: bold; }
.org-level-7 { /* org-level-7 */ color: #e3d9e7; font-weight: bold; }
.org-level-8 { /* org-level-8 */ color: #e5ecf2; font-weight: bold; }
.org-link { /* org-link */ color: #81a2be; font-weight: bold; text-decoration: underline; }
.org-list-dt { /* org-list-dt */ color: #81a2be; }
.org-meta-line { /* org-meta-line */ color: #717171; }
.org-property-value { /* org-property-value */ color: #717171; }
.org-special-keyword { /* org-special-keyword */ color: #717171; }
.org-table { /* org-table */ color: #b294bb; }
.org-tag { /* org-tag */ color: #717171; }
.org-verbatim { /* org-verbatim */ color: #b5bd68; }
.org-regexp-grouping-backslash { /* font-lock-regexp-grouping-backslash */ color: #c5c8c6; font-weight: bold; }
.org-regexp-grouping-construct { /* font-lock-regexp-grouping-construct */ color: #c5c8c6; font-weight: bold; }
.org-sh-quoted-exec { /* sh-quoted-exec */ color: #c5c8c6; font-weight: bold; }
.org-string { /* font-lock-string-face */ color: #b5bd68; }
.org-type { /* font-lock-type-face */ color: #f0c674; }
.org-variable-name { /* font-lock-variable-name-face */ color: #cc6666; }
.org-warning { /* warning */ color: #f0c674; }
