.form-element {
    margin-block-end: 1rem;

    input:not([type="checkbox"], [type="radio"]),
    select,
    textarea {
        display: block;
        width: 100%;
        height: 34px;
        padding: 6px 12px;
        font-size: 14px;
        line-height: 1.428571429;
        color: #555555;
        vertical-align: middle;
        background-color: #ffffff;
        border: 1px solid #cccccc;
        border-radius: 0;
        box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
        transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
    }

    input[type="checkbox"] + label,
    input[type="radio"] + label {
        display: inline;
    }

    textarea {
        height: auto;
    }

    &.form-element-radio {
        legend {
            display: inline-block;
            margin-bottom: 5px;
            font-weight: bold;
            font-size: 1em;
            border: 0;
            color: inherit;
        }
    }
}
