/* Password Recovery Specific Styles */

/* Login links styling */
.login-links {
    margin-top: 8px; /* Reduzido de 15px para 8px */
}

.login-links p {
    margin: 4px 0; /* Reduzido de 8px para 4px */
    font-size: 14px;
}

.forgot-password-link {
    margin-bottom: 2px !important; /* Reduzido de 5px para 2px */
}

.signup-link {
    margin-top: 2px !important; /* Reduzido de 5px para 2px */
}

/* Forgot password link - GREEN color (changed from blue) */
.forgot-link {
    color: #00ffaa !important; /* Verde mais brilhante */
    text-decoration: none;
    font-weight: 400;
}

.forgot-link:hover {
    color: #00cc88 !important; /* Verde mais escuro no hover */
    text-decoration: underline;
}

/* Signup link styling */
.signup-text {
    color: #666 !important;
    font-weight: 400;
}

.signup-link-text {
    color: #00ffaa !important; /* Verde mais brilhante */
    text-decoration: none;
    font-weight: 500;
}

.signup-link-text:hover {
    color: #00cc88 !important;
    text-decoration: underline;
}

/* Apex links styling (original format) */
#apex-links {
    margin-top: 8px; /* Reduzido de 15px para 8px */
}

#apex-links p {
    font-size: 14px;
    line-height: 1.5;
    color: #666;
}

#apex-links .talktous-href {
    color: #007bff !important;
    text-decoration: none;
}

#apex-links .talktous-href:hover {
    color: #0056b3 !important;
    text-decoration: underline;
}

/* Alignment classes */
.align_center-xs {
    text-align: center;
}

/* Color classes for KMS/Mobipium branding */
.color-kms {
    color: #007bff !important;
    text-decoration: none;
}

.color-kms:hover {
    color: #0056b3 !important;
    text-decoration: underline;
}

.color-kms-black {
    color: #333 !important;
}

/* Login text styling */
.login_txt {
    font-size: 14px;
    margin-top: 15px;
    line-height: 1.5;
}

.login_txt a {
    font-weight: 500;
}

/* Password strength indicator */
.password-requirements {
    font-size: 12px;
    margin-top: 10px;
}

.password-requirements ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.password-requirements li {
    margin: 5px 0;
    padding: 2px 0;
    transition: color 0.3s ease;
}

.requirement-met {
    color: #00ffaa !important; /* Verde mais brilhante */
}

.requirement-not-met {
    color: #ff6b6b !important; /* Vermelho mais suave */
}

.password-strength-indicator {
    margin-top: 15px;
    padding: 15px;
    border-radius: 4px;
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    animation: fadeIn 0.3s ease-in;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.password-strength-indicator strong {
    color: #333;
    display: block;
    margin-bottom: 10px;
}

/* Alert styling improvements */
.alert {
    border-radius: 4px;
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
}

.alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}

.alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}

/* Button disabled state */
.btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Loading animation for buttons */
.glyphicon-refresh-animate {
    animation: spin 1s infinite linear;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .login_txt {
        font-size: 13px;
    }
    
    .login-links p {
        font-size: 13px;
    }
    
    #apex-links p {
        font-size: 13px;
    }
    
    .password-strength-indicator {
        padding: 8px;
    }
    
    .password-requirements {
        font-size: 11px;
    }
}

/* Recovery page links styling */
.recovery-links {
    margin-top: 15px;
}

.recovery-links a {
    color: #00ffaa !important; /* Verde mais brilhante */
    text-decoration: none;
    font-weight: 400;
    margin: 0 10px;
}

.recovery-links a:hover {
    color: #00cc88 !important;
    text-decoration: underline;
}

/* Separator between links */
.recovery-links .separator {
    color: #666;
    margin: 0 5px;
}

/* Focus states - remove borders but keep green border for email inputs */
.inputsAA:focus {
    border-color: #00ffaa !important; /* Mantém border verde mais brilhante */
    box-shadow: none !important;
    outline: none !important;
}

/* Ensure email inputs always have green border */
#emailRecovery {
    border-color: #00ffaa !important;
}

#emailRecovery:focus {
    border-color: #00ffaa !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Error message styling */
#errorRecovery,
#errorResetPassword {
    color: #d9534f;
    font-size: 14px;
    margin-top: 10px;
    display: block;
}

/* Success message styling */
#RecoveryMessageBlock,
#ResetPasswordMessageBlock {
    margin-top: 20px;
}

#RecoveryMessageBlock .alert-success {
    background-color: #dff0d8;
    border-color: #d6e9c6;
    color: #3c763d;
    padding: 20px;
    border-radius: 4px;
    margin-bottom: 20px;
}

#RecoveryMessageBlock h4 {
    margin-top: 0;
    color: #3c763d;
}

#RecoveryMessageBlock p {
    margin-bottom: 10px;
}

#RecoveryMessageBlock small {
    color: #5a5a5a;
}

/* Password tooltip - Dark version (appears on the right) */
.password-tooltip-dark {
    position: absolute;
    top: 0;
    left: calc(100% + 20px); /* Aparece à direita do input */
    background: #2a2a2a;
    border: 1px solid #444;
    border-radius: 8px;
    padding: 15px;
    min-width: 250px;
    z-index: 1000;
    animation: tooltipFadeIn 0.3s ease;
}

.requirements-list-dark {
    list-style: none;
    padding: 0;
    margin: 0;
}

.requirement-item-dark {
    display: flex;
    align-items: center;
    padding: 6px 0;
    font-size: 14px;
    color: #ccc;
    transition: color 0.3s ease;
}

.req-icon-dark {
    margin-right: 8px;
    font-weight: bold;
    width: 16px;
    text-align: center;
    font-size: 12px;
}

.requirement-item-dark.met {
    color: #00ffaa;
}

.requirement-item-dark.met .req-icon-dark {
    color: #00ffaa;
}

.requirement-item-dark:not(.met) .req-icon-dark {
    color: #ff6b6b;
}

/* Responsive - tooltip moves below on mobile */
@media (max-width: 768px) {
    .password-tooltip-dark {
        position: relative;
        left: 0;
        top: 10px;
        margin-bottom: 20px;
    }
}
/* Force success message to be visible */
#RecoveryMessageBlock {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 9999 !important;
}

#RecoveryMessageBlock[style*="display: none"] {
    display: none !important;
}

#RecoveryMessageBlock .alert-success {
    background-color: #dff0d8 !important;
    border-color: #d6e9c6 !important;
    color: #3c763d !important;
    padding: 20px !important;
    border-radius: 4px !important;
    margin-bottom: 20px !important;
    border: 1px solid #d6e9c6 !important;
}
/* Recovery success message styling - Simple white text */
.recovery-success-message {
    text-align: center;
    margin-top: 30px;
    padding: 20px;
}

.success-text {
    margin-bottom: 30px;
}

.success-text p {
    font-size: 18px;
    font-family: 'Neutra Display Titling', 'Gotham', sans-serif;
    font-weight: 400;
    color: #fff;
    margin: 10px 0;
    padding: 0;
    line-height: 1.4;
}