/* Auth pages — centered card on subtle gradient backdrop */
.auth-body {
    min-height: 100vh;
    display: grid;
    place-items: center;
    background:
        radial-gradient(60% 50% at 50% 0%, rgba(61, 216, 197, 0.07) 0%, transparent 70%),
        var(--bg);
    padding: 24px;
}
.auth-shell {
    width: 100%;
    max-width: 420px;
}
.auth-card {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: var(--r-xl);
    padding: 32px 32px 28px;
    box-shadow: var(--shadow-md);
}
.auth-brand {
    display: flex; align-items: center; gap: 12px;
    margin-bottom: 28px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--border);
}
.auth-brand .logo {
    width: 40px; height: 40px;
    background: linear-gradient(135deg, var(--accent), var(--accent-2));
    border-radius: var(--r-md);
    display: grid; place-items: center;
    font-family: var(--font-mono);
    font-weight: 700;
    color: #06231f;
}
.auth-brand-name { font-size: 16px; font-weight: 600; letter-spacing: -0.01em; }
.auth-brand-tag { font-size: 11.5px; color: var(--ink-3); margin-top: 2px; }

.auth-card h1 {
    font-size: 19px; font-weight: 600;
    margin: 0 0 6px;
    letter-spacing: -0.01em;
}
.auth-card .sub {
    color: var(--ink-3);
    font-size: 13px;
    margin: 0 0 22px;
}
.auth-form .field { margin-bottom: 14px; }
.auth-form .btn-submit {
    width: 100%;
    justify-content: center;
    margin-top: 8px;
    padding: 10px 14px;
    font-size: 13.5px;
}
.auth-card .hint {
    margin-top: 18px;
    padding: 12px;
    background: var(--bg-2);
    border: 1px dashed var(--border);
    border-radius: var(--r-md);
    font-size: 12px;
    color: var(--ink-3);
}
.auth-card .hint strong { color: var(--ink-2); }
.auth-card .hint code {
    font-size: 11.5px;
    background: var(--card-2);
    padding: 1px 6px;
    border-radius: 3px;
}
.auth-footer {
    text-align: center;
    margin-top: 18px;
    font-size: 11.5px;
    color: var(--ink-mute);
    letter-spacing: 0.04em;
}
