.l-radio-group {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--td-text-color-primary);
  font-size: var(--td-font-size-body-medium);
  font-family: var(--td-font-family);
  list-style: none;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  border-radius: var(--td-radius-default);
  scrollbar-color: var(--td-scrollbar-color);
  scrollbar-width: thin;
}
.l-radio-group::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}
.l-radio-group::-webkit-scrollbar-thumb {
  background-color: var(--td-scrollbar-color);
  background-clip: content-box;
  border: 0px solid transparent;
  border-radius: 7px;
}
.l-radio-group::-webkit-scrollbar-thumb:vertical:hover,
.l-radio-group::-webkit-scrollbar-thumb:horizontal:hover {
  background-color: var(--td-scrollbar-hover-color);
}
.l-radio-group .l-radio {
  margin-right: 24px;
}
.l-radio-group.l-radio-group__outline {
  flex-wrap: wrap;
  row-gap: 4px;
}
.l-radio-group.l-radio-group__outline .l-radio-button.l-is-checked {
  color: var(--td-brand-color);
}
.l-radio-group.l-radio-group__outline .l-radio-button.l-is-disabled.l-is-checked {
  color: var(--td-brand-color-disabled);
  border-color: var(--td-brand-color-disabled);
  background-color: var(--td-bg-color-specialcomponent);
}
.l-radio-group.l-radio-group--filled {
  border-color: var(--td-bg-color-component);
  padding: 2px;
  border-radius: var(--td-radius-default);
  background-color: var(--td-bg-color-component);
  position: relative;
}
.l-radio-group.l-radio-group--filled .l-radio-group__bg-block {
  position: absolute;
  left: 2px;
  top: 2px;
  width: 0;
  height: calc(100% - 4px);
  background-color: var(--td-bg-color-container-select);
  transition: all 0.2s cubic-bezier(0.38, 0, 0.24, 1);
  border-radius: var(--td-radius-small);
}
.l-radio-group.l-radio-group--filled .l-radio-button {
  color: var(--td-text-color-secondary);
  border: 0;
  background-color: transparent;
}
.l-radio-group.l-radio-group--filled .l-radio-button:hover {
  color: var(--td-text-color-primary);
}
.l-radio-group.l-radio-group--filled .l-radio-button::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: calc(100% - 16px);
  background-color: var(--td-component-border);
  transition: opacity 0.2s cubic-bezier(0, 0, 0.15, 1);
}
.l-radio-group.l-radio-group--filled .l-radio-button:first-child::before {
  opacity: 0;
}
.l-radio-group.l-radio-group--filled .l-radio-button.l-is-checked {
  position: relative;
  color: var(--td-text-color-primary);
  z-index: 1;
  border: 0;
  transition: color 0.2s linear;
}
.l-radio-group.l-radio-group--filled .l-radio-button.l-is-checked::before {
  opacity: 0;
}
.l-radio-group.l-radio-group--filled .l-radio-button.l-is-checked + label::before {
  opacity: 0;
}
.l-radio-group.l-radio-group--filled .l-radio-button.l-is-disabled {
  background-color: transparent;
}
.l-radio-group.l-radio-group--filled .l-radio-button.l-is-disabled.l-is-checked {
  color: var(--td-text-color-disabled);
}
.l-radio-group.l-radio-group--filled .l-radio-button.l-is-disabled.l-is-checked ~ .l-radio-group__bg-block {
  background-color: var(--td-bg-color-component-disabled);
}
.l-radio-group.l-radio-group--primary-filled .l-radio-group__bg-block {
  background-color: var(--td-brand-color);
}
.l-radio-group.l-radio-group--primary-filled .l-radio-button.l-is-checked {
  color: var(--td-text-color-anti);
}
.l-radio-group.l-radio-group--primary-filled .l-radio-button.l-is-disabled.l-is-checked {
  color: var(--td-text-color-anti);
}
.l-radio-group.l-radio-group--primary-filled .l-radio-button.l-is-disabled.l-is-checked ~ .l-radio-group__bg-block {
  background-color: var(--td-brand-color-disabled);
}
.l-radio-group.l-size-small .l-radio-button {
  height: 20px;
  padding: 0px 4px;
  font: var(--td-font-body-small);
}
.l-radio-group.l-size-small .l-radio-button::before {
  height: calc(100% - 16px);
}
.l-radio-group.l-size-medium .l-radio-button {
  height: 28px;
  padding: 4px 16px;
  font: var(--td-font-body-medium);
}
.l-radio-group.l-size-medium .l-radio-button::before {
  height: calc(100% - 20px);
}
.l-radio-group.l-size-large .l-radio-button {
  height: 36px;
  padding: 8px 24px;
  font: var(--td-font-body-large);
}
.l-radio-group.l-size-large .l-radio-button::before {
  height: calc(100% - 24px);
}
.l-radio-group .l-radio-button {
  cursor: pointer;
  position: relative;
  border: 1px solid;
  border-color: var(--td-border-level-2-color);
  border-right: 0;
  display: inline-flex;
  align-items: center;
  transition: color 0.2s cubic-bezier(0, 0, 0.15, 1);
  color: var(--td-text-color-primary);
  white-space: nowrap;
  box-sizing: border-box;
}
.l-radio-group .l-radio-button:first-child {
  border-radius: var(--td-radius-small) 0 0 var(--td-radius-small);
}
.l-radio-group .l-radio-button:last-child {
  border-right: 1px solid;
  border-right-color: var(--td-border-level-2-color);
  border-radius: 0 var(--td-radius-small) var(--td-radius-small) 0;
}
.l-radio-group .l-radio-button__former {
  opacity: 0;
  height: 0;
  width: 0;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--td-text-color-primary);
  font-size: var(--td-font-size-body-medium);
  font-family: var(--td-font-family);
  list-style: none;
}
.l-radio-group .l-radio-button:hover {
  color: var(--td-brand-color);
}
.l-radio-group .l-radio-button.l-is-checked {
  border-right: 1px solid;
  border-color: var(--td-brand-color);
  transition: border-color 0.2s cubic-bezier(0, 0, 0.15, 1);
}
.l-radio-group .l-radio-button.l-is-checked + .l-radio-button {
  border-left: 0;
}
.l-radio-group .l-radio-button.l-is-disabled {
  cursor: not-allowed;
  color: var(--td-text-color-disabled);
  background-color: var(--td-bg-color-component-disabled);
}
.l-radio-group .l-radio-button.l-is-disabled:hover {
  border-color: var(--td-border-level-2-color);
  color: var(--td-text-color-disabled);
}
.l-radio-group .l-radio-button.l-is-disabled:hover::after {
  width: 0;
}
.l-radio-group .l-radio-button.l-is-disabled.l-is-checked {
  color: var(--td-text-color-disabled);
}
.l-radio-group .l-radio-button.l-is-disabled.l-is-checked::after {
  width: 0;
}
.l-radio {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--td-text-color-primary);
  font-size: var(--td-font-size-body-medium);
  font-family: var(--td-font-family);
  list-style: none;
  position: relative;
  cursor: pointer;
}
.l-radio__former {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: var(--td-text-color-primary);
  font-size: var(--td-font-size-body-medium);
  font-family: var(--td-font-family);
  list-style: none;
  opacity: 0;
  position: absolute;
}
.l-radio__input {
  position: relative;
  display: inline-block;
  width: 16px;
  height: 16px;
  vertical-align: middle;
  border-radius: var(--td-radius-circle);
  border: 1px solid var(--td-border-level-2-color);
  background-color: var(--td-bg-color-container);
  transition: border 0.2s cubic-bezier(0, 0, 0.15, 1);
}
.l-radio__input::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  margin-left: -8px;
  transform: scale(0.5);
  opacity: 0;
  border-radius: var(--td-radius-circle);
  background-color: var(--td-brand-color);
  transition: all 0.2s cubic-bezier(0, 0, 0.15, 1);
}
.l-radio__label {
  display: inline-block;
  margin-left: 8px;
  color: var(--td-text-color-primary);
  vertical-align: middle;
  font: var(--td-font-body-medium);
  white-space: nowrap;
}
.l-radio:hover .l-radio__input {
  border-color: var(--td-brand-color);
}
.l-radio.l-is-checked .l-radio__input {
  border-color: var(--td-brand-color);
}
.l-radio.l-is-checked .l-radio__input::after {
  opacity: 1;
}
.l-radio.l-is-disabled {
  cursor: not-allowed;
}
.l-radio.l-is-disabled .l-radio__label {
  color: var(--td-text-color-disabled);
}
.l-radio.l-is-disabled .l-radio__input {
  background-color: var(--td-bg-color-component-disabled);
}
.l-radio.l-is-disabled:hover .l-radio__input {
  border-color: var(--td-border-level-2-color);
}
.l-radio.l-is-disabled.l-is-checked .l-radio__input {
  border-color: var(--td-border-level-2-color);
}
.l-radio.l-is-disabled.l-is-checked .l-radio__input::after {
  background-color: var(--td-text-color-disabled);
}
