body {
  margin: 0;
  padding: 0;
  font-family: "Roboto", sans-serif;
  color: #4f4f4f;
  font-size: 16px;
}

.login-pf {
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
}

.login-pf body {
  background: #ffffff;
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: row;
}

.login-pf body div.background {
  background: #ffffff url(../img/background.svg) no-repeat 0 0;
  background-size: cover;
  height: 100vh;
  width: 65%;
  padding: 32px 56px;
}

.login-pf body div.form {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  padding: 58px 51px;
  height: 100vh;
}

.login-pf-page .login-pf-page-header #kc-header-wrapper .kc-logo-text span {
  display: none;
}

.login-pf-page .login-pf-page-header #kc-header-wrapper .kc-logo-text {
  background: url(../img/logo-sistema.svg) no-repeat 0 0;
  width: 216px;
  height: 36px;
}

.login-pf-page {
  display: flex;
  border: 2px solid #f2f2f2;
  border-radius: 25px;
  padding: 64px 56px;
  justify-content: space-between;
  flex-direction: column;
}

.login-pf-page .card-pf header {
  display: flex;
  gap: 8px;
}

.login-pf-page .card-pf {
  border: none;
  box-shadow: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 60px;
}

/* .login-pf .card-pf ::before {
  background: url(../img/logo-sistema.svg) no-repeat 0 0;
  width: 216px;
  height: 36px;
} */

.login-pf h1#kc-page-title {
  text-align: left;
}

.login-pf h1,
.login-pf h2,
.login-pf input,
.login-pf a {
  font-family: "Roboto", sans-serif;
  overflow: hidden;
  color: #4f4f4f;
  text-align: left;
  outline: none;
}

.login-pf h1 {
  font-size: 24px;
  font-weight: bold;
  font-weight: 700;
  text-align: left;
  padding: 0;
  margin: 0;
  line-height: 28.8px;
}

.login-pf h2 {
  font-size: 16px;
  font-weight: 400;
  padding: 0;
  margin: 0;
  line-height: 21.6px;
}

.login-pf a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.login-pf .login-pf-settings {
  display: flex;
  align-items: revert;
  justify-content: revert;
}

.login-pf a {
  font-size: 16px;
  font-weight: bold;
}

.login-pf a:visited,
.login-pf a:hover {
  text-decoration: none;
  background: none;
}

.login-pf .login-pf-settings a:focus {
  outline: none;
  text-decoration: none;
}

.login-pf button,
.login-pf a.button,
.login-pf input[type="submit"],
.login-pf a#social-microsoft {
  font-size: 18px;
  border-radius: 24px;
  margin-bottom: 15px;
  background-color: #219653;
  height: unset;
  text-align: center;
  padding: 16px;
  font-weight: 700;
}

.login-pf button:disabled,
.login-pf a.button:disabled,
.login-pf input[type="submit"]:disabled,
.login-pf a#social-microsoft:disabled {
  background-color: #F2F2F2;
  color: #BDBDBD;
}

.login-pf .form-group {
  position: relative;
  margin-right: 0;
  margin-left: 0;
}

.login-pf .form-group input[type="text"]:not([aria-invalid="true"]),
.login-pf .form-group input[type="password"]:not([aria-invalid="true"]) {
  border: 2px solid #f2f2f2;
  background-color: transparent;
}

.login-pf .form-group input[type="text"][aria-invalid="true"],
.login-pf .form-group input[type="password"][aria-invalid="true"] {
  border: 2px solid #db1a1a;
  background-color: transparent;
}

.login-pf .form-group input[type="text"]::placeholder,
.login-pf .form-group input[type="password"]::placeholder {
  color: #e0e0e0;
}

.login-pf .form-group,
.login-pf .form-group div.pf-c-input-group {
  outline: none;
}

.login-pf
  .form-group
  input[type="text"]:focus-visible:not([aria-invalid="true"]),
.login-pf .form-group input[type="text"]:focus:not([aria-invalid="true"]),
.login-pf
  .form-group
  input[type="password"]:focus-visible:not([aria-invalid="true"]),
.login-pf .form-group input[type="password"]:focus:not([aria-invalid="true"]) {
  border: 2px solid #26ab5f;
  outline: none;
}

.login-pf .form-group:focus-within i,
.login-pf .form-group .pf-c-input-group:focus-within > i {
  color: #26ab5f;
}

.login-pf .form-group input[type="text"],
.login-pf .form-group input[type="password"] {
  padding: 16px 45px 16px;
  height: unset;
  border-radius: 8px;
}
.login-pf .form-group .pf-c-input-group {
  position: relative;
}
.login-pf .form-group .pf-c-input-group button,
.login-pf .form-group .pf-c-input-group-error button {
  position: absolute;
  top: 1px;
  right: 5px;
  border-width: 0;
  border-radius: 8px;
  z-index: 9999;
  background: transparent;
}

.login-pf .form-group .pf-c-input-group-error button {
  right: 18px;
}

.login-pf .form-group .pf-c-input-group i {
  color: #828282;
  font-size: 24px;
}

.login-pf .form-group .pf-c-input-group > i,
.login-pf .form-group > i {
  z-index: 99999;
  position: absolute;
  top: 19px;
  left: 16px;
  color: #bdbdbd;
  font-size: 20px;
}

.login-pf .form-group .pf-c-input-group button::after {
  border: none;
  background: transparent;
}

/* .login-pf .form-group div.pf-c-input-group{

}

.login-pf .form-group div.pf-c-input-group input[type="text"],
.login-pf .form-group div.pf-c-input-group input[type="password"],
.login-pf .form-group div.pf-c-input-group button {
  border: none;
} */

.login-pf .form-group button {
  margin: 0;
  border: none;
}

.login-pf .form-group .forgot-pass {
  display: flex;
  align-items: center;
  gap: 10px;
}

.login-pf .form-group .forgot-pass a,
.login-pf .form-group .forgot-pass i {
  font-size: 16px;
  font-weight: 700;
}

.login-pf #kc-form-buttons {
  margin-top: 60px;
}

#input-error {
  color: #550000;
  font-size: 14px;
  font-weight: 500;
  display: block;
  padding: 4px 0 0;
}

/* .pf-c-button:after {
  font: "normal normal normal 14px/1 FontAwesome";
  content: "\f560";
} */

/*Alerts*/

.pf-c-alert {
  margin-bottom: 40px;
}

.pf-m-success {
  background-color: #f0fbf2;
  border: none;
  box-shadow: none;
  border-radius: 16px;
}

.pf-m-warning {
  background-color: #fdf3e9;
  border: none;
  box-shadow: none;
  border-radius: 16px;
}

.pf-m-danger {
  background-color: #fdebeb;
  border: none;
  box-shadow: none;
  border-radius: 16px;
}

/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 0px) and (max-width: 576px) {
  .login-pf {
    background: #ffffff;
  }

  .login-pf body div.background {
    display: none;
  }
}

/* Medium devices (tablets, 768px and up)*/
@media (min-width: 577px) and (max-width: 768px) {
  .login-pf body div.background {
    display: none;
  }
}

/* Large devices (desktops, 992px and up)*/
@media (min-width: 769px) and (max-width: 992px) {
  .login-pf body div.background {
    display: none;
  }
}

/*X-Large devices (large desktops, 1200px and up)*/
@media (min-width: 993px) and (max-width: 1200px) {
  .login-pf body div.background {
    width: 55%;
  }
}

/*XX-Large devices (larger desktops, 1400px and up)*/
@media (min-width: 1201px) and (max-width: 1920px) {
  .login-pf body div.background {
    width: 60%;
  }
}

@media (min-width: 1921px) {
  .login-pf body div.background {
    width: 70%;
  }
}
