.radio-view {
  display: flex;
  align-items: center;
  position: relative;
}

.radio-view[data-inline='true'] {
  display: inline-flex;
}

.radio-view[data-hide-label='true'] {
  width: var(--min-size-input-binary);
  height: var(--min-size-input-binary);
  justify-content: center;
}

.radio-view[data-hide-label='false'] {
  min-height: var(--min-size-interactive-pointer);
  gap: var(--spacing-8);
}

.radio-view .radio-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  z-index: var(--z-index-above-content);
  cursor: var(--cursor-base-hover);
}

.radio-view .radio-input:disabled {
  cursor: var(--cursor-not-allowed);
}

.radio-view .radio-input:checked:enabled+ .radio-icon {
  background-color: var(--background-color-base) !important;
  border-color: var(--border-color-input-binary-checked) !important;
  border-width: var(--border-width-input-radio-checked) !important;
}

.radio-view .radio-input:focus+ .radio-icon {
  border-color: var(--border-color-input-binary-focus) !important;
  outline: var(--border-width-base) solid var(--border-color-blue-focus) !important;
  outline-offset: 0px !important;
}

.radio-view .radio-input:hover:not(:checked):enabled+ .radio-icon {
  border-color: var(--border-color-input-binary-hover) !important;
}

.radio-view .radio-input:hover:checked:enabled+ .radio-icon {
  border-color: var(--border-color-input-binary-checked-hover) !important;
}

.radio-view .radio-input:active:checked:enabled+ .radio-icon {
  border-color: var(--border-color-input-binary-checked-active) !important;
}

.radio-view .radio-icon {
  display: inline-block;
  position: relative;
  width: var(--min-size-input-binary);
  height: var(--min-size-input-binary);
  flex-shrink: 0;
  background-color: var(--background-color-base);
  border: var(--border-width-base) solid var(--border-color-input-binary);
  border-radius: var(--border-radius-circle);
  transition: all var(--transition-duration-base) var(--transition-timing-function-system);
  cursor: var(--cursor-base-hover);
}

.radio-view .radio-icon[data-disabled='true'] {
  background-color: var(--background-color-disabled);
  border-color: var(--border-color-disabled);
  cursor: var(--cursor-not-allowed);
}

.radio-view .radio-icon[data-disabled='false'][data-status='error'] {
  border-color: var(--border-color-red);
}

.radio-view .radio-label-wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4);
  cursor: var(--cursor-base-hover);
  user-select: none;
}

.radio-view .radio-label-wrapper[data-disabled='true'] {
  cursor: var(--cursor-not-allowed);
}

.radio-view .radio-label-text {
  font-family: var(--typography-font-sans);
  font-size: var(--font-size-medium-16);
  line-height: var(--line-height-small-22);
  font-weight: var(--font-weight-normal);
  color: var(--color-base);
}

.radio-view .radio-label-text[data-disabled='true'] {
  color: var(--color-disabled);
}

.radio-view .radio-description {
  font-size: var(--font-size-medium-16);
  line-height: var(--line-height-small-22);
  color: var(--color-subtle);
}

.radio-view .radio-description[data-disabled='true'] {
  color: var(--color-disabled);
}

.radio-view .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0px, 0px, 0px, 0px);
  white-space: nowrap;
  border-width: 0;
}
