:root {
  --background-color: #f8fafc;
  --text-color: #000000;
  --link-color: #1a0dab;
  --subtitle-color: #792c00;
}

@media (prefers-color-scheme: dark) {
  :root {
    --background-color: #202020;
    --text-color: #e0e0e0;
    --link-color: #86a5fc;
    --subtitle-color: #ffae00;
  }
}

.disabled {
  display: none;
}

.use-custom-pointer,
.use-custom-pointer :hover,
.use-custom-pointer :link {
  cursor: none;
}

#cursor-container {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
}

#cursor {
  --size: 30rem;

  width: var(--size);
  height: var(--size);
}

body {
  color: var(--text-color);
  font-family: FuzzyBubbles, Arial, sans-serif;
  margin: 1rem;
  padding: 0;

  background-color: var(--background-color);
  background-size: 40px 40px;
  background-image:
    linear-gradient(to right, rgba(128, 128, 128, 0.1) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(128, 128, 128, 0.1) 1px, transparent 1px);
}

details {
  /* margin-bottom: 1rem; */
  font-style: italic;
  color: var(--text-color-variant);
}

details summary {
  margin: 0.5rem 0 1rem;
}

a {
  color: var(--link-color);
  text-decoration: none;
}

p {
  line-height: 1.1;
  margin: 0;
  padding: 0;
  margin-bottom: 0.35rem;
  padding-bottom: 0.35rem;
  max-width: 100%;
}

h1,
h2 {
  margin-top: 2rem;
  margin-bottom: 0.5rem;
  width: 100%;
}

h3,
h4,
h5,
h6 {
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  font-weight: bold;
}

hr {
  border: none;
  border-top: 2px solid #7c7c7c;
  margin: 1rem 0;
  width: 100%;
}

video {
  max-width: 400px;
  max-height: 400px;
}

div {
  max-width: 100%;
}
