.lined-list {
  list-style: none;
  margin: 0 var(--padding-med) var(--padding-sm) 5em;
  padding: 0 0 0 var(--padding-sm);
  position: relative;
  /* max-width: 300px; */
}

.lined-list::before {
  content: "";
  position: absolute;
  left: var(--padding-sm);
  top: 19px;
  bottom: 0;
  width: 1px;
  background: var(--light);
  z-index: 1;
}

.lined-list li {
  position: relative;
  padding: 6px 0 6px var(--padding-sm);
  line-height: var(--smaller-line-height);
}

/* bullet */
.lined-list li::before {
  content: "";
  position: absolute;
  left: -3px;
  top: calc(50% - 3px);
  width: 5px;
  height: 5px;
  background: black;
  border-radius: 50%;
  border: 1px solid var(--background);
  z-index: 2;
}
.lined-list .fave::before {
  content: "★";
  font-size: small;
  position: absolute;
  left: -6px;
  top: calc(50% - 10px);
  width: 11px;
  height: 0;
  display: block;
  text-align: center;
  background: none;
  z-index: 2;
}
.lined-list .past::before {
  background: var(--light);
}
/* date on the left */
.lined-list .date {
  position: absolute;
  font-size: small;
  width: 60px;
  text-align: right;
  left: calc(-60px - var(--padding-sm));
  top: calc(50% - var(--smaller-line-height) * 12px / 2 + 1px);
  white-space: nowrap; /* prevents date from breaking lines */
}

.lined-list .date {
  width: 60px;
  left: calc(-60px - var(--padding-sm));
}

@media (1000px <= width <= 1097px) {
  .lined-list::before {
    top: 29px;
  }
}

@media (330px <= width <= 455px) {
  .lined-list::before {
    top: 27px;
  }
}
