ui-input-phone {
    display: flex;
    gap: 5px;
    align-items: flex-start;

    .ui-select {
        width: 75px;
        flex: unset;

        .select2-selection__rendered {
            .ui-input-phone__option-country > span:not(.ui-input-phone__option-country__flag) {
                display: none;
            }
        }
    }

    ui-input {
        flex: 1;

        .ui-input__error {
            margin-right: 5px;
        }

        ui-input-addon {
            &.ui-input__addon--end {
                border: none;
                min-width: fit-content;
            }

            &.num-valid {
                color: green;
            }
            &.num-error {
                color: red;
            }
        }
    }
}

.ui-input-phone__option-country {
    display: flex;
    gap: 10px;
    align-items: center;

    &__flag {
        width: 30px;
        display: flex;
        align-items: center;

        .ui-flag {
            height: 20px;
            max-width: 30px;
            font-size: 2em;
        }
    }

    &__dial-code {
        width: 50px;
    }

    &__country {
        flex: 1;
    }

    &__code {
        margin-left: auto;
        font-size: 80%;
        color: lightgrey;
    }
}