/** [ML] force full length bg*/
html, body {
    min-height: 100%;
}

html {
    height: 100%;
}

body { 
    margin: 0;
    padding:0;
    /*height: 100%; [ML] need to comment out for full height sidebar on desktop*/
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;

    font-size: 10pt;
    font-family: Arial, Helvetica, sans-serif;
}

.html-body_container {
    height: 100%;
    position: relative;
}

#html-custom_site_header {
    width: 100%;
    padding: 12px;
}

body[data-tab_content=yes] .html-content_area,
body[data-tab_content=yes] .optionTab {
    background-color: transparent !important;
    /*padding: 0;*/
}

#html-custom_site_footer {
    margin-top: 1em;
    bottom: 0;
    left: 0;
    z-index: 9;
    width: 100%;
    padding: 12px;
    position: relative;
}

#html-custom_site_header p,
#html-custom_site_footer p {
    margin-bottom: 0;
}

#html-custom_site_footer #html-version_desktop {
    display: block;
    color:#000;
    font-size: 11px;
    text-align: right;
}

.skinny_container #content .container {
    max-width: 600px !important;
}

.skinny_container .btn-secondary:not(.btn-mini),
.skinny_container .btn-primary:not(.btn-mini),
.skinny_container .okButtonStyle:not(.btn-mini),
.skinny_container .badButtonStyle:not(.btn-mini) {
    width: 100%;
    display: block;
}

main {
    margin: 20px 0;
    border-radius:10px;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    max-width: 800px;
}

.entryBlock {
    padding: 10px;
}

table {
    margin: 0px;
    padding: 0px;
}

table.Container {
    width: 100%;
    height: 100%;
    margin: 0px;
    padding: 0px;
}


#indexBody {
    vertical-align: top;
    padding: 0.5em;
}

#indexBodyPattern {
    height: 100%;
    width: 100%;

    display: table;
}

.w-100 {
    width: 100%;
    box-sizing: border-box;
}

small, .small {
    font-size: 69%;
}

a {
    text-decoration: underline;
}

a:hover {
    color: unset;
}

a img, td img {
    border: 0px;
    vertical-align: middle;
}

.entryForm {
    margin: 0px;
    color: black;
}

#mainBody {
    vertical-align: top;
    border: 0 !important;
    padding: 0 !important;
    width: 100%;
}

#bg-fullwidth {
    padding: 0;
}

#mainBodyPattern {
    vertical-align: top;
    border: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    width: 100%;
    height: 100%;
}

#sideBar {
    display: block;
    top: 0;
    left: 0;
    width: auto !important;
    padding: 0 !important;
    border-right: 1px solid #ddd !important;
    background-color: #fff;
    z-index: 999;
}

#sideBar .sidebarItem {
    width: 300px;
    font-size: 16px;
    border-bottom: 0 !important;
    margin: 0 !important;
    height: unset !important;
    padding: 0 !important;
}

#sideBar .html-sidebar_heading {
    background-color: #f19937;
    background: linear-gradient(to bottom, rgba(249,169,60,1) 1%,rgba(254,124,2,1) 100%);
    color: #fff;
    text-align: center;
    padding: .75rem;
    font-size: 17px;
}

#sideBar .sidebarItem .link img {
  width: 21px;
  margin-right: 5px;
  padding: 0 !important;
}

#sideBar .sidebarItem .link {
    border-bottom: 1px solid #ddd !important;
    margin-bottom: 0;
    padding: .75rem;
    line-height: unset;
    height: unset;

    background-color: white;
    color: black;
    display: block;
    text-decoration: none;
}

#sideBar .sidebarItem > a > .icon {
    margin-right: 15px;
}

#sideBar .sidebarItem .link.active {
    background-color: #4a81f2;
    color: #fff;
}

#siteHeading,
#pageHeading,
#regWelcome,
.generalHeading {
    background-color: #1d538a;
    color: #fff;
    margin: 0;
    padding: .5rem 1rem;
    margin-bottom: .5rem;
    display: block;
    position: relative;
}

#regWelcome {
    font-size: 25px;
}

#pageHeading {
    font-weight: 400;
    font-size: 18px;
    color: white;
    margin-bottom: 0;
}

.generalHeading {
    background-color: #658AB1;
    font-weight: bold;
    font-size: 18px;
    color: white;
}

.dialog {
    width: 100%;
    border: none;
}

.dialog th {
    text-align: left;
    font-weight: bold;
    font-size: larger;
    padding: 4px;
}

.dialogIcon {
    padding: 8px;
    padding-top: 0px;
}

.dialogBody {
    padding-top: 12px;
}

.dialogButtonArea {
    padding-bottom: 8px;
}

.html-content_area {
    padding: 10px;
    margin-top: 1em;
}

body.html-sidebar_expanded #sideBar {
    display: block !important;
}


#copyrightClass
{
    margin-top: 75px;
    text-align: center;
    line-height: 1em;
}

#html-product_bar {
    background-color: #1d538a;
    padding: 10px 0;
}

#html-product_bar .img-site_logo {
    max-height: 54px;
}

#html-product_bar #html-desktop_hamburger {
    position: absolute;
    left: 10px;
    top: 10px;
    fill: #fff;
    cursor: pointer;
    z-index: 999;
    width: 32px;
    height: 32px;
}

#productsBar {
    text-align: center;
}

#productsBar .btn {
    font-size: small;
    margin-bottom: 0;
    color: #fff;
    margin-right: .5rem;
    padding: 0 10px;
    line-height: 38px;
    border: 0 !important;
    min-width: unset;
}

#productsBar img {
    width: 18px;
    margin-right: 3px;
}

#productsBar .btn-primary {
    color: #fff;
    background-color: #092743;
}

#productsBar .btn-primary.active {
    color: #fff;
    background-color: #4a81f2
}

.header-btn-disabled {
    pointer-events: none; /* Disables the button completely. Better than just cursor: default; */
    opacity: 0.7;
}

fieldset {
  margin: 0;
  border: 1px solid #ddd;
  padding: 5px;
}

legend {
  font-weight: bold;
  margin-left: 10px;
  margin-right: 10px;
    display: inline-block;
    max-width: unset;
    width: auto;
}

.text-danger {
  color:#f00;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.border-top {
    border-top: 1px solid #ddd;
}

.table th,
.table td {
  text-align: left;
  vertical-align: top;
  padding: .25rem .25rem;
}

.table-list {
    border-collapse: separate;
    border-spacing: 1px;
}

.table-list thead th {
  font-weight: bold;
  color: #000;
  background-color: #E5E5E5;
  vertical-align: top !important;
}

.generalHeading {
  display: block;
  margin-bottom: .5rem;
}

/** Overwrite main.css */
.optionTab {
    width: auto;
    min-height: unset;
    padding-bottom: unset;
}

/** overwrite bootstrap */
input[type=radio],
input[type=checkbox] {
    margin: 3px 3px 0px 5px;
}

.nav-tabs,
.nav-tabs .nav-item {
    border-bottom: 0;
    margin-bottom: 0;
}

.mm-tab .nav-item {
    cursor: pointer;
    margin-right: 1px;
}

.mm-tab .nav-link,
.mm-tab .nav-link:hover{
    background-color: #eee;
    font-weight: bold;
    color:#000;
}

.mm-tab .nav-link.active {
    background-color: #01528c;
    color: #fff;
}

.mm-tab_block {
    background-color: #fff;
    border: 1px solid #ddd;
    padding: 10px;
}

.optionTab {
    padding:0;
    background-color: #fff;
    border: 0;
}

.html-dialog_wrapper {
    background-color: transparent;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -khtml-border-radius: 10px;
    border-radius: 10px;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
}



.html-dialog_wrapper th,
.html-dialog_wrapper td {
    padding: 10px;
}

.acctArea {
    margin: 0;
}

.input-bg_highlight {
    background-color: #fafec0;
}

.form-control {
    height: auto;
    border-radius: 0;
    font-size: inherit;
    border: 2px solid #ddd;
    border-radius: 4px;
}

.btn {
      display: inline-block;
      font-weight: 400;
      text-align: center;
        text-decoration: none;
      border: 1px solid transparent;
      padding: .125rem .25rem;
      font-size: .75rem;
      border-radius: .25rem;
      cursor: pointer;

    margin-bottom: 5px;

    border-color: #b2b2b2;
    background-color: #f8f8f8;

    color: #444;
    padding: 0 12px;

    border-width: 1px;
    border-style: solid;
    border-radius: 4px;
    vertical-align: top;
    text-align: center;
    text-overflow: ellipsis;
    font-size: 14px;
    cursor: pointer;

    /** make it like Moo*/
    padding: 10px 12px;
    min-width: 250px;
}

.btn-mini {
    padding: 0 12px !important;
    min-width: unset !important;
}

.btn:hover {
    color: #fff;
}

.btn-primary {
    border-color: transparent;
    background-color: #092742;
    color: #fff;
}

.btn-secondary {
    border-color: transparent;
    background-color: #4a81f2;
    color: #fff;
}

.deleteButtonStyle,
.okButtonStyle {
    background: #339716 !important;
    color: #fff !important;
    border-color: transparent;
}

.okButtonStyle:hover {
    background-color: #3fba1b;
    color: #fff;
    text-decoration: none;
}

.loginButtonStyle,
.loginButtonStyle:hover {
    background-color: #2e6ba1;
    color: #fff;
}

.cancelDeleteButtonStyle,
.badButtonStyle,
.btn-danger {
    color: #fff !important;
    border-color: transparent;
    background: unset !important;
    background-color: #d40f16 !important;
    text-decoration: none;
}

.html-process_text {
    color:red;
    font-weight: bold;
    font-size: xx-large;
    line-height: 1em;
}

.parentHeading {
    font-size: 14px;
    font-weight: bold;
    padding-left: 0px;
    line-height: 25px;
    margin-left: 20px;
}

.table .historyHeading,
.table .parentHeadingRow {
    background: #E5E5E5;
}

/* Field wrapper*/
.optionBox {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 1em;
}

#formbtns {
    margin-top: 1.125em;
}

.parentHeading,
.acctArea,
.parentArea {
    margin-left: 0;
    float: none;
}

.mm-print_width {
    width: 100%;
}

#footer {
    margin-top: 1em;
}

#helptext,
#helptext .link,
.textClass {
    color: #000;
}

.form-control {
    border-width: 1px;
}

#rememberCardAlias,
#userPaymentTokenID {
    display: inline-block;
    width: auto;
    margin-left: 1rem;
}

input[type=radio],
input[type=checkbox] {
    -moz-appearance: none;
    -webkit-appearance: none;
    -o-appearance: none;
    outline: none;
    content: none;
    border: none;

    margin-right: 10px !important;
}

/* CSS specific to iOS devices */
@supports (-webkit-touch-callout: none) {
    input[type=radio],
    input[type=checkbox] {
        -moz-margin-end: 20px !important;
        -webkit-margin-end: 20px !important;
    }
}

input[type=radio]:before,
input[type=checkbox]:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f00c";
    font-size: 15px;
    color: transparent !important;
    width: 15px;
    height: 15px;
    /*margin-right: 5px;*/
    border-radius: 2px;
    padding: 2px;
    font-weight: 400;
}

.newTokenizationOptions label {
    font-weight: 600;
    margin-bottom: 0;
}

input[type=radio]:before {
    border-radius: 50%;
    padding: 5px;
    width: 10px;
    height: 10px;
    border: 1px solid #ddd;
}

input[type=checkbox]:before {
    border: 1px solid #ddd;
}

input[type=radio]:checked:before,
input[type=checkbox]:checked:before {
    color: #fff !important;
    background: #387ef5;
}

.html-d_sm_only,
.html-d_md_minus {
    display: none;
}

.acctHeadingArea {
    margin: 0px;
    padding: 0px 8px 0px 0px;
}

.acctHeading {
    font-weight: bold;
    font-size: 18px;
    color: white;
}

/*Hide number input stepper*/
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

thead {
    background-color: #e5e5e5;
    color: #000;
    font-weight: 600;
}

#productsBar .btn {
    display: inline-block;
    width: auto;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

#mainBody {
    background-repeat: repeat;
}

@media all and (max-width: 992px) {
    .tr-md_block {
        display: block;
        border: 1px solid #ddd;
        padding: 5px;
        margin-bottom: 5px;
    }

    .tr-md_block td {
        display: block;
        border: 0;
    }

    .html-d_md_minus {
        margin-right: auto;
        display: block;
    }
}

@media all and (min-width: 768px) {
    .mm-print_width {
        width: 250mm;
    }
}

@media all and (max-width: 768px) {
    body {
        padding: 0;
        margin: 0;
        font-size: 16px;
    }

    .btn {
        font-size: 15px;
    }

    .btn,
    .btn-mini {
        padding: 10px 12px !important;
    }

    #html-poweredBy {
        padding: 30px 15px;
        font-size: 69%;
        text-align: center;
    }

    #html-poweredBy p {
        margin: 0;
    }

    .skinny_container #content .container,
    .container, .container-sm {
        max-width: 100% !important;
    }

    a {
        text-decoration: underline;
    }

    .table-left_right tr,
    .tr-sm_block {
        display: block;
        border: 1px solid #ddd;
        padding: 5px;
        margin-bottom: 5px;
    }

    .tr-sm_block td {
        display: block;
        border: 0;
    }

    .table-left_right,
    .table-left_right thead,
    .table-left_right tbody,
    .table-left_right tr,
    .table-left_right td {
        display: block;
        width: 100%;
    }

    .table-left_right tr {
        margin-bottom: 0;
        border: 0;
        border-bottom: 1px solid #ddd;
    }

    .table-left_right tr th {
        display: none;
    }

    .table-left_right tr td {
        border: 0;
        width: 100%;
    }

    .table-left_right tr td .html-d_sm_only {
        margin-right: auto;
        display: block;
    }

    .html-d_sm_only {
        display: unset;
    }

    .btn {
        display: block;
        width: 100%;
        min-width: unset;
    }


    #productsBar .btn {
        width: auto !important;
        display: inline-block !important;;
    }

    #regWelcome {
        line-height: unset;
    }

    .optionTab,
    .html-content_area {
        padding: 10px;
        margin: 0;
    }

    #rememberCardAlias,
    #userPaymentTokenID {
        margin-left: 0;
    }

    #pageHeading,
    #siteHeading,
    .topHeading{
        background-color: #01528c;
        padding: 15px;
        text-align: center;
        color: white;
        margin: 0;
        font-size: 17px;
        font-weight: 500;
    }

    #siteHeading {
        background-color: #1d538a;
    }

    .generalHeading {
        background-color: #658AB1;
        padding: 15px;
        text-align: center;
        color: white;
        margin: 0;
        font-size: 17px;
        font-weight: 500;
    }

    .parentHeading {
        padding: 10px;
        text-align: center;
        background-color: #658AB1;
        width: 100%;
        font-weight: bold;
        color: white;
        margin-bottom: 5px;
    }

    .parentHeading a {
        color: #fff;
    }

    .acctHeadingArea {
        padding: 0
    }

    a.link,
    #helptext,
    #helptext .link,
    .textClass {
        color: #000;
    }

    #html-version_desktop {
        display: none;
    }

    .mm-tab .nav-item {
        margin-top: 5px;
        margin-bottom: 5px;
        margin-right: 5px;
    }

    .nav-tabs .nav-link {
        border-radius: 0;
        font-size: 14px;
    }

    /*
    main.css
     */
    .statementTotalLine > .totalBalance,
    .statementTotalLine > .totalQuota,
    .statementTotalLine > .totalRemainingBalance {
        border-top: 0;
    }

    .statementLine .acctName, .statementLineLocked .acctName {
        width: 100%;
    }

    #mainBodyPattern,
    #mainBody {
        display: block;
        padding: 0;
        background:unset;
    }

    body,
    table.Container,
    #content {
        height: unset;
        padding: 0;
    }

    #mainBody,
    #content,
    #sideBar {
        border: 0;
    }
    
    #hamburger {
        cursor: pointer;
        color: #fff;
        position: absolute;
        top: 15px;
        left: 15px;
        font-size: 16px;
        z-index: 2;
    }

    #html-mobile_nav {
        position: fixed;
        z-index: 999;
        background-color: #fff;
        width: 280px;
        border-right: 1px solid silver;
        height: 100%;
    }

    #html-mobile_nav nav{
        position: relative;
        width: 100%;
        opacity: 1;
    }

    #contentLayer {
        background-color: rgba(0, 0, 0, .5);
        width: 100%;
        height: 100%;
        position: fixed;
    }

    .html-dialog_wrapper {
         width: 100%;
        padding: 0 15px;
    }

    .dialog {
        width: 100%;
    }

    main {
        max-width: unset;
        width: auto;
        margin-left: 0;
        margin-right: 0;
        padding: 10px;
        box-sizing: border-box;
    }

    .mm-tab {
        margin-bottom: 5px;
    }

    .mm-tab .nav-item {
        display: block;
        width: 100%;
        text-align: center;
        margin: 2px;
    }
}


/* custom settings via MMAdmin */
#html-custom_site_header {background-color:#ffffff }
#html-custom_site_footer {background-color:#ffffff }
.okButtonStyle {background-color:#30bf56 !important;color:#ffffff !important }
.okButtonStyle:hover {background-color:#30bf56 !important }
.badButtonStyle,.btn-danger {background-color:#ef463a !important;color:#ffffff !important }
.badButtonStyle:hover,.btn-danger:hover {background-color:#ef463a !important }
.btn-primary {background-color:#135c8c !important;color:#ffffff !important }
.btn-primary:hover {background-color:#135c8c !important }
.btn-secondary {background-color:#4a81f2 !important;color:#ffffff !important }
.btn-secondary:hover {background-color:#4a81f2 !important }
#html-product_bar,#regWelcome {background-color:#01528c;color:#ffffff }
#html-product_bar .btn-primary {background-color:#002744 !important;color:#ffffff !important }
#html-product_bar .btn-primary.active,#sideBar .sidebarItem .link.active {background-color:#002744 !important }
.generalHeading,#pageHeading {background-color:#7693ab;color:#ffffff }
.mm-tab .nav-link,.mm-tab .nav-link:hover {background-color:#dfdfdf;color:#676767 }
.mm-tab .nav-link.active {background-color:#01528c;color:#ffffff }
.ui-dialog .ui-dialog-titlebar {background-color:#1d538a !important;color:#ffffff !important }
.pin_dialog_style .cancelButtonStyle, .pin_dialog_style .okButtonStyle {background-color:#1d538a !important;color:#ffffff !important }
.pin_dialog_style .cancelButtonStyle:hover, .pin_dialog_style .okButtonStyle:hover {background-color:#1d538a !important }
.ui-dialog .ui-dialog-titlebar-close {background-color:#1d538a !important;color:#ffffff !important }
a[href]:not(.btn) {color:#2e6ba1 }
body .mm-tab_block, body:not([data-page=login]) .html-content_area {background-color: #ffffff !important }
body[data-tab_content=yes] .html-content_area {background-color: transparent !important }
