/* Auth Pages Styles */

body.ia-auth-page {
    background: var(--color-bg);
    min-height: 100vh;
    padding: 40px 0;
}

.auth-padding {
    padding-left: 20px;
    padding-right: 20px;
}

.ia-auth-page {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: space-between;
}

.ia-auth-page .container-1280 {
    display: flex;
    width: 100% !important;
}

/* Exit Quote Container */
.ia-auth-exit {
    width: 100%;
    margin-bottom: 40px;
}

.ia-auth-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Satoshi', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    color: #FF7518;
    text-decoration: none;
    transition: var(--transition);
}

.ia-auth-back:hover {
    opacity: 0.8;
}

.ia-auth-back svg {
    width: 20px;
    height: 20px;
}

/* Auth Container */
.ia-auth-container {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 0 20px;
}

.ia-auth-wrapper {
    width: 100%;
    max-width: 630px;
}

/* Auth Card */
.ia-auth-card {
    background: #4E30B3;
    border-radius: 30px;
    padding: 60px 60px;
}

/* Tabs (Sign In / Register) */
.ia-auth-tabs {
    display: flex;
    justify-content: center;
    gap: 24px;
    margin-bottom: 27px;
}

.ia-auth-tab {
    background: none;
    border: none;
    font-family: 'Clash Grotesk Display', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 48px;
    line-height: 48px;
    color: #FFFFFF;
    cursor: pointer;
    padding: 0;
    transition: var(--transition);
}

.ia-auth-tab.active {
    color: #FF7518;
}

.ia-auth-tab:hover {
    opacity: 0.8;
}

/* User Type Selector */
.ia-user-type-selector {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 30px;

    padding-right: 10px;
    padding-left: 10px;
}

.ia-user-type-option {
    
    position: relative;
}

.ia-user-type-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.ia-user-type-label {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #FFFFFF;
    font-family: 'Satoshi', sans-serif;
    font-size: 22px;
    line-height: 120%;
    font-weight: 700;
    cursor: pointer;
    transition: var(--transition);
}

.ia-user-type-option input[type="radio"]:checked + .ia-user-type-label {
    
    
    color: #FF7518;
}

.ia-user-type-label .radio-circle {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid currentColor;
    position: relative;
}

.ia-user-type-option input[type="radio"]:checked + .ia-user-type-label .radio-circle::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #FF7518;
}



/* Form */
.ia-auth-form {
    display: none;
    flex-direction: column;
    gap: 15px;
}

.ia-auth-form.active {
    display: flex;
}

/* Form Input */
.ia-form-input {
    padding: 16px 32px;
    gap: 8px;
    width: 510px;
    height: 60px;
    background: #FFFFFF;
    border-radius: 50px;
    border: none;
    font-family: 'Satoshi', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 22px;
    line-height: 136%;
    text-align: left;
    color: #333333;
    box-sizing: border-box;
}

.ia-form-input::placeholder {
    font-family: 'Satoshi', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 22px;
    line-height: 136%;
    text-align: left;
    color: #AAAAAA;
}

/* Inputmask placeholder styling */
.ia-form-input.im-caret {
    color: #333333;
}

.ia-form-input input[data-placeholder-char] {
    color: #AAAAAA;
}

.ia-form-input:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 117, 24, 0.3);
}

/* Input validation error state */
.ia-form-input.input-error {
    border: 2px solid #dc3545;
    background: #fff5f5;
}

.ia-form-input.input-error:focus {
    box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.25);
}

/* Phone validation error message */
.phone-error-message {
    color: #FFCDD2;
    font-size: 14px;
    font-family: 'Satoshi', sans-serif;
    margin-top: 4px;
    padding: 8px 12px;
    background: rgba(244, 67, 54, 0.15);
    border-radius: 8px;
    border-left: 3px solid #F44336;
}

/* Submit Button */
.ia-submit-btn {
    width: 100%;
    padding: 16px 32px;
    height: 60px;
    border: none;
    border-radius: 50px;
    background: var(--color-secondary);
    color: var(--color-white);
    font-family: 'Satoshi', sans-serif;
    font-size: 22px;
    line-height: 30px;
    font-weight: 500 !important;
    cursor: pointer;
    
    transition: var(--transition);
}

.ia-submit-btn:hover:not(:disabled) {
    opacity: 0.9;
    transform: translateY(-2px);
}

.ia-submit-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Forgot Password */
.ia-forgot-password {
    text-align: center;
    margin-top: 30px;
}

.ia-forgot-password a {
    color: #FF7518;
    font-family: 'Satoshi', sans-serif;
    font-size: 20px;
    line-height: 24px;
    font-weight: 700;
    text-decoration: none;
}

.ia-forgot-password a:hover {
    text-decoration: underline;
}

/* Divider */
.ia-divider {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 30px 0;
    color: var(--color-white);
    font-family: 'Satoshi', sans-serif;
    font-size: 14px;
}

.ia-divider::before,
.ia-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: rgba(255, 255, 255, 0.3);
}

/* Google Button */
.ia-google-btn {
    width: 100%;
    padding: 18px 24px;
    border: 2px solid var(--color-white);
    border-radius: 50px;
    background: transparent;
    color: var(--color-white);
    font-family: 'Satoshi', sans-serif;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    transition: var(--transition);
}

.ia-google-btn:hover {
    background: rgba(255, 255, 255, 0.1);
}

/* Messages */
#ia-form-errors {
    display: none;
}

.ia-error-message {
    padding: 16px 24px;
    border-radius: 12px;
    margin-bottom: 20px;
    background: rgba(244, 67, 54, 0.2);
    border: 1px solid #F44336;
    color: #FFCDD2;
    font-family: 'Satoshi', sans-serif;
    font-size: 14px;
}

.ia-success-message {
    padding: 16px 24px;
    border-radius: 12px;
    margin-bottom: 20px;
    background: rgba(76, 175, 80, 0.2);
    border: 1px solid #4CAF50;
    color: #A5D6A7;
    font-family: 'Satoshi', sans-serif;
    font-size: 14px;
}

/* Business Name Field */
#business-name-field {
    display: none;
}

/* Select2 Country Dropdown Styles */
.select2-container {
    width: 100% !important;
}

.select2-container--default .select2-selection--single {
    padding: 16px 32px;
    height: 60px;
    background: #FFFFFF;
    border-radius: 50px;
    border: none;
    font-family: 'Satoshi', sans-serif;
    font-weight: 500;
    font-size: 22px;
    line-height: 28px;
    color: #333333;
    display: flex;
    align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: 0;
    line-height: 28px;
    color: #333333;
    font-family: 'Satoshi', sans-serif;
    font-weight: 500;
    font-size: 22px;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #AAAAAA;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 60px;
    right: 32px;
}

.select2-container--default .select2-selection--single:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 117, 24, 0.3);
}

.select2-dropdown {
    border: 2px solid #FF7518;
    border-radius: 12px;
    background: #FFFFFF;
    font-family: 'Satoshi', sans-serif;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    padding: 12px 20px;
    border: 2px solid #EEEEEE;
    border-radius: 50px;
    font-family: 'Satoshi', sans-serif;
    font-size: 18px;
    margin: 10px;
    width: calc(100% - 20px);
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
    outline: none;
    border-color: #FF7518;
}

.select2-container--default .select2-results__option {
    padding: 12px 20px;
    font-family: 'Satoshi', sans-serif;
    font-size: 18px;
    color: #333333;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: rgba(255, 117, 24, 0.1);
    color: #FF7518;
}

.select2-container--default .select2-results__option[aria-selected=true] {
    background: rgba(255, 117, 24, 0.2);
    color: #FF7518;
    font-weight: 600;
}

/* Responsive */
@media (max-width: 768px) {
    .ia-auth-card {
        padding: 40px 30px;
    }
    
    .ia-auth-tab {
        font-size: 36px;
        line-height: 36px;
    }
    
    .ia-form-input {
        width: 100%;
        font-size: 18px;
    }
    
    .ia-form-input::placeholder {
        font-size: 18px;
    }
    
    .ia-user-type-selector {
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .ia-auth-card {
        padding: 30px 20px;
    }
    
    .ia-auth-tab {
        font-size: 32px;
        line-height: 32px;
    }
    
    .ia-auth-tabs {
        gap: 16px;
    }
    
    .ia-form-input {
        height: 50px;
        padding: 12px 24px;
        font-size: 16px;
    }
    
    .ia-submit-btn {
        height: 50px;
        font-size: 18px;
    }

/* Foreign address toggle */
.ia-foreign-address-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-family: 'Satoshi', sans-serif;
    font-size: 15px;
    color: #555;
    margin: 12px 0 4px;
}

.ia-foreign-address-toggle input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: #FF7518;
    cursor: pointer;
}

#ia-register-foreign-fields {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

#ia-register-foreign-fields .ia-form-input[readonly] {
    background: #f5f5f5;
    color: #999;
}

/* Google Places autocomplete dropdown */
.pac-container {
    background: #FFFFFF !important;
    border: none !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25) !important;
    margin-top: 8px !important;
    padding: 8px 0 !important;
    font-family: 'Satoshi', sans-serif !important;
    overflow: hidden;
}

.pac-container .pac-item {
    padding: 12px 24px !important;
    font-family: 'Satoshi', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    color: #333333 !important;
    border: none !important;
    cursor: pointer;
    transition: background 0.15s ease;
}

.pac-container .pac-item:hover,
.pac-container .pac-item.pac-item-selected {
    background: #362285 !important;
    color: #FFFFFF !important;
}

.pac-container .pac-item:hover .pac-item-query,
.pac-container .pac-item.pac-item-selected .pac-item-query {
    color: #FFFFFF !important;
}

.pac-container .pac-item:hover .pac-matched,
.pac-container .pac-item.pac-item-selected .pac-matched {
    color: #FF7707 !important;
}

.pac-container .pac-item .pac-item-query {
    font-family: 'Satoshi', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600;
    color: #333333;
}

.pac-container .pac-item .pac-matched {
    font-weight: 700;
    color: #4E30B3;
}

.pac-container .pac-item .pac-icon {
    display: none;
}

.pac-container .pac-item:first-child {
    border-radius: 12px 12px 0 0;
}

.pac-container .pac-item:last-child {
    border-radius: 0 0 12px 12px;
}

.pac-container::after {
    display: none !important;
}

/* Inputmask specific styles for placeholder characters */
#ia-register-phone::placeholder {
    color: #AAAAAA !important;
}

/* Style for the mask placeholder symbols */
#ia-register-phone {
    caret-color: #333333;
}
