/*
 * REA public registration page reference.
 * Strictly scoped to html.ows-register-reference so no other OJS page changes.
 * The native OJS form/action/validation remain intact; only presentation is changed.
 */
html.ows-register-reference,
html.ows-register-reference body {
    background: #f8faf9 !important;
}

html.ows-register-reference body {
    overflow-x: hidden;
}

/*
 * The native register page normally lives inside the public theme's narrow
 * .pkp_structure_main column. The script moves the native form into a shell
 * directly below the header; hide only the now-empty original content region.
 */
html.ows-register-reference .ows_register_original_content {
    display: none !important;
}

html.ows-register-reference .pkp_structure_sidebar,
html.ows-register-reference .pkp_structure_footer_wrapper {
    display: none !important;
}

html.ows-register-reference .ows_register_page_root {
    overflow: visible !important;
}

html.ows-register-reference .page_register {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

html.ows-register-reference .page_register > :not(.ows_register_shell) {
    display: none !important;
}

html.ows-register-reference .ows_register_shell {
    position: relative;
    left: 50%;
    display: grid;
    grid-template-columns: 45.7% 54.3%;
    width: 100vw;
    max-width: 100vw;
    min-height: 668px;
    margin-left: -50vw;
    box-sizing: border-box;
    background: #f8faf9;
}

/* Exact left-side visual cropped from the supplied reference screenshot. */
html.ows-register-reference .ows_register_story {
    position: relative;
    min-height: 668px;
    overflow: hidden;
    background-image: url('../images/registerReferenceStory.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
}

html.ows-register-reference .ows_register_story_accessible {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

html.ows-register-reference .ows_register_stage {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    min-width: 0;
    min-height: 668px;
    padding: 15px 24px 12px 0;
    box-sizing: border-box;
    overflow: hidden;
    background:
        linear-gradient(142deg, rgba(255,255,255,.86) 0%, rgba(248,251,250,.96) 58%, rgba(246,250,249,.92) 100%);
}

/* Very pale right-side line/feather texture from the same visual language. */
html.ows-register-reference .ows_register_stage::before {
    content: '';
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    opacity: .42;
    background-image: url('../images/loginPageWaveRight.png');
    background-repeat: no-repeat;
    background-size: 760px 560px;
    background-position: right bottom;
}

html.ows-register-reference .ows_register_stage::after {
    content: '';
    position: absolute;
    z-index: 0;
    right: -35px;
    bottom: 16px;
    width: 240px;
    height: 430px;
    pointer-events: none;
    opacity: .18;
    transform: rotate(8deg);
    background: url('../images/loginPageLeafLeft.png') no-repeat center / contain;
}

html.ows-register-reference .ows_register_card {
    position: relative;
    z-index: 2;
    width: 504px;
    max-width: calc(100vw - 48px);
    box-sizing: border-box;
    margin: 0;
    padding: 16px 56px 14px;
    overflow: hidden;
    background: rgba(255,255,255,.985);
    border: 1px solid #e3e8e7;
    border-radius: 8px !important;
    box-shadow: 0 9px 24px rgba(32, 55, 61, .11);
}

html.ows-register-reference .ows_register_card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background: #06666d;
}

html.ows-register-reference .ows_register_intro {
    margin: 0 0 12px;
    text-align: center;
}

html.ows-register-reference .ows_register_logo {
    display: block;
    width: 62px;
    height: auto;
    margin: 0 auto 4px;
}

html.ows-register-reference .ows_register_intro h1 {
    margin: 0 0 3px !important;
    padding: 0 !important;
    color: #07575d !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    border: 0 !important;
}

html.ows-register-reference .ows_register_intro p {
    margin: 0 !important;
    color: #67777d !important;
    font-size: 10.5px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

html.ows-register-reference #register,
html.ows-register-reference form.cmp_form.register {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-family: Roboto, Arial, sans-serif !important;
}

html.ows-register-reference #register fieldset,
html.ows-register-reference #register fieldset.fields,
html.ows-register-reference #register .fields {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

html.ows-register-reference #register fieldset > legend {
    display: none !important;
}

html.ows-register-reference #register .identity .fields > div,
html.ows-register-reference #register fieldset.login .fields > div,
html.ows-register-reference #register .reviewer_interests,
html.ows-register-reference #register .reviewer_nocontext_interests {
    width: 100% !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
}

html.ows-register-reference #register .identity .fields > div > label,
html.ows-register-reference #register fieldset.login .fields > div > label,
html.ows-register-reference #register .reviewer_interests > label,
html.ows-register-reference #register .reviewer_nocontext_interests > label {
    display: grid !important;
    grid-template-columns: 95px minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 12px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

html.ows-register-reference #register .label {
    margin: 0 !important;
    color: #46545a !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    text-align: left !important;
}

html.ows-register-reference #register .required {
    color: #bc4e4e !important;
    font-weight: 500 !important;
}

html.ows-register-reference #register input[type='text'],
html.ows-register-reference #register input[type='email'],
html.ows-register-reference #register input[type='password'],
html.ows-register-reference #register select {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 29px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 10px !important;
    color: #37474d !important;
    background: #fff !important;
    border: 1px solid #d9e0e1 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
    outline: none !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 9.6px !important;
    font-weight: 400 !important;
    line-height: 29px !important;
}

html.ows-register-reference #register select {
    padding-right: 28px !important;
}

html.ows-register-reference #register input::placeholder {
    color: #a0aaae !important;
    opacity: 1 !important;
}

html.ows-register-reference #register input[type='text']:focus,
html.ows-register-reference #register input[type='email']:focus,
html.ows-register-reference #register input[type='password']:focus,
html.ows-register-reference #register select:focus {
    border-color: #4d8f91 !important;
    box-shadow: 0 0 0 1px rgba(6, 102, 109, .08) !important;
}

html.ows-register-reference .ows_register_password_wrap {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
}

html.ows-register-reference .ows_register_password_wrap input {
    padding-right: 34px !important;
}

html.ows-register-reference .ows_register_password_toggle {
    position: absolute;
    top: 50%;
    right: 7px;
    z-index: 2;
    width: 22px;
    height: 22px;
    margin: 0 !important;
    padding: 3px !important;
    transform: translateY(-50%);
    color: #6a787d !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
    cursor: pointer;
}

html.ows-register-reference .ows_register_password_toggle svg {
    display: block;
    width: 15px;
    height: 15px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
}

html.ows-register-reference #register fieldset.consent,
html.ows-register-reference #register fieldset.reviewer {
    margin: 2px 0 0 !important;
}

html.ows-register-reference #register fieldset.consent .fields,
html.ows-register-reference #register fieldset.reviewer .fields {
    margin: 0 !important;
}

html.ows-register-reference #register .optin,
html.ows-register-reference #register .context_privacy {
    margin: 0 0 5px !important;
    padding: 0 !important;
}

html.ows-register-reference #register .optin > label,
html.ows-register-reference #register .context_privacy > label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 7px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #47565b !important;
    font-size: 9.2px !important;
    font-weight: 400 !important;
    line-height: 1.34 !important;
}

html.ows-register-reference #register input[type='checkbox'] {
    flex: 0 0 auto;
    width: 12px !important;
    height: 12px !important;
    margin: 1px 0 0 !important;
    accent-color: #07676d;
}

html.ows-register-reference #register .optin a,
html.ows-register-reference #register .context_privacy a {
    color: #086b70 !important;
    text-decoration: none !important;
}

html.ows-register-reference #register .reviewer_interests {
    display: block !important;
    margin-top: 7px !important;
}

html.ows-register-reference #register .reviewer_interests .label,
html.ows-register-reference #register .reviewer_nocontext_interests .label {
    color: #46545a !important;
}

/* Multi-context registration is kept functional, but compact if present. */
html.ows-register-reference #register fieldset[name='contexts'] {
    margin: 4px 0 7px !important;
}

html.ows-register-reference #register fieldset[name='contexts'] > legend {
    display: block !important;
    margin: 0 0 4px !important;
    color: #46545a !important;
    font-size: 9.5px !important;
    font-weight: 500 !important;
}

html.ows-register-reference #register ul.contexts {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html.ows-register-reference #register ul.contexts > li.context {
    margin: 0 0 5px !important;
    padding: 6px 8px !important;
    border: 1px solid #e1e6e6 !important;
    border-radius: 2px !important;
}

html.ows-register-reference #register .recaptcha_wrapper,
html.ows-register-reference #register .altcha_wrapper {
    margin: 7px 0 7px 107px !important;
    width: calc(100% - 107px) !important;
}

html.ows-register-reference #register .recaptcha,
html.ows-register-reference #register .g-recaptcha {
    width: 100% !important;
    min-height: 49px !important;
    overflow: visible !important;
}

html.ows-register-reference #register .g-recaptcha > div {
    transform: scale(.62);
    transform-origin: left top;
}

html.ows-register-reference #register .pkp_form_error,
html.ows-register-reference #register .cmp_notification,
html.ows-register-reference #register .pkp_notification,
html.ows-register-reference #register .error,
html.ows-register-reference #register .alert {
    margin: 0 0 8px !important;
    padding: 7px 9px !important;
    color: #8a3f3f !important;
    background: #fff7f6 !important;
    border: 1px solid #efd0cd !important;
    border-radius: 3px !important;
    font-size: 9.5px !important;
    line-height: 1.35 !important;
}

html.ows-register-reference #register .buttons {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
}

html.ows-register-reference #register .buttons .submit,
html.ows-register-reference #register .buttons a.login {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 30px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border-radius: 2px !important;
    box-shadow: none !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    line-height: 30px !important;
    text-decoration: none !important;
    cursor: pointer;
}

html.ows-register-reference #register .buttons .submit {
    color: #fff !important;
    background: #086b70 !important;
    border: 1px solid #086b70 !important;
}

html.ows-register-reference #register .buttons a.login {
    color: #086b70 !important;
    background: #fff !important;
    border: 1px solid #a8c8ca !important;
}

html.ows-register-reference #register .buttons .submit:hover,
html.ows-register-reference #register .buttons .submit:focus-visible {
    background: #075e63 !important;
    border-color: #075e63 !important;
}

html.ows-register-reference #register .buttons a.login:hover,
html.ows-register-reference #register .buttons a.login:focus-visible {
    background: #f5fbfb !important;
}

html.ows-register-reference .ows_register_account_note {
    margin: 10px 0 0 !important;
    color: #69787d !important;
    font-size: 9.4px !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

html.ows-register-reference .ows_register_account_note a {
    color: #086b70 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

/* ORCID/extra native registration controls remain usable if enabled. */
html.ows-register-reference #register .orcidProfile,
html.ows-register-reference #register [class*='orcid'] {
    font-size: 9.5px !important;
}

@media (max-width: 1100px) {
    html.ows-register-reference .ows_register_shell {
        grid-template-columns: 40% 60%;
    }

    html.ows-register-reference .ows_register_card {
        width: min(504px, calc(60vw - 28px));
        padding-left: 42px;
        padding-right: 42px;
    }
}

@media (max-width: 860px) {
    html.ows-register-reference .ows_register_shell {
        display: block;
        min-height: calc(100vh - 54px);
    }

    html.ows-register-reference .ows_register_story {
        display: none;
    }

    html.ows-register-reference .ows_register_stage {
        min-height: calc(100vh - 54px);
        justify-content: center;
        padding: 18px 16px 30px;
    }

    html.ows-register-reference .ows_register_card {
        width: min(504px, 100%);
        max-width: 100%;
        padding: 20px 34px 18px;
    }
}

@media (max-width: 560px) {
    html.ows-register-reference .ows_register_card {
        padding-left: 20px;
        padding-right: 20px;
    }

    html.ows-register-reference #register .identity .fields > div > label,
    html.ows-register-reference #register fieldset.login .fields > div > label,
    html.ows-register-reference #register .reviewer_interests > label,
    html.ows-register-reference #register .reviewer_nocontext_interests > label {
        grid-template-columns: 1fr !important;
        row-gap: 4px !important;
    }

    html.ows-register-reference #register .recaptcha_wrapper,
    html.ows-register-reference #register .altcha_wrapper {
        margin-left: 0 !important;
        width: 100% !important;
    }
}

/*
 * OWS Dashboard 3.10.603.0 - registration-only fullscreen shell.
 * The user requested the public masthead to be removed on Register and the
 * registration composition to occupy the full browser viewport. These rules
 * remain strictly scoped to html.ows-register-reference, so every other
 * frontend route keeps the existing public header and layout unchanged.
 */
html.ows-register-reference,
html.ows-register-reference body {
    width: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

html.ows-register-reference .pkp_structure_head {
    display: none !important;
}

html.ows-register-reference .pkp_structure_page {
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}

html.ows-register-reference .ows_register_shell {
    left: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
}

html.ows-register-reference .ows_register_story,
html.ows-register-reference .ows_register_stage {
    min-height: 100vh !important;
    min-height: 100dvh !important;
}

@media (max-width: 860px) {
    html.ows-register-reference .ows_register_shell,
    html.ows-register-reference .ows_register_stage {
        min-height: 100vh !important;
        min-height: 100dvh !important;
    }
}

/*
 * OWS Dashboard 3.10.604.0 - expand Register across the complete right pane.
 * Keep the left visual at its existing width, but remove the unused pale area
 * to the right by letting the registration card itself fill the whole second
 * grid column. This remains scoped only to the Register route.
 */
html.ows-register-reference .ows_register_stage {
    padding: 0 !important;
    background: #fff !important;
}

html.ows-register-reference .ows_register_stage::before,
html.ows-register-reference .ows_register_stage::after {
    display: none !important;
}

html.ows-register-reference .ows_register_card {
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding-left: clamp(56px, 7vw, 118px) !important;
    padding-right: clamp(56px, 7vw, 118px) !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 1100px) {
    html.ows-register-reference .ows_register_card {
        width: 100% !important;
        max-width: none !important;
        padding-left: 42px !important;
        padding-right: 42px !important;
    }
}

@media (max-width: 860px) {
    html.ows-register-reference .ows_register_stage {
        padding: 0 !important;
    }

    html.ows-register-reference .ows_register_card {
        width: 100% !important;
        max-width: none !important;
        min-height: 100vh !important;
        min-height: 100dvh !important;
        padding: 20px 34px 18px !important;
    }
}

@media (max-width: 560px) {
    html.ows-register-reference .ows_register_card {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/*
 * OWS Dashboard 3.10.605.0 - widen the native Register form itself.
 * The right pane already fills all remaining viewport width.  This revision
 * expands the actual field area within that pane and uses the reference's
 * desktop label/input row composition.  No visual blue outline is added; the
 * user's blue markup only indicated the desired form footprint.
 */
@media (min-width: 861px) {
    html.ows-register-reference .ows_register_card {
        padding-left: clamp(34px, 3.4vw, 58px) !important;
        padding-right: clamp(34px, 3.4vw, 58px) !important;
    }

    html.ows-register-reference #register,
    html.ows-register-reference form.cmp_form.register {
        width: min(100%, 900px) !important;
        max-width: 900px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /*
     * OJS themes differ slightly here: some put the input inside <label>,
     * others render the input beside <label>.  Grid the field container and
     * flatten the label so both structures produce the same two-column row.
     */
    html.ows-register-reference #register .identity .fields > div,
    html.ows-register-reference #register fieldset.login .fields > div,
    html.ows-register-reference #register .reviewer_interests,
    html.ows-register-reference #register .reviewer_nocontext_interests {
        display: grid !important;
        grid-template-columns: 150px minmax(0, 1fr) !important;
        align-items: center !important;
        column-gap: 18px !important;
        width: 100% !important;
        max-width: none !important;
    }

    html.ows-register-reference #register .identity .fields > div > label,
    html.ows-register-reference #register fieldset.login .fields > div > label,
    html.ows-register-reference #register .reviewer_interests > label,
    html.ows-register-reference #register .reviewer_nocontext_interests > label {
        display: contents !important;
    }

    html.ows-register-reference #register .identity .fields > div .label,
    html.ows-register-reference #register fieldset.login .fields > div .label,
    html.ows-register-reference #register .reviewer_interests .label,
    html.ows-register-reference #register .reviewer_nocontext_interests .label {
        grid-column: 1 !important;
        align-self: center !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html.ows-register-reference #register .identity .fields > div > input,
    html.ows-register-reference #register .identity .fields > div > select,
    html.ows-register-reference #register fieldset.login .fields > div > input,
    html.ows-register-reference #register fieldset.login .fields > div > select,
    html.ows-register-reference #register .identity .fields > div .ows_register_password_wrap,
    html.ows-register-reference #register fieldset.login .fields > div .ows_register_password_wrap,
    html.ows-register-reference #register .reviewer_interests > input,
    html.ows-register-reference #register .reviewer_nocontext_interests > input,
    html.ows-register-reference #register .reviewer_interests .ows_register_password_wrap,
    html.ows-register-reference #register .reviewer_nocontext_interests .ows_register_password_wrap {
        grid-column: 2 !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    html.ows-register-reference #register .identity .fields > div .description,
    html.ows-register-reference #register fieldset.login .fields > div .description,
    html.ows-register-reference #register .identity .fields > div .error,
    html.ows-register-reference #register fieldset.login .fields > div .error {
        grid-column: 2 !important;
    }

    html.ows-register-reference #register .recaptcha_wrapper,
    html.ows-register-reference #register .altcha_wrapper {
        margin-left: 168px !important;
        width: calc(100% - 168px) !important;
    }
}

/* The reference has one Register heading only; suppress a native duplicate
 * if a theme injects one directly inside the native form. */
html.ows-register-reference .ows_register_card #register > h1,
html.ows-register-reference .ows_register_card #register > .page_title {
    display: none !important;
}


/*
 * OWS Dashboard 3.10.606.0 - compact the desktop Register form and let the
 * white registration pane overlap the left story image slightly.  The shell
 * stays fullscreen; only the Register route is affected.
 */
@media (min-width: 861px) {
    /* Pull the whole right pane 64px over the image while keeping its right
     * edge flush with the viewport. */
    html.ows-register-reference .ows_register_stage {
        position: relative !important;
        z-index: 3 !important;
        width: calc(100% + 64px) !important;
        margin-left: -64px !important;
    }

    /* Slightly tighten the form vertically without changing OJS behavior. */
    html.ows-register-reference .ows_register_intro {
        margin-bottom: 8px !important;
    }

    html.ows-register-reference .ows_register_logo {
        width: 56px !important;
        margin-bottom: 2px !important;
    }

    html.ows-register-reference .ows_register_intro h1 {
        margin-bottom: 2px !important;
        font-size: 22px !important;
    }

    html.ows-register-reference #register .identity .fields > div,
    html.ows-register-reference #register fieldset.login .fields > div,
    html.ows-register-reference #register .reviewer_interests,
    html.ows-register-reference #register .reviewer_nocontext_interests {
        margin-bottom: 5px !important;
    }

    html.ows-register-reference #register input[type='text'],
    html.ows-register-reference #register input[type='email'],
    html.ows-register-reference #register input[type='password'],
    html.ows-register-reference #register select {
        height: 27px !important;
        line-height: 27px !important;
    }

    html.ows-register-reference #register .optin,
    html.ows-register-reference #register .context_privacy {
        margin-bottom: 3px !important;
    }

    html.ows-register-reference #register .reviewer_interests {
        margin-top: 4px !important;
    }

    html.ows-register-reference #register .recaptcha_wrapper,
    html.ows-register-reference #register .altcha_wrapper {
        margin-top: 5px !important;
        margin-bottom: 5px !important;
    }

    html.ows-register-reference #register .buttons {
        margin-top: 6px !important;
    }

    html.ows-register-reference #register .buttons .submit,
    html.ows-register-reference #register .buttons a.login {
        height: 28px !important;
        line-height: 28px !important;
    }

    html.ows-register-reference .ows_register_account_note {
        margin-top: 7px !important;
    }
}


/*
 * OWS Dashboard 3.10.609.0 - set the desktop Register card width to 70% while keeping the 20px image overlap.
 * overlap the story image.  Previous 3.10.606.0 shifted the stage itself,
 * while the full-height card still painted the complete right viewport, so
 * the visual result was effectively unchanged.  This revision moves the
 * actual card, removes its 100vh minimum, and gives it a compact card height.
 */
@media (min-width: 861px) {
    html.ows-register-reference .ows_register_stage {
        position: relative !important;
        z-index: 3 !important;
        width: 100% !important;
        margin-left: 0 !important;
        padding: 22px 0 !important;
        overflow: visible !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    html.ows-register-reference .ows_register_card {
        width: 70% !important;
        max-width: none !important;
        min-height: clamp(620px, 76vh, 710px) !important;
        height: auto !important;
        margin: 0 0 0 -20px !important;
        padding: 24px 54px 22px !important;
        overflow: visible !important;
        background: #fff !important;
        border: 1px solid #dfe7e6 !important;
        border-radius: 8px !important;
        box-shadow: 0 14px 34px rgba(28, 58, 61, .13) !important;
    }

    html.ows-register-reference .ows_register_card::before {
        display: block !important;
        height: 4px !important;
        border-radius: 8px 8px 0 0 !important;
    }

    html.ows-register-reference .ows_register_intro {
        margin-bottom: 12px !important;
    }

    html.ows-register-reference .ows_register_logo {
        width: 52px !important;
        margin-bottom: 1px !important;
    }

    html.ows-register-reference .ows_register_intro h1 {
        margin-bottom: 2px !important;
        font-size: 21px !important;
    }

    html.ows-register-reference #register,
    html.ows-register-reference form.cmp_form.register {
        width: min(100%, 980px) !important;
        max-width: 980px !important;
        margin: 0 auto !important;
    }

    /*
     * Theme-independent field-row hooks added by the Register JS.
     *
     * The input column was minmax(0, 1fr) - stretching to fill whatever
     * width the row (and therefore the card) happened to be, which made
     * every Register field visibly wider than Login's fixed 366px fields.
     * Fixed at the same 366px so both pages read as the same control
     * length; the row itself stays width:100% of the card, so each row's
     * 150px label column + 18px gap + 366px input column (534px) sits
     * left-aligned within the available width rather than stretching.
     */
    html.ows-register-reference #register .ows_register_field_row {
        display: grid !important;
        grid-template-columns: 150px 366px !important;
        align-items: center !important;
        column-gap: 18px !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 6px !important;
        padding: 0 !important;
    }

    html.ows-register-reference #register .ows_register_field_row > label.ows_register_field_label.ows_register_label_contains_control {
        display: contents !important;
    }

    html.ows-register-reference #register .ows_register_field_row > label.ows_register_field_label:not(.ows_register_label_contains_control) {
        grid-column: 1 !important;
        width: auto !important;
        margin: 0 !important;
    }

    html.ows-register-reference #register .ows_register_field_row .label {
        grid-column: 1 !important;
        margin: 0 !important;
        align-self: center !important;
    }

    html.ows-register-reference #register .ows_register_field_row > input,
    html.ows-register-reference #register .ows_register_field_row > select,
    html.ows-register-reference #register .ows_register_field_row > .ows_register_password_wrap,
    html.ows-register-reference #register .ows_register_field_row > label.ows_register_field_label > input,
    html.ows-register-reference #register .ows_register_field_row > label.ows_register_field_label > select,
    html.ows-register-reference #register .ows_register_field_row > label.ows_register_field_label > .ows_register_password_wrap {
        grid-column: 2 !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    html.ows-register-reference #register input[type='text'],
    html.ows-register-reference #register input[type='email'],
    html.ows-register-reference #register input[type='password'],
    html.ows-register-reference #register select {
        height: 29px !important;
        line-height: 29px !important;
    }

    html.ows-register-reference #register fieldset.consent,
    html.ows-register-reference #register fieldset.reviewer {
        margin-top: 5px !important;
    }

    html.ows-register-reference #register .optin,
    html.ows-register-reference #register .context_privacy {
        margin-bottom: 3px !important;
    }

    html.ows-register-reference #register .recaptcha_wrapper,
    html.ows-register-reference #register .altcha_wrapper {
        margin-top: 6px !important;
        margin-bottom: 6px !important;
    }

    html.ows-register-reference #register .buttons {
        margin-top: 8px !important;
    }

    html.ows-register-reference .ows_register_account_note {
        margin-top: 7px !important;
    }
}

/*
 * OWS Dashboard 3.10.610.0
 * Register form typography/control sizing aligned with the public-site scale.
 * Layout/width/20px overlap from 3.10.609.0 is intentionally unchanged.
 */
@media (min-width: 861px) {
    html.ows-register-reference .ows_register_intro h1 {
        font-size: 24px !important;
        line-height: 1.2 !important;
    }

    html.ows-register-reference .ows_register_intro p {
        font-size: 12.5px !important;
        line-height: 1.45 !important;
    }

    html.ows-register-reference #register .ows_register_field_row {
        margin-bottom: 9px !important;
    }

    html.ows-register-reference #register .label,
    html.ows-register-reference #register .ows_register_field_row .label,
    html.ows-register-reference #register .ows_register_field_label {
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    html.ows-register-reference #register input[type='text'],
    html.ows-register-reference #register input[type='email'],
    html.ows-register-reference #register input[type='password'],
    html.ows-register-reference #register select {
        height: 38px !important;
        min-height: 38px !important;
        padding: 0 12px !important;
        border-radius: 4px !important;
        font-size: 13px !important;
        line-height: 38px !important;
    }

    html.ows-register-reference #register select {
        padding-right: 32px !important;
    }

    html.ows-register-reference .ows_register_password_wrap input {
        padding-right: 40px !important;
    }

    html.ows-register-reference .ows_register_password_toggle {
        right: 7px !important;
        width: 28px !important;
        height: 28px !important;
        padding: 4px !important;
        border-radius: 4px !important;
    }

    html.ows-register-reference .ows_register_password_toggle svg {
        width: 17px !important;
        height: 17px !important;
    }

    html.ows-register-reference #register fieldset.consent,
    html.ows-register-reference #register fieldset.reviewer {
        margin-top: 7px !important;
    }

    html.ows-register-reference #register .optin,
    html.ows-register-reference #register .context_privacy {
        margin-bottom: 5px !important;
    }

    html.ows-register-reference #register .optin > label,
    html.ows-register-reference #register .context_privacy > label {
        gap: 8px !important;
        font-size: 12px !important;
        line-height: 1.45 !important;
    }

    html.ows-register-reference #register input[type='checkbox'] {
        width: 15px !important;
        height: 15px !important;
        margin-top: 1px !important;
    }

    html.ows-register-reference #register .reviewer_interests,
    html.ows-register-reference #register .reviewer_nocontext_interests {
        margin-top: 9px !important;
        margin-bottom: 9px !important;
    }

    html.ows-register-reference #register .recaptcha_wrapper,
    html.ows-register-reference #register .altcha_wrapper {
        min-height: 62px !important;
        margin-top: 8px !important;
        margin-bottom: 9px !important;
    }

    html.ows-register-reference #register .g-recaptcha > div {
        transform: scale(.78) !important;
        transform-origin: left top !important;
    }

    html.ows-register-reference #register .buttons {
        gap: 14px !important;
        margin-top: 12px !important;
    }

    html.ows-register-reference #register .buttons .submit,
    html.ows-register-reference #register .buttons a.login {
        height: 40px !important;
        min-height: 40px !important;
        padding: 0 14px !important;
        border-radius: 4px !important;
        font-size: 14px !important;
        line-height: 40px !important;
    }

    html.ows-register-reference .ows_register_account_note,
    html.ows-register-reference .ows_register_account_note a {
        font-size: 12px !important;
        line-height: 1.45 !important;
    }
}

/*
 * OWS Dashboard 3.10.611.0
 * Tighten the vertical gap below reCAPTCHA and keep a single Register action.
 * Scoped to the public Register page only.
 */
@media (min-width: 861px) {
    html.ows-register-reference #register .recaptcha_wrapper {
        height: 62px !important;
        min-height: 62px !important;
        margin-top: 8px !important;
        margin-bottom: 0 !important;
        overflow: visible !important;
    }

    html.ows-register-reference #register .g-recaptcha {
        height: 62px !important;
        min-height: 62px !important;
        overflow: visible !important;
    }

    html.ows-register-reference #register .altcha_wrapper {
        margin-bottom: 0 !important;
    }

    html.ows-register-reference #register .buttons {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 0 !important;
        clear: none !important;
        margin-top: 4px !important;
        padding-top: 0 !important;
    }

    html.ows-register-reference #register .buttons a.login,
    html.ows-register-reference #register .buttons a[href*='login'] {
        display: none !important;
    }

    html.ows-register-reference #register .buttons .submit {
        width: 100% !important;
        max-width: none !important;
    }

    html.ows-register-reference .ows_register_account_note {
        margin-top: 8px !important;
    }
}


/* Fallback for narrower breakpoints: the account Login link remains below the form. */
html.ows-register-reference #register .buttons a.login,
html.ows-register-reference #register .buttons a[href*='login'] {
    display: none !important;
}

/*
 * OWS Dashboard 3.10.612.0
 * Hard-remove every secondary action from the Register button row.
 * Keep only the real submit control; the small account Login link below remains.
 */
html.ows-register-reference #register .buttons > :not(.submit) {
    display: none !important;
}

html.ows-register-reference #register .buttons {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
}

html.ows-register-reference #register .buttons > .submit {
    width: 100% !important;
    max-width: none !important;
}



/*
 * OWS Dashboard 3.10.613.0
 * Definitively keep only the Register submit control in the action row.
 * OJS renders Register first; hiding every following direct child also covers
 * themes that restyle the Login action without the native .login class.
 */
html.ows-register-reference #register .buttons > :nth-child(n+2) {
    display: none !important;
}

html.ows-register-reference #register .buttons.ows_register_single_action {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
}

html.ows-register-reference #register .buttons.ows_register_single_action > :first-child {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
}


/*
 * OWS Dashboard 3.10.614.0
 * Final Register-only Login-button removal. The JS now removes Login controls
 * regardless of theme markup; these rules provide a no-flash CSS fallback.
 * The small "Already have an account? Login" link is explicitly restored.
 */
html.ows-register-reference #register .buttons a.login,
html.ows-register-reference #register .buttons a[href*="/login"],
html.ows-register-reference #register .buttons button.login,
html.ows-register-reference #register .buttons input.login,
html.ows-register-reference #register .buttons [role="button"].login {
    display: none !important;
}

html.ows-register-reference #register .buttons.ows_register_single_action {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
}

html.ows-register-reference #register .buttons.ows_register_single_action > * {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
}

html.ows-register-reference .ows_register_account_note a[data-ows-register-account-login="1"] {
    display: inline !important;
}


/*
 * OWS Dashboard 3.10.615.0
 * Center the single Register button and enlarge it, while softening the hard
 * boundary between the left story image and the right register pane with a
 * fade-out at the image edge.
 */
html.ows-register-reference .ows_register_story::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: clamp(72px, 9vw, 132px);
    height: 100%;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(248,250,249,0) 0%, rgba(248,250,249,.72) 62%, rgba(248,250,249,.98) 100%);
}

@media (min-width: 861px) {
    html.ows-register-reference #register .buttons,
    html.ows-register-reference #register .buttons.ows_register_single_action {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        gap: 0 !important;
        margin-top: 10px !important;
    }

    html.ows-register-reference #register .buttons > :not(.submit),
    html.ows-register-reference #register .buttons.ows_register_single_action > :not(.submit) {
        display: none !important;
    }

    html.ows-register-reference #register .buttons .submit,
    html.ows-register-reference #register .buttons.ows_register_single_action > .submit,
    html.ows-register-reference #register .buttons.ows_register_single_action > :first-child {
        flex: 0 1 auto !important;
        grid-column: auto !important;
        width: clamp(280px, 46%, 380px) !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/*
 * OWS Dashboard 3.10.616.0
 * واقعی‌سازی دو تغییر خواسته‌شده:
 * 1) دکمه Register در مرکز ردیف قرار بگیرد و عرضش بیشتر شود.
 * 2) انتهای سمت راست تصویرِ پنل چپ با فید نرم به زمینه سفید محو شود.
 */
html.ows-register-reference .ows_register_story {
    isolation: isolate;
}

html.ows-register-reference .ows_register_story::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: clamp(110px, 11vw, 180px) !important;
    pointer-events: none !important;
    z-index: 2 !important;
    background: linear-gradient(
        90deg,
        rgba(248, 250, 249, 0) 0%,
        rgba(248, 250, 249, .22) 28%,
        rgba(248, 250, 249, .58) 56%,
        rgba(248, 250, 249, .86) 78%,
        rgba(248, 250, 249, 1) 100%
    ) !important;
}

@media (min-width: 861px) {
    html.ows-register-reference #register .buttons,
    html.ows-register-reference #register .buttons.ows_register_single_action {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        margin-top: 10px !important;
        gap: 0 !important;
        text-align: center !important;
    }

    html.ows-register-reference #register .buttons > :not(.submit),
    html.ows-register-reference #register .buttons.ows_register_single_action > :not(.submit) {
        display: none !important;
    }

    html.ows-register-reference #register .buttons .submit,
    html.ows-register-reference #register .buttons.ows_register_single_action > .submit,
    html.ows-register-reference #register .buttons.ows_register_single_action > :first-child {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 1 auto !important;
        width: clamp(320px, 54%, 430px) !important;
        min-width: 320px !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }
}

/*
 * OWS Dashboard 3.10.1169.0
 * Register page palette synchronization with the public journal theme.
 * Presentation-only: native OJS form/action/validation/CAPTCHA remain untouched.
 *
 * Theme contract:
 * - --ows-primary is injected from Website > Homepage > Site Color on every
 *   frontend page by frontendHomepageCover.js.
 * - #062f34 is the journal's approved deep header/action tone.
 */
html.ows-register-reference {
    --ows-auth-accent: var(--ows-primary, #0d918f);
    --ows-auth-deep: #062f34;
    --ows-auth-surface: #ffffff;
    --ows-auth-soft: color-mix(in srgb, var(--ows-auth-accent) 5%, #ffffff 95%);
    --ows-auth-soft-2: color-mix(in srgb, var(--ows-auth-accent) 9%, #ffffff 91%);
    --ows-auth-border: color-mix(in srgb, var(--ows-auth-accent) 19%, #dfe6e6 81%);
    --ows-auth-muted: #66767a;
}

html.ows-register-reference,
html.ows-register-reference body,
html.ows-register-reference .ows_register_shell {
    background: var(--ows-auth-soft) !important;
}

/* Tint the existing editorial/library artwork with the live Site Color while
 * keeping the supplied photograph and its baked-in content intact. */
html.ows-register-reference .ows_register_story::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;
    background:
        linear-gradient(
            100deg,
            color-mix(in srgb, var(--ows-auth-deep) 30%, transparent) 0%,
            color-mix(in srgb, var(--ows-auth-accent) 16%, transparent) 58%,
            transparent 88%
        ) !important;
}

/* Fade into the same themed right-pane surface instead of a fixed gray/green. */
html.ows-register-reference .ows_register_story::after {
    background: linear-gradient(
        90deg,
        transparent 0%,
        color-mix(in srgb, var(--ows-auth-soft) 28%, transparent) 34%,
        color-mix(in srgb, var(--ows-auth-soft) 68%, transparent) 62%,
        color-mix(in srgb, var(--ows-auth-soft) 92%, transparent) 82%,
        var(--ows-auth-soft) 100%
    ) !important;
}

html.ows-register-reference .ows_register_stage {
    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            var(--ows-auth-soft) 58%,
            color-mix(in srgb, var(--ows-auth-accent) 7%, #ffffff 93%) 100%
        ) !important;
}

@media (min-width: 861px) {
    html.ows-register-reference .ows_register_card {
        background: rgba(255, 255, 255, .985) !important;
        border-color: var(--ows-auth-border) !important;
        border-radius: 4px !important;
        box-shadow:
            0 18px 44px color-mix(in srgb, var(--ows-auth-deep) 10%, transparent),
            0 2px 8px rgba(6, 47, 52, .04) !important;
    }

    html.ows-register-reference .ows_register_card::before {
        height: 4px !important;
        background: var(--ows-auth-accent) !important;
        border-radius: 4px 4px 0 0 !important;
    }
}

html.ows-register-reference .ows_register_intro h1 {
    color: var(--ows-auth-deep) !important;
}

html.ows-register-reference .ows_register_intro p,
html.ows-register-reference .ows_register_account_note {
    color: var(--ows-auth-muted) !important;
}

html.ows-register-reference #register .label,
html.ows-register-reference #register .ows_register_field_label {
    color: #2f4145 !important;
}

html.ows-register-reference #register input[type='text'],
html.ows-register-reference #register input[type='email'],
html.ows-register-reference #register input[type='password'],
html.ows-register-reference #register select {
    color: #24363a !important;
    background: #ffffff !important;
    border-color: #d3dddd !important;
    border-radius: 4px !important;
}

html.ows-register-reference #register input[type='text']:hover,
html.ows-register-reference #register input[type='email']:hover,
html.ows-register-reference #register input[type='password']:hover,
html.ows-register-reference #register select:hover {
    border-color: color-mix(in srgb, var(--ows-auth-accent) 42%, #d3dddd 58%) !important;
}

html.ows-register-reference #register input[type='text']:focus,
html.ows-register-reference #register input[type='email']:focus,
html.ows-register-reference #register input[type='password']:focus,
html.ows-register-reference #register select:focus {
    border-color: var(--ows-auth-accent) !important;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--ows-auth-accent) 12%, transparent) !important;
}

html.ows-register-reference .ows_register_password_toggle {
    color: #607175 !important;
}

html.ows-register-reference .ows_register_password_toggle:hover,
html.ows-register-reference .ows_register_password_toggle:focus-visible {
    color: var(--ows-auth-accent) !important;
    outline: none !important;
}

html.ows-register-reference #register input[type='checkbox'] {
    accent-color: var(--ows-auth-accent) !important;
}

html.ows-register-reference #register .optin a,
html.ows-register-reference #register .context_privacy a,
html.ows-register-reference .ows_register_account_note a {
    color: var(--ows-auth-accent) !important;
}

html.ows-register-reference #register ul.contexts > li.context {
    border-color: var(--ows-auth-border) !important;
    background: color-mix(in srgb, var(--ows-auth-accent) 2.5%, #ffffff 97.5%) !important;
    border-radius: 4px !important;
}

/* Use explicit submit selectors as well as OJS's .submit class so the color
 * cannot fall back to a theme's white generic-button style. */
html.ows-register-reference #register .buttons .submit,
html.ows-register-reference #register .buttons button[type='submit'],
html.ows-register-reference #register .buttons input[type='submit'] {
    color: #ffffff !important;
    background: var(--ows-auth-deep) !important;
    border: 1px solid var(--ows-auth-deep) !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    -webkit-text-fill-color: #ffffff !important;
}

html.ows-register-reference #register .buttons .submit:hover,
html.ows-register-reference #register .buttons .submit:focus-visible,
html.ows-register-reference #register .buttons button[type='submit']:hover,
html.ows-register-reference #register .buttons button[type='submit']:focus-visible,
html.ows-register-reference #register .buttons input[type='submit']:hover,
html.ows-register-reference #register .buttons input[type='submit']:focus-visible {
    color: #ffffff !important;
    background: var(--ows-auth-accent) !important;
    border-color: var(--ows-auth-accent) !important;
    -webkit-text-fill-color: #ffffff !important;
    outline: none !important;
}

html.ows-register-reference #register .pkp_form_error,
html.ows-register-reference #register .cmp_notification,
html.ows-register-reference #register .pkp_notification,
html.ows-register-reference #register .error,
html.ows-register-reference #register .alert {
    border-radius: 4px !important;
}

@media (max-width: 860px) {
    html.ows-register-reference .ows_register_stage {
        background: var(--ows-auth-soft) !important;
    }

    html.ows-register-reference .ows_register_card {
        background: #ffffff !important;
        border-top: 4px solid var(--ows-auth-accent) !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
}

/*
 * OWS Dashboard 3.10.1170.0
 * Dynamic Register hero artwork.
 *
 * The old left pane was a fixed JPG whose teal palette could never match a
 * manager-selected Site Color.  It is now a resolution-independent inline
 * vector scene plus real HTML copy. Every artwork color derives from the same
 * --ows-primary variable used by the public site. Changing Website > Homepage
 * > Site Color therefore recolors the complete Register hero automatically.
 * No OJS form, validation, CAPTCHA or submit behavior is changed.
 */
html.ows-register-reference {
    --ows-register-hero-accent: var(--ows-auth-accent, var(--ows-primary, #0d918f));
    --ows-register-hero-deep: color-mix(in srgb, var(--ows-register-hero-accent) 54%, #08171c 46%);
    --ows-register-hero-deeper: color-mix(in srgb, var(--ows-register-hero-accent) 34%, #071318 66%);
    --ows-register-hero-bright: color-mix(in srgb, var(--ows-register-hero-accent) 64%, #ffffff 36%);
    --ows-register-hero-soft: color-mix(in srgb, var(--ows-register-hero-accent) 22%, #ffffff 78%);
    --ows-register-hero-faint: color-mix(in srgb, var(--ows-register-hero-accent) 12%, #ffffff 88%);
}

html.ows-register-reference .ows_register_story {
    isolation: isolate !important;
    position: relative !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    overflow: hidden !important;
    color: #ffffff !important;
    background-image: none !important;
    background:
        radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--ows-register-hero-bright) 28%, transparent) 0 12%, transparent 31%),
        radial-gradient(circle at 82% 68%, color-mix(in srgb, var(--ows-register-hero-bright) 16%, transparent) 0 10%, transparent 30%),
        linear-gradient(145deg, var(--ows-register-hero-deeper) 0%, var(--ows-register-hero-deep) 52%, color-mix(in srgb, var(--ows-register-hero-accent) 62%, #101b20 38%) 100%) !important;
}

/* Remove the former raster tint. The edge fade remains, but now fades the
 * dynamic vector hero into the live right-pane surface. */
html.ows-register-reference .ows_register_story::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, .05) 0%, transparent 28%, rgba(0, 0, 0, .10) 100%),
        linear-gradient(90deg, rgba(0, 0, 0, .10) 0%, transparent 44%, rgba(255, 255, 255, .035) 100%) !important;
}

html.ows-register-reference .ows_register_story::after {
    content: '' !important;
    position: absolute !important;
    z-index: 5 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: clamp(88px, 8.5vw, 150px) !important;
    pointer-events: none !important;
    background: linear-gradient(
        90deg,
        transparent 0%,
        color-mix(in srgb, var(--ows-auth-soft) 12%, transparent) 28%,
        color-mix(in srgb, var(--ows-auth-soft) 54%, transparent) 62%,
        color-mix(in srgb, var(--ows-auth-soft) 90%, transparent) 86%,
        var(--ows-auth-soft) 100%
    ) !important;
}

html.ows-register-reference .ows_register_story_visual {
    position: absolute;
    z-index: 0;
    inset: 0;
    opacity: .96;
    pointer-events: none;
}

html.ows-register-reference .ows_register_story_visual::before {
    content: '';
    position: absolute;
    left: -9%;
    bottom: -10%;
    width: 74%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle, color-mix(in srgb, var(--ows-register-hero-bright) 12%, transparent) 0%, transparent 66%);
    filter: blur(2px);
}

html.ows-register-reference .ows_register_story_visual svg {
    display: block;
    width: 100%;
    height: 100%;
}

html.ows-register-reference .ows_register_art_shelf,
html.ows-register-reference .ows_register_art_orbit,
html.ows-register-reference .ows_register_art_sparkles {
    fill: none;
    stroke: color-mix(in srgb, var(--ows-register-hero-soft) 46%, transparent);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

html.ows-register-reference .ows_register_art_shelf {
    opacity: .36;
    stroke-width: 3;
}

html.ows-register-reference .ows_register_art_window rect {
    fill: color-mix(in srgb, var(--ows-register-hero-soft) 9%, transparent);
    stroke: color-mix(in srgb, var(--ows-register-hero-soft) 34%, transparent);
    stroke-width: 3;
}

html.ows-register-reference .ows_register_art_window path {
    fill: none;
    stroke: color-mix(in srgb, var(--ows-register-hero-soft) 24%, transparent);
    stroke-width: 3;
}

html.ows-register-reference .ows_register_art_nodes circle {
    fill: var(--ows-register-hero-bright);
    opacity: .74;
    filter: drop-shadow(0 0 9px color-mix(in srgb, var(--ows-register-hero-bright) 26%, transparent));
}

html.ows-register-reference .ows_register_art_cards rect {
    fill: color-mix(in srgb, #ffffff 8%, transparent);
    stroke: color-mix(in srgb, var(--ows-register-hero-soft) 42%, transparent);
    stroke-width: 2;
}

html.ows-register-reference .ows_register_art_cards path {
    fill: none;
    stroke: color-mix(in srgb, #ffffff 52%, transparent);
    stroke-width: 4;
    stroke-linecap: round;
}

html.ows-register-reference .ows_register_art_book_stack path:not(.ows_register_art_book_line) {
    fill: color-mix(in srgb, var(--ows-register-hero-accent) 44%, #07171c 56%);
    stroke: color-mix(in srgb, var(--ows-register-hero-soft) 40%, transparent);
    stroke-width: 2;
}

html.ows-register-reference .ows_register_art_book_stack path:nth-child(2) {
    fill: color-mix(in srgb, var(--ows-register-hero-accent) 58%, #0b2026 42%);
}

html.ows-register-reference .ows_register_art_book_stack path:nth-child(3) {
    fill: color-mix(in srgb, var(--ows-register-hero-accent) 36%, #061318 64%);
}

html.ows-register-reference .ows_register_art_book_line {
    fill: none;
    stroke: color-mix(in srgb, var(--ows-register-hero-bright) 38%, transparent);
    stroke-width: 2;
    stroke-linecap: round;
}

html.ows-register-reference .ows_register_art_open_book path {
    fill: color-mix(in srgb, #ffffff 11%, var(--ows-register-hero-accent) 89%);
    stroke: color-mix(in srgb, #ffffff 62%, var(--ows-register-hero-soft) 38%);
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

html.ows-register-reference .ows_register_art_open_book path:nth-child(n+3) {
    fill: none;
    stroke: color-mix(in srgb, #ffffff 68%, transparent);
}

html.ows-register-reference .ows_register_art_dots circle {
    fill: color-mix(in srgb, var(--ows-register-hero-soft) 40%, transparent);
}

html.ows-register-reference .ows_register_story_glow {
    position: absolute;
    z-index: 2;
    right: 4%;
    top: 11%;
    width: 44%;
    aspect-ratio: 1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(circle, color-mix(in srgb, var(--ows-register-hero-bright) 15%, transparent) 0%, transparent 70%);
    filter: blur(4px);
}

html.ows-register-reference .ows_register_story_content {
    position: relative;
    z-index: 4;
    width: min(76%, 560px);
    margin: clamp(112px, 14vh, 160px) 0 0 clamp(44px, 7vw, 118px);
    padding-right: 20px;
    box-sizing: border-box;
    text-shadow: 0 2px 18px rgba(0, 0, 0, .18);
}

html.ows-register-reference .ows_register_story_eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
    color: color-mix(in srgb, #ffffff 82%, var(--ows-register-hero-soft) 18%);
    font-family: Roboto, Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .22em;
    white-space: nowrap;
}

html.ows-register-reference .ows_register_story_eyebrow::after {
    content: '';
    display: block;
    width: 76px;
    height: 1px;
    background: color-mix(in srgb, #ffffff 46%, transparent);
}

html.ows-register-reference .ows_register_story_content h2 {
    max-width: 500px;
    margin: 0 0 18px !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(38px, 3.35vw, 58px) !important;
    font-weight: 500 !important;
    line-height: 1.03 !important;
    letter-spacing: -.025em !important;
    border: 0 !important;
}

html.ows-register-reference .ows_register_story_intro {
    max-width: 500px;
    margin: 0 0 30px !important;
    color: rgba(255, 255, 255, .86) !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
}

html.ows-register-reference .ows_register_story_features {
    display: grid;
    gap: 15px;
    width: min(100%, 520px);
}

html.ows-register-reference .ows_register_story_feature {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    min-width: 0;
}

html.ows-register-reference .ows_register_story_feature_icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    box-sizing: border-box;
    color: #ffffff;
    background: color-mix(in srgb, #ffffff 8%, transparent);
    border: 1px solid color-mix(in srgb, #ffffff 46%, transparent);
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ows-register-hero-bright) 10%, transparent);
}

html.ows-register-reference .ows_register_story_feature_icon svg {
    display: block;
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

html.ows-register-reference .ows_register_story_feature_copy {
    display: grid;
    gap: 2px;
    min-width: 0;
    font-family: Roboto, Arial, sans-serif;
}

html.ows-register-reference .ows_register_story_feature_copy strong {
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.28;
}

html.ows-register-reference .ows_register_story_feature_copy > span {
    color: rgba(255, 255, 255, .72);
    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.4;
}

@media (max-width: 1360px) and (min-width: 861px) {
    html.ows-register-reference .ows_register_story_content {
        width: 78%;
        margin-left: clamp(38px, 5vw, 74px);
        margin-top: clamp(92px, 11vh, 130px);
    }

    html.ows-register-reference .ows_register_story_eyebrow {
        font-size: 10px;
        letter-spacing: .18em;
    }

    html.ows-register-reference .ows_register_story_content h2 {
        font-size: clamp(34px, 3.1vw, 46px) !important;
    }

    html.ows-register-reference .ows_register_story_intro {
        font-size: 14px !important;
    }

    html.ows-register-reference .ows_register_story_feature_copy strong {
        font-size: 14px;
    }

    html.ows-register-reference .ows_register_story_feature_copy > span {
        font-size: 11.5px;
    }
}

@media (max-height: 760px) and (min-width: 861px) {
    html.ows-register-reference .ows_register_story_content {
        margin-top: 72px;
        transform: scale(.9);
        transform-origin: top left;
    }
}

/*
 * OWS Dashboard 3.10.1178.0
 * Final register submit centering:
 * The user wants the Register submit control itself centered, not visually
 * drifting left inside the form. Force the native OJS button row and every
 * submit control variant onto a single centered axis.
 */
html.ows-register-reference #register .buttons,
html.ows-register-reference #register .buttons.ows_register_single_action {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px auto 0 !important;
    padding: 0 !important;
    text-align: center !important;
    float: none !important;
    clear: both !important;
}

html.ows-register-reference #register .buttons > *,
html.ows-register-reference #register .buttons.ows_register_single_action > * {
    float: none !important;
}

html.ows-register-reference #register .buttons .submit,
html.ows-register-reference #register .buttons > .submit,
html.ows-register-reference #register .buttons button[type='submit'],
html.ows-register-reference #register .buttons input[type='submit'],
html.ows-register-reference #register .buttons.ows_register_single_action > .submit,
html.ows-register-reference #register .buttons.ows_register_single_action > :first-child {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    align-self: center !important;
    justify-self: center !important;
    float: none !important;
    width: clamp(280px, 54%, 430px) !important;
    min-width: 280px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
}

@media (max-width: 860px) {
    html.ows-register-reference #register .buttons .submit,
    html.ows-register-reference #register .buttons > .submit,
    html.ows-register-reference #register .buttons button[type='submit'],
    html.ows-register-reference #register .buttons input[type='submit'],
    html.ows-register-reference #register .buttons.ows_register_single_action > .submit,
    html.ows-register-reference #register .buttons.ows_register_single_action > :first-child {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/*
 * OWS Dashboard 3.10.1179.0
 * Register page logo enlargement to match the stronger login-page identity.
 * User requested a visibly larger centered logo on the Register card.
 */
html.ows-register-reference .ows_register_logo {
    width: 128px !important;
    max-width: 128px !important;
    height: auto !important;
    margin: 0 auto 6px !important;
}

@media (min-width: 861px) {
    html.ows-register-reference .ows_register_logo {
        width: 148px !important;
        max-width: 148px !important;
        margin: 0 auto 6px !important;
    }
}

@media (max-width: 860px) {
    html.ows-register-reference .ows_register_logo {
        width: 110px !important;
        max-width: 110px !important;
        margin: 0 auto 6px !important;
    }
}

/*
 * OWS Dashboard 3.10.1180.0
 * Register submit stage: the native Register action row is moved by JS into a
 * new direct child of the form, so no inherited fieldset/grid column can pull
 * the button left. The new stage owns the centering relative to the whole card.
 */
html.ows-register-reference #register > .ows_register_submit_stage,
html.ows-register-reference form.cmp_form.register > .ows_register_submit_stage {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    margin: 18px auto 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
    grid-column: 1 / -1 !important;
}

html.ows-register-reference #register > .ows_register_submit_stage > .buttons,
html.ows-register-reference form.cmp_form.register > .ows_register_submit_stage > .buttons {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: min(430px, 72%) !important;
    max-width: 430px !important;
    min-width: 280px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 0 !important;
    float: none !important;
    grid-template-columns: none !important;
}

html.ows-register-reference #register > .ows_register_submit_stage > .buttons > .submit,
html.ows-register-reference #register > .ows_register_submit_stage > .buttons > button[type='submit'],
html.ows-register-reference #register > .ows_register_submit_stage > .buttons > input[type='submit'],
html.ows-register-reference form.cmp_form.register > .ows_register_submit_stage > .buttons > .submit,
html.ows-register-reference form.cmp_form.register > .ows_register_submit_stage > .buttons > button[type='submit'],
html.ows-register-reference form.cmp_form.register > .ows_register_submit_stage > .buttons > input[type='submit'] {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    float: none !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
}

@media (max-width: 860px) {
    html.ows-register-reference #register > .ows_register_submit_stage > .buttons,
    html.ows-register-reference form.cmp_form.register > .ows_register_submit_stage > .buttons {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
}

/*
 * OWS Dashboard 3.10.1181.0
 * Register action is centered against the CARD itself and the desktop card is
 * vertically compacted so common laptop viewports do not need a page scroll.
 */
html.ows-register-reference .ows_register_card > .ows_register_submit_stage {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    margin: 5px auto 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    text-align: center !important;
}

html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .buttons {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: min(360px, 62%) !important;
    max-width: 360px !important;
    min-width: 280px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 0 !important;
    float: none !important;
    text-align: center !important;
}

html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .buttons > .submit,
html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .buttons > button[type='submit'],
html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .buttons > input[type='submit'] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    float: none !important;
    transform: none !important;
    text-align: center !important;
}

html.ows-register-reference .ows_register_card > .ows_register_account_note {
    width: 100% !important;
    margin: 7px auto 0 !important;
    text-align: center !important;
}

@media (min-width: 861px) {
    html.ows-register-reference .ows_register_stage {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }

    html.ows-register-reference .ows_register_card {
        min-height: 0 !important;
        height: auto !important;
        padding-top: 12px !important;
        padding-bottom: 11px !important;
    }

    html.ows-register-reference .ows_register_intro {
        margin-bottom: 5px !important;
    }

    html.ows-register-reference .ows_register_intro h1 {
        margin-bottom: 1px !important;
    }

    html.ows-register-reference #register .ows_register_field_row {
        margin-bottom: 5px !important;
    }

    html.ows-register-reference #register input[type='text'],
    html.ows-register-reference #register input[type='email'],
    html.ows-register-reference #register input[type='password'],
    html.ows-register-reference #register select {
        height: 34px !important;
        min-height: 34px !important;
        line-height: 34px !important;
    }

    html.ows-register-reference #register fieldset.consent,
    html.ows-register-reference #register fieldset.reviewer {
        margin-top: 3px !important;
    }

    html.ows-register-reference #register .optin,
    html.ows-register-reference #register .context_privacy {
        margin-bottom: 2px !important;
    }

    html.ows-register-reference #register .optin > label,
    html.ows-register-reference #register .context_privacy > label {
        line-height: 1.28 !important;
    }

    html.ows-register-reference #register .reviewer_interests,
    html.ows-register-reference #register .reviewer_nocontext_interests {
        margin-top: 5px !important;
        margin-bottom: 5px !important;
    }

    html.ows-register-reference #register .recaptcha_wrapper,
    html.ows-register-reference #register .altcha_wrapper,
    html.ows-register-reference #register .g-recaptcha {
        min-height: 56px !important;
        height: 56px !important;
        margin-top: 4px !important;
        margin-bottom: 0 !important;
    }

    html.ows-register-reference #register .g-recaptcha > div {
        transform: scale(.72) !important;
        transform-origin: left top !important;
    }
}

@media (max-width: 860px) {
    html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .buttons {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
}

/*
 * OWS Dashboard 3.10.1182.0
 * Absolute structural fix for the Register submit centering.
 * The JS moves the native submit itself into this card-level container, so the
 * button can no longer inherit the form's label/input grid column.
 */
html.ows-register-reference .ows_register_card > .ows_register_submit_stage {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    grid-column: 1 / -1 !important;
    justify-self: stretch !important;
    align-self: stretch !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 5px auto 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
    transform: none !important;
}

html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .ows_register_submit_inner {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
    transform: none !important;
}

html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .ows_register_submit_inner > button[type='submit'],
html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .ows_register_submit_inner > input[type='submit'],
html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .ows_register_submit_inner > .submit {
    display: block !important;
    width: 360px !important;
    max-width: calc(100% - 24px) !important;
    min-width: 0 !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 auto !important;
    padding: 0 14px !important;
    float: none !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

@media (max-width: 560px) {
    html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .ows_register_submit_inner > button[type='submit'],
    html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .ows_register_submit_inner > input[type='submit'],
    html.ows-register-reference .ows_register_card > .ows_register_submit_stage > .ows_register_submit_inner > .submit {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/*
 * OWS Dashboard 3.10.1183.0
 * CAPTCHA + Register button in one centered horizontal row.
 * Both controls remain inside the native OJS form so CAPTCHA and submission
 * behavior remain unchanged.
 */
html.ows-register-reference #register > .ows_register_captcha_submit_row,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px auto 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
html.ows-register-reference #register > .ows_register_captcha_submit_row > .altcha_wrapper,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .altcha_wrapper {
    flex: 0 0 205px !important;
    width: 205px !important;
    min-width: 205px !important;
    max-width: 205px !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    align-self: center !important;
    overflow: visible !important;
}

html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha {
    width: 205px !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    overflow: visible !important;
}

html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 280px !important;
    width: 280px !important;
    max-width: 280px !important;
    min-width: 0 !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    float: none !important;
    position: static !important;
    transform: none !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* The horizontal action row removes a full vertical block from the card. */
@media (min-width: 861px) {
    html.ows-register-reference .ows_register_card {
        min-height: 0 !important;
        padding-bottom: 14px !important;
    }
    html.ows-register-reference .ows_register_account_note {
        margin-top: 7px !important;
        margin-bottom: 0 !important;
    }
}

@media (max-width: 700px) {
    html.ows-register-reference #register > .ows_register_captcha_submit_row,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row {
        flex-direction: column !important;
        gap: 10px !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        flex-basis: auto !important;
        width: min(100%, 360px) !important;
        max-width: 360px !important;
    }
}

/*
 * OWS Dashboard 3.10.1184.0
 * Register action-row polish:
 * - add comfortable vertical spacing above/below CAPTCHA + Register row
 * - make Register button match the outlined Register action on the Login page
 */
html.ows-register-reference #register > .ows_register_captcha_submit_row,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row {
    margin: 14px auto 14px !important;
}

html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
    color: var(--ows-auth-deep) !important;
    -webkit-text-fill-color: var(--ows-auth-deep) !important;
    background: #ffffff !important;
    background-image: none !important;
    border: 1px solid var(--ows-auth-accent) !important;
    border-color: var(--ows-auth-accent) !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit']:hover,
html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit']:focus-visible,
html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit']:hover,
html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit']:focus-visible,
html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit:hover,
html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit:focus-visible,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit']:hover,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit']:focus-visible,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit']:hover,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit']:focus-visible,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit:hover,
html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit:focus-visible {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: var(--ows-auth-accent) !important;
    background-image: none !important;
    border-color: var(--ows-auth-accent) !important;
    outline: none !important;
}

html.ows-register-reference .ows_register_account_note {
    margin-top: 0 !important;
}

/*
 * OWS Dashboard 3.10.1185.0
 * Match Register button height to the rendered reCAPTCHA height.
 * reCAPTCHA is scaled to ~56px on desktop, so the adjacent action must use
 * the same visual height for a clean horizontal row.
 */
@media (min-width: 701px) {
    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        height: 56px !important;
        min-height: 56px !important;
        max-height: 56px !important;
        box-sizing: border-box !important;
    }
}

/*
 * OWS Dashboard 3.10.1186.0
 * Make the inline reCAPTCHA block and Register button identical in desktop
 * width and height as requested by the user.
 */
@media (min-width: 701px) {
    html.ows-register-reference {
        --ows-register-inline-action-width: 218px;
        --ows-register-inline-action-height: 56px;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row {
        gap: 14px !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .altcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .altcha_wrapper,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        flex: 0 0 var(--ows-register-inline-action-width) !important;
        width: var(--ows-register-inline-action-width) !important;
        min-width: var(--ows-register-inline-action-width) !important;
        max-width: var(--ows-register-inline-action-width) !important;
        height: var(--ows-register-inline-action-height) !important;
        min-height: var(--ows-register-inline-action-height) !important;
        max-height: var(--ows-register-inline-action-height) !important;
        box-sizing: border-box !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div {
        width: var(--ows-register-inline-action-width) !important;
        min-width: var(--ows-register-inline-action-width) !important;
        max-width: var(--ows-register-inline-action-width) !important;
        height: var(--ows-register-inline-action-height) !important;
        min-height: var(--ows-register-inline-action-height) !important;
        max-height: var(--ows-register-inline-action-height) !important;
        overflow: hidden !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        padding: 0 18px !important;
        line-height: 1 !important;
    }
}

/*
 * OWS Dashboard 3.10.1187.0
 * Fix clipped reCAPTCHA introduced by the same-size action row.
 * Keep the CAPTCHA and Register button visually the same size, but scale the
 * native 304x78 reCAPTCHA instead of shrinking/clipping its internal iframe.
 */
@media (min-width: 701px) {
    html.ows-register-reference {
        --ows-register-inline-action-width: 218px;
        --ows-register-inline-action-height: 56px;
        --ows-register-recaptcha-scale: 0.7171052632; /* 218 / 304 */
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper {
        position: relative !important;
        flex: 0 0 var(--ows-register-inline-action-width) !important;
        width: var(--ows-register-inline-action-width) !important;
        min-width: var(--ows-register-inline-action-width) !important;
        max-width: var(--ows-register-inline-action-width) !important;
        height: var(--ows-register-inline-action-height) !important;
        min-height: var(--ows-register-inline-action-height) !important;
        max-height: var(--ows-register-inline-action-height) !important;
        overflow: hidden !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 304px !important;
        min-width: 304px !important;
        max-width: 304px !important;
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: scale(var(--ows-register-recaptcha-scale)) !important;
        transform-origin: 0 0 !important;
        overflow: visible !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha iframe,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha iframe {
        width: 304px !important;
        min-width: 304px !important;
        max-width: 304px !important;
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
    }
}

/*
 * OWS Dashboard 3.10.1188.0
 * Enlarge the inline reCAPTCHA while preserving the equal-size pairing with
 * the Register button. Keep the native 304x78 iframe intact and scale it up
 * proportionally inside a larger 264x68 action box.
 */
@media (min-width: 701px) {
    html.ows-register-reference {
        --ows-register-inline-action-width: 264px;
        --ows-register-inline-action-height: 68px;
        --ows-register-recaptcha-scale: 0.8684210526; /* 264 / 304 */
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row {
        gap: 16px !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        flex: 0 0 var(--ows-register-inline-action-width) !important;
        width: var(--ows-register-inline-action-width) !important;
        min-width: var(--ows-register-inline-action-width) !important;
        max-width: var(--ows-register-inline-action-width) !important;
        height: var(--ows-register-inline-action-height) !important;
        min-height: var(--ows-register-inline-action-height) !important;
        max-height: var(--ows-register-inline-action-height) !important;
        box-sizing: border-box !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 304px !important;
        min-width: 304px !important;
        max-width: 304px !important;
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        transform: scale(var(--ows-register-recaptcha-scale)) !important;
        transform-origin: 0 0 !important;
    }
}

/*
 * OWS Dashboard 3.10.1189.0
 * Make the inline reCAPTCHA and Register button truly equal in visible width.
 * Use the native desktop reCAPTCHA width and match the Register button to it.
 */
@media (min-width: 701px) {
    html.ows-register-reference {
        --ows-register-inline-action-width: 304px;
        --ows-register-inline-action-height: 78px;
        --ows-register-recaptcha-scale: 1;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row {
        gap: 18px !important;
        align-items: center !important;
        justify-content: center !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        flex: 0 0 var(--ows-register-inline-action-width) !important;
        width: var(--ows-register-inline-action-width) !important;
        min-width: var(--ows-register-inline-action-width) !important;
        max-width: var(--ows-register-inline-action-width) !important;
        height: var(--ows-register-inline-action-height) !important;
        min-height: var(--ows-register-inline-action-height) !important;
        max-height: var(--ows-register-inline-action-height) !important;
        box-sizing: border-box !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper {
        position: relative !important;
        overflow: hidden !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha iframe,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha iframe {
        width: 304px !important;
        min-width: 304px !important;
        max-width: 304px !important;
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        transform: none !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        padding: 0 18px !important;
        line-height: 1 !important;
    }
}

/*
 * OWS Dashboard 3.10.1190.0
 * Clean final CAPTCHA/Register action row.
 * IMPORTANT: JS inline !important dimensions are now also 264x68, so CSS and
 * runtime styling no longer fight each other. The native 304x78 reCAPTCHA is
 * scaled proportionally to fit the same visual box as the Register button.
 */
@media (min-width: 701px) {
    html.ows-register-reference {
        --ows-register-final-action-width: 264px;
        --ows-register-final-action-height: 68px;
        --ows-register-final-captcha-scale: 0.8684210526;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 16px !important;
        width: 100% !important;
        margin: 14px auto 10px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        flex: 0 0 var(--ows-register-final-action-width) !important;
        width: var(--ows-register-final-action-width) !important;
        min-width: var(--ows-register-final-action-width) !important;
        max-width: var(--ows-register-final-action-width) !important;
        height: var(--ows-register-final-action-height) !important;
        min-height: var(--ows-register-final-action-height) !important;
        max-height: var(--ows-register-final-action-height) !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper {
        position: relative !important;
        overflow: hidden !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 304px !important;
        height: 78px !important;
        margin: 0 !important;
        transform: scale(var(--ows-register-final-captcha-scale)) !important;
        transform-origin: 0 0 !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha > div,
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha iframe,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .recaptcha_wrapper .g-recaptcha iframe {
        width: 304px !important;
        height: 78px !important;
        min-width: 304px !important;
        min-height: 78px !important;
        max-width: 304px !important;
        max-height: 78px !important;
    }

    html.ows-register-reference #register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference #register > .ows_register_captcha_submit_row > .submit,
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > button[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > input[type='submit'],
    html.ows-register-reference form.cmp_form.register > .ows_register_captcha_submit_row > .submit {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 18px !important;
        color: var(--ows-auth-deep) !important;
        -webkit-text-fill-color: var(--ows-auth-deep) !important;
        background: #fff !important;
        background-image: none !important;
        border: 1px solid var(--ows-auth-accent) !important;
        border-radius: 4px !important;
        box-shadow: none !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        appearance: none !important;
        -webkit-appearance: none !important;
    }
}
