main {
  h1 > a,
  h2 > a,
  h3 > a,
  h1 > a:visited,
  h2 > a:visited,
  h3 > a:visited {
    color: var(--fg-color);
    text-decoration: none;
    position: relative;

    &:hover {
      text-decoration: underline;

      &::before {
        content: "#";
        position: absolute;
        translate: -1em 0;
      }
    }
  }

  nav,
  pre {
    margin-bottom: var(--spacing);
  }

  > header {
    margin-bottom: var(--spacing-xxl);

    border-bottom: 1px solid var(--fg-color);

    time {
      text-decoration: underline;
    }
  }

  nav {
    details {
      summary {
        &:hover {
          cursor: pointer;
        }
      }
    }
  }

  code {
    font-family: monospace;
    font-size: var(--font-size-s);
  }

  p {
    code {
      background-color: var(--bg-color-highlight);
      border: 1px var(--bg-color-highlight) solid;
      border-radius: 0.15rem;
      padding: 0 0.25rem;
      white-space: nowrap;
    }
  }

  pre {
    padding: 0.5rem;
    border: 1px solid var(--bg-color-highlight);
    border-radius: 0.25rem;
    overflow: auto;
  }

  blockquote {
    padding-left: 1rem;
    border-left: 2px solid var(--accent-color);
    font-style: italic;
  }

  > footer {
    font-size: var(--font-size-s);
  }
}
