.phone-country-search-dropdown.iti__country-list {
    z-index: 101;
    width: 340px;
    max-width: calc(100vw - 40px);
    max-height: none;
    overflow: hidden;
    white-space: normal;
}
.phone-country-search-header { padding: 8px; }
.phone-country-search-dropdown input.phone-country-search-input {
    width: 100%;
    height: 34px;
    padding: 6px 10px;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 14px;
}
.phone-country-search-input:focus { border-color: #3c8dbc; outline: 2px solid #b8daeb; }
.phone-country-search-results { list-style: none; padding: 0; margin: 0; max-height: 200px; overflow-y: auto; }
.phone-country-search-results .iti__country[hidden] { display: none; }
.phone-country-search-results .iti__country { position: relative; padding-right: 32px; }
.phone-country-search-results .iti__country.iti__highlight {
    /* Keep navigation separate from the persistent selection in both themes. */
    background-color: #e6f0f6 !important;
    color: #20394a;
}
.phone-country-search-results .iti__country.iti__active {
    background-color: #2f6f99 !important;
    color: #fff;
    font-weight: 600;
}
.phone-country-search-results .iti__country.iti__active.iti__highlight {
    background-color: #245679 !important;
}
.phone-country-search-results .iti__country.iti__active::after {
    content: '';
    position: absolute;
    right: 12px;
    top: 50%;
    width: 7px;
    height: 12px;
    margin-top: -8px;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.phone-country-search-results .iti__country.iti__highlight .iti__dial-code,
.phone-country-search-results .iti__country.iti__active .iti__dial-code { color: inherit; }
.phone-country-search-empty { padding: 10px; color: #666; }
.iti-mobile .phone-country-search-dropdown { width: 100%; max-width: 100%; }
.iti-mobile .phone-country-search-results { max-height: min(50vh, 300px); }
