.auth-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Card */

.auth-card {
    width: 100%;
    max-width: 420px;

    padding: 28px;

    border-radius: 12px;

    background: var(--surface-2);
    border: 1px solid var(--border);

    backdrop-filter: blur(12px);
}

[data-theme="light"] .auth-card {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* Header */

.auth-header {
    text-align: center;
    margin-bottom: 28px;
}

.auth-icon {
    font-size: 1.8rem;
    margin-bottom: 10px;
    color: var(--primary);
}

.auth-header h1 {
    margin: 0;
    font-size: 1.4rem;
    font-weight: 600;
}

.auth-header p {
    margin: 8px 0 0;
    color: var(--text-muted);
    font-size: 0.9rem;
}

/* Form */

.field:not(:last-child) {
    margin-bottom: 16px;
}

.field label {
    display: block;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-muted);
}

.field input {
    margin: 0;
}

/* Alert */

.auth-alert {
    margin-bottom: 18px;

    font-size: 0.9rem;

    padding: 12px;

    border-radius: 6px;

    background: color-mix(in srgb, var(--danger) 15%, transparent);
    border: 1px solid color-mix(in srgb, var(--danger) 35%, transparent);

    color: var(--danger);
}

/* Button */

.auth-submit {
    margin-top: 8px;
    /* font-weight: 600; */
}

/* Footer */

.auth-footer {
    margin-top: 24px;

    text-align: center;
    font-size: 0.9rem;

    color: var(--text-muted);
}