.iti {
    position: relative;
    display: inline-block;
    width: 100%;
}

.iti * {
    box-sizing: border-box;
    -moz-box-sizing: border-box
}

.iti input,.iti input[type=text],.iti input[type=tel] {
    position: relative;
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-right: 36px;
    margin-right: 0
}

.iti__flag-container {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    padding: 1px
}

/* Validation states for intlTelInput */
.iti input.is-valid {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important;
}

.iti input.is-invalid {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

/* Focus states */
.iti input:focus.is-valid {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important;
}

.iti input:focus.is-invalid {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

/* Error message styling */
.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875rem;
    color: #dc3545;
}

.invalid-feedback.show {
    display: block;
}

/* Valid feedback styling */
.valid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875rem;
    color: #28a745;
}

.valid-feedback.show {
    display: block;
}

/* Country dropdown styling */
.iti__country-list {
    z-index: 1050 !important;
    max-height: 200px;
    overflow-y: auto;
}

.iti__country {
    padding: 8px 12px;
    cursor: pointer;
}

.iti__country:hover {
    background-color: #f8f9fa;
}

.iti__country.iti__highlight {
    background-color: #007bff;
    color: white;
}

/* Flag container styling */
.iti__flag-container {
    z-index: 1;
}

.iti__selected-flag {
    padding: 0 8px;
    cursor: pointer;
}

.iti__selected-flag:hover {
    background-color: #f8f9fa;
}

/* Submit button states - keeping for potential future use */
.btn:disabled,
.btn.disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Form validation states */
.form-control.is-valid {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important;
}

.form-control.is-invalid {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

.form-control:focus.is-valid {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important;
}

.form-control:focus.is-invalid {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

.iti__country:hover .iti__country-name,
.iti__country:active .iti__country-name
{
    color: #000000 !important;
}

.iti__dropdown-content {
    background-color: #ffffff !important;
    min-height: 230px!important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .iti__country-list {
        max-height: 150px;
    }
}
