html,
body {
   height: 100%;
}

body {
   display: -ms-flexbox;
   display: flex;
   -ms-flex-align: center;
   align-items: center;
   padding-top: 30px;
   padding-bottom: 40px;
   background-color: #f5f5f5;
}

.form-signin {
   width: 100%;
   max-width: 420px;
   padding: 15px;
   margin: auto;
}

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

.student-header {
   border-bottom: 1px solid #424242;
   padding-bottom: 8px;
   overflow: hidden;
}

.student-header h4.student-title {
   color: #424242;
   margin-bottom: 0px;
   height: 38px;
}

.student-header h4.student-title span {
   vertical-align: middle;
}

.student-header button.delete-student {
   float: right;
   margin-right: 8px;
   margin-top: 4px;
}

.student-repeater .student-container:first-child button.delete-student {
   display: none;
}

.reCaptcha-capsule {
   display: none;
   border: 2px solid transparent;
   width: fit-content;
   border-radius: 4px;
   -webkit-transition: border-color 0.25s ease-in-out 0.25s;
   transition: border-color 0.25s ease-in-out 0.25s;
}

.reCaptcha-focused {
   border-color: #EF5350;
}

body.page-loader-backdrop {
   overflow: hidden;
}

.page-loader {
   display: none;
   position: fixed;
   width: 100%;
   height: 110%;
   opacity: 0;
   transition: opacity 0.15s linear;
   z-index: 10;
}

.page-loader.in {
   display: block;
   opacity: 1;
}

.page-loader .page-loader-backdrop {
   position: absolute;
   background-color: #FFFFFF;
   background-clip: border-box;
   width: 100%;
   height: 100%;
}

.page-loader .page-loader-content {
   margin: auto;
   width: 50%;
   height: 100%;
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
}

.page-loader-content .page-loader-body {
   text-align: center;   
}

.page-loader-body .page-loader-icon {
   font-size: 3rem;
}

.page-loader-body .page-loader-text {
   color: #000000;
   font-size: 18px;
   font-weight: 500;
}