@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@300;400;500;600;700&display=swap');

/* Global styling */
*,*:focus,*:hover{
    outline:none;
}

html, body {
  height: 100%;
  margin: 0;
  background-color: transparent;
  font-family: 'Work Sans', sans-serif !important;
}

body{
    color: #000000;
}

form{
    margin-block-end: 0px;
}

#page{
    min-height: 100%;
    margin-bottom: -60px;
}

/* cookies consent pop up */
.cc-color-override--1608664607.cc-window {
    border: 1px solid #2f3379!important;
    color: #2f3379!important;
    background-color: white!important;
}
.cc-color-override--1608664607 .cc-btn {
    color: rgb(255, 255, 255);
    border-color: transparent;
    background-color:  #2f3379!important;
}
.cc-floating.cc-theme-classic {
    border-radius: 15px!important;
}
.cc-floating.cc-type-info.cc-theme-classic .cc-btn {
    text-decoration: none!important;
    border-radius: 50px!important;
}
.cc-floating .cc-message {
    color: #000000!important;
}
.cc-link,
.cc-link:visited,
.cc-link:focus,
.cc-link:active,
.cc-link:hover {
    color: #2f3379 !important;
}

footer, .push {
  height: 60px;
}

h1, h2, h3, h4, h5, p, p strong, a, li, label, .error, span{
    font-family: 'Work Sans', sans-serif !important;
}

.hidden{
    display: none;
}

.error{
    color: #ff0000;
}

.relativePosition{
    position: relative;
}

.logo-print{
    display: none;
}

.yellowText{
    color: #FFCB05;
}

h1 .yellowText{
    font-weight: 600;
}

.whiteBg{
    background-color: #ffffff;
}

.lightBlueBg{
    background-color: #d1ddfe;
}

.darkBlueBg{
    background-color: #2f3379;
}

.lightGreyBg{
    background-color: #f5f5f5;
}

.btn{
    padding: 10px 20px;       
    border-radius: 30px;    
    font-size: 13px;
    font-weight: 600;
}

.modal{
    background-color: rgba(0, 0, 0, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
    background-color: #d9d9d9;
    color: rgba(0, 0, 0, 0.3);
    border-color: #d9d9d9;
}

.yellowBtn{
    background-color: #FFCB05;
    color: #292F7C;
    border: 1px solid transparent;
}

.yellowBtn:hover, .yellowBtn:focus{
    background-color: #ddaf08;
    color: #292F7C;
    text-decoration: none !important;
}

.blueBtn{
    background-color: #3942B0;
    color: #ffffff;
    border: 1px solid transparent;
}

.blueBtn:hover, .blueBtn:focus{
    background-color: #d1ddfe;
    color: #29307C;
}

.lightBlueBtn{
    background-color: #d1ddfe;
    color: #292F7C;
    border: 1px solid transparent;
}

.lightBlueBtn:hover, .lightBlueBtn:focus{
    background-color: #aec1fe;
    color: #292F7C;
}

.darkBlueBtn{
    background-color: #2f3379;
    color: #ffffff;
    border: 1px solid transparent;
}

.darkBlueBtn:hover, .darkBlueBtn:focus{
    background-color: #ffffff;
    color: #292F7C;
}

.whiteBtn{
    background-color: #ffffff;
    color: #292F7C;
}

.whiteBtn:hover, .whiteBtn:focus{
    background-color: #d1ddfe;
    color: #292F7C;
}

.greyText{
    color: rgb(0,0,0,0.7);
}

.greenText{
    color: #3C763D;
}

.orangeText{
    color: #FF6E00;
}

.redText{
    color: #FF0000;
}

.italicText{
    font-style: italic;
}

.grecaptcha-badge{
    bottom: 100px !important;
}

.minHeight-create{
    min-height: 589px;
}

@media screen and (max-width: 824px) {
    .minHeight-create{
    min-height: 1500px;
    }
}

.minHeight-edit{
    min-height: 405px;
}

@media screen and (max-width: 824px) {
    .minHeight-edit{
    min-height: 1300px;
    }
}

.nnetAlert{
    margin: 0;
    text-align: center;
    font-family: 'Work Sans', sans-serif;
    background-color: #FDEFEE;
    color: #D32821;
    position: relative;
    padding: 1rem 1rem;
    border: 1px solid transparent;
    border-bottom: 2px solid #D32821;
}

.nnetAlert .closeBanner{
    margin-left: 10px;
}

.no-banner-message-text.registrationSucceeded,
.banner-message-text.registrationSucceeded{
    color: #178037;
    border: 1px solid #178037;
    background-color: #E3FAEA;
    padding: 10px 20px;
    margin-bottom: 30px;
}

input{
    color: #000000;
    border: 1px solid #D4D4D4;
    font-family: 'Work Sans', sans-serif;
}

input:focus{
    color: #000000;
    border: 1px solid #292F7C;
}

input:placeholder,
input::placeholder, 
input::-webkit-input-placeholder,
input::-moz-placeholder {
    color: rgb(0,0,0,0.3);
}

.inputValidationError input{
    border: 1px solid #D32821 !important;
}

select{
    font-family: 'Work Sans', sans-serif;
}

select option{
    font-family: 'Work Sans', sans-serif;
    padding: 10px 20px;
}

select option:hover,
select option:focus,
select option:checked{
    background-color: #CEDEFF;
    color: #292F7C;
}

select:-internal-list-box:focus option:checked:hover{
    background-color: #CEDEFF;
    color: #292F7C;
}

/* Header styling */
header{
    background-color: #292f7c;
    padding: 25px 20px;
    margin-bottom: -1px;
}

header .site-logo{
    vertical-align: middle;
}

header .site-logo .logo{
    width: 176px;
    height: auto;
}

header .topMenu{
    float: right;
}

header .topMenu ul{
    display: inline-block;
    padding-left: 0px;
}

header .topMenu div{
    display: inline-block;
}

header .topMenu .nav-item{
    list-style: none;
    display: inline-block;
}

header .topMenu .nav-item a{
    font-size: 16px;
    font-weight: 400;
    color: #ffffff;
    margin-right: 20px;
    text-decoration: none;
}

header .topMenu .nav-item a:hover,
header .topMenu .nav-item a:focus{
    text-decoration: underline;
}

header .topMenu .authWidget .nav-item:last-child a{
    margin-right: 0px;
}

header .topMenu .authWidget .nav-item .yellowBtn{
    color: #292F7C;
    font-size: 16px;
    font-weight: 600;
}

header .topMenu .authWidget .nav-item .nav-link{
    padding: 0px;
}

header .topMenu .nav-item .dropdown-toggle::after{
    display: none;
}

header .topMenu .nav-item .dropdown-menu{
    display: none;
}

header .topMenu .nav-item .dropdown-menu.show{
    display: block;
}

header .topMenu .nav-item .dropdown-item{
    color: #292F7C;
}

header .topMenu .nav-item .dropdown-item.active, 
header .topMenu .nav-item .dropdown-item:active{
    background-color: #e9ecef;
}

.navbar{
    display: block;
    border-bottom: 1px solid #A3A1A4;
    padding: 20px 25px 20px 0px;
}

.navbar .nav-item{
    display: inline-block;
    list-style: none;
    margin-right: 50px;
}

.navbar .nav-item:last-child{
    margin-right: 0px;
}

.navbar .nav-item a{
    font-size: 16px;
    font-weight: 400;
    color: #292F7C;
    text-decoration: none;
    padding-bottom: 18px;
}

.navbar .nav-item a:hover{
    border-bottom: 5px solid #FFCB05;    
}

.navbar .nav-item.currentLi a{
    font-size: 16px;
    font-weight: 600;
    border-bottom: 5px solid #FFCB05;
}

.pageBanner{
    background-color: #292f7c;
    padding: 45px 0px 20px;
}


/* Main content styling */
.mainContent{
    padding: 25px;
}


/* My Bookshelf styling */
#bookshelf .banner-message{
    display: none !important;
}

#bookshelf .mainContent{
    padding: 25px 5px;
}

#bookshelf h1{
    font-size: 50px;
    font-weight: 300;
    color: #ffffff;
}

#bookshelf .mainContent .entitlementsArea{
    padding: 0px 25px;
}

#bookshelf .mainContent .entitlementsArea h2{
    font-size: 24px;
}

#bookshelf .mainContent .entitlementsArea .requestTitleCon,
#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon .formRow{
    position: relative;
    width: 100%;
    max-width: 700px;
}

#bookshelf .mainContent .entitlementsArea .requestTitleCon .fa-magnifying-glass,
#bookshelf .mainContent .entitlementsArea .requestTitleCon .fa-xmark{
    position: absolute;
    top: 64px;
    right: 20px;
    cursor: pointer; 
    color: #292F7C;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .shelfSecTtitle,
#bookshelf .mainContent .entitlementsArea .entitlementSelector .book-search,
#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon .consumeCode{
    display: block;
    width: 100%;
    margin-bottom: 25px;
    font-family: 'Work Sans', sans-serif !important;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .shelfSecTtitle a{
    color: #292F7C;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .book-search .book-input,
#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon .consumeCode{
    width: 100%;
    max-width: 700px;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid #d4d4d4;
    color: rgb(0,0,0,0.3);
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .book-search .book-input:focus,
#bookshelf .mainContent .entitlementsArea .entitlementSelector .book-search .rcbFocused .book-input,
#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon .consumeCode:focus{
    border: 1px solid #292F7C; 
    color: #000000;
}

.rcbSlide .bookshelfLiveSearch .rcbScroll .rcbList{
    max-height: 350px;
    overflow-y: auto;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon .consumeCode{
    display: inline-block;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon span{
    position: absolute;
    top: 10px;
    right: 20px;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon span:hover,
#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon span:focus{
    cursor: pointer;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .consumeAccessCodeCon span#accesscode-error-message{
    display: block;
    margin-left: 0px;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .helplnk{
    margin: 10px 0px 20px;
}

#bookshelf .mainContent .entitlementsArea .entitlementSelector .helplnk a{
    color: #292F7C;
}

/* Bookshelf live search */
.rcbSlide{
    position: relative;
}

.rcbSlide .no-results{
    margin-top: 10px;
}

.rcbSlide .rcbList .rcbDisabled{
    padding: 0px 20px 10px;
}

.rcbList li{
    padding: 10px 20px;
    color: #000000;
}

.rcbList li.rcbHovered{
    background-color: #CEDEFF;
    color: #292F7C;
    font-weight: 500;
}

.rcbSlide .bookshelfLiveSearch{
    position: absolute;
    top: -75px !important;
    left: 0;
}

.rcbSlide .bookshelfLiveSearch .rcbList{
    background-color: #ffffff;
    border: 1px solid #292F7C;
    border-radius: 20px;
    padding-left: 0px;
    padding-top: 20px;
}

.rcbSlide .bookshelfLiveSearch .rcbList li{
    list-style: none;
    margin-bottom: 10px;
}

.rcbSlide .bookshelfLiveSearch .rcbList li.rcbHovered .bookTitleSearchItem,
.rcbSlide .bookshelfLiveSearch .rcbList li .bookTitleSearchItem:hover{
    background-color: #CEDEFF;
    color: #292F7C;
    font-weight: 500;
}

.rcbSlide .bookshelfLiveSearch .rcbList li .bookTitleSearchItem{
    display: block;
    width: 100%;
    padding: 20px;
}

.rcbSlide .bookshelfLiveSearch .rcbList li .bookTitleSearchItem tr:hover,
.rcbSlide .bookshelfLiveSearch .rcbList li .bookTitleSearchItem tr:focus{
    background-color: #CEDEFF;
}

.rcbSlide .bookshelfLiveSearch .rcbList li .bookTitleSearchItem tr td:first-child{
    width: 62px;
}

.rcbSlide .bookshelfLiveSearch .rcbList li .bookTitleSearchItem tr td:last-child{
    width: calc(100% - 63px);
}

.rcbSlide .bookshelfLiveSearch .rcbList li .bookTitleSearchItem tr img{
    margin-right: 10px;
    border-radius: 10px;
}

/* Bookshelf books styling */
#bookshelf .bookshelf{
    display: flex;
    flex-flow: row wrap;
}

#bookshelf .bookshelf .slideUpBlock{
    position: relative;
    flex: 0 1 calc(20% - 40px);
    margin: 0px 20px 40px;
    padding: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#bookshelf .bookshelf .slideUpBlock img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
    border: 1px solid #D4D4D4;
}

#bookshelf .bookshelf .slideUpBlock .slideUpBlockOverlay{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgb(0 0 0 / 80%);
    overflow: hidden;
    width: 100%;
    height: 0;
    transition: .5s ease;    
}

#bookshelf .bookshelf .slideUpBlock:hover .slideUpBlockOverlay{
    height: 100%;
    border-radius: 20px;
}

#bookshelf .bookshelf .slideUpBlock .slideUpBlockOverlay .slideUpBlockButtons{
    padding: 40px 20px;
    text-align: center;
}

#bookshelf .bookshelf .slideUpBlock .slideUpBlockOverlay .slideUpBlockButtons a{
    display: block;
    margin-bottom: 10px;
}

#bookshelf .bookshelf .slideUpBlock .slideUpBlockOverlay .slideUpBlockButtons .book-item-bottom img{
    border: 0px none;
}

#bookshelf .bookshelf .slideUpBlock .slideUpBlockOverlay .slideUpBlockButtons .book-item-bottom:hover,
#bookshelf .bookshelf .slideUpBlock .slideUpBlockOverlay .slideUpBlockButtons .book-item-bottom:focus{
    color: #ffffff;
}

#bookshelf .bookshelf .slideUpBlock .slideUpBlockOverlay .slideUpBlockButtons .book-item-bottom img{
    width: 54px;
}

/* Homepage styling */
#homepage h1{
    font-size: 50px;
    font-weight: 300;
    color: #ffffff;
    margin-bottom: -1px;
    text-align: center;
}

#homepage h2{
    font-size: 30px;
    font-weight: 300;
    color: #ffffff;
    padding: 0px 0px 30px;
    margin-bottom: 0px;
    text-align: center;
}

#homepage h2 strong{
    font-style: italic;
    font-weight: 500;
}

#homepage .mainContent{
    padding: 0px;
}

#homepage .mainContent .findResources{
    padding: 50px 0px;
    text-align: center;
}

#homepage .mainContent .findResources p{
    font-size: 30px;
    font-weight: 400;
    color: #292F7C;
}

#homepage .mainContent .findResources #codeInput{
    display: inline-block;
    width: 581px;
    padding: 10px 15px;
    border: 0px none;
    border-radius: 20px;
    font-family: 'Work Sans', sans-serif;
    font-style: italic;
}

#homepage .mainContent .findResources .arrowBtn{
    display: inline-block;
    margin-left: -35px;
    color: #292F7C;
}

#homepage .mainContent .findResources .arrowBtn:hover,
#homepage .mainContent .findResources .arrowBtn:focus{
    cursor: pointer;
}

#homepage .mainContent .introcon{
    padding: 50px 0px;
    text-align: center;
}

#homepage .mainContent .introcon .img1boox,
#homepage .mainContent .introcon .vidboox{
    display: inline-block;
    margin-right: 20px;
}

#homepage .mainContent .introcon img{
    border-radius: 20px
}

#homepage .mainContent .introcon .img1boox:last-child{
    margin-right: 0px;
}

#homepage .mainContent .st4s-badge{
    padding: 50px 0px;
}

#homepage .mainContent .st4s-badge .st4s-badge-image-link{
    display: inline-block;
    width: 20%;
    vertical-align: middle;
    text-align: right;
}

#homepage .mainContent .st4s-badge .st4s-badge-image-link img{
    width: 110px;
}

#homepage .mainContent .st4s-badge .st4s-badge-text{
    display: inline-block;
    width: 79%;
    vertical-align: middle;
    padding-left: 24px;
}

#homepage .mainContent .st4s-badge .st4s-badge-text p{
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: 0;
}

/* Subpage styling */
#subpage #pageTitleWithBreadcrumbs .navBreadcrumb{
    display: none;
}

#subpage h1{
    font-size: 50px;
    font-weight: 300;
    color: #ffffff;
}

#subpage h2{
    font-size: 24px;
    font-weight: 600;
    color: #000000;
}

#subpage h2.nnetAlert{
    margin: 0px auto 30px;
    color: #D32821;
}

#subpage p{
    font-size: 16px;
    font-weight: 400;
}

#subpage p a,
#subpage table tr td a{
    color: #292F7C;
}

/* Subpage Bare styling */
#subpageBare{
    background-color: #f5f5f5;
}


/* Login page styling */
.page383, .page383 .push{
    background-color: #f5f5f5;
}

.nelsonNetDashboardLogin{
    margin: 50px auto;
    text-align: center;
    background-color: #ffffff;
    width: 100%;
    max-width: 450px;
    border-radius: 20px;
    padding: 50px 20px;
}

.nelsonNetDashboardLogin h1{
    font-size: 24px;
    font-weight: 600;
    color: #292F7C;
    margin-bottom: 5px;
}

.nelsonNetDashboardLogin h2{
    display: none;
}

.nelsonNetDashboardLogin p{
    font-size: 16px;
    margin-bottom: 0px;
}

.nelsonNetDashboardLogin .form{
    margin-top: 30px;
}

.nelsonNetDashboardLogin .form .no-banner-message-text,
.nelsonNetDashboardLogin .form .banner-message-text{
    text-align: center;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    background-color: #FDEFEE;
    color: #D32821;
    position: relative;
    padding: 1rem 1rem;
    border: 1px solid transparent;
    border-radius: 5px;
    margin-bottom: 30px;
}

.nelsonNetDashboardLogin .form .no-banner-message-text a,
.nelsonNetDashboardLogin .form .banner-message-text a{
    color: #D32821;
}

.nelsonNetDashboardLogin .login-username{
    margin-bottom: 30px;
    position: relative;
}

.nelsonNetDashboardLogin .login-username .fa-xmark{
    position: absolute;
    top: 49px;
    right: 17px;
    color: #292F7C;
    font-size: 16px;
}

.nelsonNetDashboardLogin .login-username .error,
.nelsonNetDashboardLogin .login-password .error{
    display: block;
    margin-top: 10px;
    text-align: left;
}

.nelsonNetDashboardLogin .formRow label,
.nelsonNetDashboardLogin .formRow input.loginFormField {
    display: block;
    text-align: left;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
}

.nelsonNetDashboardLogin .hidden,
.nelsonNetDashboardLogin .formRow label.hidden,
.nelsonNetDashboardLogin .formRow input.hidden{
    display: none !important;
}

.nelsonNetDashboardLogin .formRow label{
    margin-bottom: 10px;
}

.nelsonNetDashboardLogin .formRow input.loginFormField{
    width: 100%;
    border-radius: 50px;
    padding: 10px 20px;
}

.nelsonNetDashboardLogin .formRow input.loginFormField:disabled{
    background-color: #f5f5f5;
}

.nelsonNetDashboardLogin .login-password{
    position: relative;
}

.nelsonNetDashboardLogin .login-password .toggle-password{
    position: absolute;
    top: 44px;
    right: 10px;
    background: transparent none;
    border: 0px none;
    color: #292F7C;
}

.nelsonNetDashboardLogin .login-remember{
    display: inline-block;
    float: left;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    margin: 10px 0px 0px;
}

.nelsonNetDashboardLogin .login-forgot-password{
    display: inline-block;
    float: right;
    margin: 10px 0px 30px;
}

.nelsonNetDashboardLogin .login-username #btnDummyNext{
    position: absolute;
    top: 43px;
    right: 10px;
    background: transparent none;
    border: 0px none;
}

.nelsonNetDashboardLogin .btnLogin{
    display: block;
    background-color: #FFCB05;
    width: 100%;
    border-radius: 50px;
    border: 0px none;
    padding: 10px 20px;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #292F7C;
    margin: 30px 0px 10px;
}

.nelsonNetDashboardLogin .campionButton{
    background-color: #d1ddfe;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #292F7C;
    border-radius: 50px;
}

.nelsonNetDashboardLogin .campionButton:hover, .nelsonNetDashboardLogin .campionButton:focus{
    background-color: #aec1fe;
    color: #292F7C;
}

.nelsonNetDashboardLogin a.showBtnLogin{
    font-size: 16px;
    font-weight: 400;
    color: #292F7C;
    padding: 0px;
    margin: 20px auto 0px;
}

.nelsonNetDashboardLogin .loginFormLink,
.nelsonNetDashboardLogin .forgotDetails{
    font-size: 16px;
    color: #292F7C;
}


/* Forgot password styling */
.page17, .page17 .push{
    background-color: #f5f5f5;
}

.nelsonNetDashboardLogin .forgottenPasswordEmailRow{
    margin-top: 30px;
}

.nelsonNetDashboardLogin .forgottenPasswordEmailRow .infoPanel{
    text-align: left;
    display: block;
    margin-top: 10px;
}

.nelsonNetDashboardLogin .resetPasswordText a{
    color: #292F7C;
    font-weight: 500;
    margin-top: 30px;
    display: block;
    line-height: 1;
}

.nelsonNetDashboardLogin .CheckEmailPanel h2{
    display: block;
    font-size: 24px;
    font-weight: 600;
    color: #292F7C;
    margin-bottom: 30px;
}

.nelsonNetDashboardLogin .CheckEmailPanel img{
    width: 35px;
    margin-bottom: 10px;
}

.nelsonNetDashboardLogin .CheckEmailPanel p.greyText{
    margin-top: 20px;
}

.nelsonNetDashboardLogin .CheckEmailPanel p.greyText a{
    color: #292F7C;
}

.nelsonNetDashboardLogin .resetPasswordRow{
    margin-top: 30px;
}

.nelsonNetDashboardLogin .resetPasswordRow .passwordError{
    display: none;
}

.nelsonNetDashboardLogin .resetPasswordRow .passwordError.error{
    position: relative;
    top: 10px;
}

.nelsonNetDashboardLogin .resetPasswordRow .passwordWrapper{
    margin-bottom: 30px;
    position: relative;
    text-align: left;
}

.nelsonNetDashboardLogin .backToLogin a{
    color: #292F7C;
}

.nelsonNetDashboardLogin .pwSuccessIcon{
    display: block;
    margin: 30px auto 5px;
}

.nelsonNetDashboardLogin #continueAfterReset{
    font-family: "Work Sans", sans-serif;
    font-size: 16px;
    font-weight: 600;
    width: 100%;
    margin-top: 30px;
}


/* Create account styling */
#updateUserDetails{
    margin: 50px auto;
    text-align: center;
    background-color: #ffffff;
    width: 100%;
    max-width: 500px;
    border-radius: 20px;
    padding: 50px 20px;
}

#updateUserDetails h1{
    font-size: 24px;
    font-weight: 600;
    color: #292F7C;
    margin-bottom: 5px;
}

#updateUserDetails .error{
    color: #ff0000!important;
    margin-top: 10px;
}

#updateUserDetails .userdetails-row{
    text-align: left;
    margin-top: 30px;
}

#updateUserDetails .userdetails-row .RadInput{
    width: 100% !important;
}

#updateUserDetails .userdetails-row .formRow{
    margin-bottom: 30px;
}

#updateUserDetails .userdetails-row label{
    display: block;
    margin-bottom: 5px;
}

#updateUserDetails .userdetails-row input[type="text"],
#updateUserDetails .userdetails-row input[type="password"]{
    display: block;
    width: 100%;
    border-radius: 50px;
    padding: 10px 20px;
    text-align: left;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    border: 1px solid #D4D4D4;
    height: auto;
}

#updateUserDetails .userdetails-row input[type="text"]:focus,
#updateUserDetails .userdetails-row input[type="password"]:focus{
    border: 1px solid #292F7C;
}

/* Disabled styling for text and password inputs */
#updateUserDetails .userdetails-row input[type="text"]:disabled,
#updateUserDetails .userdetails-row input[type="password"]:disabled,
#updateUserDetails .filter-button-select:disabled { 
    background-color: #f0f0f0 !important;
    color: #a1a1a1!important; 
    border: 1px solid #dcdcdc!important; 
    cursor: not-allowed; 
    pointer-events: none;
}

#updateUserDetails .userdetails-row input[type="text"].disabled,
#updateUserDetails .userdetails-row input[type="password"].disabled {
    background-color: #f0f0f0!important;
    color: #a1a1a1!important;
    border: 1px solid #dcdcdc!important;
    cursor: not-allowed;
    pointer-events: none;
}


#updateUserDetails .userdetails-row h3,
#updateUserDetails .userdetails-row .offscreen,
#updateUserDetails .userdetails-row .hidden,
#updateUserDetails .userdetails-row .emailHelp,
#updateUserDetails .borderShadow{
    display: none;
}

#updateUserDetails .userdetails-row a{
    color: #292F7C;
}

.salesRepContainer a {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 600;
    color: #292F7C;
    background-color: #FFCB05; 
    text-decoration: none;
    cursor: pointer;
    border: none;
}

#updateUserDetails .userdetails-row .error a{
    color: #ff0000;
}

#updateUserDetails .userdetails-row .role-details{
    margin-top: 30px;
}

#updateUserDetails .userdetails-row .role-details label{
    display: block;
}

#updateUserDetails .userdetails-row .role-details .radioBtn{
    display: inline-block;
    width: 49%;    
}

#updateUserDetails .userdetails-row .role-details .radioBtn label{
    display: inline-block;
}

#updateUserDetails .userdetails-row .role-details .radioBtn input[type="radio"]{
    margin-right: 5px;
}

#updateUserDetails .userdetails-row .account-details{
    margin-top: 20px;
}

#updateUserDetails .userdetails-row .account-details .RadInputDisabled{
    display: none;
}

#updateUserDetails .userdetails-row .account-details .formRow .passwordWrapper{
    position: relative;
}

#updateUserDetails .userdetails-row .account-details .formRow .passwordWrapper .toggle-password{
    position: absolute;
    top: 10px;
    right: 10px;
    background: transparent none;
    border: 0px none;
    color: #292F7C;
}

#updateUserDetails .userdetails-row .account-details .formRow .RadInputDisabled{
    display: block;
}

#updateUserDetails .userdetails-row .account-details .formRow .passwordError{
    margin-top: 10px;
    color: rgb(0,0,0,0.5);
    font-size: 14px;
}

#updateUserDetails .userdetails-row .school-details .formRow{
    position: relative;
}

#updateUserDetails .userdetails-row .school-details .formRow select{
    width: 100%;
    border-radius: 50px;
    padding: 10px 20px;
    font-size: 16px;
    color: #000000;
    appearance: none;
    cursor: pointer;
    background: url('/NelsonNet-X/Templates/img/chevron-down-blue.svg') transparent 96% center no-repeat;
    background-size: 16px;
}

/* Disabled styling for select elements */
#updateUserDetails .userdetails-row .school-details .formRow select:disabled {
    background-color: #f0f0f0!important; 
    color: #a1a1a1!important; 
    border: 1px solid #dcdcdc; 
    cursor: not-allowed;
    background: url(/NelsonNet-X/Templates/img/chevron-down-blue.svg) transparent 96% center no-repeat; 
    background-size: 16px;
    pointer-events: none;
}

#updateUserDetails .userdetails-row .school-details .select2-container .select2-selection--single{
    width: 100%;
    border-radius: 50px;
    padding: 10px 20px;
    font-size: 16px;
    color: #000000;
    border: 1px solid #D4D4D4;
    height: 46px;
}

#updateUserDetails .userdetails-row .school-details .select2-container:not(.select2-container--disabled) .select2-selection--single:focus{
    border: 1px solid #292F7C;
}

#updateUserDetails .userdetails-row .school-details .select2-container .select2-selection--single .select2-selection__rendered{
    padding: 0px;
    line-height: 1 !important;
    margin-top: 5px;
}

.select2-container .select2-dropdown{
    border-radius: 20px;
    padding: 0px;
    background-color: #ffffff;
    border: 1px solid #292F7C;
}

.select2-container .select2-results{
    padding: 0px;
}

.select2-container--default .select2-results>.select2-results__options{
    border-radius: 20px;
}

.select2-container--default .select2-dropdown--below .select2-results>.select2-results__options{
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.select2-container--default .select2-dropdown--above .select2-results>.select2-results__options{
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.select2-container--default .select2-search--dropdown .select2-search__field{
    border: 1px solid #292F7C !important;
    border-radius: 20px;
    padding: 5px 10px;
}

.select2-container--default .select2-results__option--selectable{
    background-color: #ffffff;
    color: #000000;
    padding: 5px 15px;
}

.select2-container--default .select2-results__option--selectable:hover,
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{
    background-color: #CEDEFF !important;
    color: #000000 !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
    background: url(/NelsonNet-X/Templates/img/chevron-down-blue.svg) transparent 96% center no-repeat;
    background-size: 16px;
    right: 4% !important;
    height: 46px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b{
    display: none;
}

#updateUserDetails .userdetails-row .school-details .formRow .noteField{
    margin-top: 10px;
    color: rgb(0,0,0,0.5);
    font-family: 'Work Sans', sans-serif;
    font-size: 14px;
}

#updateUserDetails .userdetails-row .school-details .registerBtn{
    width: 100%;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 600;
}

#updateUserDetails .userdetails-row .school-details .registerBtn:disabled,
#updateUserDetails .userdetails-row .school-details .registerBtn.disabled {
    background-color: #d9d9d9 !important;
    color: rgb(0,0,0,0.3);
}


/* Modals styling */
/* General MindTap Modal styling*/
#modalPage .push{
    height: 0px;
}

#mindtapCoursesModal .modal-dialog{
    max-width: 930px;
}

#mindtapCoursesModal .modal-content{
    border-radius: 20px;
    background: transparent !important;
    box-shadow: none;
}

#mindtapCoursesModal .modal-header{
    background-color: #292F7C;
    padding: 20px;
}

#mindtapCoursesModal .modal-header .modal-title{
    font-size: 24px !important;
    font-weight: 500;
    color: #FFCB05;
}

#mindtapCoursesModal .modal-header .btn-close{
    color: #CEDEFF;
}

#mindtapCoursesModal .modal-body{
    padding: 30px 20px;
    background: white !important;   

}

#mindtapCoursesModal .modal-body .mainContent,
#mindtapCoursesModal .modal-body .mainContent .container{
    padding: 0px;
}

#mindtapCoursesModal .modal-body .leftPanel .book-cover{
    border-radius: 20px;
    width: 100%;
    border: 1px solid #D4D4D4;
}

#mindtapCoursesModal .modal-body .leftPanel .btn{
    margin-top: 15px;
    width: 100%;
    border: 0px none;
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse .col-md-8{
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse{
    background-color: #F5F5F5;
    padding: 15px 0px 20px;
    margin-bottom: 15px;
    border-radius: 10px;
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse h3{
    font-size: 20px;
    font-weight: 500;
    color: #292F7C;
    margin-bottom: 0px;
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse p{
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    margin-bottom: 0;
    line-height: 25px;
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse p strong{
    font-size: 16px;
    font-weight: 500;
    color: #000000;
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse p.greyText{
    color: rgb(0,0,0,0.7);
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse .col-md-4{
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#mindtapCoursesModal .modal-body .rightPanel .mindTapCourse .col-md-4 .btn{
    width: 100%;
    margin: 5px 0px;
}

/* MindTap Student Instruction Modal styling*/
#mindtapStudentInstructionModal .modal-dialog{
    max-width: 930px;
}

#mindtapStudentInstructionModal .modal-content{
    border-radius: 20px;
    background: transparent !important;
    box-shadow: none; 
}

#mindtapStudentInstructionModal .modal-header{
    background-color: #292F7C;
    padding: 20px;
    flex-direction: column;
    align-items: baseline;
}

#mindtapStudentInstructionModal .modal-header .modal-title{
    font-size: 24px !important;
    font-weight: 500;
    color: #FFCB05;
}

#mindtapStudentInstructionModal .modal-header .modal-sub-title{
    display: block;
    font-size: 16px !important;
    font-weight: 400;
    font-style: italic;
    color: #cedeff;
}

#mindtapStudentInstructionModal .modal-header .btn-close{
    color: #CEDEFF;
    position: absolute;
    right: 20px;
    top: 45px;
}

#mindtapStudentInstructionModal .modal-body{
    padding: 30px 20px;
    background: white !important;   

}

#mindtapStudentInstructionModal .modal-body .mainContent,
#mindtapStudentInstructionModal .modal-body .mainContent .container{
    padding: 0px;
}

#mindtapStudentInstructionModal .modal-body p{
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    margin-bottom: 0;
    line-height: 25px;
}

#mindtapStudentInstructionModal .modal-body p:first-child{
    border-bottom: 1px solid #A3A1A4;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

#mindtapStudentInstructionModal .modal-body p strong{
    font-size: 16px;
    font-weight: 500;
    color: #292F7C;
}

#mindtapStudentInstructionModal .modal-body #contentToCopy{
    background-color: #F5F5F5;
    margin-top: 20px;
    padding: 30px 20px;
    border-radius: 10px;
}

#mindtapStudentInstructionModal .modal-body .buttons{
    text-align: right;
}

#mindtapStudentInstructionModal .modal-body .buttons #copyButton{
    margin-top: 30px;
    border-radius: 30px;
    padding: 10px 20px;
    border: 1px solid #292F7C;
}


/* MindTap Create Course Modal styling */
#mindtapCourseManagementModalCreate .modal-dialog{
    max-width: 930px;
}

#mindtapCourseManagementModalCreate .modal-content{
    border-radius: 20px;
    background: transparent !important;
    box-shadow: none; 
}

#mindtapCourseManagementModalCreate .modal-header{
    background-color: #292F7C;
    padding: 20px;
    flex-direction: column;
    align-items: baseline;
}

#mindtapCourseManagementModalCreate .modal-header .modal-title{
    font-size: 24px !important;
    font-weight: 500;
    color: #FFCB05;
}

#mindtapCourseManagementModalCreate .modal-header .modal-sub-title{
    display: block;
    font-size: 16px !important;
    font-weight: 400;
    font-style: italic;
    color: #cedeff;
}

#mindtapCourseManagementModalCreate .modal-header .btn-close{
    color: #CEDEFF;
    position: absolute;
    right: 20px;
    top: 45px;
}

#mindtapCourseManagementModalCreate .modal-body{
    padding: 30px 20px;
    background: white !important;   

}

#mindtapCourseManagementModalCreate .modal-body .mainContent,
#mindtapCourseManagementModalCreate .modal-body .mainContent .container{
    padding: 0px;
}

#mindtapCourseManagementModalCreate .modal-body p{
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    margin-bottom: 0;
    line-height: 25px;
}

#modals .row{
    max-width: 100%;
}

#modals .leftPanel .book-cover{
    border-radius: 20px;
    width: 100%;
    border: 1px solid #D4D4D4;
}

#modals .modals-container #wizardContent .row:first-child{
    border-bottom: 1px solid #a3a1a4;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

#modals .modals-container #wizardContent h3{
    font-size: 20px;
    font-weight: 500;
    color: #292F7C;
}

#modals .modals-container #wizardContent p,
#modals .modals-container #wizardContent .form-check-label,
#modals .modals-container #wizardContent select{
    font-size: 16px;
}

#modals .modals-container #wizardContent b,
#modals .modals-container #wizardContent strong{
    font-weight: 500;
}

#modals .modals-container #wizardContent .form-check input[type="text"]{
    border-radius: 50px;
    padding: 10px 20px;
}

#modals .modals-container #wizardContent select{
    background: url('/NelsonNet-X/Templates/img/chevron-down-blue.svg') transparent 96% center no-repeat;
    background-size: 16px;
    border-radius: 50px;
    padding: 10px 20px;
}

#modals .modals-container #wizardContent select:focus{
    border: 1px solid #292F7C;
    padding: 10px 0px;
    border-radius: 20px;
    box-shadow: none;
}

#modals .modals-container #wizardContent .form-check input[type="text"]:focus{
    border: 1px solid #292F7C;
    box-shadow: none;
}

#modals .modals-container #wizardContent #step3 .input-group-text{
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    padding: 10px 20px;
}

#modals .modals-container #wizardContent #step3 input[type="text"]{
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
    padding: 10px 20px;
}

#modals .modals-container #wizardContent #step3 input[type="text"]:focus{
    border: 1px solid #292F7C;
    box-shadow: none;
}

#modals .modals-container #wizardContent #step3 label{
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 10px;
}

#modals .modals-container #wizardContent #addTeachers #courseTeachers,
#modals .modals-container #wizardContent #addTeachers #addTeacher{
    display: inline-block;
    margin-bottom: 10px;
}

#modals .modals-container #wizardContent #addTeachers #courseTeachers .badge{
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    padding: 5px 10px;
    margin-right: 5px;
    background-color: #CEDEFF;
    border: 1px solid #CEDEFF;
    color: #292F7C;
}

#modals .modals-container #wizardContent #addTeachers #courseTeachers .badge:hover,
#modals .modals-container #wizardContent #addTeachers #courseTeachers .badge:focus{
    background-color: #ffffff;
    color: #292F7C;
}

#modals .modals-container #wizardContent #addTeachers #courseTeachers .badge.teachercreator{
    background-color: #fff;
    border: 1px solid #CEDEFF;
}

#modals .modals-container #wizardContent #addTeachers #courseTeachers .badge.additionalTeacher{
    padding-right: 25px;
}

#modals .modals-container #wizardContent #addTeachers #courseTeachers .badge button{
    top: 4px;
    right: 10px;
    background-color: transparent;
    border: 0px none;
}

#modals .modals-container #wizardContent #addTeachers #courseTeachers .badge button .fa-xmark{
    width: 3.5px;
    color: #292F7C;
}

#modals .modals-container #wizardContent #addTeachers .additionalTeacher{
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    padding: 5px 25px 5px 10px;
    margin-right: 5px;
    background-color: #CEDEFF;
    border: 1px solid #CEDEFF;
    color: #292F7C;
}

#modals .modals-container #wizardContent #addTeachers .additionalTeacher button{
    top: 4px;
    right: 2px;
    background-color: transparent;
    border: 0px none;
}

#modals .modals-container #wizardContent #addTeachers #addTeacher{
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    padding: 5px 10px;
}

#modals .modals-container #wizardContent #addTeachers #addTeacher:hover,
#modals .modals-container #wizardContent #addTeachers #addTeacher:focus{
    cursor: pointer;
}

#modals .modals-container #wizardContent #addTeachers #addTeacher .fa-plus{
    margin-right: 5px;
}

#modals .modals-container #wizardContent #addTeachers #addTeacherInput{
    position: relative;
    margin-bottom: 50px;
}

#modals .modals-container #wizardContent #addTeachers #addTeacherInput input{
    margin-top: 20px;
    padding: 10px 20px;
    border-radius: 50px;
}

#modals .modals-container #wizardContent #addTeachers #addTeacherInput input:focus{
    border: 1px solid #292F7C;
    box-shadow: none;
}

#modals .modals-container #wizardContent #addTeachers #addTeacherInput .plusBtn{
    position: absolute;
    top: 9px;
    right: 10px;
    background: transparent none;
    border: 0px none;
}

#modals .modals-container #wizardContent #addTeachers #addTeacherInput .plusBtn:hover,
#modals .modals-container #wizardContent #addTeachers #addTeacherInput .plusBtn:focus{
    cursor: pointer;
}

#modals .modals-container #wizardContent #addTeachers #addTeacherInput .error-message{
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    color: #FF0000;
    margin: 5px 0 0 15px;
    display: block;
}

#modals .modals-container #wizardContent .form-check{
    margin-bottom: 20px;
}

#modals .modals-container #wizardContent .notes{
    vertical-align: middle;
}

#modals .modals-container #wizardContent .notes p{
    margin-bottom: 5px;
    line-height: 1.2;
}

#modals .modals-container #wizardContent .buttons{
    text-align: right;
    vertical-align: middle;
}

#modals .modals-container #wizardContent .cancel-step,
#modals .modals-container #wizardContent .prev-step{
    background-color: #ffffff;
    color: #292F7C;
    padding: 10px 30px;
    margin-right: 10px;
}

#modals .modals-container #wizardContent .cancel-step:hover,
#modals .modals-container #wizardContent .cancel-step:focus,
#modals .modals-container #wizardContent .prev-step:hover,
#modals .modals-container #wizardContent .prev-step:focus{
    background-color: #d1ddfe;
    color: #292F7C;
}

#modals .modals-container #wizardContent .next-step,
#modals .modals-container #wizardContent .finish-step{
    background-color: #2f3379;
    color: #ffffff;
    border: 1px solid #2f3379;
    padding: 10px 30px;
    opacity: 1;
}

#modals .modals-container #wizardContent .next-step:hover,
#modals .modals-container #wizardContent .next-step:focus,
#modals .modals-container #wizardContent .finish-step:hover,
#modals .modals-container #wizardContent .finish-step:focus{
    background-color: #ffffff;
    color: #292F7C;
}

#modals .modals-container #wizardContent .next-step:disabled,
#modals .modals-container #wizardContent .next-step[disabled],
#modals .modals-container #wizardContent .finish-step:disabled,
#modals .modals-container #wizardContent .finish-step[disabled]{
    background-color: #D9D9D9;
    color: rgb(0,0,0,0.3);
    border: 1px solid #D9D9D9;
    padding: 10px 30px;
    opacity: 1;
}

#modals .alert .fa-xmark {
    float: right;
}

/* MindTap Edit Course Modal styling */
#mindtapCourseManagementModalEdit .modal-dialog{
    max-width: 930px;
}

#mindtapCourseManagementModalEdit .modal-content{
    border-radius: 20px;
    background: transparent !important;
    box-shadow: none; 
}

#mindtapCourseManagementModalEdit .modal-header{
    background-color: #292F7C;
    padding: 20px;
    flex-direction: column;
    align-items: baseline;
}

#mindtapCourseManagementModalEdit .modal-header .modal-title{
    font-size: 24px !important;
    font-weight: 500;
    color: #FFCB05;
}

#mindtapCourseManagementModalEdit .modal-header .modal-sub-title{
    display: block;
    font-size: 16px !important;
    font-weight: 400;
    font-style: italic;
    color: #cedeff;
}

#mindtapCourseManagementModalEdit .modal-header .btn-close{
    color: #CEDEFF;
    position: absolute;
    right: 20px;
    top: 45px;
}

#mindtapCourseManagementModalEdit .modal-body{
    padding: 30px 20px;
    background: white !important;   

}

#mindtapCourseManagementModalEdit .modal-body .mainContent,
#mindtapCourseManagementModalEdit .modal-body .mainContent .container{
    padding: 0px;
}

#mindtapCourseManagementModalEdit .modal-body p{
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    margin-bottom: 0;
    line-height: 25px;
}


/* MindTap Expiration Notice Modal styling */
#modalExpirationNotice .modal-content{
    border-radius: 20px;
    background: transparent !important;
    box-shadow: none; 
}

#modalExpirationNotice .modal-header {
    background-color: #292F7C;
    padding: 20px;
}

#modalExpirationNotice .modal-header .modal-title {
    font-size: 24px !important;
    font-weight: 500;
    color: #FFCB05;
}

#modalExpirationNotice .modal-header .btn-close {
    color: #CEDEFF;
}

#modalExpirationNotice .modal-body {
    padding: 30px 20px;
    background: white !important;   

}

#modalExpirationNotice .modal-body #bookList{
    margin: 20px 0px;
}

#modalExpirationNotice .modal-footer .btn{
    padding: 10px 30px;
}


/* Redeem an Access Code / Course Key styling */
#subpage .redeemContainer .hidden{
    display: none;
}

#subpage .redeemContainer > div:first-child{
    position: relative;
    width: 100%;
    max-width: 700px;
}

#subpage .redeemContainer > div:first-child .redText{
    font-family: 'Work Sans', sans-serif;
    color: #FF0000 !important;
    margin: 10px 0px 30px;
}

#subpage .redeemContainer input[type="text"] {
    width: 100%;
    max-width: 700px;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid #d4d4d4;
    margin-bottom: 20px;
}

#subpage .redeemContainer .arrowBtn{
    position: absolute;
    top: 51px;
    right: 20px;
    color: #292F7C;
}

#subpage .redeemContainer .arrowBtn:hover,
#subpage .redeemContainer .arrowBtn:focus{
    cursor: pointer;
}

#subpage .redeemContainer h2{
    margin-top: 50px;
}

#subpage .redeemContainer .row{
    display: flex;
    align-items: center;
    margin-top: 30px;
}

#subpage .redeemContainer .redeemBookImage{
    display: inline-block;
    width: 20%; 
}

#subpage .redeemContainer .redeemBookImage img{
    border-radius: 20px;
    width: 100%;
    border: 1px solid #D4D4D4;
}

#subpage .redeemContainer .redeemBookDetails{
    display: inline-block;
    width: 77%;
    padding-left: 20px;
}

#subpage .redeemContainer .redeemBookDetails h3{
    font-size: 24px;
    font-weight: 500;
}

#subpage .redeemContainer .redeemBookDetails .buttons{
    margin-top: 20px;
}

#subpage .redeemContainer .redeemBookDetails .buttons input{
    font-size: 16px;
    font-weight: 600;
}

#subpage .redeemContainer .redeemBookDetails .yellowBtn{
    margin-right: 15px;
}


/* Request Teacher Access styling */
#requestTitleModule{
    position: relative;
}

#requestTitleModule .search-area{
    margin-top: 0px;
}

#requestTitleModule .search-area .hidden{
    display: none;
}

#requestTitleModule .search-area .book-search{
    width: 100%;
}

#requestTitleModule .search-area .searchbox-inner{
    position: relative;
    width: 100%;
    max-width: 700px;
}

#requestTitleModule .search-area .searchbox-inner .fa-magnifying-glass,
#requestTitleModule .search-area .searchbox-inner .fa-xmark{
    position: absolute;
    top: 15px;
    right: 20px;
    cursor: pointer; 
    color: #292F7C;
}

#requestTitleModule .search-area .searchbox-inner.searchResultsDisplayed .fa-magnifying-glass,
#requestTitleModule .search-area .searchbox-inner.searchResultsDisplayed .fa-xmark{
    right: 20px;
    cursor: pointer; 
}

#requestTitleModule .search-area .rcbInner .book-input{
    width: 100%;
    max-width: 700px;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid #d4d4d4;
    color: rgb(0,0,0,0.3);
}

#requestTitleModule .search-area .rcbInner .book-input:focus, 
#requestTitleModule .search-area .rcbInner .rcbFocused .book-input{
    border: 1px solid #292F7C;
    color: #000000;
}

.rcbSlide .book-dropdown{
    position: absolute;
    top: -75px !important;
    left: 0;
}

.rcbSlide .book-dropdown .rcbList{
    background-color: #ffffff;
    border: 1px solid #292F7C;
    border-radius: 20px;
    padding-left: 0px;
    padding-top: 20px;
    max-height: 350px;
    overflow-y: auto;
}

.rcbSlide .book-dropdown .rcbList li{
    list-style: none;
    margin-bottom: 10px;
}

.rcbSlide .book-dropdown .rcbList li.rcbHovered .bookTitleSearchItem,
.rcbSlide .book-dropdown .rcbList li .bookTitleSearchItem:hover{
    background-color: #CEDEFF;
    color: #292F7C;
    font-weight: 500;
}

.rcbSlide .book-dropdown .rcbList li .bookTitleSearchItem,
.rcbSlide .book-dropdown .rcbList li.rcbLoading{
    display: block;
    width: 100%;
    padding: 0px 20px 10px;
}

.rcbSlide .book-dropdown .rcbList li .bookTitleSearchItem tr:hover,
.rcbSlide .book-dropdown .rcbList li .bookTitleSearchItem tr:focus{
    background-color: #CEDEFF;
}

.rcbSlide .book-dropdown .rcbList li .bookTitleSearchItem tr td:first-child{
    width: 62px;
}

.rcbSlide .book-dropdown .rcbList li .bookTitleSearchItem tr td:last-child{
    width: calc(100% - 63px);
}

.rcbSlide .book-dropdown .rcbList li .bookTitleSearchItem tr img{
    margin-right: 10px;
    border-radius: 10px;
    border: 1px solid #D4D4D4;
}

.bookseller-table{
    border: 1px solid #292F7C;
    border-radius: 10px;
    margin: 50px 0px;
}

.bookseller-table .hidden{
    display: none;
}

.bookseller-table .bookseller-table-headings{
    background-color: #CEDEFF;
    font-size: 16px;
    font-weight: 600;
    color: #292F7C;
    padding: 10px 20px;
    border-bottom: 1px solid #292F7C;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.bookseller-table .bookseller-table-headings .bookseller-table-lcell{
    display: inline-block;
    width: 80%;
    font-family: 'Work Sans', sans-serif
}

.bookseller-table .bookseller-table-headings .bookseller-table-rcell{
    display: inline-block;
    width: 18%;
    text-align: center;
    font-family: 'Work Sans', sans-serif
}

.bookseller-table .bookseller-table-row{
    padding: 20px;
}

.bookseller-table .bookseller-table-row .bookseller-table-lcell{
    display: inline-block;
    width: 80%;
    vertical-align: middle;
}

.bookseller-table .bookseller-table-row .bookseller-table-lcell .book-cover{
    display: inline-block;
    width: 50px;
}

.bookseller-table .bookseller-table-row .bookseller-table-lcell .book-cover img{
    width: 50px;
    border-radius: 10px;
    border: 1px solid #D4D4D4;
}

.bookseller-table .bookseller-table-row .bookseller-table-lcell .book-information{
    display: inline-block;
    vertical-align: middle;
    padding: 0px 10px;
    font-family: 'Work Sans', sans-serif;
    width: calc(100% - 50px);
}

.bookseller-table .bookseller-table-row .bookseller-table-lcell .book-information .request-isbn{
    color: #A3A1A4;
}

.bookseller-table .bookseller-table-row .error{
    color: #D32821;
    margin-top: 10px;
    text-align: right;
}

.bookseller-table .bookseller-table-row .bookseller-table-rcell{
    display: inline-block;
    width: 18%;
    vertical-align: middle;
    text-align: center;
}

.bookseller-table .bookseller-table-row .bookseller-table-rcell .adoptQuan{
    padding: 5px 20px;
    border-radius: 20px;
    width: 100%;
    max-width: 100px;
    text-align: left;
}

.bookseller-table .bookseller-table-row .bookseller-table-rcell #removeRequestTitleLink{
    display: inline-block;
    color: #000000;
    margin-left: 20px;
}

.bookseller-table .adoptionHelp{
    padding: 20px 20px 10px;
}

.bookseller-row label{
    display: block;
    margin-bottom: 10px;
    font-family: 'Work Sans', sans-serif;
}

.bookseller-row .reqtitBookseller{
    width: 100%;
    max-width: 700px;
    padding: 10px 20px;
    border-radius: 50px;
}

.bookseller-row .error{
    color: #D32821;
    margin-top: 10px;
}

.bookseller-row .hidden{
    display: none;
}

#subpage .bookseller-row .request-title-section .page-title-inner h2{
    font-size: 16px;
}

.bookseller-row .request-title-section .salesRepDetails{
    font-family: 'Work Sans', sans-serif;
}

.bookseller-row .request-title-section .salesRepDetails p{
    margin-bottom: 10px;
}

.bookseller-row .mySalesRepPanel{
    margin: 50px 0px 40px;
}

.bookseller-row .mySalesRepPanel .hidden{
    display: none;
}

.bookseller-row .mySalesRepPanel .sales-input{
    width: 100%;
    max-width: 700px;
    padding: 10px 20px;
    border-radius: 50px;
    margin: 20px 0px 0px;
}

.bookseller-row .mySalesRepPanel .repnotfound{
    margin-top: 10px;
}

.bookseller-row .mySalesRepPanel .cancelChangeConsultantBtn{
    width: 100%;
    max-width: 286px;
    padding: 10px 20px;
    border-radius: 50px;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    margin: 20px 20px 0px 0px;
}

.bookseller-row .mySalesRepPanel .updateConsultantBtn{
    width: 100%;
    max-width: 286px;
    padding: 10px 20px;
    border-radius: 50px;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    margin-top: 20px;
}

.bookseller-row .found-consultant{
    margin-top: 30px;
}

.rcbSlide .sales-dropdown{
    position: absolute;
    top: -53px !important;
    left: 0;
}

.rcbSlide .sales-dropdown .rcbScroll .rcbList{
    max-height: 350px;
    overflow-y: auto;
    background-color: #ffffff;
    border: 1px solid #292F7C;
    border-radius: 20px;
    padding-left: 0px;
    padding-top: 20px;
}

.rcbSlide .sales-dropdown .rcbScroll .rcbList li{
    list-style: none;
    margin-bottom: 5px;
}

.rcbSlide .sales-dropdown .rcbList li.rcbHovered .chooseSalesRepItem,
.rcbSlide .sales-dropdown .rcbList li .chooseSalesRepItem:hover{
    background-color: #CEDEFF;
    color: #292F7C;
    font-weight: 500;
}

.rcbSlide .sales-dropdown .rcbList li .chooseSalesRepItem{
    display: block;
    width: 100%;
    padding: 10px 20px;
}

.request-title-section .requestBookTitleSubmit{
    width: 100%;
    max-width: 286px;
    padding: 10px 20px;
    border-radius: 50px;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
}

.no-banner-message-text a,
.banner-message-text a{
    color: #292F7C;
}


/* Free Resource page styling */
#subpage #freeResourcesListing h1{
    display: none;
}

#subpage #freeResourcesListing .resources-content{
    min-height: 600px !important;
}

#subpage #freeResourcesListing .searchbox-inner{
    display: inline-block;
    width: 25%;
    float: left;
}

#subpage #freeResourcesListing .searchbox-inner label{
    display: block;
    margin-bottom: 10px;
}

#subpage #freeResourcesListing .searchbox-inner .relativePosition{
    width: 100%;
    max-width: 500px;
}

#subpage #freeResourcesListing .searchbox-inner .relativePosition input{
    display: block;
    width: 100%;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid #d4d4d4;
    color: rgb(0, 0, 0, 0.3);
}

#subpage #freeResourcesListing .searchbox-inner .relativePosition #dummySearch{
    position: absolute; 
    top: 15px;
    right: 20px;
    color: #292F7C;
}

#subpage #freeResourcesListing .row-filter{
    display: inline-block;
    width: 70%;
    float: right;
}

#subpage #freeResourcesListing .row-filter label{
    display: block;
    margin-bottom: 10px;
}

#subpage #freeResourcesListing .row-filter select{
    width: 100%;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid #d4d4d4;
    color: #000000;
}

#subpage #freeResourcesListing #free-resources-listing{
    margin-top: 25px;
}

#subpage #freeResourcesListing #free-resources-listing #grid{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

#subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item{
    width: 18%;
    box-sizing: border-box;
    margin-bottom: 25px;
}

#subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

#subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item .picture-description{
    display: none;
}

#subpage #freeResourcesListing #free-resources-listing #grid h1.shuffle-item{
    display: block;
    width: 100% !important;
    font-size: 24px;
    font-weight: 500;
    color: #292F7C;
    margin: 25px 0px 50px;
    float: left !important;
    clear: both !important;
}

#subpage #freeResourcesListing #free-resources-listing #grid h1 span{
    padding: 10px 40px;
    background-color: #CDDEFF;
}

#subpage #freeResourcesListing .hiddenmsg {
    display: none;
}


/* My Account styling */
#subpage.withSidebar .navbar{
    margin-bottom: 0px;
}

#subpage.withSidebar .mainContent{
    padding: 0px 25px;
}

#subpage.withSidebar .mainContent .leftSidebar{
    border-right: 1px solid #D4D4D4;
    padding-right: 0px;
}

#subpage.withSidebar .mainContent .left-content-my-account h1{
    display: none;
}

#subpage.withSidebar .mainContent .left-content-my-account ul{
    padding-left: 0px;
}

#subpage.withSidebar .mainContent .left-content-my-account ul li{
    display: block;
    min-height: 50px;
    margin-bottom: 0px;    
}

#subpage.withSidebar .mainContent .left-content-my-account ul li a{
    display: block;
    padding: 15px 20px;
    color: #000000;
    font-weight: 400;
    text-decoration: none;
}

#subpage.withSidebar .mainContent .left-content-my-account ul li a.active,
#subpage.withSidebar .mainContent .left-content-my-account ul li a:hover,
#subpage.withSidebar .mainContent .left-content-my-account ul li a:focus{
    background-color: #CEDEFF;
    color: #292F7C;
    font-weight: 600;
}

#subpage.withSidebar .mainContent .left-content-my-account ul li a.active:after{
    content: "";
}

#subpage.withSidebar .mainContent .rightContent{
    padding-bottom: 25px;
    height: auto;
}

#subpage.withSidebar .mainContent .rightContent h1{
    display: none;
}

#subpage.withSidebar .mainContent .rightContent .nnblue{
    display: none;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails{
    text-align: left;
    margin: 0px;
    padding: 20px 25px;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails h2{
    font-size: 24px;
    font-weight: 500;
    line-height: 30px;
    color: #292F7C;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails .userdetails-row input:disabled{
    background-color: #F5F5F5;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails .userdetails-row .teacherSchoolDetails{
    margin-bottom: 30px;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails .userdetails-row .formRow .radioBtn{
    display: inline-block;
    width: 49%;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails .userdetails-row .formRow .radioBtn label{
    display: inline-block;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails .userdetails-row h3.eduConsultant{
    display: block;
    font-size: 20px;
    font-weight: 500;
    color: #292F7C;
}

#subpage.withSidebar .mainContent .rightContent #updateUserDetails .userdetails-row #findYourRep .rcbSlide .sales-dropdown{
    width: 100%;
    top: 0px !important;
}

#repContactFormModal .modal-content {
    border-radius: 20px;
    background: transparent !important;
    box-shadow: none;
}

#repContactFormModal .modal-header {
    background-color: #292F7C;
    padding: 20px;
}

#repContactFormModal .modal-header .modal-title {
    display: block;
    font-size: 24px !important;
    font-weight: 500;
    color: #FFCB05;
}

#repContactFormModal .modal-header .btn-close {
    color: #CEDEFF;
}

#repContactFormModal .modal-body {
    padding: 30px 20px;
    background: white !important;   
}

#repContactFormModal .modal-body .popupLeft,
#repContactFormModal .modal-body .popupRight{
    display: inline-block;
    width: 49%;
    padding: 0px 10px;
    vertical-align: top;
}

#repContactFormModal .modal-body .popupRight select{
    border: 1px solid #d4d4d4;
}

#repContactFormModal .modal-body .popupRight textarea{
    width: 100%;
    border-radius: 20px;
    border: 1px solid #d4d4d4;
    padding: 10px 20px;
    height: 360px;
}

#repContactFormModal .modal-body .formSubmitRow{
    text-align: right;
    border-top: 1px solid #d4d4d4;
    padding: 30px 20px 0px;
}

#repContactFormModal .modal-body .formSubmitRow .preventionClass,
#repContactFormModal .modal-body .formSubmitRow #contactPrevention{
    display: none;
}

#repContactFormModal .modal-body .formSubmitRow .btn:last-child{
    margin-left: 10px;
}

.complete-account-module .logo-container{
    display: none;
}


/* My Account - Change Password styling */
#subpage.withSidebar .mainContent .rightContent .change-password-container{
    text-align: left;
    margin: 0px;
    padding: 20px 25px;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container .password-details{
    margin-bottom: 30px;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container h2{
    font-size: 24px;
    font-weight: 500;
    line-height: 30px;
    color: #292F7C;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container .newPasswordError{
    color: rgb(0,0,0,0.5);
    margin-bottom: 30px;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container .passwordWrapper {
    position: relative;
    margin-bottom: 10px;
    max-width: 636px;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container .formRow.passwordWrapper{
    margin-bottom: 30px;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container .passwordWrapper input[type="password"],
#subpage.withSidebar .mainContent .rightContent .change-password-container .passwordWrapper input[type="text"]{
    display: block;
    width: 100%;    
    border-radius: 50px;
    padding: 10px 20px;
    text-align: left;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    border: 1px solid #D4D4D4;
    height: auto;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container .passwordWrapper .toggle-password{
    position: absolute;
    top: 10px;
    right: 10px;
    background: transparent none;
    border: 0px none;
    color: #292F7C;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container #TroubleSection{
    margin-bottom: 30px;
}

#subpage.withSidebar .mainContent .rightContent .change-password-container #TroubleSection a{
    color: #292F7C;
}


/* Help Landing Page styling */
#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul,
#subpage.withSidebar .helpLandingPage .leftSidebar #sec-nav{
    padding-left: 0px;
}


#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li,
#subpage.withSidebar .helpLandingPage .leftSidebar #sec-nav li{
    display: block;
    min-height: 50px;
    margin-bottom: 0px;    
}

#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li a,
#subpage.withSidebar .helpLandingPage .leftSidebar #sec-nav li a{
    display: block;
    padding: 15px 20px;
    color: #000000;
    font-weight: 400;
    text-decoration: none;
}

#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li a.active,
#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li a:hover,
#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li a:focus,
#subpage.withSidebar .helpLandingPage .leftSidebar #sec-nav li a,
#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li.currentLi{
    background-color: #CEDEFF;
    color: #292F7C;
    font-weight: 600;
}

#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li ul{
    padding-left: 30px;
}

#subpage.withSidebar .helpLandingPage .leftSidebar #sec-nav{
    margin-bottom: 0px;
}

#subpage.withSidebar .helpLandingPage .leftSidebar #sec-nav li a{
    border-left: 0px none;
    line-height: 24px;
}

#subpage.withSidebar .helpLandingPage .leftSidebar .help-nav ul li a.active:after{
    content: "";
}

#subpage.withSidebar .helpLandingPage .rightContent {
    padding: 0px 20px 25px;
}

#subpage.withSidebar .helpLandingPage .rightContent .search-area{
    padding-top: 25px;
}

#subpage.withSidebar .helpLandingPage .rightContent .search-area .searchbox-inner{
    display: inline-block;
    width: 100%;
    max-width: 400px;
    position: relative;
}

#subpage.withSidebar .helpLandingPage .rightContent .search-area input[name="searchStringInput"]{
    width: 100%;
    max-width: 700px;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid #d4d4d4;
    margin-bottom: 20px;
}

#subpage.withSidebar .helpLandingPage .rightContent .search-area .searchSubmitButtonStd{
    display: none;
}

#subpage.withSidebar .helpLandingPage .rightContent .search-area #dummySearch{
    position: absolute;
    top: 15px;
    right: 20px;
    color: #292F7C;
}

#subpage.withSidebar .helpLandingPage .rightContent .search-area .help-or{
    margin: 0px 20px;
}

#subpage.withSidebar .helpLandingPage .rightContent .search-area .searchbox-contact{
    display: inline-block;
}

#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigation{
    margin-top: 50px;
    padding: 0px 20px;
}

#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationImage, 
#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationRow {
    width: 100%;
    float: left;
    margin: auto;
    padding: 10px 0;
    height: 100px;
    vertical-align: middle;
}

#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationRow {
    text-align: center;
    background-color: #ffffff;
    border: 1px solid rgba(0, 0, 0, .15);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
    margin-right: 20px;
    min-height: 145px;
    width: 194px;
    margin-bottom: 20px;
}

#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationRow a{
    color: #292f7c;
    text-decoration: none;
}

#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationImage img {
    text-align: center;
    width: 75px;
}

#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationRow a:focus .inPageNavigationImage img,
#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationRow a:hover .inPageNavigationImage img{
    opacity: .5;
}

#subpage.withSidebar .helpLandingPage .rightContent .inPageNavigationDescription {
    display: none;
}

#subpage.withSidebar .helpLandingPage .rightContent .controls{
    position: relative;
}

#subpage.withSidebar .helpLandingPage .rightContent .controls .control-print-pdf {
    position: absolute;
    right: 0;
    top: -58px;
    display: none;
}

@media screen and (max-width: 1200px) {
    #subpage.withSidebar .helpLandingPage .rightContent .controls .control-print-pdf {
        position: absolute;
        right: -37px;
    }
}

@media screen and (max-width: 991px) {
    #subpage.withSidebar .helpLandingPage .rightContent .controls .control-print-pdf {
        position: absolute;
        right: -37px;
        top: -31px;
    }
}

@media screen and (max-width: 768px) {
    #subpage.withSidebar .helpLandingPage .rightContent .controls .control-print-pdf {
        position: absolute;
        right: 0;
        top: -31px;
    }
}


#subpage.withSidebar .helpLandingPage .rightContent .controls a{
    color: #292f7c;
    text-decoration: none;
    font-weight: 500;
}

#subpage.withSidebar .helpLandingPage .rightContent .controls .download-icon img {
    margin-right: 3px;
    position: relative;
    top: -3px;
    width: 22px;
}


/* Contact page styling */
.dynamicForms {
    margin-top: 25px;
}

.dynamicForms td {
    vertical-align: middle;
    padding: 0;
}

.dynamicForms .dFormHeader,
.dynamicForms .requiredFieldInstruction {
    display: none;
}

.dynamicForms label {
  padding-right: 10px;
}

.dynamicForms .dFormField input,
.dynamicForms .dFormField select {
    width: 100%;
    max-width: 700px;
    border-radius: 50px;
    padding: 10px 20px;
    text-align: left;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    border: 1px solid #D4D4D4;
    height: auto;
    margin: 14px 0;
    position: relative; /* To position the custom arrow */
}

.dynamicForms .dFormField select {
    appearance: none;
    cursor: pointer;
    background: url('/NelsonNet-X/Templates/img/chevron-down-blue.svg') transparent 96% center no-repeat;
    background-size: 16px;
    background-color: white; /* White background */
}

.dynamicForms .dFormField option {
  background: white !important; /* Background of dropdown menu options */
  color: black !important; /* Text color of options */
}

.dynamicForms .dFormField option:hover {
  background-color: #f0f0f0; /* Light gray on hover */
}

.select2-selection__placeholder {
    color: #333;
}



/* Style for the placeholder */
.dynamicForms .dFormField select{
    color: #333; /* Style disabled option */
}


.dynamicForms .dFormField textarea {
    width: 100%;
    max-width: 700px;
    padding: 10px 20px;
    border-radius: 20px;
    border: 1px solid #d4d4d4;
    margin-bottom: 20px;
    margin-top: 10px;
    color: #333; 
}

.dynamicForms .submitRow .dFormSubmit {
    background-color: #FFCB05;
    color: #292F7C;
    border: 1px solid transparent;
    border-radius: 30px;
    padding: 10px 20px;
    font-size: 13px;
    font-weight: 600;
}

.dynamicForms .submitRow .dFormSubmit:hover,
.dynamicForms .submitRow .dFormSubmit:focus {
    background-color: #ddaf08;
    color: #292F7C;
}


/* Download Applications page styling */
.leftSidebar .downloadAppSidebar{
    padding-right: 12px;
}

.leftSidebar .downloadAppSidebar img{
    width: 100%;
}


/* Error page styling */
#customErrorPage{
    padding: 10rem 0;
}

#customErrorPage h1{
    font-size: 250px;
    font-weight: 700;
    line-height: 200px;
    color: #454545;    
}

#customErrorPage h2{
    font-size: 60px;
    font-weight: 700;
    line-height: 70px;
    color: #454545; 
}

#customErrorPage p a{
    color: #292f7c;
}

#customErrorPage img{
    width: 100%;
}


/* Footer styling */
footer{
    background-color: #292f7c;
    padding: 20px;
    margin-top:5px;

}

footer .footerMenu{
    display: inline-block;
}

footer .footerMenu.left{
    float: left;
}

footer .footerMenu.right{
    float: right;
}

footer .footerMenu p, footer .footerMenu a{
    font-size: 12px;
    font-weight: 400;
    color: #ffffff;
    margin-bottom: 0px;
}

footer .footerMenu a{
    text-decoration: none;
}

footer .footerMenu a:hover, footer .footerMenu a:focus{
    text-decoration: underline;
}

footer .footerMenu .footer-link{
    margin-right: 20px;
    font-size: 12px;
    line-height: 1;
    vertical-align: text-top;
}

footer .footerMenu .footer-link:last-child{
    margin-right: 0px;
}


/* RESPONSIVE STYLING */
@media screen and (max-width: 1400px){
    .btn{
        padding: 5px;
    }
    
    #subpage .btn{
        padding: 5px 10px;
    }
    
    #bookshelf .bookshelf .slideUpBlock{
        flex: 0 1 calc(25% - 40px);
    }
    
    #subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item{
        width: 20%;
    }
}

@media screen and (max-width: 1200px){
    #subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item{
        width: 25%;
    }
}


@media screen and (min-width: 1024px){
    .nelsonNetDashboardLogin{
        margin: 50px auto;
    }
}


@media screen and (max-width: 1024px){
    #homepage .mainContent .st4s-badge .st4s-badge-image-link{
        width: 110px;
    }
    
    #homepage .mainContent .st4s-badge .st4s-badge-text{
        width: calc(100% - 115px);
        padding-right: 30px;
    }
    
    #subpage .redeemContainer .redeemBookImage{
        width: 30%; 
    }
    
    #subpage .redeemContainer .redeemBookDetails{
        width: 67%;
    }
    
    #subpage.withSidebar .mainContent{
        padding: 0px;
    }
}

@media screen and (max-width: 991px){
    .navbar .nav-item{
        margin-bottom: 10px;
    }
    
    .navbar .nav-item a{
        padding-bottom: 5px;
    }
    
    #bookshelf .bookshelf .slideUpBlock{
        flex: 0 1 calc(33% - 40px);
    }
    
    .bookseller-table .bookseller-table-headings .bookseller-table-lcell,
    .bookseller-table .bookseller-table-row .bookseller-table-lcell{
        width: 75%;
    }
    
    .bookseller-table .bookseller-table-headings .bookseller-table-rcell,
    .bookseller-table .bookseller-table-row .bookseller-table-rcell{
        width: 24%;
    }
    
    #customErrorPage h1{
        font-size: 10rem;
        line-height: 8rem;
    }
    
    #customErrorPage h2{
        font-size: 2rem;
        line-height: 2rem;
    }
    
    #customErrorPage img {
        margin-top: 2rem;
    }
    
    #subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item{
        width: 33%;
    }
}


@media screen and (max-width: 768px){
    #page{
        margin-bottom: -6.5em;
    }
    
    /* Header styling */
    header .site-logo{
        display: block;
        text-align: center;
    }
    
    header .topMenu {
        float: none;
        margin: 1em auto 0em;
        text-align: center;
    }
    
    .navbar{
        display: flex;
    }
    
    .navbar .nav-item{
        margin-right: 0px;
        margin-bottom: 1rem;
    }
    
    .navbar .nav-item a{
        padding-bottom: 0px;
        margin: 0 5px;
    }
    
    .pageBanner {
        padding: 10px;
        font-size: 1rem; 
    }

    
    /* My Bookshelf styling */
    #bookshelf h1{
        padding-top: 0px;
        font-size: 2.5em;
        text-align: center;
    }
    
    #bookshelf .bookshelf .slideUpBlock{
        flex: 0 1 100%;
    }
    
    /* Homepage styling */
    #homepage .mainContent .findResources #codeInput{
        width: 90%;
    }
    
    #homepage .mainContent .introcon .img1boox, 
    #homepage .mainContent .introcon .vidboox{
        display: block;
        margin: 0px auto 30px;
    }
    
    #homepage .mainContent .introcon .img1boox:last-child{
        margin-bottom: 0px;
    }
    
    /*#homepage .mainContent .st4s-badge .st4s-badge-image-link,
    #homepage .mainContent .st4s-badge .st4s-badge-text{
        display: block;
        width: 100%;
        margin: 0px auto 20px;
        text-align: center;
    }*/
    
    #homepage .mainContent .st4s-badge .st4s-badge-item:first-child{
        margin-bottom: 25px;
    }
    
    #homepage .mainContent .st4s-badge .st4s-badge-text{
        margin-bottom: 0px;
    }
    
    #homepage .mainContent .st4s-badge .st4s-badge-text p{
        max-width: 100%;
    }
    
    .bookseller-table .bookseller-table-row .bookseller-table-rcell .adoptQuan{
        width: 80%;
    }
    
    .bookseller-table .bookseller-table-row .bookseller-table-rcell #removeRequestTitleLink{
        margin-left: 5px;
    }
    
    #subpage.withSidebar .mainContent{
        padding: 0px;
    }
    
    #subpage.withSidebar .mainContent .leftSidebar{
        border: 0px none;
        padding-right: 12px;
    }
    
    /* Footer styling */
    footer{
        padding: 20px;
    }
    
    footer, .push {
        height: 6.5em;
    }
    
    footer .footerMenu{
        width: 100%;
        text-align: center;
        margin-bottom: 1rem;        
    }
    
    footer .footerMenu.left, footer .footerMenu.right{
        float: none;
    }
    
    #subpage #freeResourcesListing .searchbox-inner,
    #subpage #freeResourcesListing .row-filter{
        display: block;
        width: 100%;
        float: none;
    }
    
    #subpage #freeResourcesListing .searchbox-inner{
        margin-bottom: 25px;
    }
    
    #subpage #freeResourcesListing .row-filter select{
        margin-bottom: 25px;
    }
    
    #subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item{
        width: 45%;
    }
}

@media screen and (max-width: 576px){
    .bookseller-table .bookseller-table-headings .bookseller-table-lcell,
    .bookseller-table .bookseller-table-row .bookseller-table-lcell{
        width: 70%;
    }
    
    .bookseller-table .bookseller-table-headings .bookseller-table-rcell,
    .bookseller-table .bookseller-table-row .bookseller-table-rcell{
        width: 28%;
    }
    
    .bookseller-table .bookseller-table-row .bookseller-table-rcell .adoptQuan{
        width: 70%;
        padding: 5px;
    }
    
    #subpage #freeResourcesListing #free-resources-listing #grid .shuffle-item{
        width: 100%;
    }
}

/* Loader styling */
@keyframes blink {
    0% {
        opacity: .2;
    }

    20% {
        opacity: 1;
    }

    100% {
        opacity: .2;
    }
}

.loader span {
    animation-name: blink;
    animation-duration: 1.4s;
    animation-iteration-count: infinite;
    animation-fill-mode: both;
    font-size: 12px;
}

.loader span:nth-child(2) {
    animation-delay: .2s;
}

.loading span:nth-child(3) {
    animation-delay: .4s;
}

button .loader{
    margin-top: 0px;
    position:inherit;
}

.loader {
    display: inline-block;
    position: absolute;
    right: 15px;
    margin-top: 10px;
}

.loader.homepage {
    margin-left: -45px;
    position:static;
}

#addTeacherInput .loader {
    margin-top: -36px;
}

.registation-email-input.iacInputWrapper {
    position:relative;
}

.registation-email-input .loader {
    display: inline-block;
    position: absolute;
    margin-top:7px;
    right:10px;
}

.registation-email-input .bi-check2, .registation-email-input .bi-check-lg {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        color: green;
    }

.loader-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.7); 
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10; 
}

.loader-overlay .spinner-border {
    width: 3rem;
    height: 3rem;
}


input::-ms-reveal,
input::-ms-clear {
display: none;
}

/*SKELETON*/

#bookshelf .bookshelf .skeletonEntitlement {
    background: #f5f5f5;
    border-radius: 20px;
    position: relative;
    flex: 0 1 calc(20% - 40px);
    margin: 0px 20px 40px;
    padding: 5rem 1rem 1rem;
    cursor: wait;
    min-height: 272px; /* images are 270px with 1px border */
}

.skeletonTitle, .skeletonParagraph {
    margin-bottom: 1rem;
    border-radius: 6px;
    background: #aaa;
    opacity: 0.5;
    animation: skeletonPulse 2s ease-in-out infinite;
}

.skeletonParagraph {
    height: 1rem
}

.skeletonTitle {
    height: 2rem;
}

@keyframes skeletonPulse {
  50% {
    opacity: 0.2;
  }
}

@media screen and (max-width: 1400px) {
    #bookshelf .bookshelf .skeletonEntitlement {
        flex: 0 1 calc(25% - 40px);
        min-height: 312px; /* mimic image aspect ratio */
    }
}

@media screen and (max-width: 991px) {
    #bookshelf .bookshelf .skeletonEntitlement {
        flex: 0 1 calc(33% - 40px);
        min-height: 260px; /* mimic image aspect ratio */
    }
}

@media screen and (max-width: 768px) {
    #bookshelf .bookshelf .skeletonEntitlement {
        flex: 0 1 100%;
        min-height: 550px; /* mimic image aspect ratio */
        padding-top: 10rem;
    }
}
/* Style for the results table */
.resultsTable {
  width: 100%;
  font-family: 'Work Sans', sans-serif;
  margin: 20px 0;
}

.resultRecordDark {
  background-color: #f4f4f4;
}

.resultRecordLight {
  background-color: #ffffff;
}

.resultsTable td {
  padding: 10px;
  vertical-align: top;
  line-height: 1.6;
}

.resultRecordDark a:first-child {
  font-weight: 600;
  font-size: 1.2em;
  color: #292f7c; 
  text-decoration: none;
}

.resultRecordDark a:first-child:hover {
  text-decoration: underline;
}

.resultRecordLight a:first-child {
  font-weight: 600;
  font-size: 1.2em;
  color: #292f7c;
  text-decoration: none;
}

.resultRecordLight a:first-child:hover {
  text-decoration: underline;
}


.resultsTable a[href*="strSearch"] {
  color: #292F7C; 
  text-decoration: none;
  padding-right:2px;
  background-color: #E8E9F8;
}

.resultsTable a[href*="strSearch"]:hover {
  text-decoration: underline;
}

.searchResultsTypeHeading {
  color: #fff;
  text-align: left;
  font-weight: 600;
  padding: 10px;
  border:none;
}

input.button[name="searchStructureResultsTitleOrder"] {
    border: none;
    background: none;
    font-size: 16px;
    color: #292f7c;
    margin-bottom: 10px;
}
.searchResultsSeperator {
  height: 10px;
  background-color: #fff;
}
/* Customised Select */
.filter-button-select {
    width: 100%;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid #d4d4d4;
    color: #000000;
    text-align: left;
    cursor: pointer;
    box-sizing: border-box;
    background: url(/NelsonNet-X/Templates/img/chevron-down-blue.svg) transparent 96% center no-repeat;
    background-size: 16px;
    right: 4% !important;
    height: 46px !important;
}

.dropdown-menu-select {
    display: none;
    position: absolute;
    background-color: white;
    border-radius: 5px;
    border: 1px solid #d4d4d4;
    list-style-type: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    max-height: 300px; 
    overflow-y: auto;
}

.dropdown-menu-select li {
    padding: 10px;
    cursor: pointer;
    color: #000000;
}

.dropdown-menu-select li:hover {
    background-color: #f2f2f2;
}

.schoolDetailsCon .dropdown-menu-select {
    max-width: 100%;
    width: 460px;
}

/* Loading / Spinner */
 .loadingPanel {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     z-index: 9999;  /* Ensure it appears above all other content */
     display: flex;
     align-items: center;
     justify-content: center;
     color: white;
     font-size: 18px;
     font-weight: bold;
     text-align: center;
     /*backdrop-filter: blur(3px);*/  /* Subtle blur effect for modern look */
 }

 /* Spinner Style */
 .loadingPanel::before {
     content: "";
     width: 50px;
     height: 50px;
     border: 6px solid #292f7c;
     border-top-color: transparent;
     border-radius: 50%;
     animation: spin 1s linear infinite;
     margin-bottom: 10px;
 }

 /* Spinner Animation */
 @keyframes spin {
     to {
         transform: rotate(360deg);
     }
 }
 
 /* Magma Radio Button and Checkbox Style  */
.radioBtn input[type="radio"] {
    appearance: none; 
    width: 20px;
    height: 20px;
    border: 2px solid #292f7c; 
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    background-color: white;
    display: inline-block;
    vertical-align: middle;
}

.radioBtn input[type="radio"]:checked {
    background-color: white; 
}

.radioBtn input[type="radio"]:checked::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px; 
    height: 10px;
    background-color: #292f7c; 
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.radioBtn label {
    margin-left: 5px;
    margin-bottom: 0px!important;
    font-size: 16px;
    color: #333;
    cursor: pointer;
    vertical-align: middle;
}

input[type="checkbox"] {
    appearance: none;
    width: 18px;
    height: 18px;
    border: 1px solid #292f7c; 
    border-radius: 3px;
    position: relative;
    cursor: pointer;
    background-color: white;
    display: inline-block;
    vertical-align: middle;
}

input[type="checkbox"]:checked {
    background-color: #292f7c;
    border-color: #292f7c;
}

input[type="checkbox"]::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 6px;
    width: 5px;
    height: 9px; 
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    display: none;
}

input[type="checkbox"]:checked::before {
    display: block;
}

input[type="checkbox"]:disabled {
    background-color: #e0e0e0 !important;
    border-color: #b0b0b0 !important;
    cursor: not-allowed;
}

input[type="checkbox"]:disabled:checked {
    background-color: #b0b0b0 !important;
    border-color: #8a8a8a !important;
}

input[type="checkbox"]:disabled::before {
    border-color: #d4d4d4;
}


/* General styling for all text inputs */
input[type="text"],
input[type="password"] {
    color: #000000;
    border: 1px solid #D4D4D4;
    background-color: #ffffff;
    transition: border 0.3s ease-in-out;
}

/* Placeholder styling */
input[type="text"]::placeholder,
input[type="password"]::placeholder {
    color: rgba(0, 0, 0, 0.3);
}

/* Focus (Active) State */
input[type="text"]:focus,
input[type="password"]:focus {
    border: 1px solid #292F7C !important;
    box-shadow: none;
}

/* Error State */
input[type="text"].inputValidationError,
input[type="password"].inputValidationError {
    border: 1px solid #D32821 !important;
}

/* Disabled State */
input[type="text"]:disabled,
input[type="password"]:disabled {
    background-color: #f0f0f0 !important;
    color: #a1a1a1 !important;
    border: 1px solid #dcdcdc !important;
    cursor: not-allowed;
    pointer-events: none;
}

/*Login Style */
.no-banner-message-text-info {
    text-align: center;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    background-color: #e1e9ff;
    color: #000000;
    position: relative;
    padding: 1rem 1rem;
    border: 1px solid transparent;
    border-radius: 5px;
    margin-bottom: 30px;
}

.updateDetailsMsg.no-banner-message-text {
    text-align: center;
    font-family: 'Work Sans', sans-serif;
    font-size: 16px;
    background-color: #FDEFEE;
    color: #D32821;
    position: relative;
    padding: 1rem 1rem;
    border: 1px solid transparent;
    border-radius: 5px;
    margin-bottom: 30px;
}
.updateDetailsMsg.no-banner-message-text:empty {
  display: none;
}


.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    pointer-events: none;
    background-color: #d9d9d9;
    color: rgba(0, 0, 0, 0.3);
    border-color: #d9d9d9;
}