.survey {
  position: relative;
  display: block;
  margin: calc(1.5vw + 20px) 0;
  background-color: $color-secondary-light;
  background-color: var(--theme-color-secondary-dimmed, $color-secondary-light);
  border-bottom: 8px solid $color-secondary;
  border-bottom: 8px solid var(--theme-color-secondary, $color-secondary);
  transition: height 0.6s $easeInOutCubic;

  form {
    @include show;
    transform: translate3d(0, 0, 0) scale(1);
    padding: 40px 42px 38px;
    min-height: 300px;

    @media(max-width: 767px) {
      padding: 20px 16px 18px;
    }
  }

  h3, h4 {
    @media(max-width: 767px) {
      font-size: 26px;
    }
  }

  legend {
    @include h4;
    //@extend .title;
    color: $color-primary;
    color: var(--theme-color-primary, $color-primary);
    margin: 0 0 5px;
    border-bottom: 0;
  }

  input[type="radio"] {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    border-radius: 18px;
    opacity: 0.00001;
    margin: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;

    &:checked + label {
      background-color: $color-secondary-dark;
      background-color: var(--theme-color-secondary-intensed, $color-secondary-dark);
      color: $color-white;
    }

    + label {
      max-width: none;
    }

    &:not(:checked):hover + label {
      background-color: darken(#9AD7A3, 4);
      box-shadow: 0 0 0 5px rgba(#9AD7A3, 0.45);
    }
  }

  label {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 22px;
    line-height: 1.2;
    padding: 10px 20px;
    background-color: #9AD7A3;
    border-radius: 18px;
    transition: 0.3s ease;
    font-family: "Korb", sans-serif;
    box-shadow: 0 0 0 2px rgba(#9AD7A3, 0);
  }

  fieldset {
    border: 0;
    padding: 0;
  }

  fieldset + fieldset {
    margin-top: calc(10px + 2%);
  }

  ul {
    margin: 0 -2px;
    list-style: none;
    padding: 0;

    li {
      position: relative;
      padding: 0;
      margin: 15px 0;

      &:after {
        display: none;
      }
    }
  }

  .btn-wrapper {
    display: none;
  }

  .result-wrapper {
    .title {
      @include h4;
      font-weight: 400;
    }
  }

  .sub-result-wrapper {
    position: relative;
    display: flex;
    justify-content: space-between;
    font-size: 22px;
    line-height: 1.2;
    padding: 10px 15px;
    align-items: center;
    margin: 15px 0;
    font-family: "Korb", sans-serif;

    div {
      position: relative;
      display: block;

      &.answer {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: calc(100% - 60px);
      }
    }

    .bar {
      position: absolute;
      display: block;
      left: 0;
      width: 0;
      top: 0;
      bottom: 0;
      transition: 0.8s $easeInOutCubic;
      min-width: 1px;
      background-color: #9AD7A3;
    }
  }

  .survey-result {
    @include hide;
    transform: translate3d(0, 0, 0) scale(0.9);
    padding: 40px 42px 38px;

    @media(max-width: 767px) {
      padding: 20px 16px 18px;
    }

    h3 {
      margin-bottom: 0.9em;
    }
  }

  &.show-result {
    .survey-result {
      @include show(0.3s);
      transform: translate3d(0, 0, 0) scale(1);
    }
    form {
      position: absolute;
      width: 100%;
      @include hide();
      transform: translate3d(0, 0, 0) scale(0.9);
    }
  }
}
