.prs-separator {
  line-height: 1;
  white-space: nowrap;
  display: flex;
  flex-direction: row;
  align-self: stretch;
  align-items: center;

  &:not(:empty) {
    gap: 1rem;
  }

  &.prs-separator-vertical {
    flex-direction: column;

    &:before,
    &:after {
      width: 0.125rem;
      height: 100%;
    }

    &.prs-separator-start:before,
    &.prs-separator-end:after {
      width: 0.125rem;
      height: 1rem;
    }
  }

  &:before,
  &:after {
    width: 100%;
    height: 0.125rem;
    background-color: currentColor;
    flex-grow: 1;
    content: '';
    opacity: 0.25;
  }

  &.prs-separator-start:before,
  &.prs-separator-end:after {
    width: 1rem;
  }
}
