@charset "UTF-8";

/**
 * Shared additions for /login (auth/login.blade.php) and /register (auth/register.blade.php),
 * loaded after their own page stylesheets: the error banner, the inline field messages, and a guard
 * against the sitewide input skin (header-apple.modern.css forces text-indent on every text input).
 */

/* ds-allow-hardcode:start component token definitions */
.nx-login-section,
.register {
    --af-danger: #dc2626;
    --af-danger-soft: #fef2f2;
    --af-danger-line: rgba(220, 38, 38, 0.22);
    --af-ink: var(--text-primary, #1c1c1e);
    --af-primary: var(--primary, #0d6efd);
    --af-primary-deep: color-mix(in srgb, var(--af-primary) 70%, #000);
    --af-fs-sm: 0.875rem;
    --af-fs-xs: 0.8125rem;
    --af-radius: 12px;
}
/* ds-allow-hardcode:end */

/* Error banner (wrong credentials, too many attempts, social login errors) */
.nx-login-section .nx-login-alert,
.register .nx-auth-alert {
    display: flex;
    align-items: flex-start;
    gap: var(--space-2);
    margin-bottom: var(--space-4);
    padding: var(--space-3) var(--space-4);
    font-size: var(--af-fs-sm);
    font-weight: 600;
    line-height: 1.45;
    color: var(--af-danger);
    background: var(--af-danger-soft);
    border: 1px solid var(--af-danger-line);
    border-radius: var(--af-radius);
}

.nx-login-section .nx-login-alert i,
.register .nx-auth-alert i {
    font-size: var(--af-fs-sm);
    line-height: 1.45;
}

.register .nx-auth-alert[hidden] {
    display: none;
}

/* Inline field messages */
.nx-login-section .nx-form-feedback.invalid-feedback {
    font-size: var(--af-fs-xs);
    font-weight: 600;
    color: var(--af-danger);
}

.register small.text-danger:empty {
    display: none !important;
}

.register small.text-danger {
    margin-top: var(--space-1);
    font-size: var(--af-fs-xs);
    font-weight: 600;
    color: var(--af-danger) !important;
}

.register .nx-auth-link {
    font-weight: 700;
    color: var(--af-primary-deep);
    text-decoration: underline;
}

/* The sitewide input skin (selector weight 0,2,1 + !important) indents text and zeroes the left
   padding of every text input; restore the forms' own 1rem padding with a heavier selector */
.nx-login-section #loginForm input.nx-form-input,
.register .nx-form-group input.nx-form-input {
    padding-left: var(--space-4) !important;
    text-indent: 0 !important;
}

/* "Already have an account?" footer on /register */
.register .nx-auth-switch {
    margin: var(--space-4) 0 0;
    font-size: var(--af-fs-sm);
    text-align: center;
    color: var(--text-secondary, #6b7280);
}

.register .nx-auth-switch a {
    font-weight: 700;
    color: var(--af-primary-deep);
}
