body {
  min-height: 100vh;
  padding: 4rem;

  color: var(--fg);
  background-color: var(--bg);

  font-family: system-ui, sans-serif;

  display: flex;
  flex-direction: column;
}

@media (max-width: 768px) {
  body {
    padding: 1rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.main-page {
  flex: 1;
  container: main-page / inline-size;

  width: 80vw;
  margin: auto;

  margin-top: 2rem;
}

@container main-page (width < 768px) {
  .main-page {
    width: 100vw;
  }
}

a {
  color: var(--special);
  text-decoration: none;

  &:hover {
    color: var(--special);
    text-decoration: underline;
  }
}
