.ChoiceGroup {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  max-width: 100%;
  border-radius: var(--choice-radius);
  -webkit-box-shadow: inset 0 0 0 var(--control-border-width) var(--color-control-bg-border-default);
          box-shadow: inset 0 0 0 var(--control-border-width) var(--color-control-bg-border-default);
}

  .ChoiceGroup_view_primary {
      --choice-bg-color: var(--color-control-bg-primary);
      --choice-text-color: var(--color-control-typo-primary);
    }

  .ChoiceGroup_view_ghost {
      --choice-bg-color: var(--color-control-bg-ghost);
      --choice-text-color: var(--color-control-typo-ghost);
    }

  .ChoiceGroup_view_secondary {
      --choice-bg-color: var(--color-control-bg-secondary);
      --choice-text-color: var(--color-control-typo-secondary);
    }

  .ChoiceGroup_view_secondary .ChoiceGroup-Label_checked {
        -webkit-box-shadow: inset 0 0 0 1px var(--color-control-bg-border-secondary);
                box-shadow: inset 0 0 0 1px var(--color-control-bg-border-secondary);
      }

  .ChoiceGroup_size_xs {
      --choice-height: var(--control-height-xs);
      --choice-font-size: var(--control-text-size-xs);
      --choice-space: var(--control-space-xs);
    }

  .ChoiceGroup_size_s {
      --choice-height: var(--control-height-s);
      --choice-font-size: var(--control-text-size-s);
      --choice-space: var(--control-space-s);
    }

  .ChoiceGroup_size_m {
      --choice-height: var(--control-height-m);
      --choice-font-size: var(--control-text-size-m);
      --choice-space: var(--control-space-m);
    }

  .ChoiceGroup_size_l {
      --choice-height: var(--control-height-l);
      --choice-font-size: var(--control-text-size-l);
      --choice-space: var(--control-space-l);
    }

  .ChoiceGroup_form_default,
    .ChoiceGroup_form_brick {
      --divider-width: var(--control-border-width);
      --divider-height: 65%;
    }

  .ChoiceGroup_form_default {
      --choice-radius: var(--control-radius);
    }

  .ChoiceGroup_form_brick {
      --choice-radius: 0;
    }

  .ChoiceGroup_form_round {
      --choice-radius: 99em;
      --divider-width: 4px;
      --divider-height: 4px;
    }

  .ChoiceGroup_form_round .ChoiceGroup-Label {
        padding-right: calc(var(--choice-space)*1.2 + var(--control-border-width));
        padding-left: calc(var(--choice-space)*1.2);
      }

  .ChoiceGroup_form_round .ChoiceGroup-Label::after {
          border-radius: 99em;
        }

  .ChoiceGroup-Label {
    position: relative;
    z-index: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: var(--choice-height);
    padding: 0 var(--choice-space) 0 var(--choice-space);
    color: var(--color-control-typo-default);
    border-radius: var(--choice-radius);
    font-size: var(--choice-font-size);
    font-weight: normal;
    line-height: calc(var(--choice-height) - var(--control-border-width)*2);
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: background-color 0.15s ease, color 0.15s ease,
      fill 0.15s ease, -webkit-box-shadow 0.15s ease;
    transition: background-color 0.15s ease, color 0.15s ease,
      fill 0.15s ease, -webkit-box-shadow 0.15s ease;
    transition: background-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease,
      fill 0.15s ease;
    transition: background-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease,
      fill 0.15s ease, -webkit-box-shadow 0.15s ease;
  }

  .ChoiceGroup-Input {
    position: absolute;
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
  }

  .ChoiceGroup-Label:last-child {
    padding-right: var(--choice-space);
  }

  .ChoiceGroup-Label:not(:last-child) {
    margin-right: var(--control-border-width);
  }

  /* Палочка */

  .ChoiceGroup-Label:not(:first-child)::after {
    content: '';
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 0;
    width: var(--divider-width);
    height: var(--divider-height);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .ChoiceGroup-Label:not(.ChoiceGroup-Label_checked):hover {
      color: var(--color-control-typo-secondary-hover);
    }

  .ChoiceGroup-Label:not(.ChoiceGroup-Label_checked)::after {
      background-color: var(--color-control-bg-border-default);
    }

  .ChoiceGroup-Label_checked {
    color: var(--choice-text-color);
    background-color: var(--choice-bg-color);
  }

  .ChoiceGroup-Label_checked + .ChoiceGroup-Label::after {
      background-color: transparent;
    }

  .ChoiceGroup-Text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .ChoiceGroup:not(.ChoiceGroup_onlyIcon) .ChoiceGroup-Icon {
    margin-right: calc(var(--choice-space)*0.5);
  }

  .ChoiceGroup_onlyIcon .ChoiceGroup-Label {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: calc(var(--choice-height) + var(--control-border-width)*2);
      padding: 0;
      padding-right: var(--control-border-width);
    }

  .ChoiceGroup_width_full {
      width: 100%;
    }
