body {
  overflow-x: hidden;
}

#banner {
  background-image: url("./img/articleHeader.png");
  background-size: cover;
  height: 235px;
  text-align: center;
  border-radius: 10px;
  margin: auto;
  margin-top: 1em;
  margin-bottom: 0.5em;
  width: calc(min(60em, 100vw) - 4em);
  min-width: min(90%, 600px);
  padding: 5px;
}

#banner-space {
  padding-top: 1.5em;
}

#category {
  text-align: left;
  margin-top: 170px;
  padding-left: 5px;
  padding-top: 2px;
  padding-bottom: 2px;
  color: rgb(239, 241, 245);
  background-color: rgb(53, 57, 75);
  display: inline-block;
  width: 60%;
  font-family: Arimo, sans-serif;
  text-transform: uppercase;
}

#front {
  overflow: hidden;
  font-family: "Computer Modern Serif", sans-serif;
  color: rgb(42, 45, 65);
  margin: auto;
  text-align: justify;
  width: calc(min(42em, 70vw) - 2.8em);
  min-width: min(85%, 600px);
}

h1 {
  margin-top: 1.5em;
  font-size: 3em;
  font-weight: 200;
  font-family: Arimo, sans-serif;
  line-height: 1.3em;
  text-align: left;
  color: rgb(30, 105, 200);
}

#subheading {
  margin-top: -0.5em;
  font-size: 1.5em;
  font-weight: 200;
  font-family: Arimo, sans-serif;
  margin-bottom: 2em;
  text-align: left;
  color: rgb(92, 95, 119);
}

.author-name {
  display: block;
  font-weight: 700;
  margin-bottom: -1em;
}

.author-title {
  margin-top: 0.7em;
  display: block;
}

#author-card {
  font-family: "Computer Modern Serif", sans-serif;
  background-color: rgb(235, 235, 230);
  float: left;
  padding-left: 15px;
  padding-right: 30px;
  padding-top: 5px;
  padding-bottom: 5px;
  display: block;
  margin-top: 2em;
  margin-bottom: 0.4em;
  margin-right: 3em;
}

#abstract {
  line-height: 1.8em;
  color: rgb(32, 35, 59);
  font-family: Arimo, sans-serif;
  font-weight: 200;
}

h2::before {
  content: "";
  display: inline-block; /* Makes the rectangle a block element */
  width: 12px; /* Set the width of the rectangle */
  height: 25px; /* Set the height of the rectangle */
  margin-right: 10px;
  background-color: rgb(142, 145, 169);
  transform: translateY(4px);
}

h2 {
  margin-top: 1.3em;
  margin-bottom: 0.2em;
  font-family: Arimo, sans-serif;
  font-weight: 300;
  font-size: 1.6em;
  color: rgb(30, 105, 200);
}

h3 {
  margin-top: 1em;
  margin-bottom: -0.2em;
  font-family: Arimo, sans-serif;
  font-weight: 300;
  font-size: 1.2em;
  color: rgb(30, 105, 200);
}

h4 {
  margin-top: 0.8em;
  margin-bottom: -0.5em;
  font-family: Arimo, sans-serif;
  font-weight: 300;
  font-size: 1em;
}

h5 {
  margin-top: 0.5em;
  margin-bottom: -0.7em;
  font-family: Arimo, sans-serif;
  font-weight: 300;
  font-size: 0.95em;
}

h6 {
  margin-top: 0.3em;
  margin-bottom: -1em;
  font-family: Arimo, sans-serif;
  font-weight: 300;
  font-size: 0.9em;
}

h2.alt {
  margin-top: 0.8em;
  margin-bottom: -0.2em;
  font-family: Arimo, sans-serif;
  font-weight: 300;
  font-size: 1.4em;
  color: black;
  text-transform: uppercase;
}

h2.alt::before {
  display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-align: left;
}

ol,
ul {
  margin-top: -0.4em;
  margin-bottom: -0.4em;
}

li:not(:last-child) {
  margin-bottom: 0.4em;
}

p:not(#abstract *):not(#subheading) {
  color: black;
}

center {
  display: block;
  margin-left: 3em;
  margin-right: 3em;
}

.article-image {
  margin: auto;
  display: block;
}

hr {
  margin-top: 2em;
  border: 1px dashed black;
}

hr.alt {
  border: 1px dashed rgb(30, 105, 200);
}

.boxed {
  border: 1px solid black;
  display: inline-block;
  padding-left: 20px;
  padding-right: 20px;
  background-color: white;
  min-width: min(100%, 10em);
  transform: translateX(-50%);
}

#front .katex,
#back .katex {
  font-size: 1em;
}

#front code,
#front pre,
#back code,
#back pre,
textarea {
  font-family:
    Computer Modern Typewriter,
    monospace;
}

textarea.value-source {
  border-radius: 12px;
  border: 1px solid hsl(215, 15%, 85%);
  resize: none;
  margin-left: 50%;
  transform: translateX(-50%);
  padding: 1em;
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}

textarea.value-source:focus {
  outline: none;
}

a,
a:visited {
  color: rgb(20, 85, 180);
  text-decoration: none;
}
