/* ========== PMPro login – Tabler skin (teljes) ========== */

/* Login / lost password oldal függőleges pozíciója */
body.page-template-page-login .page-wrapper .container-xl {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

/* A PMPro külső konténere */
.pmpro-login-tabler .pmpro {
  /* semmi extra, már card-body-ban van */
}

.pmpro-login-tabler #pmpro_login {
  /* section szintű wrapper */
}

/* Hibaüzenet/info box – Tabler alert-szerű */
.pmpro-login-tabler .pmpro_message {
  margin-bottom: 1rem;
  padding: .75rem 1rem;
  border-radius: var(--tblr-border-radius);
  border: 1px solid;
  font-size: .875rem;
}

.pmpro-login-tabler .pmpro_message.pmpro_error {
  background-color: rgba(214, 57, 57, 0.1);
  border-color: #d63939;
  color: #d63939;
}

.pmpro-login-tabler .pmpro_message.pmpro_success {
  background-color: rgba(47, 179, 68, 0.1);
  border-color: #2fb344;
  color: #2fb344;
}

/* PMPro card wrapper */
.pmpro-login-tabler .pmpro_card {
  /* már card-body-ban van */
}

.pmpro-login-tabler .pmpro_card_content {
  /* belső content */
}

/* Login form */
.pmpro-login-tabler #loginform {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Form group-ok (username, password, remember) */
.pmpro-login-tabler #loginform > p {
  margin: 0;
}

/* Címkék – Tabler form-label stílus */
.pmpro-login-tabler #loginform label {
  display: block;
  font-size: .875rem;
  font-weight: 500;
  margin-bottom: .375rem;
  color: var(--tblr-body-color);
}

/* Inputok – Tabler form-control */
.pmpro-login-tabler #loginform input[type="text"],
.pmpro-login-tabler #loginform input[type="password"] {
  display: block;
  width: 100%;
  padding: .5rem .75rem;
  font-size: .875rem;
  line-height: 1.5;
  border-radius: var(--tblr-border-radius);
  border: 1px solid var(--tblr-border-color);
  background-color: var(--tblr-bg-forms);
  color: var(--tblr-body-color);
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.pmpro-login-tabler #loginform input[type="text"]:focus,
.pmpro-login-tabler #loginform input[type="password"]:focus {
  border-color: var(--tblr-primary);
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(32, 107, 196, 0.25);
}

/* Remember me checkbox – Tabler form-check stílus */
.pmpro-login-tabler .login-remember {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin-top: .5rem;
  margin-bottom: .5rem;
}

.pmpro-login-tabler .login-remember label {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: 0;
  font-size: .875rem;
  font-weight: 400;
  cursor: pointer;
}

.pmpro-login-tabler .login-remember input[type="checkbox"] {
  width: 1.125rem;
  height: 1.125rem;
  margin: 0;
  cursor: pointer;
  border: 1px solid var(--tblr-border-color);
  border-radius: .25rem;
  background-color: var(--tblr-bg-surface);
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  position: relative;
  transition: all .15s ease-in-out;
  margin-bottom: -3px;
  margin-right: 4px;
}

.pmpro-login-tabler .login-remember input[type="checkbox"]:checked {
  background-color: var(--tblr-primary);
  border-color: var(--tblr-primary);
}

.pmpro-login-tabler .login-remember input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: .375rem;
  height: .625rem;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: translate(-50%, -60%) rotate(45deg);
}

.pmpro-login-tabler .login-remember input[type="checkbox"]:focus {
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(32, 107, 196, 0.25);
}

/* Submit button – Tabler btn btn-primary */
.pmpro-login-tabler .login-submit {
  margin-top: .5rem;
}

.pmpro-login-tabler .login-submit input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: var(--tblr-border-radius);
  border: 1px solid transparent;
  background-color: var(--tblr-primary);
  color: #fff;
  cursor: pointer;
  transition: background-color .15s ease-in-out;
}

.pmpro-login-tabler .login-submit input[type="submit"]:hover {
  background-color: #1a5a96;
}

/* Show password toggle – egyszerű link-szerű szöveg */
.pmpro-login-tabler .pmpro_form_field-password-toggle {
  margin-top: .25rem;
}

.pmpro-login-tabler .pmpro_btn {
  background: transparent;
  border: none;
  color: var(--tblr-primary);
  font-size: .8125rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  padding: 0;
  text-decoration: none;
}

.pmpro-login-tabler .pmpro_btn:hover {
  text-decoration: underline;
}

.pmpro-login-tabler .pmpro_btn .pmpro_icon {
  display: none;
}

/* Card actions – alsó linkek (Lost Password) */
.pmpro-login-tabler .pmpro_card_actions {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--tblr-border-color);
}

.pmpro-login-tabler .pmpro_actions_nav {
  display: flex;
  justify-content: center;
  font-size: .875rem;
}

.pmpro-login-tabler .pmpro_actions_nav a {
  color: var(--tblr-primary);
  text-decoration: none;
}

.pmpro-login-tabler .pmpro_actions_nav a:hover {
  text-decoration: underline;
}


/* ========== PMPro Lost Password – Tabler skin ========== */
/* Lost password wrapper */
.pmpro-login-tabler .pmpro_lost_password_wrap {
  /* már card-body-ban van */
}

/* Instrukciós szöveg */
.pmpro-login-tabler .pmpro_lost_password-instructions {
  margin-bottom: 1rem;
  font-size: .875rem;
  color: var(--tblr-muted);
  line-height: 1.5;
}

/* Spacer */
.pmpro-login-tabler .pmpro_spacer {
  margin-bottom: .5rem;
}

/* Form */
.pmpro-login-tabler #lostpasswordform {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Form fields wrapper */
.pmpro-login-tabler .pmpro_form_fields {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Egyes form field */
.pmpro-login-tabler .pmpro_form_field {
  margin: 0;
}

/* Label – Tabler form-label */
.pmpro-login-tabler .pmpro_form_label {
  display: block;
  font-size: .875rem;
  font-weight: 500;
  margin-bottom: .375rem;
  color: var(--tblr-body-color);
}

/* Required asterisk */
.pmpro-login-tabler .pmpro_asterisk {
  color: var(--tblr-danger);
  font-weight: 600;
}

.pmpro-login-tabler .pmpro_asterisk abbr {
  text-decoration: none;
  border: none;
}

/* Input – Tabler form-control */
.pmpro-login-tabler .pmpro_form_input {
  display: block;
  width: 100%;
  padding: .5rem .75rem;
  font-size: .875rem;
  line-height: 1.5;
  border-radius: var(--tblr-border-radius);
  border: 1px solid var(--tblr-border-color);
  background-color: var(--tblr-bg-surface);
  color: var(--tblr-body-color);
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.pmpro-login-tabler .pmpro_form_input:focus {
  border-color: var(--tblr-primary);
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(32, 107, 196, 0.25);
}

/* Form submit */
.pmpro-login-tabler .pmpro_form_submit {
  margin-top: .5rem;
}

.pmpro-login-tabler .pmpro_btn-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: var(--tblr-border-radius);
  border: 1px solid transparent;
  background-color: var(--tblr-primary);
  color: #fff;
  cursor: pointer;
  transition: background-color .15s ease-in-out;
}

.pmpro-login-tabler .pmpro_btn-submit:hover {
  background-color: #1a5a96;
}

/* Card actions – alsó linkek (Log In vissza) */
.pmpro-login-tabler .pmpro_card_actions {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--tblr-border-color);
}

.pmpro-login-tabler .pmpro_actions_nav {
  display: flex;
  justify-content: center;
  font-size: .875rem;
}

.pmpro-login-tabler .pmpro_actions_nav a {
  color: var(--tblr-primary);
  text-decoration: none;
}

.pmpro-login-tabler .pmpro_actions_nav a:hover {
  text-decoration: underline;
}

/* PMPro success / info üzenet – kiemelve */
.pmpro-login-tabler .pmpro_message.pmpro_alert {
  margin-bottom: 1rem;
  padding: .75rem 1rem;
  border-radius: var(--tblr-border-radius);
  border: 1px solid #2fb344;
  background-color: rgba(47, 179, 68, 0.1);
  color: #2fb344;
  font-size: .875rem;
  line-height: 1.5;
}


/* ========== PMPro Reset Password – finomhangolás ========== */

/* Két jelszómező – grid fix */
.pmpro-login-tabler #resetpassform .pmpro_cols-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

@media (max-width: 576px) {
  .pmpro-login-tabler #resetpassform .pmpro_cols-2 {
    grid-template-columns: 1fr;
  }
}

/* Jelszó label + Show Password egy sorban, szellősen */
.pmpro-login-tabler #resetpassform .pmpro_form_field-password-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: .25rem;
}

/* Show Password link-szerű */
.pmpro-login-tabler #resetpassform .pmpro_btn-password-toggle {
  background: transparent;
  border: none;
  color: var(--tblr-primary);
  font-size: .8125rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  padding: 0;
  text-decoration: none;
}

.pmpro-login-tabler #resetpassform .pmpro_btn-password-toggle:hover {
  text-decoration: underline;
}

.pmpro-login-tabler #resetpassform .pmpro_btn-password-toggle .pmpro_icon {
  display: none;
}

/* Hint + strength blokk közötti távolság */
.pmpro-login-tabler #resetpassform .pmpro_form_hint {
  margin-top: .5rem;
  font-size: .8125rem;
  color: var(--tblr-muted);
  line-height: 1.5;
}

/* Jelszó-erősség jelző – Tabler badge-szerű */
.pmpro-login-tabler #resetpassform #pass-strength-result {
  margin-top: 0rem;
  font-size: .8125rem;
  padding: .25rem .6rem;
  border-radius: 999px;
  display: inline-block;
  background-color: var(--tblr-bg-surface);
  color: var(--tblr-muted);
}

/* Gyenge */
.pmpro-login-tabler #resetpassform #pass-strength-result.bad,
.pmpro-login-tabler #resetpassform #pass-strength-result.short {
  background-color: rgba(214, 57, 57, 0.12);
  color: #d63939;
}

/* Közepes */
.pmpro-login-tabler #resetpassform #pass-strength-result.good {
  background-color: rgba(232, 190, 62, 0.12);
  color: #e8be3e;
}

/* Erős */
.pmpro-login-tabler #resetpassform #pass-strength-result.strong {
  background-color: rgba(47, 179, 68, 0.12);
  color: #2fb344;
}

/* Submit gomb fölötti térköz kicsit nagyobb */
.pmpro-login-tabler #resetpassform .pmpro_form_submit {
  margin-top: 1rem;
}

.pmpro-login-tabler #resetpassform .pmpro_cols-2 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.pmpro-login-tabler #resetpassform p {
	margin-bottom: 0px;
}
