/* Auth overlay / sign-in / sign-up / reset modal */
    .jt-auth-overlay {
        display: none;
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        background: rgba(0,0,0,0.5);
        z-index: 2147483647;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        overscroll-behavior: contain;
        touch-action: pan-y;
    }
    /* After open, pin top so height changes grow down (not up).
       !important beats any leftover inline align-items. */
    .jt-auth-overlay.jt-auth-top-pinned {
        align-items: flex-start !important;
    }
    .jt-auth-overlay.jt-auth-top-pinned .jt-auth-box {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 0 !important;
    }
    .jt-auth-overlay.is-open {
        display: flex !important;
    }
    /* Lock page scroll while the tabbed modal is open (esp. iOS). */
    html.jt-auth-scroll-lock,
    html.jt-auth-scroll-lock body {
        overflow: hidden !important;
        overscroll-behavior: none !important;
        height: 100%;
    }
    body.jt-auth-scroll-lock {
        position: fixed !important;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
    }
    .jt-auth-box {
        box-sizing: border-box;
        position: relative;
        width: 480px;
        max-width: calc(100vw - 32px);
        margin: 0;
        background: #FFFFFF;
        border: 1px solid rgba(226, 232, 240, 0.65);
        box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.25);
        border-radius: 16px;
        padding: 28px 32px 32px;
        cursor: default;
        flex: 0 0 auto;
    }

    /* Tabs — pill active chip (mockup), no underline bar */
    .jt-auth-tabs {
        display: flex;
        flex-direction: row;
        align-items: center;
        width: 100%;
        margin: 0 0 28px;
        padding: 0;
        border-bottom: none;
        gap: 4px;
    }
    .jt-auth-tab {
        flex: 1 1 0;
        appearance: none;
        -webkit-appearance: none;
        border: none;
        margin: 0;
        padding: 11px 6px;
        background: transparent;
        color: #002A54;
        font-family: Charter, Georgia, serif;
        font-size: 19px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.02em;
        text-align: center;
        white-space: nowrap;
        cursor: pointer;
        border-radius: 8px;
        transition: background 0.15s ease, color 0.15s ease;
    }
    .jt-auth-tab[data-auth-panel="signin"],
    .jt-auth-tab[data-auth-panel="signup"] {
        flex: 0.85 1 0;
    }
    .jt-auth-tab[data-auth-panel="reset"] {
        flex: 1.3 1 0;
    }
    .jt-auth-tab.is-active {
        background: #002A54;
        color: #FFFFFF;
    }
    .jt-auth-tab:not(.is-active):hover {
        background: rgba(0, 42, 84, 0.06);
    }
    .jt-auth-tab:focus-visible {
        outline: 2px solid #002A54;
        outline-offset: 2px;
    }

    /* One visible panel at a time — height follows active content (no shared tall Sign Up box). */
    .jt-auth-panels {
        display: block;
        width: 100%;
        position: relative;
    }
    .jt-auth-panel {
        display: none;
        flex-direction: column;
        width: 100%;
        min-height: 0;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        z-index: 0;
        transition: opacity 0.2s ease, visibility 0s linear 0.2s;
    }
    .jt-auth-panel.is-active {
        display: flex;
        position: relative;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        z-index: 1;
        transition: opacity 0.2s ease, visibility 0s linear 0s;
    }
    .jt-auth-panel.is-fading-out {
        display: flex;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        opacity: 0;
        visibility: visible;
        pointer-events: none;
        z-index: 2;
        transition: opacity 0.16s ease, visibility 0s linear 0.16s;
    }
    .jt-auth-panel > .jt-auth-panel-inner {
        flex: 0 0 auto;
        width: 100%;
        min-height: 0;
        display: flex;
        flex-direction: column;
    }
    @media (prefers-reduced-motion: reduce) {
        .jt-auth-panel,
        .jt-auth-panel.is-active,
        .jt-auth-panel.is-fading-out {
            transition: none;
        }
    }
    #signup-box .signup-step[hidden] {
        display: none !important;
    }

    /* Sign In / Reset — compact top-aligned stack (no space-between / no bottom-pinned submit). */
    .jt-signin-panel,
    .jt-reset-panel {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        gap: 0;
        width: 100%;
        flex: 0 0 auto;
        min-height: 0;
    }
    .jt-signin-panel form.jenkintown-signin-form,
    .jt-reset-panel form {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        gap: 14px;
        width: 100%;
        margin: 0;
        flex: 0 0 auto;
    }
    .jt-signin-panel form.jenkintown-signin-form {
        gap: 14px;
        padding: 0;
    }
    .jt-reset-panel form {
        gap: 16px;
        padding: 0;
    }
    .jt-signin-panel .signin-field {
        position: static;
        width: 100%;
        height: auto;
        margin: 0;
    }
    .jt-signin-panel .signin-field input {
        box-sizing: border-box;
        width: 100%;
        height: 48px;
        border-radius: 8px;
        font-family: Charter, Georgia, serif;
        font-size: 17px;
    }
    .jt-signin-panel .signin-field-error {
        min-height: 0;
        margin-top: 4px;
        color: #EC1C25;
        font-size: 17px;
        line-height: 1.3;
        font-family: Charter, serif;
    }
    .jt-signin-panel .signin-field-error:empty {
        display: none;
    }
    .jt-signin-panel .forgot-link {
        position: static;
        align-self: flex-end;
        font-family: Charter, Georgia, serif;
        font-size: 17px;
        font-weight: 400;
        color: #002A54;
        text-decoration: none;
        white-space: nowrap;
        display: inline-block;
        margin: -4px 0 0;
    }
    .jt-signin-panel .forgot-link:hover {
        text-decoration: underline;
    }
    .jt-signin-panel input[type="submit"].signin-submit {
        position: static;
        width: 100%;
        height: 48px;
        margin-top: 4px;
        background: #002B57;
        border-radius: 5px;
        border: none;
        color: #ffffff;
        font-family: Charter, Georgia, serif;
        font-size: 19px;
        font-weight: 500;
        cursor: pointer;
    }
    .jt-signin-panel input[type="submit"].signin-submit:hover:not(:disabled) {
        background: #001a36;
    }
    .jt-signin-panel input[type="submit"].signin-submit:disabled {
        background: #8a9bb0;
        color: rgba(255, 255, 255, 0.92);
        cursor: not-allowed;
    }
    .jt-signin-panel .signin-reset-notice {
        display: none;
        margin: 0 0 4px;
        font-family: Charter, Georgia, serif;
        font-size: 17px;
        line-height: 1.5;
        text-align: center;
        color: #002A54;
    }
    .jt-signin-panel.has-reset-notice .signin-reset-notice {
        display: block;
    }

    /* Reset panel */
    .jt-reset-panel .lostpassword-intro {
        margin: 0;
        color: #002A54;
        font-family: Charter, Georgia, serif;
        font-size: 17px;
        line-height: 1.5;
        text-align: center;
    }
    .jt-reset-panel [data-lostpassword-message] {
        color: #002A54;
        font-family: Charter, Georgia, serif;
        font-size: 17px;
        line-height: 1.5;
        text-align: center;
        min-height: 0;
        margin: 0;
    }
    .jt-reset-panel .lostpassword-field,
    .jt-reset-panel .lostpassword-field-restricted {
        position: static;
        width: 100%;
        margin: 0;
    }
    .jt-reset-panel .lostpassword-field input,
    .jt-reset-panel .lostpassword-field-restricted input {
        margin-bottom: 0;
        height: 48px;
        width: 100%;
        box-sizing: border-box;
        border-radius: 8px;
        font-family: Charter, Georgia, serif;
    }
    .jt-reset-panel .lostpassword-field-error,
    .jt-reset-panel .lostpassword-field-error-restricted {
        min-height: 0;
        color: #EC1C25;
        font-size: 17px;
        line-height: 1.3;
        font-family: Charter, serif;
        margin-top: 4px;
    }
    .jt-reset-panel .lostpassword-field-error:empty,
    .jt-reset-panel .lostpassword-field-error-restricted:empty {
        margin-top: 0;
        display: none;
    }
    .jt-reset-panel input.has-error {
        border-color: #ffb3b6 !important;
    }
    .jt-reset-panel.has-errors input[type="submit"],
    .jt-reset-panel form.has-errors input[type="submit"] {
        background: #c5cedd !important;
        color: rgba(255,255,255,0.85) !important;
    }
    .jt-reset-panel input[type="submit"],
    #lostpassword-box input[type="submit"],
    #lostpassword-box-restricted input[type="submit"] {
        position: static;
        width: 100%;
        margin: 4px 0 0;
        height: 48px;
        padding: 0 16px;
        background: #002B57 !important;
        font-family: Charter, Georgia, serif !important;
        font-size: 19px !important;
        font-weight: 500 !important;
        border: none !important;
        border-radius: 5px !important;
        color: #ffffff !important;
        cursor: pointer;
        box-sizing: border-box;
    }
    .jt-reset-panel input[type="submit"]:hover:not(:disabled),
    #lostpassword-box input[type="submit"]:hover:not(:disabled),
    #lostpassword-box-restricted input[type="submit"]:hover:not(:disabled) {
        background: #001a36 !important;
    }
    .jt-reset-panel input[type="submit"]:disabled,
    #lostpassword-box input[type="submit"]:disabled,
    #lostpassword-box-restricted input[type="submit"]:disabled {
        background: #8a9bb0 !important;
        color: rgba(255, 255, 255, 0.92) !important;
        cursor: not-allowed !important;
    }
    .jt-reset-panel .lostpassword-links,
    .jt-reset-panel .lostpassword-links-restricted {
        position: static;
        margin: 8px 0 0;
        text-align: center;
        font-family: Charter, Georgia, serif;
        font-size: 17px;
        line-height: 1.4;
        color: #002A54;
    }
    .jt-reset-panel .lostpassword-back {
        color: #ea334d;
        text-decoration: underline;
        cursor: pointer;
        font-weight: 700;
    }

    /* Close X removed — dismiss via backdrop tap (non-restricted only) */
    .jt-modal-close {
        display: none !important;
    }

    @media (max-width: 1100px) {
        .jt-auth-overlay {
            /* Mobile popup scrim — keep black 50% for now */
            background: rgba(0, 0, 0, 0.5);
            padding: 16px;
            align-items: center;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            box-sizing: border-box;
        }
        .jt-auth-box {
            width: min(100%, 420px) !important;
            max-width: 100% !important;
            padding: 28px 24px !important;
            margin: auto;
        }
        .jt-auth-box:has(#signup-box.branch-form) {
            padding-bottom: 20px !important;
        }
        /* Tab titles + body / fields */
        .jt-auth-tab {
            font-size: 19px;
            font-weight: 500;
            padding: 10px 4px;
            line-height: 1.2;
            white-space: nowrap;
        }
        .jt-auth-tab[data-auth-panel="signin"],
        .jt-auth-tab[data-auth-panel="signup"] {
            flex: 0.8 1 0;
        }
        .jt-auth-tab[data-auth-panel="reset"] {
            flex: 1.4 1 0;
        }
        .jt-auth-tabs {
            margin-bottom: 18px;
        }
        .jt-auth-overlay .jt-signin-panel .signin-reset-notice,
        .jt-auth-overlay .jt-reset-panel .lostpassword-intro,
        .jt-auth-overlay .jt-reset-panel [data-lostpassword-message],
        .jt-auth-overlay #signup-box .signup-chooser-intro,
        .jt-auth-overlay #signup-box .signup-desc,
        .jt-auth-overlay #signup-box .signup-footer {
            font-size: 17px !important;
        }
        .jt-auth-overlay .jt-signin-panel .signin-field input,
        .jt-auth-overlay .jt-signin-panel .signin-field-error,
        .jt-auth-overlay .jt-signin-panel .forgot-link,
        .jt-auth-overlay .jt-reset-panel .lostpassword-field input,
        .jt-auth-overlay .jt-reset-panel .lostpassword-field-restricted input,
        .jt-auth-overlay .jt-reset-panel .lostpassword-field-error,
        .jt-auth-overlay .jt-reset-panel .lostpassword-field-error-restricted,
        .jt-auth-overlay .jt-reset-panel .lostpassword-links,
        .jt-auth-overlay .jt-reset-panel .lostpassword-links-restricted,
        .jt-auth-overlay #signup-box .ff-el-form-control:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
        .jt-auth-overlay #signup-box input.ff-el-form-control:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
        .jt-auth-overlay #signup-box select.ff-el-form-control,
        .jt-auth-overlay #signup-box textarea.ff-el-form-control,
        .jt-auth-overlay #signup-box .ff-el-form-check-label,
        .jt-auth-overlay #signup-box .ff-el-form-check-label span,
        .jt-auth-overlay #signup-box .ff-el-input--content label,
        .jt-auth-overlay #signup-box .ff-el-input--content label span,
        .jt-auth-overlay #signup-box .jt-required-placeholder-hint,
        .jt-auth-overlay #signup-box .text-danger,
        .jt-auth-overlay #signup-box .error.text-danger {
            font-size: 17px !important;
        }
        .jt-auth-overlay .jt-signin-panel input[type="submit"].signin-submit,
        .jt-auth-overlay .jt-reset-panel input[type="submit"],
        .jt-auth-overlay #signup-box .ff-btn,
        .jt-auth-overlay #signup-box .ff-btn-submit,
        .jt-auth-overlay #signup-box button.ff-btn,
        .jt-auth-overlay #signup-box input.ff-btn {
            font-size: 19px !important;
            font-weight: 500 !important;
        }
    }


    #signup-overlay {
        display: none;
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        background: rgba(0,0,0,0.5);
        z-index: 2147483647;
        justify-content: center;
        align-items: center;
        cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Ctext y='24' font-size='24' fill='white'%3E✕%3C/text%3E%3C/svg%3E") 16 16, crosshair;
    }
    #signup-box {
        box-sizing: border-box;
        background: #FFFFFF;
        width: 533px;
        max-width: calc(100vw - 32px);
        border: 1.02402px solid rgba(226, 232, 240, 0.1);
        box-shadow: 0px 25.6006px 51.2012px -12.2883px rgba(0, 0, 0, 0.25);
        border-radius: 14.3363px;
        position: relative;
        max-height: 90vh;
        overflow-y: auto;
        padding: 30px 37px 28px;
        cursor: default;
    }
    #signup-box h2,
    #signup-box .jt-auth-modal-title {
        color: #002854 !important;
        font-family: Charter, Georgia, serif !important;
        font-style: normal !important;
        font-size: 30px !important;
        font-weight: 700 !important;
        line-height: 37px !important;
        letter-spacing: -0.363008px !important;
        text-align: center !important;
        margin: 0 0 18px 0 !important;
        padding: 0 !important;
    }
    #signup-box .signup-desc {
        color: #002854;
        font-family: Charter, serif;
        font-size: 17px;
        line-height: 1.5;
        text-align: center;
        margin: 0 0 18px 0;
    }
    #signup-box .signup-footer {
        margin-top: 18px;
        text-align: center;
        font-family: Charter, serif;
        font-size: 17px;
        line-height: 1.4;
        color: #002B57;
        padding-top: 0;
    }
    #signup-box .signup-footer a,
    #signup-box .signup-footer span {
        color: #ea334d;
        text-decoration: underline;
        cursor: pointer;
        font-weight: 700;
    }

    /* Chooser card — match Sign In card chrome / type */
    #signup-box.chooser-form {
        box-sizing: border-box !important;
        width: 533px !important;
        max-width: calc(100vw - 32px) !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 30px 37px 28px !important;
        background: #ffffff !important;
        border: 1.02402px solid rgba(226, 232, 240, 0.1) !important;
        box-shadow: 0px 25.6006px 51.2012px -12.2883px rgba(0, 0, 0, 0.25) !important;
        border-radius: 14.3363px !important;
        overflow: hidden !important;
    }

    #signup-box.chooser-form h2,
    #signup-box.chooser-form .jt-auth-modal-title {
        width: 100% !important;
        margin: 0 0 18px 0 !important;
        text-align: center !important;
        font-family: Charter, Georgia, serif !important;
        font-style: normal !important;
        font-weight: 700 !important;
        font-size: 30px !important;
        line-height: 37px !important;
        letter-spacing: -0.363008px !important;
        color: #002854 !important;
    }

    #signup-box.chooser-form .signup-desc {
        margin: 0 0 18px 0 !important;
        text-align: center !important;
        font-family: Charter, serif !important;
        font-size: 17px !important;
        line-height: 1.4 !important;
        letter-spacing: -0.150391px !important;
        color: #002854 !important;
    }

    #signup-box.chooser-form .ff-el-group,
    #signup-box.chooser-form .ff-el-form-group {
        padding: 0 !important;
        margin: 0 0 18px 0 !important;
    }

    #signup-box.chooser-form .ff-el-input--content {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
        width: 100% !important;
        margin: 0 0 18px 0 !important;
        padding: 0 !important;
    }

    #signup-box.chooser-form .ff-el-input--content ul,
    #signup-box.chooser-form .ff-el-input--content ol {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }

    #signup-box.chooser-form .ff-el-input--content li {
        margin: 0 !important;
        padding: 0 !important;
    }

    #signup-box.chooser-form .ff-el-radio-group {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
        margin: 0 0 18px 0 !important;
        padding: 0 !important;
    }

    #signup-box.chooser-form .ff-el-form-check,
    #signup-box.chooser-form .ff-el-form-check-inline {
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }

    #signup-box.chooser-form .ff-el-radio-group .ff-el-form-check:not(:last-child),
    #signup-box.chooser-form .ff-el-radio-group .ff-el-form-check-inline:not(:last-child) {
        margin-bottom: 4px !important;
    }

    #signup-box.chooser-form .ff-el-input--content .ff-el-form-check:not(:last-child),
    #signup-box.chooser-form .ff-el-input--content .ff-el-form-check-inline:not(:last-child),
    #signup-box.chooser-form .ff-el-input--content li:not(:last-child) {
        margin-bottom: 8px !important;
    }

    #signup-box.chooser-form .ff-el-form-check-input[type="radio"] {
        appearance: none !important;
        -webkit-appearance: none !important;
        width: 15px !important;
        height: 15px !important;
        margin: 0 !important;
        margin-right: 0 !important;
        border-radius: 50% !important;
        border: 1px solid #c9c9c9 !important;
        background: #ffffff !important;
        position: relative !important;
        flex: 0 0 15px !important;
    }

    #signup-box.chooser-form .ff-el-form-check-input[type="radio"]:checked {
        background: #002854 !important;
        border-color: #002854 !important;
    }

    #signup-box.chooser-form .ff-el-form-check-label,
    #signup-box.chooser-form .ff-el-form-check-label span,
    #signup-box.chooser-form .ff-el-input--content label,
    #signup-box.chooser-form .ff-el-input--content label span {
        font-family: Charter, serif !important;
        font-style: normal !important;
        font-weight: 400 !important;
        font-size: 17px !important;
        line-height: 1.4 !important;
        letter-spacing: -0.150391px !important;
        color: #002854 !important;
    }

    #signup-box.chooser-form .ff_submit_btn_wrapper,
    #signup-box.chooser-form .ff-btn-wrapper {
        margin-top: 0 !important;
        padding-bottom: 0 !important;
    }

    #signup-box.chooser-form .ff-btn,
    #signup-box.chooser-form .ff-btn-submit,
    #signup-box.chooser-form button.ff-btn,
    #signup-box.chooser-form input.ff-btn {
        width: 100% !important;
        height: 48px !important;
        min-height: 48px !important;
        padding: 0 16px !important;
        border-radius: 5px !important;
        background: #002B57 !important;
        color: #ffffff !important;
        font-family: Charter, Georgia, serif !important;
        font-style: normal !important;
        font-weight: 500 !important;
        font-size: 19px !important;
        line-height: 1 !important;
        letter-spacing: -0.150391px !important;
        opacity: 1 !important;
    }

    #signup-box.has-confirmation h2,
    #signup-box.has-confirmation .jt-auth-modal-title,
    #signup-box.has-confirmation .signup-desc,
    #signup-box.has-confirmation .signup-footer,
    #signup-box.has-confirmation .signup-step {
        display: none !important;
    }

    #signup-box.has-confirmation {
        box-sizing: border-box !important;
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        overflow: visible !important;
    }

    /* Desktop: no X (backdrop dismiss). Mobile: same close control as other auth modals. */
    #signup-box .signup-confirmation-close {
        display: none !important;
        position: absolute !important;
        top: 12px !important;
        right: 12px !important;
        z-index: 5 !important;
        width: 36px !important;
        height: 36px !important;
        padding: 0 !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 10px !important;
        background: #fff !important;
        cursor: pointer !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    #signup-box.has-confirmation.has-confirmation-on-home {
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
    }

    #signup-box.has-confirmation .fluentform,
    #signup-box.has-confirmation .ff-el-form-group,
    #signup-box.has-confirmation .ff-el-input--content,
    #signup-box.has-confirmation .ff-el-group {
        display: none !important;
    }

    #signup-box.has-confirmation .ff-message-success {
        display: none !important;
    }

    #signup-box.has-confirmation .signup-confirmation {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 16px !important;
        width: 100% !important;
        max-width: 420px !important;
        margin: 0 auto !important;
        padding: 8px 0 0 !important;
        text-align: center !important;
        color: #002A54 !important;
        position: relative !important;
    }

    #signup-box.has-confirmation.has-confirmation-on-home .signup-confirmation {
        max-width: 420px !important;
    }

    #signup-box.has-confirmation .signup-confirmation h3,
    #signup-box.has-confirmation .signup-confirmation h4 {
        margin: 0 !important;
        max-width: 100% !important;
        font-family: Charter, Georgia, serif !important;
        font-style: normal !important;
        font-weight: 700 !important;
        font-size: 27px !important;
        line-height: 1.25 !important;
        letter-spacing: -0.02em !important;
        text-align: center !important;
        color: #002A54 !important;
    }

    #signup-box.has-confirmation .signup-confirmation p {
        margin: 0 !important;
        max-width: 100% !important;
        font-family: Avenir, "Avenir Next", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
        font-style: normal !important;
        font-weight: 400 !important;
        font-size: 17px !important;
        line-height: 1.55 !important;
        letter-spacing: -0.01em !important;
        text-align: center !important;
        color: #002A54 !important;
    }

    #signup-box.has-confirmation .signup-confirmation a {
        display: none !important;
    }

    @media (max-width: 1100px) {
        #signup-box .signup-confirmation-close {
            display: flex !important;
        }
        #signup-box.has-confirmation .signup-confirmation {
            padding-top: 28px !important;
        }
        #signup-box.has-confirmation .signup-confirmation h3,
        #signup-box.has-confirmation .signup-confirmation h4 {
            font-size: 24px !important;
            padding-right: 28px !important;
        }
        #signup-box.has-confirmation .signup-confirmation p {
            font-size: 17px !important;
        }
    }

    #signup-box .ff-message-success,
    #signup-box .ff-message-success p,
    #signup-box .ff-message-success h3,
    #signup-box .ff-message-success .ff-message-success {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        color: #00264d !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 auto !important;
        max-width: 100% !important;
        text-align: center !important;
    }

    #signup-box .ff-message-success p,
    #signup-box .ff-message-success h3,
    #signup-box .ff-message-success .ff-message {
        color: #00264d !important;
        margin: 0 !important;
    }

    #signup-box .ff-message-success p:first-child,
    #signup-box .ff-message-success h3:first-child,
    #signup-box .ff-message-success .ff-message:first-child {
        font-size: 20px !important;
        line-height: 1.35 !important;
        font-weight: 700 !important;
        margin-bottom: 18px !important;
    }

    #signup-box .ff-message-success p:last-child,
    #signup-box .ff-message-success h3:last-child,
    #signup-box .ff-message-success .ff-message:last-child {
        font-size: 17px !important;
        line-height: 1.55 !important;
        font-weight: 400 !important;
    }

    /* Field styles — shared input/label rules live in style.css */
    #signup-box .ff-el-group,
    #signup-box .ff-el-form-group {
        padding: 0 !important;
        margin-bottom: 18px !important;
    }

    /* Radio buttons: force horizontal layout */
    #signup-box .ff-el-radio-group,
    #signup-box .ff-el-checkbox-group {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 5px !important; /* small gap between choices */
        list-style: none !important;
        padding: 4px 0 !important;
        margin: 0 !important;
        align-items: center !important;
    }
    #signup-box .ff-el-form-check,
    #signup-box .ff-el-form-check-inline {
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 5px !important;
        margin-right: 5px !important; /* ensure space between choices if gap isn't applied */
        vertical-align: middle !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    /* Extra spacing between the radio input and its label */
    #signup-box .ff-el-form-check input[type="radio"],
    #signup-box .ff-el-form-check-input[type="radio"] {
        margin-right: 6px !important;
    }
    /* Avoid the last child having extra right margin */
    #signup-box .ff-el-radio-group .ff-el-form-check:last-child {
        margin-right: 0 !important;
    }
    /* Ensure labels themselves have spacing and are inline-block */
    #signup-box .ff-el-radio-group label,
    #signup-box .ff-el-radio-group .ff-el-form-check-label {
        display: inline-block !important;
        margin-right: 5px !important;
        position: relative !important;
        vertical-align: middle !important;
    }
    #signup-box .ff-el-form-check-input[type="radio"],
    #signup-box .ff-el-form-check-input[type="checkbox"] {
        width: 18px !important;
        height: 18px !important;
    }
    #signup-box.branch-form .ff-el-form-check-label,
    #signup-box.branch-form .ff-el-form-check-label span,
    #signup-box.branch-form .ff-el-input--content label,
    #signup-box.branch-form .ff-el-input--content label span,
    #signup-box.chooser-form .ff-el-form-check-label,
    #signup-box.chooser-form .ff-el-form-check-label span,
    #signup-box.chooser-form .ff-el-input--content label,
    #signup-box.chooser-form .ff-el-input--content label span {
        color: #002854 !important;
        font-family: Charter, serif !important;
        font-size: 17px !important;
    }
    /* Strong overrides for the FluentForm input content wrapper */
    #signup-box .ff-el-input--content {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 5px !important;
        align-items: center !important;
    }
    #signup-box .ff-el-input--content > .ff-el-form-check,
    #signup-box .ff-el-input--content > label {
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        margin-right: 5px !important;
    }
    /* Vertical alignment fixes: ensure inputs and labels are centered */
    #signup-box .ff-el-form-check,
    #signup-box .ff-el-input--content > .ff-el-form-check,
    #signup-box .ff-el-input--content > label,
    #signup-box .ff-el-form-check-label {
        display: inline-flex !important;
        align-items: center !important;
    }
    #signup-box .ff-el-form-check input[type="radio"],
    #signup-box .ff-el-form-check-input[type="radio"] {
        vertical-align: middle !important;
        margin-top: 0 !important;
        transform: translateY(1px) !important; /* subtle nudge to align visually */
    }
    #signup-box .ff-el-form-check-label {
        line-height: 1.3 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Submit button */
    #signup-box .ff_submit_btn_wrapper,
    #signup-box .ff-btn-submit,
    #signup-box .ff-btn-wrapper {
        margin-top: 0 !important;
        padding-bottom: 0 !important;
    }
    #signup-box .ff-btn,
    #signup-box .ff-btn-submit,
    #signup-box button.ff-btn,
    #signup-box input.ff-btn {
        width: 100% !important;
        height: 48px !important;
        padding: 0 16px !important;
        background: #002B57 !important;
        color: #ffffff !important;
        border: none !important;
        border-radius: 5px !important;
        font-family: Charter, Georgia, serif !important;
        font-size: 19px !important;
        font-weight: 500 !important;
        cursor: pointer !important;
        transition: background 0.2s !important;
    }
    #signup-box .ff-btn:hover:not(:disabled),
    #signup-box .ff-btn-submit:hover:not(:disabled),
    #signup-box button.ff-btn:hover:not(:disabled),
    #signup-box input.ff-btn:hover:not(:disabled) {
        background: #001a36 !important;
    }
    #signup-box .ff-btn:disabled,
    #signup-box .ff-btn-submit:disabled,
    #signup-box button.ff-btn:disabled,
    #signup-box input.ff-btn:disabled {
        background: #8a9bb0 !important;
        color: rgba(255, 255, 255, 0.92) !important;
        cursor: not-allowed !important;
    }

    #signup-box.chooser-form .ff-btn:disabled,
    #signup-box.chooser-form .ff-btn-submit:disabled,
    #signup-box.chooser-form button.ff-btn:disabled,
    #signup-box.chooser-form input.ff-btn:disabled {
        background: rgba(0, 40, 84, 0.72) !important;
        color: rgba(255, 255, 255, 0.92) !important;
        opacity: 1 !important;
        cursor: not-allowed !important;
    }

    #signup-box.chooser-form .ff-btn:not(:disabled):hover,
    #signup-box.chooser-form .ff-btn-submit:not(:disabled):hover,
    #signup-box.chooser-form button.ff-btn:not(:disabled):hover,
    #signup-box.chooser-form input.ff-btn:not(:disabled):hover {
        background: #001a36 !important;
    }

    /* Field container */
    #signup-box .ff-el-group,
    #signup-box .ff-el-form-group,
    #signup-box .ff-el-form-check,
    #signup-box .ff-el-form-check-inline {
        margin-top: 0 !important;
    }

    /* Final chooser overrides (must come last to beat global FluentForm styles) */
    #signup-box.chooser-form .ff-el-input--content,
    #signup-box.chooser-form .ff-el-input--content ul,
    #signup-box.chooser-form .ff-el-input--content ol,
    #signup-box.chooser-form .ff-el-radio-group {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
        width: 100% !important;
        margin: 0 0 18px 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    #signup-box.chooser-form .ff-el-input--content .ff-el-form-check,
    #signup-box.chooser-form .ff-el-input--content .ff-el-form-check-inline,
    #signup-box.chooser-form .ff-el-radio-group .ff-el-form-check,
    #signup-box.chooser-form .ff-el-radio-group .ff-el-form-check-inline,
    #signup-box.chooser-form .ff-el-input--content li {
        display: flex !important;
        align-items: center !important;
        gap: 16px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #signup-box.chooser-form .ff-el-input--content input[type="radio"],
    #signup-box.chooser-form .ff-el-radio-group input[type="radio"],
    #signup-box.chooser-form .ff-el-form-check-input[type="radio"] {
        width: 14px !important;
        height: 14px !important;
        min-width: 14px !important;
        min-height: 14px !important;
        flex: 0 0 14px !important;
        margin: 0 !important;
        margin-right: 0 !important;
        transform: none !important;
    }

    #signup-box.chooser-form .ff-el-form-check-label,
    #signup-box.chooser-form .ff-el-form-check-label span,
    #signup-box.chooser-form .ff-el-input--content label,
    #signup-box.chooser-form .ff-el-input--content label span {
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.2 !important;
    }

    @media (max-width: 1100px) {
        #signup-box,
        #signup-box.chooser-form,
        #signup-box.branch-form {
            width: min(100%, 420px) !important;
            max-width: 100% !important;
            min-height: 0 !important;
            padding: 28px 24px !important;
        }
        #signup-box h2,
        #signup-box .jt-auth-modal-title {
            font-size: 26px !important;
            line-height: 1.25 !important;
            margin: 0 0 14px 0 !important;
        }
        #signup-box.chooser-form .ff-el-input--content,
        #signup-box.chooser-form .ff-el-radio-group {
            gap: 14px !important;
            margin: 0 0 14px 0 !important;
        }
        #signup-box .ff-el-group,
        #signup-box .ff-el-form-group {
            margin-bottom: 14px !important;
        }
        #signup-box .signup-footer {
            margin-top: 14px;
        }
    }
    
    /* Inline expand: radios stay up top, matching form opens underneath (no Next) */
    #signup-box .signup-step-chooser .ff-btn-wrapper,
    #signup-box #chooser-submit-btn {
        display: none !important;
    }
    #signup-box.signup-expanded .signup-step-chooser {
        margin: 0 0 4px 0 !important;
        padding: 0 !important;
    }
    #signup-box.signup-expanded .signup-chooser-intro {
        display: none !important;
    }
    /* Keep option boxes; ease chrome so expand doesn't snap */
    #signup-box .signup-step-chooser .ff-el-form-check,
    #signup-box .signup-step-chooser .ff-el-form-check-inline {
        transition:
            padding 0.45s cubic-bezier(0.22, 1, 0.36, 1),
            border-color 0.35s ease,
            background-color 0.35s ease,
            box-shadow 0.35s ease,
            transform 0.2s ease;
    }
    #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check,
    #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check-inline {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 12px 14px !important;
        border: 1px solid rgba(226, 232, 240, 0.95) !important;
        border-radius: 10px !important;
        background: #fff !important;
    }
    #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check:has(input:checked),
    #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check-inline:has(input:checked) {
        border-color: #002A54 !important;
        background: rgba(0, 42, 84, 0.04) !important;
        box-shadow: 0 0 0 1px rgba(0, 42, 84, 0.12);
    }
    #signup-box.signup-expanded .signup-step-chooser .ff-el-input--content,
    #signup-box.signup-expanded .signup-step-chooser .ff-el-input--content ul,
    #signup-box.signup-expanded .signup-step-chooser .ff-el-input--content ol,
    #signup-box.signup-expanded .signup-step-chooser .ff-el-radio-group {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }
    #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check,
    #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check-inline,
    #signup-box.signup-expanded .signup-step-chooser .ff-el-input--content li {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        margin: 0 !important;
    }
    #signup-box.signup-expanded .signup-step-chooser input[type="radio"],
    #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check-input[type="radio"] {
        width: 14px !important;
        height: 14px !important;
        min-width: 14px !important;
        flex: 0 0 14px !important;
        margin: 0 !important;
        transform: none !important;
    }
    #signup-box.signup-expanded.branch-form .signup-step-branch .ff-el-input--content {
        display: block !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        gap: 0 !important;
        align-items: stretch !important;
    }
    #signup-box.signup-expanded .signup-step-branch .ff-el-radio-group,
    #signup-box.signup-expanded .signup-step-branch .ff-el-input--content:has(input[type="radio"]) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 12px !important;
        align-items: center !important;
    }

    /* Signup as panel inside #auth-box — drop duplicate card chrome */
    #auth-box #signup-box,
    #auth-box-restricted #signup-box {
        width: 100% !important;
        max-width: 100% !important;
        box-shadow: none !important;
        border: none !important;
        border-radius: 0 !important;
        padding: 8px 0 0 !important;
        background: transparent !important;
        max-height: none !important;
        overflow: visible !important;
    }
    #auth-box #signup-box.chooser-form,
    #auth-box #signup-box.branch-form,
    #auth-box #signup-box.has-confirmation,
    #auth-box-restricted #signup-box.chooser-form,
    #auth-box-restricted #signup-box.branch-form,
    #auth-box-restricted #signup-box.has-confirmation {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        box-shadow: none !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        padding: 4px 0 0 !important;
        overflow: visible !important;
    }
    /* Chooser: top-aligned stack with intro + padded choice rows */
    #auth-box #signup-box.chooser-form,
    #auth-box-restricted #signup-box.chooser-form {
        flex: 1 1 auto !important;
        min-height: 100% !important;
        height: auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
    }
    #auth-box #signup-box.chooser-form .signup-step-chooser,
    #auth-box-restricted #signup-box.chooser-form .signup-step-chooser {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
        justify-content: flex-start;
        gap: 18px;
        min-height: 0;
        width: 100%;
        padding-top: 2px;
    }
    #auth-box #signup-box.chooser-form .signup-chooser-intro,
    #auth-box-restricted #signup-box.chooser-form .signup-chooser-intro {
        margin: 0;
        color: #002A54;
        font-family: Charter, Georgia, serif;
        font-size: 17px;
        line-height: 1.45;
        text-align: center;
    }
    #auth-box #signup-box.chooser-form .signup-step-chooser form,
    #auth-box-restricted #signup-box.chooser-form .signup-step-chooser form {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
        justify-content: flex-start;
        min-height: 0;
        margin: 0;
        width: 100%;
    }
    #auth-box #signup-box.chooser-form .ff-el-input--content,
    #auth-box #signup-box.chooser-form .ff-el-radio-group,
    #auth-box-restricted #signup-box.chooser-form .ff-el-input--content,
    #auth-box-restricted #signup-box.chooser-form .ff-el-radio-group {
        display: flex !important;
        flex-direction: column !important;
        flex: 0 1 auto !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        margin: 0 !important;
        min-height: 0;
        width: 100% !important;
    }
    #auth-box #signup-box.chooser-form .ff-el-form-check,
    #auth-box #signup-box.chooser-form .ff-el-form-check-inline,
    #auth-box-restricted #signup-box.chooser-form .ff-el-form-check,
    #auth-box-restricted #signup-box.chooser-form .ff-el-form-check-inline {
        box-sizing: border-box !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 12px 14px !important;
        border: 1px solid rgba(226, 232, 240, 0.95) !important;
        border-radius: 10px !important;
        background: #fff !important;
        align-items: flex-start !important;
        gap: 12px !important;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        transition:
            padding 0.45s cubic-bezier(0.22, 1, 0.36, 1),
            border-color 0.35s ease,
            background-color 0.35s ease,
            box-shadow 0.35s ease,
            transform 0.2s ease;
    }
    #auth-box #signup-box.chooser-form .ff-el-form-check:has(input:checked),
    #auth-box-restricted #signup-box.chooser-form .ff-el-form-check:has(input:checked) {
        border-color: #002A54 !important;
        background: rgba(0, 42, 84, 0.04) !important;
        box-shadow: 0 0 0 1px rgba(0, 42, 84, 0.12);
    }
    @media (hover: hover) and (pointer: fine) {
        #auth-box #signup-box.chooser-form .ff-el-form-check:hover,
        #auth-box-restricted #signup-box.chooser-form .ff-el-form-check:hover {
            border-color: rgba(0, 42, 84, 0.35) !important;
        }
    }
    #auth-box #signup-box.chooser-form .ff-el-form-check:active,
    #auth-box-restricted #signup-box.chooser-form .ff-el-form-check:active {
        transform: scale(0.985);
    }
    /* Keep boxed options after expand (chooser-form class is removed) */
    #auth-box #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check,
    #auth-box #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check-inline,
    #auth-box-restricted #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check,
    #auth-box-restricted #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check-inline {
        box-sizing: border-box !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 12px 14px !important;
        border: 1px solid rgba(226, 232, 240, 0.95) !important;
        border-radius: 10px !important;
        background: #fff !important;
        align-items: flex-start !important;
        gap: 12px !important;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        transition:
            border-color 0.35s ease,
            background-color 0.35s ease,
            box-shadow 0.35s ease,
            transform 0.2s ease;
    }
    #auth-box #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check:has(input:checked),
    #auth-box-restricted #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check:has(input:checked) {
        border-color: #002A54 !important;
        background: rgba(0, 42, 84, 0.04) !important;
        box-shadow: 0 0 0 1px rgba(0, 42, 84, 0.12);
    }
    #auth-box #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check:active,
    #auth-box-restricted #signup-box.signup-expanded .signup-step-chooser .ff-el-form-check:active {
        transform: scale(0.985);
    }
    #auth-box #signup-box.chooser-form .ff-el-form-check-input[type="radio"],
    #auth-box-restricted #signup-box.chooser-form .ff-el-form-check-input[type="radio"] {
        margin-top: 3px !important;
    }
    #auth-box #signup-box.chooser-form .ff-btn-wrapper,
    #auth-box #signup-box.chooser-form .ff_submit_btn_wrapper,
    #auth-box-restricted #signup-box.chooser-form .ff-btn-wrapper,
    #auth-box-restricted #signup-box.chooser-form .ff_submit_btn_wrapper {
        margin: 0 0 16px 0 !important;
        padding: 0 !important;
    }
    #auth-box #signup-box.chooser-form .signup-footer,
    #auth-box-restricted #signup-box.chooser-form .signup-footer {
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Subtle accordion expand under the tapped option */
    #signup-box .signup-step-branch {
        display: grid;
        grid-template-rows: 0fr;
        opacity: 0;
        margin-top: 0;
        padding-top: 0;
        border-top: 1px solid transparent;
        pointer-events: none;
        transition:
            grid-template-rows 0.55s cubic-bezier(0.33, 1, 0.68, 1),
            opacity 0.45s ease-out,
            margin-top 0.55s cubic-bezier(0.33, 1, 0.68, 1),
            padding-top 0.55s cubic-bezier(0.33, 1, 0.68, 1),
            border-color 0.45s ease;
    }
    #signup-box .signup-step-branch > * {
        overflow: hidden;
        min-height: 0;
        opacity: 0;
        transform: translateY(-4px);
        transition:
            opacity 0.4s ease-out 0.08s,
            transform 0.5s cubic-bezier(0.33, 1, 0.68, 1) 0.05s;
    }
    #signup-box .signup-step-branch.is-active {
        grid-template-rows: 1fr;
        opacity: 1;
        margin-top: 12px;
        padding-top: 14px;
        border-top-color: rgba(226, 232, 240, 0.85);
        pointer-events: auto;
    }
    #signup-box .signup-step-branch.is-active > * {
        opacity: 1;
        transform: translateY(0);
    }
    #signup-box.signup-expanded {
        display: flex !important;
        flex-direction: column !important;
    }
    #signup-box.signup-expanded .signup-step-chooser {
        flex: 0 0 auto;
    }
    @media (prefers-reduced-motion: reduce) {
        #signup-box .signup-step-branch,
        #signup-box .signup-step-branch > *,
        #signup-box .signup-step-chooser .ff-el-form-check,
        #signup-box .signup-step-chooser .ff-el-form-check-inline {
            transition: none !important;
            transform: none !important;
        }
    }

    .jt-auth-box:has(#signup-box.chooser-form) {
        padding-bottom: 24px;
    }
    .jt-auth-box:has(#signup-box.chooser-form) .jt-auth-tabs {
        margin-bottom: 20px;
    }
    /* Space under Sign Up submit button */
    .jt-auth-box:has(#signup-box.branch-form) {
        padding-bottom: 20px;
    }
    #signup-box.branch-form .ff_submit_btn_wrapper,
    #signup-box.branch-form .ff-btn-wrapper {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
    #auth-box #signup-box.has-confirmation,
    #auth-box-restricted #signup-box.has-confirmation {
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
    }
    #auth-box #signup-box h2,
    #auth-box #signup-box .jt-auth-modal-title,
    #auth-box-restricted #signup-box h2,
    #auth-box-restricted #signup-box .jt-auth-modal-title {
        display: none !important;
    }
    #auth-box #signup-box .jt-modal-close,
    #auth-box-restricted #signup-box .jt-modal-close {
        display: none !important;
    }
    /* Confirmation: same shell chrome as Sign In / Reset, no tabs, content-sized */
    .jt-auth-box:has(#signup-box.has-confirmation),
    .jt-auth-box.jt-auth-box--confirmation {
        padding: 40px 42px 36px !important;
    }
    .jt-auth-box:has(#signup-box.has-confirmation) .jt-auth-tabs,
    .jt-auth-box.jt-auth-box--confirmation .jt-auth-tabs {
        display: none !important;
    }
    .jt-auth-box:has(#signup-box.has-confirmation) > .jt-modal-close,
    .jt-auth-box.jt-auth-box--confirmation > .jt-modal-close {
        display: none !important;
    }
    @media (max-width: 1100px) {
        .jt-auth-box:has(#signup-box.has-confirmation),
        .jt-auth-box.jt-auth-box--confirmation {
            padding: 28px 24px !important;
        }
        #auth-box #signup-box,
        #auth-box #signup-box.chooser-form,
        #auth-box #signup-box.branch-form,
        #auth-box-restricted #signup-box,
        #auth-box-restricted #signup-box.chooser-form,
        #auth-box-restricted #signup-box.branch-form {
            width: 100% !important;
            padding: 8px 0 0 !important;
        }

        /* Beat later base signup/signin type rules on mobile */
        #auth-overlay .jt-auth-tab,
        #auth-overlay-restricted .jt-auth-tab {
            font-size: 19px !important;
            font-weight: 500 !important;
        }
        #auth-overlay .jt-signin-panel .signin-reset-notice,
        #auth-overlay .jt-reset-panel .lostpassword-intro,
        #auth-overlay .jt-reset-panel [data-lostpassword-message],
        #auth-overlay-restricted .jt-signin-panel .signin-reset-notice,
        #auth-overlay-restricted .jt-reset-panel .lostpassword-intro,
        #auth-overlay-restricted .jt-reset-panel [data-lostpassword-message],
        #auth-box #signup-box .signup-chooser-intro,
        #auth-box #signup-box.chooser-form .signup-chooser-intro,
        #auth-box #signup-box .signup-desc,
        #auth-box #signup-box .signup-footer,
        #auth-box-restricted #signup-box .signup-chooser-intro,
        #auth-box-restricted #signup-box.chooser-form .signup-chooser-intro,
        #auth-box-restricted #signup-box .signup-desc,
        #auth-box-restricted #signup-box .signup-footer {
            font-size: 17px !important;
        }
        #auth-overlay .jt-signin-panel .signin-field input,
        #auth-overlay .jt-signin-panel .forgot-link,
        #auth-overlay .jt-signin-panel .signin-field-error,
        #auth-overlay .jt-reset-panel input[type="email"],
        #auth-overlay .jt-reset-panel input[type="text"],
        #auth-overlay .jt-reset-panel input[type="password"],
        #auth-overlay .jt-reset-panel .lostpassword-field-error,
        #auth-overlay .jt-reset-panel .lostpassword-field-error-restricted,
        #auth-overlay .jt-reset-panel .lostpassword-links,
        #auth-overlay .jt-reset-panel .lostpassword-links-restricted,
        #auth-overlay-restricted .jt-signin-panel .signin-field input,
        #auth-overlay-restricted .jt-signin-panel .forgot-link,
        #auth-overlay-restricted .jt-signin-panel .signin-field-error,
        #auth-overlay-restricted .jt-reset-panel input[type="email"],
        #auth-overlay-restricted .jt-reset-panel input[type="text"],
        #auth-overlay-restricted .jt-reset-panel input[type="password"],
        #auth-overlay-restricted .jt-reset-panel .lostpassword-field-error,
        #auth-overlay-restricted .jt-reset-panel .lostpassword-field-error-restricted,
        #auth-overlay-restricted .jt-reset-panel .lostpassword-links,
        #auth-overlay-restricted .jt-reset-panel .lostpassword-links-restricted,
        #auth-box #signup-box .ff-el-form-control:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
        #auth-box #signup-box input.ff-el-form-control:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
        #auth-box #signup-box select.ff-el-form-control,
        #auth-box #signup-box textarea.ff-el-form-control,
        #auth-box #signup-box .ff-el-form-check-label,
        #auth-box #signup-box .ff-el-form-check-label span,
        #auth-box #signup-box .ff-el-input--content label,
        #auth-box #signup-box .ff-el-input--content label span,
        #auth-box #signup-box.chooser-form .ff-el-form-check-label,
        #auth-box #signup-box.chooser-form .ff-el-form-check-label span,
        #auth-box #signup-box.branch-form .ff-el-form-check-label,
        #auth-box #signup-box.branch-form .ff-el-form-check-label span,
        #auth-box #signup-box .jt-required-placeholder-hint,
        #auth-box #signup-box .text-danger,
        #auth-box-restricted #signup-box .ff-el-form-control:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
        #auth-box-restricted #signup-box input.ff-el-form-control:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
        #auth-box-restricted #signup-box select.ff-el-form-control,
        #auth-box-restricted #signup-box textarea.ff-el-form-control,
        #auth-box-restricted #signup-box .ff-el-form-check-label,
        #auth-box-restricted #signup-box .ff-el-form-check-label span,
        #auth-box-restricted #signup-box .ff-el-input--content label,
        #auth-box-restricted #signup-box .ff-el-input--content label span,
        #auth-box-restricted #signup-box.chooser-form .ff-el-form-check-label,
        #auth-box-restricted #signup-box.chooser-form .ff-el-form-check-label span,
        #auth-box-restricted #signup-box.branch-form .ff-el-form-check-label,
        #auth-box-restricted #signup-box.branch-form .ff-el-form-check-label span,
        #auth-box-restricted #signup-box .jt-required-placeholder-hint,
        #auth-box-restricted #signup-box .text-danger {
            font-size: 17px !important;
        }
        #auth-overlay .jt-signin-panel input[type="submit"].signin-submit,
        #auth-overlay .jt-reset-panel input[type="submit"],
        #auth-overlay-restricted .jt-signin-panel input[type="submit"].signin-submit,
        #auth-overlay-restricted .jt-reset-panel input[type="submit"],
        #auth-box #signup-box .ff-btn,
        #auth-box #signup-box .ff-btn-submit,
        #auth-box #signup-box button.ff-btn,
        #auth-box #signup-box input.ff-btn,
        #auth-box-restricted #signup-box .ff-btn,
        #auth-box-restricted #signup-box .ff-btn-submit,
        #auth-box-restricted #signup-box button.ff-btn,
        #auth-box-restricted #signup-box input.ff-btn {
            font-size: 19px !important;
            font-weight: 500 !important;
        }
    }

