:root {
    --identity-bg-top: var(--lu-bg-top, #0d1526);
    --identity-bg-bottom: var(--lu-bg-bottom, #f1f5fb);
    --identity-hero-a: var(--lu-bg-top, #0d1526);
    /* Matches the new vibrant --lu-primary so hero and app share the same colour story */
    --identity-hero-b: #1a4ec0;
    --identity-card-radius: 14px;
}

.identity-shell {
    min-height: 100vh;
    padding-top: 5rem; /* fixed navbar */
    padding-bottom: 3rem;
    background:
        radial-gradient(900px circle at 20% 12%, rgba(37, 99, 235, 0.26), transparent 60%),
        radial-gradient(700px circle at 90% 25%, rgba(124, 58, 237, 0.14), transparent 52%),
        linear-gradient(180deg, var(--identity-bg-top) 0%, var(--identity-bg-top) 150px, var(--identity-bg-bottom) 150px, var(--identity-bg-bottom) 100%);
}

.identity-card {
    border: 0;
    border-radius: var(--identity-card-radius);
    overflow: hidden;
    box-shadow: 0 24px 80px rgba(15, 23, 42, 0.28), 0 8px 24px rgba(15, 23, 42, 0.14);
}

.identity-hero {
    background: linear-gradient(145deg, var(--identity-hero-a), var(--identity-hero-b));
    color: #fff;
}

.identity-hero .identity-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.18);
    font-size: 0.85rem;
}

.identity-hero .identity-hero-image {
    width: 100%;
    height: 180px;
    object-fit: cover;
    border-radius: 12px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.28);
}

.identity-form-note {
    font-size: 0.92rem;
}

.identity-link {
    text-decoration: none;
}

.identity-link:hover {
    text-decoration: underline;
}

.identity-footer {
    color: rgba(0, 0, 0, 0.55);
}

@media (max-width: 768px) {
    .identity-shell {
        padding-top: 4.75rem;
    }

    .identity-card {
        border-radius: 12px;
    }
}
