/*
 * AELAB International Phone Field v0.5.0
 * Minimal, scoped compatibility styles. The official intl-tel-input CSS is
 * loaded asynchronously only when a Tel field actually exists.
 */

.elementor-form .iti.aelab-iti {
    width: 100% !important;
    display: block !important;
    position: relative !important;
}

.elementor-form .iti.aelab-iti input[type="tel"] {
    width: 100% !important;
}

.elementor-form .aelab-phone-field-group {
    overflow: visible !important;
}

/* Isolate the selector button from broad theme button rules. */
.elementor-form .iti.aelab-iti button.iti__selected-country,
.elementor-form .iti.aelab-iti button.iti__selected-country:hover,
.elementor-form .iti.aelab-iti button.iti__selected-country:focus,
.elementor-form .iti.aelab-iti button.iti__selected-country:active {
    appearance: none !important;
    -webkit-appearance: none !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    color: inherit !important;
    font: inherit !important;
    text-transform: none !important;
    text-decoration: none !important;
}

.elementor-form .iti.aelab-iti button.iti__selected-country::before,
.elementor-form .iti.aelab-iti button.iti__selected-country::after {
    content: none !important;
}

/* Popup dropdown must stay above Elementor's modal content. */
.elementor-popup-modal.aelab-phone-popup-host .iti--container,
.dialog-widget.aelab-phone-popup-host .iti--container,
.aelab-phone-popup-host .iti--container {
    z-index: 2147483646 !important;
}

.iti--container {
    z-index: 2147483000 !important;
}

/* Prevent theme search-input rules from placing text over the search icon. */
.elementor-form .iti.aelab-iti input.iti__search-input,
.iti--container input.iti__search-input,
.iti--container input.aelab-iti-search,
.aelab-phone-popup-host input.iti__search-input,
.aelab-phone-popup-host input.aelab-iti-search {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 40px !important;
    padding: 8px 12px 8px 40px !important;
    margin: 0 !important;
    background: #fff !important;
    background-image: none !important;
    color: #222 !important;
    border: 1px solid #d6d6d6 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    font: inherit !important;
    line-height: 22px !important;
    text-indent: 0 !important;
}

.elementor-form .iti.aelab-iti .iti__search-icon,
.iti--container .iti__search-icon,
.aelab-phone-popup-host .iti__search-icon {
    pointer-events: none !important;
    z-index: 2 !important;
}

/* Keep dropdown appearance stable without redesigning the library itself. */
.elementor-form .iti.aelab-iti .iti__dropdown-content,
.iti--container .iti__dropdown-content,
.aelab-phone-popup-host .iti__dropdown-content {
    background: #fff !important;
    color: #222 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.16) !important;
}

.elementor-form .iti.aelab-iti .iti__country-list,
.iti--container .iti__country-list,
.aelab-phone-popup-host .iti__country-list {
    max-height: 280px !important;
}

/* Native browser validation state, scoped only to this enhancement. */
.elementor-form input.aelab-phone-invalid {
    border-color: #d63638 !important;
}
