
:root {
  --green1: #123218;
  --green2: #254f1b;
  --green3: #356c22;
  --green4: #5e8e40;
  --green5: #85aa5f;

  --blue1: #1b2459;
  --blue2: #153a79;
  --blue3: #2f5394;
  --blue4: #417eaf;
  --blue5: #69a8c6;

  --purple1: #2e1e58;
  --purple2: #493281;
  --purple3: #6a45a6;
  --purple4: #855aa3;
  --purple5: #9b77b5;

  --red1: #4b1313;
  --red2: #682017;
  --red3: #84301c;
  --red4: #9c4830;
  --red5: #c46849;

  --grey1: #202124;
  --grey2: #33333b;
  --grey3: #605b66;
  --grey4: #a79fa7;
  --grey5: #c5bcbc;

  --site-width: 1000px;
  --vert-content-margin: 0.3rem;
  --accent1: var(--purple4);
  --link: var(--blue3);
  --black: var(--grey1);
  --grey: var(--grey3);
  --background: var(--grey5);
  --background-tooltip: var(--grey5);

  --font-size: 1.2rem;
  --line-height: 1.6rem;
  --font-family: "Source Serif Pro";

  --scale: 2;
}

/*
@media (min-height: 1081px) {
  :root {
    --scale: 2;
  }
}

@media (min-height: 2161px) {
  :root {
    --scale: 3;
  }
}

@media (min-height: 3241px) {
  :root {
    --scale: 4;
  }
}
 */

body::before,
body::after {
  content: '';
  position: fixed;
  top: 0;
  height: 100vh;
  width: 50%;
  background-image: url('/static/images/background.png');
  background-repeat: no-repeat;
  z-index: -1;

  image-rendering: pixelated; /* For Chrome/Safari */
  image-rendering: -moz-crisp-edges; /* For Firefox */
  image-rendering: crisp-edges; /* Fallback */

  background-size: calc(960px * var(--scale)) calc(1080px * var(--scale));
}

body::before {
  left: 0;
  background-position: top right;
}

body::after {
  right: 0;
  background-position: top right;
  /* Flip the right side horizontally */
  transform: scaleX(-1);
}

body {
//  text-align: justify;
  font-family: var(--font-family);
  font-size: var(--font-size);
  line-height: var(--line-height);
  color: var(--black);
  background-color: var(--background);
  color: var(--grey1);
  word-spacing: 0.25ch;
  font-weight: 400;
}

#content, #header, #footer {
  min-width: 500px;
  max-width: min(var(--site-width), 90vw);
  margin: 0 auto;
  padding: 5px 25px;

  background-color: var(--background);
  border: 2px double var(--grey1);
  margin-bottom: 1.2rem;
}

#header {
  display: flex;
}

#looking-for-work {
  background-color: var(--red2);
  color: var(--grey5);
  padding: 5px 25px;
  margin-left: auto;
  margin-top: -0.32rem;
  margin-bottom: -0.32rem;
  margin-right: -1.55rem;
  border: 2px double var(--purple5);
}

#looking-for-work a, #looking-for-work a:visited {
  color: var(--blue5) !important;
}


#footer {
padding-top: 1rem;
padding-bottom: 1rem;
}

code {
  font-size: calc(var(--font-size) * 0.9);
}

hr {
  border: 0;
  border-top: 2px dotted var(--black);
}

.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.navbar-link {
  margin-right: 5px;
  margin-left: 5px;
}

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

#header a, #header a:visited{
  color: var(--purple2);
}

#content h2, #content h3, #content h4, #content h5 {
  margin-bottom: 0.2rem;
  margin-top: 0.5rem;
}

#content h2 {
  margin-top: 1rem;
}

#header hr {
  margin-bottom: var(--vert-content-margin);
}

#footer hr {
  margin-top: var(--vert-content-margin);
}

#publish-date, #modified-date {
  font-style: italic;
}

.src, .example {
  font-family: "monospace";
  font-size: 1rem;
}

/* TOC */

#table-of-contents {
  z-index: 1;
  margin-top: 105px;
  margin-right: 5%;
  font-size: calc(var(--font-size) * 0.8);
  position: fixed;
  right: 0em;
  top: 0em;
  background: var(--background-toc);
  text-align: right;
  min-height: 3rem;

  box-shadow: 0 0 0.5em var(--shadow-toc);
  -webkit-box-shadow: 0 0 0.5em var(--shadow-toc);
  -moz-box-shadow: 0 0 0.5em var(--shadow-toc);
  -webkit-border-bottom-left-radius: 5px;
  -moz-border-radius-bottomleft: 5px;
  /* ensure doesn't flow off the screen when expanded */
  max-height: 80%;
  overflow: auto;

}
#table-of-contents h2 {
  font-size: 13pt;
  max-width: 9em;
  border: 0;
  font-weight: normal;
  margin-top: 0.75em;
  margin-bottom: 0.75em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0.05em;
  padding-bottom: 0.05em; }
#table-of-contents #text-table-of-contents {
  display: none;
  text-align: left; }
#table-of-contents:hover #text-table-of-contents {
  display: block;
  padding: 0.5em;
  margin-top: -1.5em;
  padding-right: 20px;
}

pre                                      {background-color:var(--grey1); color:var(--grey5);}
pre span.org-builtin                     {color:var(--blue4);font-weight:bold;}
pre span.org-string                      {color:var(--green4);}
pre span.org-keyword                     {color:var(--blue4);}
pre span.org-variable-name               {color:var(--purple5);}
pre span.org-function-name               {color:var(--blue5);}
pre span.org-type                        {color:var(--purple3);}
pre span.org-preprocessor                {color:var(--grey5);font-weight:bold;}
pre span.org-constant                    {color:var(--red2);}
pre span.org-comment-delimiter           {color:var(--grey5);}
pre span.org-comment                     {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-1            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-2            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-3            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-4            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-5            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-6            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-7            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-8            {color:var(--grey5);font-style:italic}
pre span.org-outshine-level-9            {color:var(--grey5);font-style:italic}
pre span.org-rainbow-delimiters-depth-1  {color:var(--grey4);}
pre span.org-rainbow-delimiters-depth-2  {color:var(--blue1);}
pre span.org-rainbow-delimiters-depth-3  {color:var(--green1);}
pre span.org-rainbow-delimiters-depth-4  {color:var(--red1);}
pre span.org-rainbow-delimiters-depth-5  {color:var(--purple1);}
pre span.org-rainbow-delimiters-depth-6  {color:var(--blue4);}
pre span.org-rainbow-delimiters-depth-7  {color:var(--green3);}
pre span.org-rainbow-delimiters-depth-8  {color:var(--red3);}
pre span.org-rainbow-delimiters-depth-9  {color:var(--purple3);}
pre span.org-sh-quoted-exec              {color:var(--purple2);}

.TODO { color: var(--red3); }
.DONE { color: var(--green3); }
