.ws-password-reset { padding-top: 138px; min-height: 85vh; }
.ws-password-reset__container { max-width: 600px; }
.ws-password-reset__back { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 22px; font-size: .9rem; }
.ws-password-reset__card { padding: 36px; }
.ws-password-reset__icon { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 24px; border-radius: 16px; background: #eaf4fe; color: #006fc4; font-size: 1.35rem; }
.ws-password-reset__card h1 { margin: 10px 0 16px; color: #112051; font-size: clamp(1.9rem, 4vw, 2.6rem); line-height: 1.12; letter-spacing: -.035em; }
.ws-password-reset__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; width: 100%; max-width: 360px; padding: 16px 6px; margin: 26px auto 30px; border: 1px solid #e8edf4; border-radius: 14px; background: #f6f8fc; list-style: none; color: #65748a; font-size: .75rem; line-height: 1.4; }
.ws-password-reset__steps li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; min-width: 0; padding: 0 4px; text-align: center; }
.ws-password-reset__steps li:not(:last-child)::before { content: ""; position: absolute; top: 15px; left: 50%; width: 100%; height: 2px; background: #dbe3ee; }
.ws-password-reset__steps li > span { position: relative; display: grid; flex: none; width: 32px; height: 32px; place-items: center; border-radius: 50%; background: #e5ebf3; box-shadow: 0 0 0 5px #f6f8fc; font-size: .8rem; font-weight: 700; }
.ws-password-reset__steps li:has(~ [aria-current])::before { background: #006fc4; }
.ws-password-reset__steps li:has(~ [aria-current]) > span { background: #dceefe; color: #006fc4; }
.ws-password-reset__steps [aria-current] { color: #006fc4; font-weight: 700; }
.ws-password-reset__steps [aria-current] > span { background: #006fc4; color: #fff; }
.ws-password-reset__card .ws-alert { margin: 18px 0; font-size: .86rem; padding: 16px; }
.ws-password-reset__card .ws-password-reset__code { font-size: 1.6rem; letter-spacing: .18em; font-variant-numeric: tabular-nums; }
.ws-password-reset__card .ws-password-reset__email { margin: 0; padding: 12px 16px; background: #f3f7fb; border-radius: 10px; overflow-wrap: anywhere; }
.ws-password-reset__card .ws-store-login__support { display: block; margin-top: 22px; font-size: .86rem; }
.ws-password-reset__card .ws-password-reset__cart { margin: 24px 0 0; padding-top: 20px; border-top: 1px solid #e1e8f0; color: #526079; font-size: .85rem; }
.ws-password-reset__cart i { margin-right: 6px; color: #006fc4; }
@media (max-width: 600px) {
  .ws-password-reset { padding: 114px 0 64px; }
  .ws-password-reset__card { padding: 24px 20px; border-radius: 20px; }
  .ws-password-reset__steps { font-size: .7rem; }
  .ws-password-reset__card .ws-button { font-size: .86rem; white-space: normal; }
}
