/* Impact One password recovery flow polish */
.login-page{padding:24px 0;overflow-x:hidden;background:radial-gradient(circle at 10% 10%,#eef5ff 0,transparent 36%),#f6f8fb;}
.reset-card{max-width:460px;}
.animated-card{animation:loginCardIn .48s cubic-bezier(.2,.8,.2,1) both;}
.reset-subtitle{line-height:1.6;}
.reset-form .form-control,.reset-form .form-select{min-height:48px;border-radius:11px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;}
.reset-form .form-control:focus,.reset-form .form-select:focus{transform:translateY(-1px);}
.reset-form .btn-login{min-height:49px;}
.reset-back{color:#1769e0;}
.reset-step-note{display:flex;align-items:center;gap:9px;padding:11px 13px;margin-bottom:18px;border:1px solid #e1ebfb;background:#f5f9ff;border-radius:12px;color:#52637a;font-size:.88rem;}
.reset-step-note i{color:#1769e0;font-size:1.05rem;}.reset-step-note a{margin-left:auto;text-decoration:none;font-weight:600;}
.reset-success-panel,.reset-waiting-panel{text-align:center;padding:8px 0 4px;}
.success-check{width:76px;height:76px;border-radius:50%;margin:8px auto 18px;display:grid;place-items:center;background:#e5f8ed;color:#159447;font-size:2.6rem;box-shadow:0 0 0 10px rgba(21,148,71,.055);animation:successPop .45s ease-out both;}
.reset-success-panel h3,.reset-waiting-panel h3{font-size:1.35rem;font-weight:700;color:#243247;margin-bottom:10px;}
.reset-success-panel p,.reset-waiting-panel p{color:#6d7b90;line-height:1.65;font-size:.94rem;}
.success-countdown{margin:22px 0 10px!important;}.countdown-track{height:5px;border-radius:10px;overflow:hidden;background:#e6edf6;}.countdown-track span{display:block;height:100%;width:100%;background:linear-gradient(90deg,#2d83f7,#0d6efd);transform-origin:left;}
@keyframes countdownShrink{from{transform:scaleX(1)}to{transform:scaleX(0)}}
.dancing-mail{position:relative;width:132px;height:112px;margin:0 auto 16px;display:grid;place-items:center;}
.mail-envelope{width:88px;height:70px;border-radius:15px;background:linear-gradient(145deg,#5ca4ff,#1769e0);display:grid;place-items:center;position:relative;color:white;font-size:3rem;box-shadow:0 12px 22px rgba(23,105,224,.22);animation:mailDance 1.2s ease-in-out infinite;}
.mail-face{position:absolute;bottom:7px;font-size:1.2rem;font-weight:700;color:#fff;}
.mail-shadow{position:absolute;bottom:0;width:70px;height:9px;border-radius:50%;background:rgba(23,105,224,.13);animation:shadowPulse 1.2s ease-in-out infinite;}
.mail-spark{position:absolute;color:#ffb02e;font-size:1.45rem;animation:sparkBounce 1s ease-in-out infinite;}.spark-one{left:7px;top:17px}.spark-two{right:6px;top:24px;color:#48b5ff;animation-delay:.25s}
.waiting-tip{display:flex;gap:10px;text-align:left;padding:13px 14px;border-radius:12px;background:#f0f7ff;border:1px solid #d7eaff;color:#526b89;font-size:.88rem;line-height:1.55;margin:20px 0;}.waiting-tip i{color:#1769e0;font-size:1.05rem;flex:0 0 auto;margin-top:2px;}
.waiting-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}.waiting-actions .btn{flex:1 1 150px;border-radius:10px;padding:.72rem .8rem;font-weight:600;}.website-label{font-size:.78rem!important;margin-top:9px!important;color:#8b98aa!important;}
@keyframes mailDance{0%,100%{transform:rotate(-6deg) translateY(0)}25%{transform:rotate(7deg) translateY(-7px)}50%{transform:rotate(-4deg) translateY(0)}75%{transform:rotate(6deg) translateY(-5px)}}
@keyframes shadowPulse{0%,100%{transform:scaleX(1);opacity:.8}50%{transform:scaleX(.72);opacity:.45}}
@keyframes sparkBounce{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(14deg)}}
@keyframes successPop{from{transform:scale(.75);opacity:0}to{transform:scale(1);opacity:1}}
@media(max-width:480px){.login-card{padding:25px 22px}.waiting-actions{flex-direction:column}.waiting-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.animated-card,.success-check,.mail-envelope,.mail-shadow,.mail-spark{animation:none!important}.countdown-track span{animation:none!important;transform:scaleX(0)!important}.reset-form .form-control,.reset-form .form-select{transition:none!important}}


/* Clear, compact recovery journey */
.reset-flow-page{padding:28px 12px;overflow-x:hidden;background:radial-gradient(circle at 12% 8%,rgba(13,110,253,.08),transparent 32%),radial-gradient(circle at 90% 90%,rgba(42,157,244,.055),transparent 28%),#f5f8fc;}
.reset-card{max-width:470px;padding:30px clamp(22px,5vw,36px);}
.reset-subtitle{margin-bottom:1.2rem;}
.reset-progress{display:flex;align-items:center;gap:7px;margin:3px 0 20px;color:#9aa7b8;font-size:.72rem;}
.reset-progress>span{display:flex;align-items:center;gap:5px;white-space:nowrap;}
.reset-progress>span:not(.current):not(.complete){color:#9aa7b8;}
.reset-progress>span.current,.reset-progress>span.complete{color:#1769e0;font-weight:700;}
.reset-progress>span.current:before,.reset-progress>span.complete:before{content:"";display:block;width:8px;height:8px;border-radius:50%;background:#1769e0;box-shadow:0 0 0 3px rgba(23,105,224,.12);}
.reset-progress>span small{font-size:.72rem;font-weight:600;}
.reset-progress>i{height:1px;background:#dfe7f2;flex:1;min-width:9px;}
.reset-progress>span.complete:before{background:#22a06b;box-shadow:0 0 0 3px rgba(34,160,107,.12);}
.reset-expectation{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;margin:0 0 20px;border-radius:12px;background:#f1f7ff;border:1px solid #e0edff;color:#536b8a;font-size:.87rem;line-height:1.5;}
.reset-expectation i{font-size:1.05rem;color:#1769e0;flex:0 0 auto;margin-top:1px;}
.reset-step-note{margin-bottom:15px;}
.waiting-status{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 11px;background:#f0f7ff;color:#2e679f;font-size:.78rem;font-weight:600;margin:0 auto 12px;}
.status-dot{width:7px;height:7px;background:#24a56a;border-radius:50%;box-shadow:0 0 0 4px rgba(36,165,106,.1);}
.reset-waiting-panel{padding-top:0;}
.reset-waiting-panel .dancing-mail{margin-bottom:8px;}
.reset-waiting-panel h3{margin-bottom:7px;}
.reset-waiting-panel>p{margin-bottom:14px;}
.waiting-steps{list-style:none;padding:0;margin:17px 0 12px;text-align:left;display:grid;gap:9px;}
.waiting-steps li{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid #e8eef6;background:#fbfdff;border-radius:12px;}
.waiting-steps li>span{width:27px;height:27px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#e9f2ff;color:#1769e0;font-weight:700;font-size:.8rem;}
.waiting-steps strong{display:block;color:#33445c;font-size:.86rem;font-weight:650;}
.waiting-steps small{display:block;margin-top:2px;color:#7c8ba0;font-size:.77rem;line-height:1.4;}
.waiting-tip{margin:13px 0 16px;padding:10px 12px;font-size:.82rem;}
.waiting-actions{margin-top:17px;}
.waiting-actions .btn{font-size:.86rem;padding:.68rem .65rem;}
@media(max-width:480px){.reset-card{padding:25px 20px}.reset-progress{gap:5px}.reset-progress>span{gap:4px}.reset-progress>span small{font-size:.66rem}.waiting-actions{flex-direction:column}.waiting-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.reset-progress *, .waiting-steps *{scroll-behavior:auto!important}}
