html,
body {
  height: 100%;
}

body {
  display: flex;
  align-items: center;
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #f5f5f5;
}

.message-panel {
	height: 50px;
}

.form-signin {
  width: 100%;
  max-width: 330px;
  padding: 15px;
  margin: auto;
}
.form-signin .checkbox {
  font-weight: 400;
}
.form-signin .form-control {
  position: relative;
  box-sizing: border-box;
  height: auto;
  padding: 10px;
  font-size: 16px;
}

.form-signin .form-control:focus {
    border: 1px solid #424242 !important;
    outline: none !important;
    outline-offset: -2px;    
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(100 100 100 / 60%);
}

.form-check-input:checked {
    background-color: #424242;
    border-color: #424242;
}

.form-check-input:hover, .form-check-input:focus, .form-check-input:active {
    border: 1px solid #424242 !important;
    outline: none !important;
    outline-offset: -2px;    
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(100 100 100 / 60%);
}

.form-signin .form-control:focus {
  z-index: 2;
}
.form-signin input[type="text"] {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.form-signin input[type="password"] {
  margin-bottom: 10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-primary {
    background: #424242;
    color: #ffffff;
	border-color: #1B1A16;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active {
    background-color: #1B1A16 !important;
    color: white !important;
    border: 1px solid #424242 !important;
    outline: none !important;
    outline-offset: -2px;    
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(100 100 100 / 60%) !important;  
}
