@import '@hh.ru/design-tokens/build/less/variables';
@import '../../common/styles/_abstract-control';
@import '../../common/styles/_checkable-control';
@import '../../common/styles/color-utils';
@import '../../common/styles/_abstract-modal';

.bloko-radio {
    .checkable-control();
}

.bloko-radio__text::before {
    border-radius: var(--bloko-checkable-control-size);
}

.bloko-radio__input:checked + .bloko-radio__text::before {
    border-color: @bloko-color-checkable-checked-background-default;
    background-color: @bloko-color-checkable-checked-icon-default;
    border-width: var(--bloko-radio-width-border-checked);
}

.bloko-radio:hover .bloko-radio__input:checked + .bloko-radio__text::before,
.bloko-radio__input:focus:checked + .bloko-radio__text::before,
.bloko-radio__input:focus:checked:disabled + .bloko-radio__text::before {
    border-color: @bloko-color-checkable-checked-background-hover;
    background-color: @bloko-color-checkable-checked-icon-hover;
}

.bloko-radio .bloko-radio__input:checked:disabled + .bloko-radio__text::before {
    border-color: @bloko-color-checkable-checked-background-disabled;
    background-color: @bloko-color-checkable-checked-icon-disabled;
}

.bloko-radio_invalid .bloko-radio__input:checked + .bloko-radio__text::before {
    border-color: @bloko-color-checkable-checked-border-default;
}

.bloko-radio-reversed-wrapper {
    .checkable-control-reversed-wrapper();
}

.bloko-modal-container .bloko-radio-reversed-wrapper {
    margin-right: @control-box-shadow-focus-visible-width - @scrollbar-max-with;
}
