body {
    background-size: cover;
    background-position: center;
    font-size: 14px;
}

input[type=text] {
    font-size: 16px !important;
}

p {
    font-size: 14px;
    margin-bottom: 8px;
}

h1 {
    text-align: left;
    font-size: 32px;
    font-weight: 400;
    margin-bottom: 24px;
    margin-top: 8px;
}

h2 {
    font-size: 28px;
}

h3 {
    font-size: 24px;
    margin-bottom: 8px;
    margin-top: 24px;
}

h1, h2, h3, h4 {
    color: #003963;
}

.no-list-type {
    list-style-type: none;
    padding-left: 24px;
    margin-left: 0 !important;
}

a {
    color: #0095d1;
    text-decoration: none;
    cursor: pointer;
}

a:hover {
    color: #0095d1;
}

/* logo */

img.mtu-logo {
    filter: brightness(0) invert(1);
    width: 160px;
    position: relative;
    margin-bottom: 24px;
}

.col-lg-6 {
    padding: 32px 32px 32px 32px;
    overflow: hidden;
    border-radius: 8px;
    max-width: 1000px;
    flex: 1;
}

.main-content-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.unified_container .row .panel-default #api {
    table-layout: fixed;
}

.selfasserted-wrapper {
    display: flex;
    flex-direction: column;
    align-items: start;
    width: 100%;
}

img[data-tenant-branding-background=true] {
    display: block !important;
}

.container .row .panel-default {
    border: 1px solid transparent;
    border-radius: 4px !important;
    -webkit-box-shadow: 0 1px 1px rgb(0 0 0 / 5%);
    box-shadow: 0 1px 1px rgb(0 0 0 / 5%);
    height: auto;
    width: 100%;
}

#attributeList ul li .attrEntry .dropdown_single {
    padding-left: 0;
}

.buttons #cancel:before {
    content: url("data:image/svg+xml,%3Csvg style='width:24px%3Bheight:24px' viewBox='0 0 24 24'%3E%3Cpath fill='currentColor' d='M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z' /%3E%3C/svg%3E");
}

.buttons #cancel {
    position: relative;
}

/* increased verification button width - prevents text cut off */
#attributeList ul li .attrEntry .verificationControlContent .sendCode {
    min-width: 130px;
}

.attrEntry .verificationInfoText {
    margin-bottom: 0;
}

/* removed inherited with restriction */
.self_asserted_container .row .panel-default .panel-body {
    max-width: 100%;
}

/* hide fieldIncorrect error message because even after entering a valid message, error is still visible */
.self_asserted_container .row .panel-default .panel-body #api #attributeVerification #fieldIncorrect {
    display: none !important;
}

/* custom MTU style override - registration form */
.self_asserted_container{
    #attributeVerification #attributeList ul {
        display: flex;
        flex-flow: wrap;
        gap: 8px 16px;
        margin-bottom: 0;
        clear:left;
    }
    #attributeList ul li {
        list-style: none;
        flex: 1 1 auto;
        margin: 5px 0;
        min-width: 45%;
        flex-basis: 45%;
    }
}

/* input indent fix */
#attributeList ul li input {
    text-indent: 10px;
}

.unified_container .row .panel-default #api .localAccount .entry .entry-item input {
    padding: 6px 2px;
    font-size: 16px !important;
}

#attributeList ul li input[type=checkbox] + label {
    margin: 0.6rem 0 0 0.15rem;
    font-size: 14px;
}

::-webkit-input-placeholder {
    text-indent: 10px !important;
}

:-moz-placeholder {
    text-indent: 10px !important;
}

::-moz-placeholder {
    text-indent: 10px !important;
}

:-ms-input-placeholder {
    text-indent: 10px !important;
}

#attributeList ul li.EmailBox label, #attributeList ul li.Password label, #attributeList ul li.TextBox label,
#attributeList ul li.DropdownSingleSelect label {
    display: block !important;
    /* max-width: 164px; */
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 12px;
}

#api #attributeVerification .error {
    font-size: 14px !important;
    text-align: left;
    color: #b00;
    margin-bottom: 8px;
    float: left;
    clear: left;
}

#attributeList ul li.CheckboxMultiSelect .error.itemLevel.show {
    width: 100%;
}

/* dont hide validation messages */
#attributeList ul li .error.itemLevel.show {
    display: block !important;
}

/* show red border for input fields with error */
#attributeList ul li .error.itemLevel.show + input[type=text],
#attributeList ul li .error.itemLevel.show + input[type=password] {
    border: 1px solid #b00;
}

div#email_intro, #attributeVerification #attributeList ul li #email_info {
    margin-bottom: 8px;
    text-align: left;
    float: left;
    clear: left;
}

#attributeVerification #attributeList ul li #email_success.verificationSuccessText {
    margin-bottom: 8px;
    text-align: left;
    clear: left;
}

div#codeVerification {
    margin-bottom: 8px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

input#verificationCode {
    display: inline-flex !important;
    margin-top: 16px;
}

input#email_ver_input {
    max-width: 150px;
}

.attrEntry {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.CheckboxMultiSelect .attrEntry {
    flex-direction: row;
    flex-flow: wrap;
}

#attributeList ul li .attrEntry .verify #email_ver_input_label {
    display: block !important;
}

#attributeVerification #attributeList ul li #email_info {
    /* float: none; */
}

.buttons.verify button {
    display: flex;
    align-items: center;
}

.buttons.verify button {
    margin-top: 0 !important;
    min-width: 160px !important;
}

#attributeList ul li .attrEntry .verify {
    display: flex;
    align-items: center;
    flex-flow: wrap;
}

/* set required indicator */
#newPassword_label::after,
#reenterPassword_label::after,
#givenName_label::after,
#surname_label::after,
#extension_company_label::after,
#agreeTermsAndConditions_option::after,
#agreePrivacyStatement_option::after,
#agreeProprietaryInformation_option::after,
#extension_country_label::after,
#extension_mtu_customer_account_manager_label::after{
    content: ' *'
}


/* terms label margins */
#extension_terms_and_conditions_label {
    margin-bottom: 16px !important;
    margin-top: 8px;
    min-width: 100%;
}

/* no line break for checkboxes */
li.CheckboxMultiSelect {
    width: 100%;
    flex-basis: 100% !important;
}

.CheckboxMultiSelect label {
    cursor: pointer;
}

.CheckboxMultiSelect input {
    cursor: pointer;
}

/* custom checkbox styles */

#attributeList ul li input[type=checkbox]:checked:after {
    background-color: #003963;
    border: 1px solid #003963;
}

/* custom form title */
.heading h1 {
    display: none;
}

.main-title {
    color: #003963;
    font-size: 32px;
    font-weight: 600;
    letter-spacing: 1px;
}

.main-title-suffix {
    color: #7d9db1;
    font-size: 32px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.form-title {
    text-align: left;
    margin-bottom: 14px;
    font-weight: bold;
    color: #003963;
    font-size: 16px;
}

.container {
    display: flex;
    background-color: transparent;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 100% !important;
}

.container > .row {
    display: flex;
    justify-content: center;
}

/* button */
.buttons {
    display: flex;
    flex-flow: row-reverse;
    gap: 16px;

    justify-items: flex-end;
    flex-wrap: wrap;
}

#attributeList ul li .attrEntry .verificationControlContent .buttons {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.buttons button, .modal .btn.btn-primary {
    margin: inherit !important;
    border: 0;
    border-radius: 20px !important;
    background-color: #003963 !important;
    color: #fff;
    width: auto !important;
    min-width: 100px !important;
    text-align: center !important;
    left: auto !important;
    height: 35px !important;
    padding-left: 16px;
    padding-right: 16px;
    font-size: 14px !important;
    cursor: pointer;
}

.buttons button:enabled:hover:not(.disabled), .modal .btn.btn-primary:hover:not(.disabled) {
    border: 0;
    border-radius: 20px;
    background-color: #0095d1 !important;
    color: #fff;
}

.buttons #cancel {
    text-align: center;
    left: auto;
    background-color: #fff !important;
    border: 1px solid #003963 !important;
    color: #003963;
    font-size: 14px;
    cursor: pointer;
    top: 0 !important;
}

button {
    cursor: pointer;
}

.buttons #cancel:hover {
    color: #0095d1 !important;
    border: 1px solid #0095d1 !important;
}

.buttons #cancel:before {
    display: none;
    min-width: 100px;
}

.buttons button:focus {
    outline: none;
}

.buttons button[aria-disabled=true], .buttons button[aria-disabled=disabled], .buttons button:disabled {
    background-color: rgba(0, 0, 0, 0.12) !important;
    opacity: 1;
    cursor: default;
    color: rgba(0, 0, 0, 0.38);
}

/* inputs */

input {
    border-color: #7d9db1;
    border-radius: 5px;
    height: 52px;
    font-size: 16px;
    color: #000;
    outline-color: #0095d1;
}

input:hover, input:focus, input:active {
    border-color: #0095d1;
}

/* hide useless text field placeholders */
input::placeholder {
    color: #fff;
}

/* float fix */
.create {
    clear: both;
    margin-top: 10px;
    margin-bottom: 16px;
}

.create p {
    font-size: 16px;
}

/* loading indicator fix */
#api .working {
    width: 100%;
}

/* loading indicator visibility fix */
#api .working {
    background-position: center;
    min-width: 100px;
    margin-bottom: 5px;
}

/* custom modal height */
.modal-body {
    max-height: calc(100dvh - 180px);
    overflow-y: auto;
    padding: 0;
}

.unified_container .row .panel-default #api .claims-provider-list-text-links p, .unified_container .row .panel-default #api .localAccount .create p {
    margin-top: 0 !important;
}

select {
    height: 50px !important;
    border: 1px solid #7d9db1;
    border-radius: 5px;
    text-indent: 5px;
    max-width: 100%;
    font-size: 16px;
}

select:hover {
    border: 1px solid #0095d1 !important;
    outline-color: #0095d1 !important;
}

textarea {
    font-size: 16px;
}

.phoneEntry .number {
    margin-top: 24px;
    margin-bottom: 32px;
}

.phoneEntry .number label {
    width: 100%;
}

.create p {
    gap: 15px;
    display: flex;
    flex-wrap: wrap;
}

a#createAccount {
    padding: 0 !important;
    margin: 0 !important;
}

/* legal text styles */
table {
    margin-bottom: 16px;
    border: 1px solid #d4d8db;
    border-collapse: collapse;
}

tr th {
    text-align: left;
    background: #f2f2f2;
}

th,
td {
    padding: 8px;
    border: 1px solid #d4d8db;
    vertical-align: top;
}

.modal ul {
    margin-left: 42px;
}

.modal p {
    margin-top: 14px;
    margin-bottom: 14px;
}

.modal table {
    table-layout: fixed;
    width: 100%;
}

.modal td {
    word-break: break-word;
}

/*colorize errors red */
.error.itemLevel p {
    color: #b00;
}

.verificationSuccessText {
    color: #329A4A;
}

/* custom backdrop close button */
.custom-backdrop-close {
    position: absolute;
    right: 30px;
    top: 30px;
    font-size: 30px;
    color: #fff;
    cursor: pointer;
    line-height: 22px;
    z-index: 111111111111;
}

#attributeList li:nth-child(7) {
    min-width: 100%;
}

.pdf-wrapper{
    width: 100%;height: 75vH;
}

.loader{
    background: rgba(0,0,0,0.75);
    width: 100%;
    height: 100dvH;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1000000;
    color: #fff;
    text-align: center;
}

.loader-inner{
    position:relative;width: 100%;height: 100dvH;
}

.loader-text{
    position: absolute;height: 40px;width: 100dvW;top: 50%;text-align: center;
}

#attributeVerification #attributeList ul li #email_fail_retry {
    float: left
}

.verifying-modal {
    display: none;
}
.simplemodal-overlay .verifying-modal {
    display: block;
}

/* used for line break between label and consent checkbox + label - checkbox for legal documents consent */
label#termsAndConditionsConsentChoice_label, label#privacyStatementConsentChoice_label, label#proprietaryInformationConsentChoice_label {
    width: 100%;
}

.self_asserted_container .row .panel-default .panel-body #api #attributeVerification .error {
    margin-bottom: 8px
}

/* START - MPDI-781-Adjust the style for catcha & adjust overlay dead end */
.captcha-audio-small, .captcha-refresh-icon, .captcha-visual-icon {
    padding: 0;
    border: 0;
    background-color: transparent;
    width: 24px !important;
    height: 24px;
    background-size: cover !important;
    margin: 10px;
    min-width: 24px !important;
}

/* the audio output is so bad that the PO decided to hide it */
.captcha-audio-small {
    width: 24px !important;
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/volume-high-blue-custom.png');
    display: none;
}

.captcha-audio-small:hover {
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/volume-high-lightblue-custom.png');
}

.captcha-refresh-icon {
    width: 24px !important;
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/reload-blue-custom.png');
}

.captcha-refresh-icon:hover {
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/reload-lightblue-custom.png');
}

.captcha-visual-icon {
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/image-outline-blue-custom.png');
}

.captcha-visual-icon:hover {
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/image-outline-lightblue-custom.png');
}

.captcha-display-control {
    width: min-content;
}

.captcha-audio-playbtn, .captcha-imageContent {
    width: 200px !important;
    height: 100px !important;
    float: none !important;
    margin: 0 auto;
}

.captcha-audio-big {
    width: 64px !important;
    background-size: contain !important;
    height: 64px !important;
    background-color: transparent;
    border: none;
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/volume-high-big-blue-custom.png');
    padding: 0;
    margin: 25px auto 0 auto;
    opacity: 1;
}

.captcha-audio-big:focus {
    outline: 0;
}

.captcha-audio-big:hover {
    background-image: url('https://login-resources.mymtu.mtu.app/theme/template/signup/resources/img/volume-high-big-lightblue-custom.png');
}


.captcha-control-buttons {
    width: 100% !important;
    margin: 0 auto;
    display: flex;
    justify-content: center;

    button{
        outline: 0;
    }
}

input#captchaControlChallengeCode {
    margin-top: 16px;
}

label#captchaControlChallengeCode_label {
    margin-bottom: 16px;
}

/* END - MPDI-781-Adjust the style for catcha & adjust overlay dead end */


/* START MPDI-777-Adjust-captcha-page-styles */

.TextBox.invitationCode_li{
    width: 100%;
    min-width: 100% !important;
    margin-bottom: 32px !important;
}

/* END MPDI-777-Adjust-captcha-page-styles */

@media only screen and (max-width: 480px) {
    #attributeList ul li.EmailBox label, #attributeList ul li.Password label, #attributeList ul li.TextBox label,
    #attributeList ul li.DropdownSingleSelect label {
        max-width: fit-content;
        white-space: unset;
    }

    .col-lg-6 {
        padding: 32px 8px 32px 8px;
    }

    #attributeList ul li {
        min-width: 100%;
    }
}

.modal-dialog.modal-lg {
    max-width: 94vW !important;
}

.modal button.btn-close {
    border: 0;
    font-size: 24px;
    background: 0;
    color: #757575;
    line-height: normal;
}

.modal button.btn-close:focus, .modal button.btn-close:hover {
    border: 0;
    outline: 0;
    color: #0095d1;
}

.modal .btn-close span {
    top: -2px;
    position: relative;
}

@media only screen and (max-width: 760px) {
    .container.self_asserted_container {
        top: 98px !important;
        align-items: flex-start !important;
    }
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (max-width: 1024px) {
    img.mtu-logo {
        position: relative;
    }
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
    .col-lg-6 {
        padding: 32px 8px 32px 8px;
    }
}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
    .col-lg-6 {
        padding: 64px;
    }
}

@media (min-width: 992px){
    .modal-lg {
        max-width: 900px;
    }
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
    #attributeList ul li.EmailBox label, #attributeList ul li.Password label, #attributeList ul li.TextBox label,
    #attributeList ul li.DropdownSingleSelect label {
        max-width: fit-content;
        white-space: unset;
    }
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1600px) {
    .self_asserted_container .col-lg-6 {
        min-width: 1000px;
    }
}
