:root {
  --accent-color: #4210f1;
  --accent-color-highlight: #b14ff5;
}

a:not(.stealth-link) {
  color: #fff;
  filter: drop-shadow(0px 0px 0px transparent);
  transition: color 0.08s, filter 0.08s;
}
a:not(.stealth-link):hover {
  color: var(--accent-color-highlight);
  filter: drop-shadow(0px 0px 4px var(--accent-color-highlight));
}
a.stealth-link {
  color: #fff;
  text-decoration: none;
}

body {
  padding: 0px;
  margin: 0px;
  overflow-x: hidden;
  color: #fefeff;
  background-color: #101012;
  font-family: Roboto, Avenir, Helvetica, Arial, sans-serif;
  font-weight: 300;
  width: 100%;
  min-height: 100vh;
  text-underline-offset: 3px;
  font-size: 16px;
  display: flex;
  justify-content: center;
  color-scheme: dark;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
}
main {
  margin: auto;
  max-width: 90%;
  width: 600px;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2em;
  padding-top: 3em;
}
.center {
  align-self: center;
  text-align: center;
}
pre {
  display: inline;
}
em {
  font-weight: light;
}
.big {
  font-size: 28px;
}
.paragraph {
  line-height: 1.3;
  text-align: justify;
}

@keyframes glow {
  from {
    filter: drop-shadow(0px 0px 32px #4210f1) drop-shadow(0px 0px 4px #222230);
  }
  to {
    filter: drop-shadow(0px 0px 64px #4210f1) drop-shadow(0px 0px 6px #222230);
  }
}

.glow-slight {
  animation: 4s glow-slight infinite ease-in-out;
  animation-direction: alternate;
}

@keyframes glow-slight {
  from {
    filter: drop-shadow(0px 0px 6px #222230);
  }
  to {
    filter: drop-shadow(0px 0px 4px #222230);
  }
}

h1 {
  position: relative;
  z-index: 2;
  margin-top: 0;
  margin-bottom: 0;
}

.neat-bg-container {
  position: relative;
  /*filter: drop-shadow(0px 0px 6px var(--accent-color));*/
  /*box-shadow: 0px 0px 6px var(--accent-color);*/
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.neat-bg {
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: -75vw;
  right: -75vw;
  background-color: var(--accent-color);
}

li {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}

.has-tooltip {
  text-decoration: underline dotted;
  cursor: help;
}

.overlay-back {
  pointer-events: auto;
  position: absolute;
  inset: 0;
  cursor: pointer;
}

blockquote {
  margin-left: 8px;
  padding-left: 8px;
  border-left: 1.5px solid #aaa;
}

footer {
  margin-bottom: 6em;
}
