/**
 * Forgot Password Page Specific Styles
 * Simple email input form for password reset requests
 */

/* Import common auth styles */
@import url('../pages/auth-common.css');

/* Forgot password specific styling */
.auth-card {
    max-width: 400px; /* Narrower for simple email form */
}

/* Email recovery form */
.recovery-form {
    text-align: center;
}

/* Recovery instructions */
.recovery-instructions {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 1.5rem;
    color: #0369a1;
}

.recovery-instructions .instruction-icon {
    color: #0284c7;
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.recovery-instructions h4 {
    margin: 0 0 0.5rem 0;
    font-size: 0.875rem;
    font-weight: 600;
}

.recovery-instructions p {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.5;
}

/* Email input styling */
.email-input-group {
    position: relative;
    margin-bottom: 1rem;
}

.email-input-group .form-control {
    padding-left: 2.5rem;
    font-size: 1rem;
    text-align: center;
}

.email-input-group .input-icon {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    color: #6b7280;
    z-index: 10;
}

.email-input-group .form-control:focus ~ .input-icon {
    color: var(--primary-color);
}

/* Email validation states */
.email-input-group .form-control.validating {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15'%3e%3c/path%3e%3c/svg%3e");
    background-position: right 0.75rem center;
    background-repeat: no-repeat;
    background-size: 1rem;
}

/* Recovery button styling */
.recovery-button {
    width: 100%;
    padding: 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    transition: all 0.2s ease;
}

.recovery-button .btn-icon {
    font-size: 1rem;
}

.recovery-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Success state */
.recovery-sent {
    text-align: center;
    animation: fadeInScale 0.5s ease-out;
}

.recovery-sent .sent-icon {
    color: #10b981;
    font-size: 3rem;
    margin-bottom: 1rem;
}

.recovery-sent h3 {
    color: #166534;
    margin-bottom: 0.5rem;
    font-size: 1.125rem;
}

.recovery-sent p {
    color: #6b7280;
    margin-bottom: 1rem;
    line-height: 1.5;
}

.recovery-sent .email-highlight {
    font-weight: 600;
    color: var(--primary-color);
}

@keyframes fadeInScale {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Resend timer */
.resend-timer {
    font-size: 0.875rem;
    color: #6b7280;
    text-align: center;
    margin-top: 1rem;
    padding: 0.5rem;
    background: #f9fafb;
    border-radius: 0.375rem;
    border: 1px solid #e5e7eb;
}

.resend-timer .timer-icon {
    color: #f59e0b;
    margin-right: 0.25rem;
}

.resend-timer.ready {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #166534;
}

.resend-timer.ready .timer-icon {
    color: #10b981;
}

/* Help text */
.help-text {
    font-size: 0.75rem;
    color: #9ca3af;
    text-align: center;
    margin-top: 1rem;
    line-height: 1.4;
}

.help-text a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 500;
}

.help-text a:hover {
    text-decoration: underline;
}

/* Loading state */
.auth-card.sending-recovery::after {
    content: 'Helyreállító email küldése...';
    color: var(--primary-color);
    font-weight: 500;
    font-size: 0.875rem;
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .recovery-instructions {
        padding: 0.75rem;
        font-size: 0.8125rem;
    }
    
    .recovery-instructions .instruction-icon {
        font-size: 1.25rem;
    }
    
    .email-input-group .form-control {
        font-size: 0.875rem;
    }
    
    .recovery-sent .sent-icon {
        font-size: 2.5rem;
    }
    
    .help-text {
        font-size: 0.6875rem;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .recovery-instructions {
        background: #0f172a;
        border-color: #1e40af;
        color: #60a5fa;
    }
    
    .recovery-instructions .instruction-icon {
        color: #3b82f6;
    }
    
    .email-input-group .input-icon {
        color: #9ca3af;
    }
    
    .recovery-sent h3 {
        color: #6ee7b7;
    }
    
    .recovery-sent p {
        color: #9ca3af;
    }
    
    .recovery-sent .email-highlight {
        color: #60a5fa;
    }
    
    .resend-timer {
        background: #374151;
        border-color: #4b5563;
        color: #9ca3af;
    }
    
    .resend-timer .timer-icon {
        color: #fbbf24;
    }
    
    .resend-timer.ready {
        background: #064e3b;
        border-color: #065f46;
        color: #6ee7b7;
    }
    
    .resend-timer.ready .timer-icon {
        color: #10b981;
    }
    
    .help-text {
        color: #6b7280;
    }
}