.nexus-signup {
    width: 100%;
    max-width: 560px;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 1.6rem;
    line-height: 1.6;
    text-align: left;
    margin-top: 32px;
}
.nexus-member-welcome .gh-button { margin-top: 24px; }
.nexus-signup [hidden] { display: none !important; }
.nexus-signup-fields {
    display: flex;
    gap: 8px;
    padding: 6px;
    border: 1px solid #bcccdc;
    border-radius: 32px;
    background: #fff;
    color: #243b53;
}
.nexus-signup input {
    flex: 1;
    min-width: 0;
    width: 100%;
    padding: 8px 12px;
    border: 0;
    border-radius: 24px;
    background: transparent;
    color: #243b53;
    font: inherit;
}
.nexus-signup input::placeholder { color: #526779; }
.nexus-signup .gh-button,
.nexus-member-welcome .gh-button {
    flex-shrink: 0;
    padding: 12px 20px;
    background: #102a43;
    color: #fff;
    font: inherit;
    font-weight: 600;
}
.nexus-signup .gh-button:disabled { cursor: wait; opacity: 0.75; }
.nexus-signup :is(input, button):focus-visible,
.nexus-member-welcome .gh-button:focus-visible {
    outline: 3px solid #3176ad;
    outline-offset: 3px;
}
.nexus-signup-error {
    margin: 12px 0 0;
    padding: 12px 16px;
    border-radius: 12px;
    background: #fff1f2;
    color: #9f1239;
}
.nexus-signup-success {
    padding: 24px;
    border: 1px solid #bcccdc;
    border-radius: 16px;
    background: #f0f5fa;
    color: #243b53;
}
.nexus-signup-success h3 {
    margin: 0 0 8px;
    color: #102a43;
    font: inherit;
    font-size: 2.2rem;
    font-weight: 700;
}
.nexus-signup-success p { margin: 0; }
.nexus-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
@media (max-width: 480px) {
    .nexus-signup-fields { flex-direction: column; border-radius: 16px; }
    .nexus-signup input { min-height: 44px; }
    .nexus-signup .gh-button { width: 100%; }
}
