/* intl-tel-input Customization for KIVO */

/* Ensure the container takes full width */
.iti {
    width: 100%;
    margin-bottom: 15px;
    /* Match .cart-input or .cart-form-input margin */
}

/* Match input styling with existing KIVO inputs */
.iti__tel-input {
    width: 100%;
    padding: 12px 15px;
    padding-left: 90px !important;
    /* Make space for the flag dropdown */
    border: 1px solid #ddd;
    border-radius: 10px;
    font-size: 14px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.2s;
    background: #fff;
    color: #333;
    min-height: 45px;
    /* Ensure height */
}

/* Ensure flag container is visible */
.iti__flag-container {
    z-index: 10;
}

.iti__tel-input:focus {
    border-color: #333;
}

/* Adjust dropdown position */
.iti__country-list {
    border-radius: 10px;
    border: 1px solid #eee;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    z-index: 1000;
    /* Ensure it floats above other elements */
}

/* Hover effects for country list */
.iti__country-list .iti__country:hover {
    background-color: #f5f5f5;
}

.iti__country-list .iti__country.iti__highlight {
    background-color: #f0f0f0;
}

/* Clean up validation messages */
#valid-msg,
#error-msg {
    display: block;
    margin-top: -10px;
    margin-bottom: 15px;
    font-size: 12px;
    padding-left: 10px;
}

#valid-msg {
    color: #28a745;
}

#error-msg {
    color: #ff4d4f;
}

.hide {
    display: none !important;
}

/* Ensure mobile responsiveness */
@media (max-width: 600px) {
    .iti__country-list {
        width: 100%;
        max-width: 300px;
    }
}