.kui-login.kui-login-progress-open{overflow:hidden}
.kui-login .kui-login-progress{width:min(440px,calc(100% - 36px));max-width:none;max-height:calc(100dvh - 36px);margin:auto;padding:30px 34px 28px;border:1px solid #e0e8f3;border-radius:28px;background:linear-gradient(145deg,#fff,#f6f9fd);color:#152d4d;box-shadow:0 26px 90px #152d4d24;text-align:center;overflow:visible;outline:none}
.kui-login .kui-login-progress::backdrop{background:#152d4d69;backdrop-filter:blur(7px)}
.kui-login .kui-login-progress[open]{animation:kui-login-card-in 240ms ease-out}
.kui-login .kui-login-progress-logo{display:block;width:168px;max-width:100%;height:auto;margin:0 auto 24px}
.kui-login .kui-login-progress-symbol{position:relative;display:grid;place-items:center;width:66px;height:66px;margin:0 auto 22px;border-radius:50%;background:#fff;color:#315a78}
.kui-login .kui-login-progress-symbol>span{position:absolute;inset:0;border:2px solid #e0e8f3;border-top-color:#4a78ac;border-right-color:#4a78ac;border-radius:50%;animation:kui-login-ring 1.2s linear infinite}
.kui-login .kui-login-progress-symbol svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.kui-login .kui-login-progress-kicker{margin:0 0 9px;color:#788899;font-size:14px;line-height:1.5}
.kui-login .kui-login-progress h2{margin:0;color:#152d4d;font-size:24px;font-weight:700;line-height:1.45;letter-spacing:-.045em}
.kui-login .kui-login-progress-message{min-height:26px;margin:16px 0 22px;color:#52677d;font-size:16px;font-weight:500;line-height:1.6}
.kui-login .kui-login-progress-track{height:9px;overflow:hidden;border-radius:20px;background:#e5ecf7}
.kui-login .kui-login-progress-fill{position:relative;display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(100deg,#2343ac,#3067e9 35%,#258cf2 65%,#54b6f5 85%,#4f78eb);transform-origin:left;animation:kui-login-fill 5s cubic-bezier(.24,.55,.3,1) forwards}
.kui-login .kui-login-progress-fill::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent,#ffffff80,transparent);animation:kui-login-shine 1.5s ease-in-out infinite}
.kui-login .kui-login-progress-steps{display:flex;justify-content:space-between;gap:10px;margin-top:16px}
.kui-login .kui-login-progress-step{display:flex;align-items:center;gap:6px;color:#8290a0;font-size:14px;line-height:1.5;transition:color .2s}
.kui-login .kui-login-progress-step i{flex:none;width:5px;height:5px;border-radius:50%;background:#cbd6e3}
.kui-login .kui-login-progress-step.is-active{color:#315a78;font-weight:600}
.kui-login .kui-login-progress-step.is-active i{background:#5484b1;box-shadow:0 0 0 4px #5484b114}
.kui-login .kui-login-progress-note{margin:25px 0 0;padding-top:20px;border-top:1px solid #e0e8f3;color:#788899;font-size:14px;line-height:1.7}
.kui-login .kui-login-progress.is-complete .kui-login-progress-fill{animation:none;transform:scaleX(1)}
@keyframes kui-login-ring{to{transform:rotate(360deg)}}
@keyframes kui-login-fill{from{transform:scaleX(.025)}to{transform:scaleX(.94)}}
@keyframes kui-login-shine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@keyframes kui-login-card-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:480px){.kui-login .kui-login-progress{padding:25px 22px}.kui-login .kui-login-progress h2{font-size:22px}.kui-login .kui-login-progress-steps{gap:8px}}
@media(prefers-reduced-motion:reduce){.kui-login .kui-login-progress[open],.kui-login .kui-login-progress-symbol>span,.kui-login .kui-login-progress-fill::after{animation:none}.kui-login .kui-login-progress-fill{animation:none;transform:scaleX(.94)}.kui-login .kui-login-progress-step{transition:none}}
