*{
    font-family: inherit !important;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}
html{
    background-color: transparent;
    font-size: .625em !important;
}
html[class*="fontawesome"]{
    font-size: .625em !important;
}

body.login-page{
    min-height: 100%;
    background-color: #444 !important;
    font-size: 1.4rem !important;
    color: #555 !important;
}
body {
    background-color: #333;
    position: relative;
    font-family: "Open Sans",-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
    overflow-x: hidden;
    overflow-y: visible;
}
body{
   background-image: none;
}
body.cpd-login{
    background-color: #333333 !important;
}

body.bb-login{
    height: inherit !important;
}


/* test and staging bg */
body.wku-test{
    background-image: url(https://app.wku.edu/boilerplate/vendor-themes/blackboard-login/images/test.png) !important;
    background-color: #003300 !important;
    background-size: 150px 150px !important;
}
body.wku-staging{
    background-image: url(https://app.wku.edu/boilerplate/vendor-themes/blackboard-login/images/staging.png) !important;
    background-color: #003366 !important;
    background-size: 150px 150px !important;
}
body.wku-test #background-image,
body.wku-staging #background-image{ 
    display: none; 
}


a:not(.btn){
    color: #b01e24;
}


@media (min-width: 576px){
    body{
        background-size: cover !important;
        background-attachment: fixed !important;
        background-position: center center !important;
    }
    body.bg-1{
        background-image: url('https://app.wku.edu/boilerplate/vendor-themes/blackboard-login/images/1.jpg');
    }
    body.bg-2{
        background-image: url('https://app.wku.edu/boilerplate/vendor-themes/blackboard-login/images/2.jpg');
    }
    body.bg-3{
        background-image: url('https://app.wku.edu/boilerplate/vendor-themes/blackboard-login/images/3.jpg');
    }
    body.bg-4{
        background-image: url('https://app.wku.edu/boilerplate/vendor-themes/blackboard-login/images/4.jpg');
    }
    body.cpd-login{
        background-image: none !important;
    }
}



small, .small{font-size: 1.3rem !important;}

.fa{font-family: FontAwesome !important;}
.fa.fa-wku{font-family: 'wku-icons' !important;}
#background-image{
    position: fixed;
    min-height: 100%;
    min-width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    z-index: 0;
}

#wrapper-content{
    background-color: transparent;
    position: relative;
    /*flex-direction: column;*/
    overflow-x: hidden;
    overflow-y: visible;
}
#wrapper-site{
    overflow-x: hidden;
    overflow-y: visible;
}



/* Cookie Modal */
/* Modal styles load in later, see lightbox plugin */
/* !important everything or make selector more specific */
body div.lb-overlay{
    background-image: none !important;
    background-color: #222 !important;
    opacity: 0.75 !important;
}
.lb-wrapper .lb-content.CookieConsent{
    width: calc(100% - 30px) !important;
    max-width: 800px !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer{
    padding: 0 !important;
    width: 100% !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-title,
.CookieConsent .consent-title{
    background-color: #b01e24 !important;
    color: #fff !important;
    padding: 1.5rem !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-title a, 
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-title a:hover, 
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-title a:focus{
    color: #ffffff !important;
    text-decoration: none !important;
    margin-bottom: 0 !important;
    line-height: 1.5 !important;
    font-size: 1.6rem !important;
}
.consent-message,
#dialog-consent-message{
    padding: 15px !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-message p{
    color: #555555 !important;
    margin-bottom: 10px !important;
    line-height: 1.5 !important;
    font-size: 1.4rem !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-message p:last-child{
    margin-bottom: 0;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-message p a{
    color: #b01e24 !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-message p a:hover,
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-message p a:focus{
    color: #9a1a20 !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-footer{
    padding: 15px !important;
    margin: 0 !important;
    border-top: 1px solid #efefef !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-footer .button-1{
    border-radius: 0 !important;
    font-size: 1.4rem !important;
    background-color: #b01e24 !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
    border: .1rem solid transparent !important;
    padding: .75rem 2.4rem !important;
    font-size: 1.4rem !important;
    -webkit-transition: all .3s ease-in-out !important;
    -o-transition: all .3s ease-in-out !important;
    transition: all .3s ease-in-out !important;
}
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-footer .button-1:hover,
.lb-wrapper .CookieConsent .privacyPolicyContainer .consent-footer .button-1:focus{
    background-color: #9a1a20 !important;
}

/* MFA Modals */
.mfa-modal-container {
    z-index: 2;
    border: 0;
}
.mfa-modal{
    color: #555;
    border: 0;
}

.mfa-verification-modal {
    width: 100% !important;
    max-width: 45rem;
    border: 0;
}

.mfa-modal-title {
    width: 100%;
    height: auto;
    padding: 15px;
    background-color: #b01e24;
    color: white;
}

.mfa-modal-title h1 {
    font-size: 21px;
    line-height: 1.5;
    margin-bottom: 0;
}

.verification-modal-body {
    width: auto;
    max-height: 100%;
    padding: 15px;
}

.modal-footer {
    max-width: 100%;
    height: auto;
    /* gap: 0; */
    background: inherit;
}

.verification-modal-body-description .custom-label {
    font-weight: 600;
    color: #555;
}

.verification-modal-body-description p {
    font-size: 1.3rem;
    line-height: 1.5;
    color: #666;
    font-style: italic;
}

.modal-button {
    font-weight: normal;
    border: 1px solid transparent;
    border-radius: 0;
    background-color: #b01e24;
    color: #ffffff;
    line-height: 1.4;
    padding: 0.7rem 1.4rem;
    transition: all 0.3s ease-in-out;
}

.modal-button.button-cancel, 
.modal-button.button-back {
    color: #666 !important;
    background-color: #fff !important;
    border-color: #CCC !important;
}
.modal-button.button-cancel:hover, 
.modal-button.button-back:hover,
.modal-button.button-cancel:focus, 
.modal-button.button-back:focus{
    background-color: #b01e24 !important;
    color: #ffffff !important;
    border-color: #b01e24 !important;
}
.modal-button.button-next,
.modal-button.button-done,
.modal-button.button-submit {
    background-color: #b01e24 !important;
    color: #ffffff !important;
    border-color: #b01e24 !important;
}
.modal-button.button-next:hover, 
.modal-button.button-next:focus, 
.modal-button.button-done:hover,
.modal-button.button-done:focus,
.modal-button.button-submit:hover, 
.modal-button.button-submit:focus{
    background-color: #9a1a20 !important;
    color: #ffffff !important;
    border-color: #9a1a20 !important;
}
.verification-input {
    width: 100%;
    max-height: 100%;
    margin: 15px auto 25px auto;
    border: 0;
    gap: 0;
    border-radius: 0;
}
.verification-input input[type=text] {
    /*width: 100%;*/
    max-width: 100%;
    height: auto;
    text-align: center;
    font-family: Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace !important;
    font-size: 28px !important;
    border: 0;
    border-bottom: 2px solid #cccccc;
    width: 17.5rem;
    margin: 0 auto;
    letter-spacing: 0.5rem;
    color: #666;
    padding: 1rem calc(1.2rem - 0.5rem) 1rem 1.2rem !important;
}
.verification-modal-body-description {
    width: auto;
    max-height: 100%;
    margin: 0;
}
.verification-input input[type=text]:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(176,30,36,.5);
    border-color: #b01e24;
}


#top{
    margin: 3rem auto;
    width: 90%;
    max-width: 99.2rem;
/*    padding-bottom: 7rem;*/
    flex-direction: column;
}
#wku-logo, #cpd-logo{
    margin: 0 auto;
    width: 30rem;
}
#cpd-logo{
    width: 25rem;
}
.message-box{
    display: none;
    font-size: 1.3rem;
    padding: 2rem 1.5rem;
}
.message-box:not(.alert-danger):not(.alert-info):not(.alert-warning):not(.alert-success){
    padding-left: 2rem;
    background-color: rgba(255,255,255,0.80);
}
.message-box:not(.alert){
    background-color: rgba(255,255,255,0.80);
}
.alert a{font-weight: 600; text-decoration: underline;}
.alert.alert-danger a{color: #843534;}
.alert.alert-info a{color: #245269;}
.alert.alert-warning a{color: #66512c;}
.alert.alert-success a{color: #2b542c;}
.alert.alert-icon:before{
    top: 2rem;
}
#bb_notify_body p:last-child{
    margin-bottom: 0;
}


.bb-white-box{
    padding: 3.5rem !important;
    background-color: rgba(255,255,255,0.80);
}
@media (max-width: 576px){
    .bb-white-box{
        padding: 2rem !important;
    }
}

.wku-bb-shadow{
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.3));
}

#login-box{ 
    max-width: 50rem; 
    margin: 0 auto;
}
#login-box noscript div.receipt.bad.editmode.alert-box.alert{
    /* Hide BB noscript message - redundant with boilerplate alert */
    display: none;
}
#loginRedirectProviders{display: none;}
#bottom{
    height: 100%;
}

#forgot, .btn-gray {
    background-color: #777;
    border-color: #777;
    color: #fff;
}

#forgot:hover,
#forgot:hover,
#forgot:focus,
.btn-gray:hover,
.btn-gray:focus {
    background-color: #555555;
    border-color: #555555;
    outline-color: #777;
}

@media (max-width: 576px){
    #login-box, .message-box, #bottom{
        padding: 1.5rem;
    }
    .alert.alert-icon:before{
        top: 1.5rem;
    }
    #loginErrorMessage{
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    .message-box:not(.alert-danger):not(.alert-info):not(.alert-warning):not(.alert-success){
        padding-left: 1.5;
    }
    #wku-logo{
        width: 25rem;
    }
    #cpd-logo{
        width: 25rem;
    }
    #top{
        padding-bottom: 4rem;
    }
}
/*  Login Form  */
.form-control:not(#entry-login){
    background-image: none;
    padding-left: 1.2rem !important;
    line-height: 1.4;
    border-color: rgb(255,255,255);
    background-color: rgb(255,255,255);
}
#loginFormList{
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    padding: 0;
}
#loginFormList input{
    max-width: 100%;
}
#loginFormList li{
    list-style: none;
}
#loginFormList li.clearfix{
    /*float: left;*/
    /*width: 40%;*/
    padding-left: 1.5rem;
    padding-right: 1.5rem;

}
#loginFormList li.clearfix.form-group .form-control-feedback{
    margin-bottom: 0;
}
label.sr-only+input[type=password].form-control:required, label.sr-only+input[type=text].form-control:required{
    background-image: none;
}
.form-group.has-danger label.sr-only+input[type=password]#password.form-control-danger.form-control:required,
.form-group.has-danger label.sr-only+input[type=text]#user_id.form-control-danger.form-control:required{
    background-image: url(data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fâ€¦%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E);
}




.login-page .has-danger .form-control{
    border-color: #c9302c !important;
}
/*#loginFormList li.clearfix:nth-child(3){
    width: 20%;
}*/
/*@media (max-width: 768px){
    #loginFormList li.clearfix{
         width: 50%;
         margin-bottom: 2rem;
    }
    #loginFormList li.clearfix:nth-child(3){
        width: 33.333333%;
        margin-left: 33.333333%;
        margin-bottom: 0;
    }
}*/

    #loginFormList li.clearfix{
         width: 100%;
    }
    #loginFormList li.clearfix:nth-child(3){
        width: 100%;
        margin-left: 0;
    }

#loginFormList:after{
    display: block;
    content: "";
    clear: both;
}
 #loginFormList input:not([type="submit"]).form-control:focus{
    background-color: rgb(255,255,255);
}

/*hide forgot link*/
 #loginFormList li.clearfix:nth-child(4){display: none;}
/*.forgot{display: none;}*/

input#password, input#user_id{width: 100%;}
input[type="submit"],
input[type="submit"]#entry-login{
    width: 100%;
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: .1rem solid transparent;
    padding: 1rem 3.2rem;
    font-size: 1.6rem;
    color: #fff;
    background-color: #b01e24;
    border-color: #b01e24;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    appearance: none;
    -webkit-appearance: none;
}
input[type="submit"]:hover,
input[type="submit"]#entry-login:hover {
    color: #fff;
    background-color: #84171b;
    border-color: #7c1519;
    cursor: pointer;
}
input[type="submit"]:focus,
input[type="submit"]#entry-login:focus {
    -webkit-box-shadow: 0 0 0 2px rgba(176,30,36,.5);
    box-shadow: 0 0 0 2px rgba(176,30,36,.5);
}
input[type="submit"]:active,
input[type="submit"]#entry-login:active {
    color: #fff;
    background-color: #84171b;
    background-image: none;
    border-color: #7c1519;
}

input[type="text"], input[type="password"], select {
    border-radius: 0 !important;
    padding: 1rem 1.2rem !important;
    font-size: 1.6rem !important;
}

.cpd-login .form-text.input-help{
    color: #555;
}
/* Lang, Font, Contrast */
#loginLang{display: none;}
#loginLang, #loginHeader{
    z-index: 1;
}
#loginLang, 
#loginLang form, 
#loginLang h2, 
#loginHeader ul li.font-size,
#loginHeader ul li.contrast, 
#loginHeader ul li.font-size a, 
#loginHeader ul li.contrast a{
    width: 3.6rem;
    height: 3.6rem;
    border-radius: 0;
}
#loginLang form:hover{
    cursor: pointer;
}
#loginHeader ul li.font-size:before, #loginHeader ul li.contrast:before{
    top: calc(50% - 0.9rem);
}
#loginLang h2{
    text-align: center;
    position: relative;
}
#loginLang h2:before{
    position: absolute;
    left: 0; right: 0;
    top: calc(50% - 0.9rem);
}


/* Login Alert Message */
#loginErrorMessage{
    position: relative;
    background-color: #f2dede;
    border-color: #ebcccc;
    color: #a94442;
    padding: 1.5rem 1.5rem;
    padding-left: 5.2rem;
    margin-bottom: 1.5rem;
    border: .1rem solid transparent;
    font-weight: 600;
}
#loginErrorMessage:before {
    content: '';
    -webkit-background-size: 2.2rem 2.2rem;
    background-size: 2.2rem 2.2rem;
    font-size: 2.2rem;
    line-height: 1;
    width: 2.2rem;
    height: 2.2rem;
    text-align: center;
    position: absolute;
    left: 1.5rem;
    top: 1.5rem;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3e%3cpath fill='%23a94442' d='M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z'/%3e%3c/svg%3e");
}



/* Announcements Block - <loginUI:systemAnnouncements> */
#loginAnnouncements{
    padding: 0;
    margin: 0;
}

#loginAnnouncements h3{
    /* .sr-only copy */
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}
#loginAnnouncements ul{
    width: 100%;
    padding: 0;
    list-style-type: none;
}
#loginAnnouncements ul li{
    /* .alert.alert-icon.alert-warning copy*/
    position: relative;
    background-color: #fcf8e3;
    border-color: #faf2cc;
    color: #8a6d3b;
    padding: 1.5rem 1.5rem;
    padding-left: 5.2rem;
    margin-bottom: 1.5rem;
    border: .1rem solid transparent;
    font-size: initial;
    text-align: initial;
}

#loginAnnouncements ul li:after{ display: none; }
#loginAnnouncements ul li:before {
    content: '';
    -webkit-background-size: 2.2rem 2.2rem;
    background-size: 2.2rem 2.2rem;
    font-size: 2.2rem;
    line-height: 1;
    width: 2.2rem;
    height: 2.2rem;
    text-align: center;
    position: absolute;
    left: 1.5rem;
    top: 1.75rem;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3e%3cpath fill='%238a6d3b' d='M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z'/%3e%3c/svg%3e");
    z-index: 1;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow:; none
}

#loginAnnouncements ul li strong:first-child{
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.75rem;
    /* .h3.font-weight-bold */
    font-size: 2.1rem;
    margin-bottom: .75rem;
    font-family: inherit;
    font-weight: 600;
    line-height: 1.25;
    color: inherit;
}

#loginAnnouncements ul li strong+em{
    display: inline-block;
    vertical-align: middle;
    font-weight: 600;
    font-size: 85%;
    text-align: right;
    margin-bottom: .75rem;
}
@media (max-width: 576px){
    #loginAnnouncements ul li strong:first-child{
        margin-bottom: 0.375rem;
    }
    #loginAnnouncements ul li strong:first-child,
    #loginAnnouncements ul li strong+em{
        display: block;
        text-align: left;
        width: 100%;
    }
}

#loginAnnouncements ul li .vtbegenerated > *:last-child{
    margin-bottom: 0;
}

#loginAnnouncements ul li .vtbegenerated{
    line-height: 1.5;
}


#wrapper-footer{z-index: 1;}

