@use 'styles/mixins' as *;

:host {
  display: block;
  width: 400px;
  padding: 24px 20px;
  border-radius: 8px;
  background-color: var(--color-always-white);
}

.header {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--color-secondary);
}

.title {
  @include flex(center, space-between);
}

.close-icon {
  @include rectangle(16px);

  cursor: pointer;
  transition: opacity 100ms ease-in-out;

  &:hover {
    opacity: 0.5;
  }
}

.proposal-title {
  margin-top: 20px;
  font-size: 15px;
}

.body {
  margin-top: 20px;
}

.option {
  padding: 12px 16px;
  border: 1px solid var(--color-secondary);
  border-radius: 8px;
  font-size: 15px;
  cursor: pointer;
  transition: all 100ms ease-in-out;

  &:not(:last-child) {
    margin-bottom: 12px;
  }

  &:hover {
    background-color: rgba(var(--color-secondary-rgb), 0.4);
  }

  &.selected {
    &.yes {
      border-color: var(--color-indication-success);
      background-color: var(--color-indication-success);
      color: var(--color-always-white);
    }

    &.no {
      border-color: var(--color-indication-error);
      background-color: var(--color-indication-error);
      color: var(--color-always-white);
    }

    &.no-with-veto {
      border-color: var(--color-indication-error-dark);
      background-color: var(--color-indication-error-dark);
      color: var(--color-always-white);
    }

    &.abstain {
      border-color: var(--color-background-secondary);
      background-color: var(--color-background-secondary);
      color: var(--color-always-white);
    }
  }
}

.description {
  margin-top: 20px;
  font-size: 12px;
}

.text-error {
  color: var(--color-indication-error-dark);
}

.reset-button {
  margin-top: 28px;
}
