html {
    font-size: 14px;
    overflow-x: hidden;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
  min-height: 100%;
}

body {
    margin-bottom: 60px;
    background-color: var(--themeColor);
}

main[role="main"] {
    height: 100vh;
    align-items: center;
    display: flex;
    flex-direction: column;
}

main[data-type] {
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    color: var(--pageColor);
    background-color: #ffffff;
    border-radius: 20px;
}

main[data-type] .tenant-logo{
    width:320px;
}

header {
    background-color: var(--headerBgColor) !important;
    color: var(--headerTextColor) !important;
    height: 7vh;
}

    header a {
        color: var(--headerTextColor) !important;
    }

footer {
    background-color: var(--footerBg) !important;
    color: var(--footerTextColor) !important;
}

/* button.css */
button.btn-custom {
    border-radius: 10px;
    font-size: 1rem;
    background-color: var(--primaryButton);
    font-weight: 400;
    border: 0;
    color: var(--primaryText);
    width: -moz-fit-content;
    width: -webkit-fit-content;
    /* padding: 1rem 1rem; */
    /* height: var(--height-btn-mb); */
    padding-top: var(--py-btn-mb);
    padding-bottom: var(--py-btn-mb);
    margin: unset;
}

    button.btn-custom:disabled, button.btn-custom[disabled] {
        cursor: not-allowed;
    }

        button.btn-custom:disabled:hover, button.btn-custom[disabled]:hover {
            box-shadow: none;
        }

    button.btn-custom.btn-submit {
        background-color: var(--primaryButton);
        color: var(--primaryText);
    }

    button.btn-custom.btn-otp-code {
        background-color: var(--primaryButton);
        color: var(--primaryText);
    }

    button.btn-custom.btn-cancel {
        background-color: var(--secondaryButton);
        color: var(--secondaryText);
    }

.focus-custom:not(.btn-ignore-focus):focus {
    outline: 1px auto rgba(38, 143, 255, 0.5);
}

/** btn-content */
button.btn-custom.btn-ignore-focus {
    padding: 0;
}

/** Hover */
/* button.btn-custom:hover {
  box-shadow: 0 15px 20px rgba(57, 154, 242, 0.4) !important;
  color: #ffffff;
} */
button.btn-custom.btn-submit:hover {
    background-color: var(--primaryButton);
    border-color: var(--primaryButton);
    box-shadow: 0 3px 10px var(--primaryButton) !important;
    color: var(--primaryText);
}

button.btn-custom.btn-cancel:hover {
    background-color: var(--secondaryButton);
    border-color: var(--secondaryButton);
    box-shadow: 0 3px 10px var(--secondaryButton) !important;
    color: var(--secondaryText);
}

/* Fixing the Safari bug for `<button>`s overflow */
button.btn-ignore-focus .btn-content {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 0.6875rem;
    padding-bottom: 0.6875rem;
}

button.btn-ignore-focus:focus > .btn-content {
    outline: 1px auto rgba(38, 143, 255, 0.5);
}
/* Removing default outline only after we've added our custom one */
button.btn-ignore-focus:focus,
button.btn-ignore-focus .btn-content:focus {
    outline: none;
}

@media only screen and (min-width: 768px) {
    button.btn-custom {
        padding-top: var(--py-btn-pc);
        padding-bottom: var(--py-btn-pc);
    }

    button.btn-ignore-focus .btn-content {
        padding-top: var(--py-btn-content-pc);
        padding-bottom: var(--py-btn-content-pc);
    }
}

a.btn-custom {
    background-color: var(--primaryButton);
    color: var(--primaryText);
    cursor: pointer;
    max-width: 8.6875rem;
    width: unset;
    font-size: 0.875rem;
    padding: 0.7813rem 0 !important;
    margin-right: 15px;
    min-width: 7.5rem;
    border-radius: 10px;
}

.icon-btn {
    width: 25px !important;
    height: 25px !important;
}

    .icon-btn img {
        height: inherit !important;
    }

.btn-primary, button.swal2-styled {
    color: var(--primaryText) !important;
    background-color: var(--primaryButton, #0077C2) !important;
    border-color: var(--primaryButton) !important;
}

.btn-secondary {
    color: var(--secondaryText) !important;
    background-color: var(--secondaryButton) !important;
    border-color: var(--secondaryButton) !important;
}

#google-oauth-button {
    padding: unset;
    border: unset;
    outline: unset;
}
/* button.css */

/*Layout css*/
a.navbar-brand {
    white-space: normal;
    text-align: center;
    word-break: break-all;
}

a {
    color: #0077cc;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.border-top {
    border-top: 1px solid #e5e5e5;
}

.border-bottom {
    border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy {
    font-size: 1rem;
    line-height: inherit;
}

.footer {
    display:none;
    position: fixed;
    bottom: 0;
    width: 100%;
    white-space: nowrap;
    line-height: 60px;
}
/*Layout css*/

.error-logo {
    height: 150px;
}

.login-panel {
    margin-bottom: auto;
    padding-left: 7px;
    padding-right: 7px;
    display: flex;
    align-items: center;
    margin: auto;
}

.company-logo {
    justify-content: center !important;
}

    .company-logo .logo {
        width: 70vw;
    }

.login-form-title {
    font-size: 18px;
    font-weight: 600;
}

.login-form-description {
    color: #8C8C8C;
}

.required-lbl {
    color: red;
    margin-left: 5px;
}

button.btn-toggle.pwd-visibility {
    position: absolute;
    right: 10px;
    padding-top: 5px;
    background-color: transparent;
    border: 0;
    outline: none;
}

.password-input-group {
    display: flex;
    position: relative;
}

.container.fixed-top{
    position:absolute;
    top:0;
    padding-left:0;
    padding-right:0;
}

.validation-summary-errors {
    color: red;
}

.modal button.close {
    position: absolute;
    background: transparent;
    border: 0;
    font-size: 28px;
    right: 3px;
    top: -7px;
}

.modal-header{
    border:0;
}

#notificationModal{
    top:30vh;
}
#generalMessageModal {
    top: 30vh;
}

section.mobile__banner {
    margin-top: 9vh;
    width: 100%;
    max-width: 100%;
}

.sign-up-section img {
    width: 100% !important;
}

.update-acc-section img{
        width: 100% !important;
}