.checkbox-item {
  display: block;
  position: relative;
  padding-left: 45px;
  width: 100%;
  cursor: pointer;

  input[type='checkbox'],
  input[type='radio'] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 1px;
    width: 1px;
    left: 0;
    top: 50%;
    pointer-events: none;
  }

  &--restaurant {
    padding: 0 !important;
    color: var(--blue);
    border: 1px solid var(--blue);
    // pointer-events: none;
    white-space: unset;
    text-align: left;
    span {
      font-size: 32px;
      margin-right: 8px;
    }
    &__btn {
      display: flex;
      align-items: center;
      padding: 5px;
      span {
        font-size: 32px;
        margin-right: 8px;
      }
    }

    &.active {
      color: var(--white);
      background-color: var(--blue);
    }
  }

  .checkmark {
    position: absolute;
    top: 49%;
    transform: translateY(-50%);
    left: 0;
    height: 30px;
    width: 30px;
    border: 1px solid var(--txt-color);

    &--radio {
      border-radius: 50%;
    }
  }

  &:hover input ~ .checkmark {
    background-color: var(--txt-color-lighten);
  }

  input:checked ~ .checkmark {
    background-color: var(--txt-color);
  }

  &:hover input ~ .checkbox-item--restaurant__btn {
    background-color: var(--blue-light);
  }

  input:checked ~ .checkbox-item--restaurant__btn {
    background-color: var(--blue);
    color: white;
  }

  .checkmark:after {
    content: '';
    position: absolute;
    display: none;
  }

  input:checked ~ .checkmark:after {
    display: block;
  }
}
