/* Set New Password */
.pw-title { font-size: clamp(30px, 7.4vw, 52px); }
.pw-card { text-align: left; }
.pw-card .bz-no { text-align: center; }
.pw-label { display: block; font-family: var(--sans); font-weight: 800; font-size: clamp(20px, 5vw, 24px); margin: 14px 0 10px; color: var(--ink); }
.pw-field { position: relative; }
.pw-field input { width: 100%; box-sizing: border-box; font: inherit; font-family: var(--sans); font-size: 20px; letter-spacing: .03em; padding: 16px 52px 16px 16px; border: 2px solid var(--ink); border-radius: 6px; background: #fff; color: var(--ink); }
.pw-field input:focus { outline: 3px solid rgba(189,46,50,.25); border-color: var(--brand); }
.pw-eye { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; appearance: none; border: 0; background: none; cursor: pointer; color: #555; border-radius: 6px; }
.pw-eye:hover { color: var(--ink); }
.pw-eye .eye-off { display: none; }
.pw-eye[aria-pressed="true"] .eye-on { display: none; }
.pw-eye[aria-pressed="true"] .eye-off { display: block; }
.pw-meter { height: 8px; background: #e4e1da; border-radius: 99px; overflow: hidden; margin: 14px 0 0; }
.pw-meter i { display: block; height: 100%; width: 0; border-radius: 99px; background: #c0262d; transition: width .25s ease, background-color .25s ease; }
.pw-hint { font-family: var(--sans); font-size: 14px; color: var(--muted); margin: 10px 0 0; }
.pw-hint b { color: var(--ink); }
.pw-errors { list-style: none; margin: 10px 0 0; padding: 0; font-family: var(--sans); font-size: 14px; line-height: 1.4; }
.pw-errors li { position: relative; padding: 4px 0 4px 22px; color: #9a2328; }
.pw-errors li::before { content: ""; position: absolute; left: 3px; top: 10px; width: 10px; height: 10px; border-radius: 50%; background: #c0262d; }
.pw-set { display: block; margin: 18px auto 0; font-size: 20px; width: min(280px, 100%); }
.pw-card.shake .pw-field { animation: otpshake .4s ease; }
.pw-card.done .pw-field input { background: #f1efe9; color: #555; }
.pw-card.done .pw-set, .pw-card.done .pw-errors, .pw-card.done .pw-hint, .pw-card.done .pw-meter { display: none; }
.pw-card .bz-result { margin-top: 20px; padding-top: 6px; border-top: 1px solid var(--rule); text-align: center; }
.pw-card .bz-result[hidden], .bz-result .bz-actions[hidden] { display: none; }
@keyframes otpshake { 10%, 90% { transform: translateX(-2px); } 20%, 80% { transform: translateX(4px); } 30%, 50%, 70% { transform: translateX(-6px); } 40%, 60% { transform: translateX(6px); } }
