/* Shared styles for Shop Customer auth pages (login/register/forgot/reset/2FA). */

.shop-auth-page {
    min-height: 60vh;
    background: transparent;
}

.auth-card {
    max-width: 520px;
    margin: 0 auto;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-2);
    padding: var(--spacing-8);
    box-shadow: var(--shadow-card);
}

.auth-header {
    text-align: center;
    margin-bottom: var(--spacing-6);
}

.auth-header h1 {
    font-size: var(--font-size-5);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-2);
    color: var(--color-text-primary);
}

.auth-subtitle {
    color: var(--color-text-secondary);
    font-size: var(--font-size-1);
    margin: 0;
}

.shop-name {
    color: var(--color-text-secondary);
    font-size: var(--font-size-1);
    margin: var(--spacing-2) 0 0;
}

.auth-description {
    color: var(--color-text-secondary);
    font-size: var(--font-size-1);
    margin-bottom: var(--spacing-6);
    text-align: center;
}

.auth-form {
    margin-bottom: var(--spacing-6);
}

.auth-form .form-actions {
    margin-top: var(--spacing-6);
}

.auth-form .btn {
    width: 100%;
    justify-content: center;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-3);
}

.forgot-password-link {
    color: var(--color-primary);
    text-decoration: none;
    font-size: var(--font-size-0);
    font-weight: var(--font-weight-medium);
}

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

.forgot-password-link:focus-visible,
.auth-footer a:focus-visible {
    outline: 2px solid rgba(59, 170, 53, 0.35);
    outline-offset: 2px;
    border-radius: var(--radius-1);
}

.auth-footer {
    text-align: center;
    padding-top: var(--spacing-6);
    border-top: 1px solid var(--color-border);
}

.auth-footer p {
    margin: var(--spacing-2) 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-1);
}

.auth-footer a {
    color: var(--color-primary);
    text-decoration: none;
}

.auth-footer a:hover {
    text-decoration: underline;
}

@media (max-width: 520px) {
    .form-row {
        grid-template-columns: 1fr;
    }
}
