html,
body,
div,
span,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
img,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
footer,
header,
menu,
nav,
section {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

body {
    line-height: 1
}

ol,
ul {
    list-style: none
}

:root {
    --prsm-primary-color: #28334A;
    --prsm-primary-bg-color: #ebe9f8;
    --prsm-label-fg-color: #001E60;
    --prsm-fgcolor-default-primary: #01041A;
    --prsm-control-input-bordercolor-rest: #00000080;
    --prsm-control-input-bgcolor-hover: #0d58ff1f;
    --prsm-control-input-bordercolor-hover: #1858D2;
    --prsm-button-brand-primary-bg-hover: #3b01c6;
    --prsm-button-brand-primary-fg-hover: #c9ff27;
    --prsm-interaction-neutral-bg-color-disabled: #B0BEDB;
    --prsm-interaction-neutral-fg-color-disabled: #EFF2F8;
    --prsm-control-input-neutral-border-color: #DFDCED;
    --prsm-control-input-neutral-border-color-hover: #4A12F0;
    --prsm-control-input-accent-color: #1858d2;
    --prsm-control-input-readonly-color: #616899;
    --prsm-interaction-neutral-fg-color-selected-rest: #00297b;
    --prsm-interaction-neutral-fg-color-hover: #1858d2;
    --prsm-interaction-neutral-bg-color-hover: #0d58ff1f;
    --prsm-interaction-neutral-fg-color-pressed: #001e60;
    --prsm-interaction-neutral-bg-color-pressed: #003fcc33;
    --prsm-alert-info-icon-color: #2d4048;
    --prsm-alert-info-fg-color: #1b2b32;
    --prsm-alert-info-bg-color: #e1ecff
}

@font-face {
    font-family: "Outfit";
    src: url("fonts/Outfit-VariableFont_wght.ttf") format("truetype");
    font-weight: 100 900;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: "Outfit", "Open Sans", "Helvetica Neue", Helvetica, Arial, "Franklin Gothic Medium", "Microsoft San Serif", sans-serif;
    font-weight: normal;
    font-style: normal
}

html,
body,
main {
    height: 100%;
    margin: 0;
    font-family: "Outfit", "Open Sans", "Helvetica Neue", Helvetica, Arial, "Franklin Gothic Medium", "Microsoft San Serif", sans-serif !important;
    color: var(--prsm-primary-color);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.3rem
}

html button,
html input,
html optgroup,
html select,
html textarea,
html a,
body button,
body input,
body optgroup,
body select,
body textarea,
body a,
main button,
main input,
main optgroup,
main select,
main textarea,
main a {
    font: inherit;
    margin: 0;
    text-decoration: none
}

html a,
body a,
main a {
    color: #00297b
}

html .main-page.auto-height,
body .main-page.auto-height,
main .main-page.auto-height {
    height: auto !important
}

html .main-page,
body .main-page,
main .main-page {
    height: 100%;
    display: block;
    text-align: center;
    width: 100%;
    overflow: scroll;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #ebeff1
}

html .main-page .login-body,
body .main-page .login-body,
main .main-page .login-body {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 500px;
    overflow: visible
}

html .main-page .login-body .heading3,
body .main-page .login-body .heading3,
main .main-page .login-body .heading3 {
    line-height: 40px;
    font-size: 24.5px;
    font-weight: 300;
    color: var(--prsm-label-fg-color)
}

html .main-page .login-body .main-content,
body .main-page .login-body .main-content,
main .main-page .login-body .main-content {
    border-radius: 12px;
    width: 280px;
    min-height: 350px;
    position: relative;
    padding: 40px 40px 60px 40px;
    background-color: #fff;
    box-shadow: 0 1px 3px rgba(154, 161, 178, .5)
}

html .main-page .login-body .main-content .login-logo,
body .main-page .login-body .main-content .login-logo,
main .main-page .login-body .main-content .login-logo {
    min-width: 100px;
    max-width: 130px;
    margin: auto;
    text-align: center
}

html .main-page .login-body .main-content .login-logo .image,
body .main-page .login-body .main-content .login-logo .image,
main .main-page .login-body .main-content .login-logo .image {
    width: 130px;
    max-height: 200px
}

html .main-page .login-body .main-content .btn-primary,
body .main-page .login-body .main-content .btn-primary,
main .main-page .login-body .main-content .btn-primary {
    border: none;
    align-items: flex-start;
    background-attachment: scroll;
    background-clip: border-box;
    background-color: #4a12f0;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-image-repeat: stretch;
    border-image-slice: 100%;
    cursor: pointer;
    display: inline-block;
    font-stretch: 100%;
    font-weight: 400;
    font-size: 1rem;
    height: 38px;
    line-height: 20px;
    margin-top: 10px;
    padding: 8px 12px;
    text-align: center;
    vertical-align: middle;
    width: 100%;
    color: #fff;
    text-decoration: none;
    box-sizing: border-box;
    border-radius: 50px
}

html .main-page .login-body .main-content .btn-primary:disabled,
body .main-page .login-body .main-content .btn-primary:disabled,
main .main-page .login-body .main-content .btn-primary:disabled {
    cursor: not-allowed;
    opacity: .5 !important
}

html .main-page .login-body .main-content .form-domain,
body .main-page .login-body .main-content .form-domain,
main .main-page .login-body .main-content .form-domain {
    text-align: left
}

html .main-page .login-body .main-content .footer-img,
body .main-page .login-body .main-content .footer-img,
main .main-page .login-body .main-content .footer-img {
    position: absolute;
    bottom: 20px;
    text-align: center;
    width: calc(100% - 80px)
}

html .main-page .login-body .main-content .login-field,
body .main-page .login-body .main-content .login-field,
main .main-page .login-body .main-content .login-field {
    display: inline-block;
    margin: 10px 0;
    vertical-align: middle;
    position: relative;
    white-space: nowrap;
    width: 100%;
    font-size: 1rem;
    overflow: hidden
}

html .main-page .login-body .main-content .login-field label,
body .main-page .login-body .main-content .login-field label,
main .main-page .login-body .main-content .login-field label {
    display: block;
    text-align: left;
    margin-bottom: 10px;
    color: var(--prsm-label-fg-color);
    font-weight: 500
}

html .main-page .login-body .main-content .login-field label.checkbox,
body .main-page .login-body .main-content .login-field label.checkbox,
main .main-page .login-body .main-content .login-field label.checkbox {
    color: var(--prsm-primary-color);
    font-weight: 300;
    display: flex;
    align-items: center;
    margin-bottom: 14px
}

html .main-page .login-body .main-content .login-field .text-center,
body .main-page .login-body .main-content .login-field .text-center,
main .main-page .login-body .main-content .login-field .text-center {
    text-align: center
}

html .main-page .login-body .main-content .link,
body .main-page .login-body .main-content .link,
main .main-page .login-body .main-content .link {
    line-height: 1.3rem;
    color: #00297b;
    text-decoration: underline;
    font-weight: 500
}

html .main-page .login-body .main-content .form,
body .main-page .login-body .main-content .form,
main .main-page .login-body .main-content .form {
    margin-top: 40px
}

html .main-page .login-body .main-content .field-input,
body .main-page .login-body .main-content .field-input,
main .main-page .login-body .main-content .field-input {
    width: 100%;
    position: relative;
    font-weight: 300;
    outline: none !important;
    border: 1px solid var(--prsm-control-input-neutral-border-color);
    border-radius: 10px;
    box-shadow: none;
    color: var(--prsm-primary-color);
    background-color: rgba(0, 0, 0, 0);
    display: inline-block;
    line-height: 20px;
    height: 36px;
    padding: 6px 12px !important;
    vertical-align: middle;
    font-size: 1rem;
    box-sizing: border-box
}

html .main-page .login-body .main-content .field-input:focus,
body .main-page .login-body .main-content .field-input:focus,
main .main-page .login-body .main-content .field-input:focus {
    border-color: var(--prsm-control-input-neutral-border-color-hover) !important;
    box-shadow: none;
    outline: none
}

html .main-page .login-body .main-content .password-field .field-input,
body .main-page .login-body .main-content .password-field .field-input,
main .main-page .login-body .main-content .password-field .field-input {
    padding-right: 32px !important
}

@media only screen and (max-width: 480px) {

    html .main-page .login-body .main-content,
    body .main-page .login-body .main-content,
    main .main-page .login-body .main-content {
        width: 100%;
        height: 100%;
        box-sizing: border-box;
        margin: 0;
        border-radius: 0;
        padding: 40px;
        min-height: 350px;
        position: relative
    }
}

@media only screen and (max-width: 480px) {

    html .main-page .login-body,
    body .main-page .login-body,
    main .main-page .login-body {
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        padding: 10px
    }
}

html input[type=checkbox],
body input[type=checkbox],
main input[type=checkbox] {
    margin: 3px 8px 3px 3px;
    vertical-align: bottom;
    height: 16px;
    width: 16px;
    accent-color: var(--prsm-control-input-accent-color);
    cursor: pointer
}

html .readonly-input-text,
body .readonly-input-text,
main .readonly-input-text {
    margin: 8px 0;
    border: none !important;
    text-align: center;
    font-size: 1rem;
    color: var(--prsm-control-input-readonly-color) !important;
    font-weight: 400 !important
}

html .readonly-input-text :focus,
body .readonly-input-text :focus,
main .readonly-input-text :focus {
    border: none !important;
    text-decoration: none !important
}

html .text-dark,
body .text-dark,
main .text-dark {
    color: var(--prsm-primary-color);
    text-align: left
}

html .field-label,
body .field-label,
main .field-label {
    color: var(--prsm-label-fg-color);
    text-align: left;
    font-size: 14px;
    font-weight: 500
}

html .hide,
body .hide,
main .hide {
    display: none !important
}

html .text-center,
body .text-center,
main .text-center {
    text-align: center
}

html .text-left,
body .text-left,
main .text-left {
    text-align: left
}

html .message,
body .message,
main .message {
    margin-top: 10px
}

html .mt-20,
body .mt-20,
main .mt-20 {
    margin-top: 20px !important
}

html .my-20,
body .my-20,
main .my-20 {
    margin: 20px 0 !important
}

html .info-error,
body .info-error,
main .info-error {
    margin-bottom: 10px;
    background-color: #fff;
    text-align: center;
    padding: 3px
}

html .info-error .img-error,
body .info-error .img-error,
main .info-error .img-error {
    width: 20px;
    height: 20px;
    display: inline-block;
    line-height: 30px;
    vertical-align: middle
}

html .info-error .img-error svg,
body .info-error .img-error svg,
main .info-error .img-error svg {
    width: 20px;
    height: 20px;
    color: #d9005c
}

html .info-error .error-message,
body .info-error .error-message,
main .info-error .error-message {
    color: #d9005c;
    line-height: 30px;
    vertical-align: middle
}

html .info-message,
body .info-message,
main .info-message {
    display: flex;
    background: var(--prsm-alert-info-bg-color);
    color: var(--prsm-alert-info-fg-color);
    border-radius: 10px;
    padding: 14px;
    text-align: left;
    line-height: 18px
}

html .info-message .info-icon:before,
body .info-message .info-icon:before,
main .info-message .info-icon:before {
    font-size: 1.1rem;
    content: "ⓘ";
    color: var(--prsm-alert-info-icon-color);
    font-weight: 800
}

html .info-message .info-text,
body .info-message .info-text,
main .info-message .info-text {
    font-weight: 300;
    padding-left: 8px
}

html .footer-timestamp,
body .footer-timestamp,
main .footer-timestamp {
    position: absolute;
    left: 0;
    bottom: 55px;
    width: 100%;
    text-align: center;
    font-size: .9rem
}

html #username-value,
body #username-value,
main #username-value {
    color: var(--prsm-control-input-readonly-color)
}

html #forgotPasswd,
body #forgotPasswd,
main #forgotPasswd {
    font-weight: 500
}

.has-float-label {
    margin: 0 !important;
    padding-top: 1.5em;
    position: relative
}

.has-float-label input {
    padding-left: 0 !important
}

.has-float-label input:not([type=checkbox]):not([type=radio])~label {
    position: absolute;
    top: .125em;
    left: .125em;
    -moz-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: all .2s .2s;
    -moz-transition: all .2s .2s;
    transition: all .2s .2s
}

.has-float-label input:not([type=checkbox]):not([type=radio]):valid~label {
    -moz-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: all .25s;
    -moz-transition: all .25s;
    transition: all .25s
}

.has-float-label[class] input[type]:-moz-placeholder~label {
    -moz-transform: translateY(1.5em);
    transform: translateY(1.5em);
    cursor: text
}

.has-float-label[class] input[type]:-ms-input-placeholder~label {
    transform: translateY(1.5em);
    cursor: text
}

.has-float-label[class] input[type].placeholder-shown~label {
    -moz-transform: translateY(1.5em);
    -webkit-transform: translateY(1.5em);
    transform: translateY(1.5em);
    cursor: text
}

.has-float-label[class] input[type]:placeholder-shown~label {
    transform: translateY(1.5em);
    transform: translate3d(0, 1.5em, 0);
    cursor: text
}

.has-float-label[class] input:not([type=checkbox]):not([type=radio]):focus~label,
.has-float-label[class] input:not([type=checkbox]):not([type=radio]):-webkit-autofill~label {
    -moz-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: all .25s;
    -moz-transition: all .25s;
    transition: all .25s
}