.kd-login-open{overflow:hidden}
.kd-login-shell{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#17263c;overflow:hidden}
.kd-login-shell[open],.kd-login-shell[open]::backdrop{animation:kd-login-enter .14s ease-out}
.kd-login-shell::backdrop{background:rgb(22 39 65 / 42%);backdrop-filter:blur(5px)}
.kd-login-frame{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;background:transparent;visibility:hidden}
.kd-login-shell.is-ready .kd-login-frame{visibility:visible}
.kd-login-shell.is-ready .kd-login-loading{visibility:hidden;pointer-events:none}
.kd-login-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;box-sizing:border-box;padding:40px 32px 0;text-align:center;border:1px solid #e0e9f5;border-radius:24px;background:#fff;box-shadow:0 32px 100px #0c214b40,0 4px 20px #102c5314;font-family:KedaziBody,"Microsoft YaHei",sans-serif;line-height:1.5}
.kd-login-close{position:absolute;top:20px;right:20px;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:#f2f5fa;color:#64748b;font-size:25px;line-height:1;cursor:pointer}
.kd-login-brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:24px;text-align:left}
.kd-login-loading-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d5e5fc;box-sizing:border-box;border-radius:11px;background:#185ed8;color:#fff;font-size:24px;font-weight:650;box-shadow:0 3px 8px #185ed81a}
.kd-login-brand strong{display:block;font-size:17px;line-height:1.3;letter-spacing:.03em;font-weight:700}
.kd-login-brand small{display:block;margin-top:3px;font-size:9px;line-height:1.5;font-weight:650;letter-spacing:.2em;color:#7184a0}
.kd-login-loading h2{margin:0;font-size:24px;line-height:1.35;font-weight:650;letter-spacing:-.025em}
.kd-login-loading .kd-login-description{margin:6px 0 0;color:#667b96;font-size:13px;line-height:1.6}
.kd-login-qr{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;width:244px;height:244px;box-sizing:border-box;margin:26px auto 0;padding:12px;border:1px solid #dfe9f6;border-radius:16px;background:#fff}
.kd-login-qr p{margin:0;color:#6b7c92;font-size:13px;line-height:1.5}
.kd-login-spinner{width:28px;height:28px;border:2px solid #dce9fb;border-top-color:#185ed8;box-sizing:border-box;border-radius:50%;animation:kd-login-spin .9s linear infinite}
.kd-login-tools{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:12px;padding:4px 0;color:#185ed8;opacity:.5;font-size:11px;line-height:1.5}
.kd-login-loading .kd-login-guide{margin:18px 0 0;color:#8190a5;font-size:11px;line-height:1.75}
.kd-login-footer{margin:16px -32px 0;padding:14px 25px 18px;border-top:1px solid #e9eef5}
.kd-login-loading a{display:inline-block;padding:4px;color:#185ed8;font-size:12px;font-weight:550;line-height:1.5;text-decoration:none}
.kd-login-loading a:hover{text-decoration:underline}
.kd-login-close:focus-visible,.kd-login-loading a:focus-visible{outline:2px solid #185ed8;outline-offset:3px}
@keyframes kd-login-enter{from{opacity:0}to{opacity:1}}
@keyframes kd-login-spin{to{transform:rotate(360deg)}}
@media(max-width:480px){.kd-login-loading{padding-left:24px;padding-right:24px;border-radius:20px}.kd-login-footer{margin-left:-24px;margin-right:-24px}}
@media(max-height:650px){.kd-login-loading{padding-top:24px}.kd-login-brand{margin-bottom:16px}.kd-login-qr{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.kd-login-shell,.kd-login-spinner{animation:none}.kd-login-shell::backdrop{backdrop-filter:none}}
