.form {
    position: relative;

    width: 450px;
}

.form__value {
    overflow: hidden;
    flex: 1 1 auto;
}

.form__label {
    display: block;
    overflow: hidden;
    flex: 0 1 auto;

    box-sizing: border-box;
    width: 30%;
    min-width: 30%;
    margin-top: .5rem;
    padding-right: .75rem;

    font-size: 12px;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: ellipsis;

    color: #adadad;
}

.form__label[for] {
    cursor: pointer;
}

.form__label_customizable {
    margin-top: 0;
}

.form__label_customizable .button_theme_islands {
    border-radius: 0;
}

.form__label_customizable .button_theme_islands::before {
    border-radius: 0;
}

.form__label_customizable .button_theme_islands.button_size_m {
    font-size: 12px;
}

.form__label_customizable .button_theme_islands.button_size_m .button__text {
    margin-left: 10px;
}

.form__field {
    display: flex;
}

.form__item {
    margin: .5rem 0 1rem;
}

.form__item_unlabelled .form__label {
    display: none;
}

.form__item_required .form__label::after {
    margin: 0 2px;

    content: '*';

    color: #e00;
}

.form__item_required .form__label_customizable::after {
    content: '';
}

.form__item_required .form__label:empty::after {
    content: '';
}

.form__item textarea {
    display: block;
}

.form__description {
    margin: 1rem 0;

    font-size: 14px;
    line-height: 1.3;

    color: #555;
}

.form__description:first-child {
    margin-top: 0;
}

.form__description p {
    margin: 0 0 12px;
}

.form__description a,
.form__description a:visited,
.form__description a:hover,
.form__description a:active {
    text-decoration: none;

    color: #1a3dc1;
}

.form__tip {
    margin-top: .5rem;

    font-size: 12px;
    line-height: 1.3;

    color: #aaa;
    overflow-wrap: break-word;
}

.form__header {
    margin: 0 0 12px;

    text-align: right;
}

.form__header__avatar {
    display: inline-block;

    width: 100px;
    height: 100px;

    border-radius: 50%;
    background: #f6f6f6;
}

.form__error {
    margin: .5rem 0 0 30%;

    font-size: 12px;
    line-height: 1.2;

    color: #f00;
}

.form__error_standalone {
    margin: 15px 0;
}

.form__close {
    position: absolute;
    top: 9px;
    right: 9px;

    cursor: pointer;
}

.form__title {
    margin: 0 0 20px;

    font-size: inherit;
    font-weight: inherit;
    line-height: 1.3;
}

.form__side-pane {
    float: left;

    margin-right: 24px;
}

.form__side-pane ~ .form__content {
    margin-left: 120px;
}

.form .separator {
    height: 1px;
    margin: 1rem 0;

    border: none;
    background-color: #dedede;
}
