/* PKUSW-33: native recovery controls, in Propeka's existing visual language. */
.hz-password-reset-page[data-pk-recovery-page],
#reset-password-form .modal-content {
	color: var(--pk-text, #14212e);
	font-family: var(--pk-font, "Plus Jakarta Sans", system-ui, sans-serif);
	border: 1px solid var(--pk-n200, #dbe1e8);
	border-radius: 16px;
	background: var(--pk-n0, #fff);
}
.hz-password-reset-page[data-pk-recovery-page] h1,
.hz-password-reset-page[data-pk-recovery-page] h2,
#reset-password-form .modal-title,
#reset-password-form .pk-recovery-complete h2 {
	color: var(--pk-ink, #0d2338);
	font-size: clamp(1.45rem, 3vw, 1.9rem);
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.025em;
}
.pk-recovery-eyebrow { color: var(--pk-red, #ed0028); font-size: .8rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin-bottom: .75rem; }
.pk-recovery-label { display: block; font-weight: 600; margin: 0 0 .5rem; }
.pk-recovery-password { display: flex; align-items: stretch; position: relative; }
.pk-recovery-password .form-control { padding-right: 5rem; }
.pk-recovery-toggle { position: absolute; right: .4rem; top: .35rem; bottom: .35rem; padding: .3rem .6rem; border: 0; border-radius: 6px; background: transparent; color: var(--pk-ink, #0d2338); font: inherit; font-size: .875rem; font-weight: 600; }
.pk-recovery-toggle:hover { background: var(--pk-n50, #f4f6f8); }
.pk-recovery-toggle:focus-visible,
.hz-password-reset-page[data-pk-recovery-page] a:focus-visible,
#reset-password-form a:focus-visible { outline: 3px solid var(--pk-red, #ed0028); outline-offset: 3px; }
.hz-password-reset-page[data-pk-recovery-page] .form-control,
#reset-password-form .form-control { min-height: 48px; border: 1px solid var(--pk-n200, #dbe1e8); border-radius: 8px; }
.hz-password-reset-page[data-pk-recovery-page] .form-control:focus,
#reset-password-form .form-control:focus { border-color: var(--pk-red, #ed0028); box-shadow: 0 0 0 3px rgba(237, 0, 40, .12); }
.hz-password-reset-page[data-pk-recovery-page] .btn-primary,
#reset-password-form .btn-primary { min-height: 48px; border-radius: 8px; border-color: var(--pk-action, #c50021); background: var(--pk-action, #c50021); font-weight: 600; }
.hz-password-reset-page[data-pk-recovery-page] .btn-primary:hover,
#reset-password-form .btn-primary:hover { background: var(--pk-action-hover, #a3001b); border-color: var(--pk-action-hover, #a3001b); }
.pk-recovery-return, .pk-recovery-retry { margin: 1.25rem 0 0; text-align: center; }
.pk-recovery-return a, .pk-recovery-retry a { color: var(--pk-red, #ed0028); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.pk-recovery-retry { font-size: .875rem; }
.pk-recovery-progress:empty { display: none; }
.pk-recovery-progress { margin: 1rem 0 0; color: var(--pk-text-secondary, #566573); }
.pk-recovery-progress[role="alert"] { color: var(--pk-error, #b42318); }
.pk-recovery-complete { padding: .5rem 0; }
.pk-native-feedback .alert { border-radius: 8px; margin-bottom: 1rem; }
[data-pk-recovery-page] [hidden], #reset-password-form [hidden] { display: none !important; }

/* Native wp-login remains accessible, including administrator authentication. */
body.login { --pk-red: #ed0028; --pk-ink: #0d2338; background: #f4f6f8; color: #14212e; font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif; }
body.login #login { width: min(400px, calc(100% - 40px)); padding: 48px 0 24px; }
body.login h1 a { background-repeat: no-repeat; background-position: center; background-size: contain; width: 200px; height: 48px; margin: 0 auto 28px; }
.pk-recovery-login-intro { margin-bottom: 24px; text-align: center; }
.pk-recovery-login-intro h2 { color: #0d2338; font-size: 26px; line-height: 1.25; font-weight: 700; letter-spacing: -.025em; margin: 0 0 12px; }
.pk-recovery-login-intro p { color: #566573; font-size: 15px; line-height: 1.6; }
body.login form { margin-top: 20px; padding: 28px; border: 1px solid #dbe1e8; border-radius: 16px; box-shadow: 0 8px 28px rgba(13, 35, 56, .06); background: #fff; }
body.login label { font-size: 14px; font-weight: 600; color: #0d2338; }
body.login input[type="text"], body.login input[type="password"], body.login input[type="email"] { min-height: 48px; padding: 8px 12px; border: 1px solid #dbe1e8; border-radius: 8px; font-size: 16px; background: #fff; }
body.login input:focus { border-color: #ed0028; box-shadow: 0 0 0 3px rgba(237, 0, 40, .12); outline: none; }
body.login .button-primary { background: #ed0028; border-color: #ed0028; border-radius: 8px; padding: 8px 18px; min-height: 44px; font-size: 14px; font-weight: 600; }
body.login .button-primary:hover, body.login .button-primary:focus { background: #c50021; border-color: #c50021; }
body.login .button-secondary { color: #0d2338; }
body.login .message, body.login #login_error, body.login .success { border-radius: 8px; box-shadow: none; font-size: 14px; }
body.login .message { border-left-color: #ed0028; }
body.login #nav a, body.login #backtoblog a, body.login .pk-recovery-return a { color: #c50021; }
body.login > .pk-recovery-return { margin: 0 auto 32px; max-width: 400px; font-size: 14px; }
@media (max-width: 480px) { body.login #login { padding-top: 28px; } body.login form { padding: 22px; } }

/* Cycle 2: one Show control on the reset form too. */
.pk-recovery-password input::-ms-reveal, .pk-recovery-password input::-ms-clear { display: none; }
