@import "https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700";

body {font-family: 'Poppins', sans-serif; background: #fafafa !important;}
p {font-family: 'Poppins', sans-serif; /*font-size: 1.1em; font-weight: 300; line-height: 1.7em; color: #999;*/}
a, a:hover, a:focus {color: inherit; text-decoration: none; transition: all 0.3s;}
a[data-toggle="collapse"]{position:unset;}

/*      Custom      */
.hidden{display:none;}
.red-asterisk{color:orangered;}
.red-asterisk-hidden{color:orangered; display:none;}
.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}
.loader {
  border: 16px solid #f3f3f3; /* Light grey */
  border-top: 16px solid #3498db; /* Blue */
  border-radius: 50%;
  width: 120px;
  height: 120px;
  animation: spin 2s linear infinite;
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}



/*      Main        */
.wrapper {display:flex; align-items:stretch; min-height:100vh;/*perspective: 1500px;*/}
.mobile-form{width:100%; margin:50px auto;}
.content {/*min-height:100vh;*/ transition: all 0.3s;}
.dpLogo{display:block; height:auto; margin-left:auto; margin-right:auto; margin-top:40px; margin-bottom:20px; pointer-events:none}
.container{/*text-align:center;*/ margin:15px auto;}
.card-header{background-color:#7D4075!important; color:white; text-align:center; font-size:21px; font-weight:600; margin: 25px auto; pointer-events:none;}
.form-group input{display:inline-block;}
.required-asterisk{display:inline; color:red; font-weight:500;}
.file-upload-reqs{color:#999; font-size:1em; font-weight:400; margin:5px 0; /*text-align:center;*/}
.info-box{border:2px solid; width:75%; padding:15px 15px 0 15px;}
/*label {min-width:100px; width:300px; max-width:300px; max-height: 25px; float:left; clear:left; text-align:left; padding-right:30px;}*/
.field-label{text-align:left; font-weight:500;}

@media screen and (max-width:768px){
    .dpLogo{margin-top:0;}
}

/*      Navbar     */
/*#welcome-user-logout{position:fixed; right:0; margin-right:15px;}*/
#welcome-user{pointer-events:none; font-size:0.85rem; color:rgba(255,255,255,.5); position:relative; top:8px; right:20px;}
/*#navbar-logout-button{padding-left:0.75rem!important;}  needed to avoid ul ul a{margin-left} style (poor logout button padding) */
.navbar {border:none; border-radius:0; box-shadow:1px 1px 3px rgba(0, 0, 0, 0.1); z-index:11; min-height:50px!important;}
.navbar-btn { box-shadow: none; outline: none !important; border: none;}
.navbar #user{cursor:default;}
.navbar-logo{font-weight:700; letter-spacing:8px; pointer-events:none;}
.navbar-brand{font-weight:700; letter-spacing:8px;}

@media screen and (max-width:992px){
    #welcome-user{display:none;}
}


/*      Sidebar        */
.app-complete-flash-message{color:lime; text-align:center; font-size:.9rem; padding:15px 30px;}
.additional-form-info{font-size:14px; padding-right:40px;}
.additional-form-info li{margin-bottom:7px;}
#main-title-sidebar{font-weight:600;}
#sidebar {min-width:350px; max-width:350px; background-color:#343a40; color:whitesmoke; transition:0.5s linear; margin-top:50px; padding:0 10px 30px;}
#sidebar.active {transform: rotateY(90deg);}
#sidebar .sidebar-header {margin-top:20px; margin-right:20px; background:#343a40;}
/*#sidebar ul.components {padding: 20px 0; border-bottom: 1px solid #47748b;}*/ /* blue line */
#sidebar ul p {color: whitesmoke; padding: 10px; border:solid; border-color: #383838;}
#sidebar ul li a {padding: 10px; font-size: 1.1em; display: block; border-bottom:solid; border-color: #383838;}
#sidebar ul li a:hover {color: #7386D5; background: whitesmoke;}
#sidebar ul li.active > a, a[aria-expanded="true"] {color: whitesmoke; background: #343a40;}

#progress-business{background-color: #607abc!important;}
#progress-personal{background-color:purple!important;}
#progress-questions{background-color:green!important;}

a.download {background:#404040; color:whitesmoke;}
a.article, a.article:hover {background: red !important; color: whitesmoke !important;}

/*a[data-toggle="collapse"] {position: relative;}*/     /*This leaves a small box next to the dropdown buttons, does not affect functionality*/
a[aria-expanded="false"]::before, a[aria-expanded="true"]::before {content: '\e259'; display: block; position: absolute; right: 20px; font-family: 'Glyphicons Halflings'; font-size: 0.6em;}
a[aria-expanded="true"]::before {content: '\e260';}

ul ul a {font-size: 0.9em !important; padding-left: 30px !important; background: #404040;}
ul.CTAs {padding: 20px;}
ul.CTAs a {text-align: center; font-size: 0.9em !important; display: block; border-radius: 5px; margin-bottom: 5px;}
/*
#sidebarCollapse {width: auto;height: auto;background: #f5f5f5;}
#sidebarCollapse span {width: 80%; height: 2px; margin: 0 auto; display: block; background: #555; transition: all 0.8s cubic-bezier(0.810, -0.330, 0.345, 1.375); transition-delay: 0.2s;}
#sidebarCollapse span:first-of-type {transform: rotate(45deg) translate(2px, 2px);}
#sidebarCollapse span:nth-of-type(2) {opacity: 0;}
#sidebarCollapse span:last-of-type {transform: rotate(-45deg) translate(1px, -1px);}
#sidebarCollapse.active span {transform:none; opacity:1; margin:5px auto;}
*/
.client-button-spacing{padding-bottom: 5px; padding-left:5px;}
.client-button-size{max-width:150px; min-width:150px;}


/*      Opening/closing sidebar when in mobile-view     */
/*.menu-button-outer-container{display:none;}
.menu-button-inner-container{display:none;}*/
#menu-button-inner{display:none;}
#menu-button-outer{display:none;}
#sidebar-saving-message{display:none; color:#28a745; font-weight:500; font-size:20px;}

@media screen and (max-width: 768px) {
    #sidebar {margin-left:-350px; transform:rotateY(90deg); transition:0.5s;}
    #sidebar.active {min-width:100vw; margin-left:0; transform:none; overflow-x:none; z-index:10;}
    
    #menu-button-outer{display:block!important; margin-top:20px; margin-left:15px;}
    #menu-button-inner{display:block!important;margin-bottom:20px;}
    
    .mobile-form{width:100vw; margin-left:0;}
    .prevNextButtons button {margin:10px 0 10px 0;}
    
/* unused */
/*    
    #sidebarCollapse span:first-of-type, 
    #sidebarCollapse span:nth-of-type(2), 
    #sidebarCollapse span:last-of-type{transform: none; opacity: 1; margin: 5px auto;}
    #sidebarCollapse.active span {margin: 0 auto;}
    #sidebarCollapse.active span:first-of-type {transform: rotate(45deg) translate(2px, 2px);}
    #sidebarCollapse.active span:nth-of-type(2) {opacity: 0;}
    #sidebarCollapse.active span:last-of-type {transform: rotate(-45deg) translate(1px, -1px);}
*/
/*    .menu-button-outer-container{display:block!important; margin-top:20px; margin-left:15px;}
    .menu-button-inner-container{display:block!important;}*/
    
    /*.form-group{display:block; margin:0;}*/
}




@media screen and (max-width:1200px){
    .mobile-form label{margin-top:1rem;}
}


/************************************************** Specific page styles ***********************************************************************/

/*      ContactInformation      */
.loading-ajax{color:#17a2b8; font-weight:500; font-size:18px;}
.ajax-success-message{color:#28a745; font-weight:500; font-size:18px;}
.ajax-error-message{color:#dc3545; font-weight:500; font-size:18px;}



/*      Registration Page Only      */
#registration-page-wrapper{margin-top:50px;}
#registration-container{max-width:100%;}
#registration-dpLogo{padding-top:20px;}
#registration-card-header{max-width:50%;}
#registration-form-container{max-width:100%; padding-left:30px; padding-right:30px;}
.passwordRequirements{font-size:13px; color:black; line-height:16px; display:inline-block; margin-top:0.5rem; margin-left: 1.5rem; text-align:left;}
#passwordErrorMessage{font-size:15px; color:red; line-height:16px; display:inline-block; text-align:left;}
#recaptcha-box{margin:15px auto;}

@media screen and (max-width:425px){
    #registration-card-header{max-width:100%}
}



/*      Login Page Only             */
#login-page-wrapper{margin-top:50px;}
#login-navbar-DirectPay{pointer-events:none;}
#login-container{max-width:25%;}
#login-dpLogo{padding-top:20px;}
#login-card-header{max-width:100%;}
#login-info{width:100%; margin:0 auto; padding-left:30px; padding-right:30px;}
#login-remember-me label{float:none; clear:none; text-align:center; padding:0; margin:10px; pointer-events:none;}
#login-log-in-button{width:85%; margin:15px auto;}
    .btn-outline-primary{color:#7D4075; border-color:#7D4075;}
    .btn-outline-primary:hover{background-color:#7D4075; border-color:#7D4075;}
#login-reset-password{text-align:center;}
    #login-reset-password:hover{color:#607ABC}
#login-register-page{text-align:center;}
#login-register-page:hover{color:#607ABC}
#login-page-flash-notice{color:green; font-weight:500; margin:10px auto;}
#login-page-flash-error{color:red; font-weight:500; margin:10px auto;}

@media screen and (max-width:1200px){
    #login-container{max-width:50%}
}
@media screen and (max-width:992px){
    #login-container{max-width:50%}
}
@media screen and (max-width:768px){
    #login-container{max-width:75%}
}
@media screen and (max-width:425px){
    #login-container{max-width:100%}
}



/*      Forgot Password Page        */
#forgot-password-container{margin-top:69px; max-width:550px;}
#forgot-password-caption{font-weight:400; color:black;}
#forgot-password-email-address{width:75%; margin:10px auto;}
#forgot-password-submit-button{width:75%; margin:10px auto;}
#forgot-password-flash-notice{color:blue;}
#forgot-password-flash-error{color:red;}
/*#forgot-password-navbar-login-button{color: rgba(255,255,255,.5); margin:15px;}*/



/*      Reset Password Page         */
#reset-password-container{margin-top:69px;max-width:550px; text-align:left;}
#input-user-email{margin:10px auto;}
#input-temp-code{margin:10px auto;}
#input-new-password{margin:10px auto;}
#input-confirm-password{margin:10px auto;}
#reset-password-button{margin:10px auto;}
#reset-password-navbar-login-button{color: rgba(255,255,255,.5); margin:15px;}
#password-reset-flash-notice{font-size:1.1em; font-weight:400; color:blue; margin:5px auto; text-align:center; width:75%}
#password-reset-flash-error{font-size:1.1em; font-weight:400; color:red; margin:5px auto; text-align:center; width:75%}
#form-reset-password{margin:0 auto; width:75%}
#newPasswordErrorMessage{color:red;}



/*      All Fees Page       */
.toggle-section-collapse{font-size:1.75rem; font-weight:600; margin-bottom:.5rem; font-family:inherit; line-height:1.2; color:inherit;}
.down-right-arrow{font-size:1.25rem}
.fee-checkbox-label{font-size:18px;}
.pricing-info{font-weight:500; font-size:1.25rem;}
.all-fees-flash-message{color:red; font-weight:500; text-align:center; margin:20px 0;}



/*      Application Manager         */
#application-manager-navbar{height:50px!important;}
#application-manager-welcome-user{pointer-events:none; font-size:1rem; color:rgba(255,255,255,.5); position:relative; top:8px; right:20px;}
#application-manager-container{text-align:left; max-width:100%;}
#application-manager-title{margin:60px auto 15px auto;}
#search{display:inline;}
#search-box{width:350px; margin-left:5px; margin-right:5px; display:inline;}
#submit-button{margin:0 1px;}
#reset-button{margin:0 1px;}
#search-select-dropdown{max-width:150px;}
#app-manager-paginator{display:block; text-align:center; color:black;}
/*.pagination{display:block; text-align:center; color:black;}*/



/*      Client App Manager          */
#client-app-manager-navbar{height:50px!important;}
#client-app-manager-welcome-user{pointer-events:none; font-size:1rem; color:rgba(255,255,255,.5); position:relative; top:8px; right:20px;}
#client-app-manager-container{text-align:left; max-width:100%;}
#client-app-manager-title{margin:60px auto 15px auto;}
.app-manager-go-to-app{font-weight:500px;}
.app-manager-go-to-app:visited{text-decoration:underline;}


/*      Contact Info        */
.contact-info-flash-message{color:red; font-weight:600; margin:25px;}


/*      General Business Info       */
#proof-of-corporation-image-thumbnail{width:100px; height:auto;}
#remove-POC-image{margin-left:30px; margin-top:30px;}


/*      Virtual Info        */
#virtual-information-orders-flash-message{color:red; font-weight:500; text-align:center; margin:20px 0;}
#virtual-information-billed-flash-message{color:red; font-weight:500; text-align:center; margin:20px 0;}

/*      Outsourcing and Target Market       */
#target-market-flash-message{color:red; font-weight:500; text-align:center; margin:20px 0;}


/*      Signatures Page Only        */
#email-signatures-other-flash-message{color:green; font-size:18px; font-weight:500; text-align:center; margin:20px 0;}
.sig-terms{background-color:white; border:1px solid; height:350px; resize:both; overflow:auto; padding:15px 25px;}
.sigPad {margin: 0;padding: 0;}
/*#signature_form_Additional_Card_Types{margin-top: 40px; margin-left: -300px; width: 700px; height: 200px;}
#signature_form_Authorizations_and_Representations {margin-top: 40px; margin-left: -300px; width: 700px; height: 200px;}
#signature_form_Personal_Guarantee{margin-top:40px; margin-left:-300px; width:700px; height:200px;}
#signature_form_PCI_Compliance{margin-top:40px; margin-left:-300px; width:700px; height:200px;}*/
.sigPad input {margin: 0; padding: 0.2em 0; width: 198px; border: 1px solid #b0879f; font-size: 1em;}
/*
#checkBoxContainer{position:relative; margin:25px 10px;}
    #checkBoxContainer .form-check{padding-left:0; line-height: 18px;}
    #checkBoxContainer .form-check-input{margin-left:0;}
    #checkBoxContainer .form-check-label{display:inline; font-weight:600; font-size:14px; text-align:center; padding-left:0;}
#saveSigsContainer{position:relative; margin:25px auto;}
    #saveSigs{float:right;}
*/

.sigPad input.error {border-color: #f33;}
.sig {margin-bottom: 25px;}

.sigNav {display: none;	height: 2.25em;	margin: 0; padding: 0; position: relative; list-style-type: none; list-style: none;}
.sigNav a,
.sigNav a:link,
.sigNav a:visited {display: block; margin: 0; padding: 0 0.6em; font-weight: bold; line-height: 2.25em;}
.sigNav a.current,
.sigNav a.current:link,
.sigNav a.current:visited {background-color: #b0879f; color: #fff; text-decoration: none; border-top-left-radius: 8px; border-top-right-radius: 8px; 
                        -moz-border-radius-topleft: 8px; -moz-border-radius-topright: 8px; -webkit-border-top-left-radius: 8px; -webkit-border-top-right-radius: 8px;}
.sigNav .clearButton {bottom: 0.2em; display: none; position: absolute; font-size: 0.75em; line-height: 1.375;}

.sigWrapper canvas{border: 1px solid #737373;}
.pad {position: relative; border:1px solid #000000; cursor: url('https://application.directpayinc.com/pen.cur') 8 8, crosshair;}
.current .pad{cursor: url('https://application.directpayinc.com/pen.cur') 8 8, crosshair;}


/*      Signature2 Page Only        */
.info-textbox{border:2px solid; overflow-y:scroll; height:25rem; padding:15px;}



/*      History Page        */
#historyContainer{width:75%; margin:0 auto;}


/*      Referral Link Generator Page        */
#referral-link-container{max-width:40rem;}
#referral-link-info{font-size:1.2rem}
#generate-referral-link{}
#generated-referral-link{text-align:center; border:2px solid; padding:5px; margin:25px auto;}


/*      Business Address Only        */
#sameAddressCheckBoxLabel{font-size:14px; font-weight:600;}


/*      Error Page      */
.error-page-message{text-align:center; font-size:75px; color:red}







/*      Previous/Next buttons       */
.prevNextButtons {text-align:center;}
.prevNextButtons button{display:inline; margin:10px 7px;}
