body {
  font-family: "JetBrains Mono", monospace;
  background-color: #111;
  min-height: 100vh;
  background-image:
    repeating-linear-gradient(
      to bottom,
      #383838 0,
      #383838 3px,
      transparent 3px,
      transparent 6px
    ),
    repeating-linear-gradient(
      to bottom,
      #383838 0,
      #383838 3px,
      transparent 3px,
      transparent 6px
    );
  background-size:
    1px 6px,
    1px 6px;
  background-position:
    0 0,
    100% 0;
  background-repeat: repeat-y, repeat-y;
}

html {
  background-color: #111;
}

.item {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  padding: 0.75rem 0;
  text-decoration: none;
}

.item:hover .item-name {
  color: #e8f55a;
}

.item:hover .dots {
  color: #e8f55a;
  opacity: 0.3;
}

.item:hover .item-meta {
  color: #e8f55a;
  opacity: 0.7;
}

.item-name {
  color: #ffffff;
  font-size: 0.875rem;
  font-weight: 500;
  white-space: nowrap;
  transition: color 0.15s;
}

.dots {
  flex: 1;
  font-size: 0.875rem;
  overflow: hidden;
  white-space: nowrap;
  letter-spacing: 0.15em;
  transition:
    color 0.15s,
    opacity 0.15s;
  background-image: repeating-linear-gradient(
    90deg,
    #3a3a3a 0px,
    #3a3a3a 1px,
    transparent 1px,
    transparent 8px
  );
  background-position: 0 60%;
  background-size: auto 1px;
  background-repeat: repeat-x;
}

.item-meta {
  color: #999;
  font-size: 0.8rem;
  font-weight: 300;
  white-space: nowrap;
  transition:
    color 0.15s,
    opacity 0.15s;
}

.section-rule {
  display: flex;
  align-items: center;
  padding: 0.6rem 2rem;
  margin-left: -2rem;
  margin-right: -2rem;
  background-image:
    repeating-linear-gradient(
      to right,
      #383838 0,
      #383838 3px,
      transparent 3px,
      transparent 6px
    ),
    repeating-linear-gradient(
      to right,
      #383838 0,
      #383838 3px,
      transparent 3px,
      transparent 6px
    );
  background-size:
    100% 1px,
    100% 1px;
  background-position:
    0 0,
    0 100%;
  background-repeat: repeat-x, repeat-x;
  margin-bottom: 0.85rem;
}

.section-rule span {
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #888;
  white-space: nowrap;
}

.item[aria-disabled="true"] {
  pointer-events: none;
  cursor: default;
}

.item[aria-disabled="true"] .item-name {
  color: #555;
}

.item[aria-disabled="true"] .item-meta {
  color: #444;
}

@media (max-width: 40rem) {
  .item {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.35rem;
  }

  .dots {
    display: none;
  }

  .item-name {
    white-space: normal;
  }

  .item-meta {
    white-space: normal;
  }
}

@media (pointer: fine) {
  html,
  body {
    overscroll-behavior: none;
  }

  html body {
    overflow-x: visible !important;
  }
}
