/* Scoped to the login page; no dashboard or authentication changes. */
body.auth-page.login-redesign{--login-bg:#070f0c;--login-surface:#0d1420;--login-ink:#e9f3ee;--login-muted:#90aba2;--login-border:#2a3a43;min-height:100vh;display:flex;flex-direction:column;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--login-ink);background:radial-gradient(ellipse at 7% 8%,#00d78d20,transparent 36%),radial-gradient(ellipse at 96% 95%,#e8c64a1c,transparent 30%),linear-gradient(#54bd7910 1px,transparent 1px),linear-gradient(90deg,#54bd7910 1px,transparent 1px),var(--login-bg);background-size:auto,auto,48px 48px,48px 48px,auto}
html[data-theme=light] body.auth-page.login-redesign{--login-bg:#eef5f0;--login-surface:#fff;--login-ink:#17352b;--login-muted:#4e7165;--login-border:#c5d9ce}
body.auth-page.login-redesign .auth-header{width:min(1030px,calc(100% - 48px));max-width:none;min-height:58px;margin:0 auto;padding:12px 0;display:flex;align-items:center;justify-content:flex-end;background:transparent!important;border:0;box-sizing:border-box}
body.auth-page.login-redesign .auth-header>.brand,body.auth-page.login-redesign .auth-header>.private{display:none}
body.auth-page.login-redesign #panel-theme-toggle{margin-left:auto;background:var(--login-surface);border:1px solid var(--login-border);color:var(--login-muted);border-radius:20px;padding:7px 12px;font-size:11px}
body.auth-page.login-redesign main#content{width:min(1030px,calc(100% - 48px));max-width:none;margin:auto;padding:16px 0 24px;box-sizing:border-box}
body.auth-page.login-redesign .login-layout{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;background:var(--login-surface);border:1px solid var(--login-border);border-radius:26px;padding:20px;box-shadow:0 24px 100px #0004,0 0 60px #00d78d07;overflow:hidden}
body.auth-page.login-redesign .login-story{min-width:0;padding:38px 34px 30px;border-right:1px solid var(--login-border);background:radial-gradient(ellipse at top left,#0adf9440,transparent 55%),radial-gradient(ellipse at bottom right,#ecc94c18,transparent 40%),linear-gradient(155deg,#102c28,var(--login-surface) 80%)}
html[data-theme=light] body.auth-page.login-redesign .login-story{background:radial-gradient(ellipse at top left,#1cc98225,transparent 65%),#f3faf5}
body.auth-page.login-redesign .login-brand{display:flex;align-items:center;gap:12px;margin-bottom:35px;color:var(--login-ink);text-decoration:none;font-size:23px;font-weight:750;letter-spacing:.5px}
body.auth-page.login-redesign .login-brand b{color:#6fe8a0}
html[data-theme=light] body.auth-page.login-redesign .login-brand b{color:#087a50}
body.auth-page.login-redesign .login-brand-symbol{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#18dd88,#e5ca52);color:#062c1f;box-shadow:0 6px 30px #22d98724}
body.auth-page.login-redesign .login-brand-symbol svg{width:27px;height:27px}
body.auth-page.login-redesign .login-kicker{display:flex;align-items:center;gap:8px;color:#e0c656;font-size:10px;font-weight:700;letter-spacing:2px;line-height:1.6}
html[data-theme=light] body.auth-page.login-redesign .login-kicker{color:#6c5911}
body.auth-page.login-redesign .login-kicker svg{width:15px;height:15px}
body.auth-page.login-redesign .login-story h1{font-size:clamp(28px,2.8vw,37px);line-height:1.14;letter-spacing:-1.2px;margin:17px 0 19px;color:var(--login-ink);font-weight:750}
body.auth-page.login-redesign .login-story h1 span{color:#ecd46d}
html[data-theme=light] body.auth-page.login-redesign .login-story h1 span{color:#826400}
body.auth-page.login-redesign .login-description{font-size:14px;line-height:1.8;color:var(--login-muted);margin:0 0 28px}
body.auth-page.login-redesign .login-features{display:flex;flex-direction:column;gap:19px;list-style:none;margin:0;padding:0}
body.auth-page.login-redesign .login-features li{display:flex;align-items:center;gap:12px}
body.auth-page.login-redesign .login-features li>span{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border:1px solid #1cc98a55;border-radius:11px;background:#16d8920b;color:#37db9c}
body.auth-page.login-redesign .login-features svg{width:19px;height:19px}
body.auth-page.login-redesign .login-features strong{display:block;color:var(--login-ink);font-size:13px;font-weight:650;line-height:1.5}
body.auth-page.login-redesign .login-features small{display:block;color:var(--login-muted);font-size:11px;line-height:1.7}
body.auth-page.login-redesign .login-story-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;border-top:1px solid var(--login-border);margin-top:28px;padding-top:20px;color:var(--login-muted);font-size:10px;letter-spacing:.4px}
body.auth-page.login-redesign .login-panel{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:44px 38px;background:var(--login-surface)}
body.auth-page.login-redesign .login-panel>.login-kicker{color:var(--login-muted);font-size:9px;letter-spacing:1.4px}
body.auth-page.login-redesign .login-panel h2{font-size:27px;letter-spacing:-.8px;line-height:1.25;margin:16px 0 7px;color:var(--login-ink);font-weight:750}
body.auth-page.login-redesign .login-panel-description{margin:0 0 26px;color:var(--login-muted);line-height:1.7;font-size:13px}
body.auth-page.login-redesign .login-form{display:flex;flex-direction:column;gap:0;margin:0}
body.auth-page.login-redesign .login-form>label{font-size:12px;font-weight:550;line-height:1.5;color:var(--login-muted);margin:0 0 8px}
body.auth-page.login-redesign .login-form input{width:100%;height:49px;box-sizing:border-box;border:1px solid var(--login-border);border-radius:12px;padding:0 14px;background:var(--login-bg);color:var(--login-ink);font:inherit;font-size:14px;margin:0 0 19px;box-shadow:none}
body.auth-page.login-redesign .login-form input::placeholder{color:var(--login-muted);opacity:.75}
body.auth-page.login-redesign .login-form input:focus{outline:3px solid #ddc85b20;outline-offset:1px;border-color:#e2c553;box-shadow:none}
body.auth-page.login-redesign .login-password-field{position:relative}
body.auth-page.login-redesign .login-password-field input{padding-right:49px}
body.auth-page.login-redesign .login-password-toggle{position:absolute;right:3px;top:3px;width:43px;height:43px;min-height:43px;border:0;border-radius:9px;display:grid;place-items:center;background:transparent;color:var(--login-muted);padding:0;cursor:pointer}
body.auth-page.login-redesign .login-password-toggle[hidden]{display:none}
body.auth-page.login-redesign .login-password-toggle:hover{background:#26dc9312;color:var(--login-ink)}
body.auth-page.login-redesign .login-password-toggle:focus-visible{outline:2px solid #d9c354;outline-offset:-2px}
body.auth-page.login-redesign .login-verification{margin:0 0 17px;min-width:0}
body.auth-page.login-redesign .turnstile-challenge{max-width:100%}
body.auth-page.login-redesign .turnstile-status{color:var(--login-muted);font-size:11px;line-height:1.5}
body.auth-page.login-redesign .login-form .login-submit{width:100%;min-height:49px;display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(100deg,#1cdb86,#e8cb54);color:#09291b;border:0;border-radius:12px;box-shadow:0 8px 25px #00ce7a16;font-size:14px;font-weight:750;margin:3px 0 0;padding:12px 16px;cursor:pointer}
body.auth-page.login-redesign .login-form .login-submit:hover{filter:brightness(1.08)}
body.auth-page.login-redesign .login-form .login-submit:disabled{opacity:.5;cursor:not-allowed}
body.auth-page.login-redesign .login-submit>span:last-child{font-size:21px;line-height:1}
body.auth-page.login-redesign .login-secure{display:flex;align-items:center;justify-content:center;gap:7px;margin:24px 0 0;color:var(--login-muted);font-size:10px;line-height:1.5}
body.auth-page.login-redesign .login-secure svg{width:14px;height:14px;color:#32d395}
body.auth-page.login-redesign footer{width:min(1030px,calc(100% - 48px));max-width:none;margin:0 auto;padding:0 0 18px;display:flex;justify-content:space-between;gap:12px;color:var(--login-muted);font-size:10px;box-sizing:border-box;border:0;opacity:.75}
@media(max-width:900px){:root body.auth-page.login-redesign .login-story{padding:30px 25px}:root body.auth-page.login-redesign .login-panel{padding:36px 26px}:root body.auth-page.login-redesign .login-layout{padding:12px}:root body.auth-page.login-redesign .login-description{font-size:13px}}
@media(max-width:720px){:root body.auth-page.login-redesign .auth-header,body.auth-page.login-redesign main#content,body.auth-page.login-redesign footer{width:calc(100% - 32px)}:root body.auth-page.login-redesign .auth-header{min-height:48px}:root body.auth-page.login-redesign main#content{padding:8px 0 22px;max-width:500px}.login-redesign .login-layout{grid-template-columns:1fr;border-radius:20px;padding:10px}:root body.auth-page.login-redesign .login-story{padding:24px 20px;border-right:0;border-bottom:1px solid var(--login-border)}:root body.auth-page.login-redesign .login-brand{margin-bottom:20px;font-size:21px}:root body.auth-page.login-redesign .login-brand-symbol{width:40px;height:40px;border-radius:12px}:root body.auth-page.login-redesign .login-story h1{font-size:30px;margin:12px 0}:root body.auth-page.login-redesign .login-story h1 br{display:none}:root body.auth-page.login-redesign .login-story h1 br:after{content:' '}:root body.auth-page.login-redesign .login-description{margin:0;font-size:13px}:root body.auth-page.login-redesign .login-features,body.auth-page.login-redesign .login-story-footer{display:none}:root body.auth-page.login-redesign .login-panel{padding:28px 20px}:root body.auth-page.login-redesign .login-panel h2{font-size:25px}:root body.auth-page.login-redesign footer{font-size:9px;flex-wrap:wrap}}
@media(max-width:380px){:root body.auth-page.login-redesign .login-story,body.auth-page.login-redesign .login-panel{padding-left:14px;padding-right:14px}:root body.auth-page.login-redesign .login-story h1{font-size:27px}}

/* Compact animated variant. Success is rendered only after server validation. */
:root body.auth-page.login-redesign{--login-bg:#090f16;--login-surface:#101924;--login-ink:#eaf4f1;--login-muted:#95aaa6;--login-border:#2a3b43;background:radial-gradient(ellipse at 8% 12%,#13d68a1c,transparent 38%),radial-gradient(ellipse at 94% 88%,#e8c94b16,transparent 30%),linear-gradient(#4de8ae07 1px,transparent 1px),linear-gradient(90deg,#4de8ae07 1px,transparent 1px),#090f16;background-size:auto,auto,48px 48px,48px 48px,auto}
:root body.login-redesign .auth-header{min-height:48px;width:min(960px,calc(100% - 40px));border:0;padding:8px 0}
:root body.login-redesign .auth-header>.brand{display:none}
:root body.login-redesign main#content{width:min(960px,calc(100% - 40px));padding:12px 0 24px}
:root body.login-redesign .login-layout{grid-template-columns:1fr 1fr;gap:0;padding:14px;border-radius:24px}
:root body.login-redesign .login-story{padding:30px 30px 24px}
:root body.login-redesign .login-brand{font-size:24px;letter-spacing:-.5px;margin-bottom:25px}
:root body.login-redesign .login-brand-symbol{width:39px;height:39px;border-radius:12px;font-size:26px}
:root body.login-redesign .login-story h1{font-size:32px;line-height:1.16;margin:14px 0;letter-spacing:-1.1px}
:root body.login-redesign .login-description{font-size:13px;line-height:1.75;margin-bottom:5px}
:root body.login-redesign .login-panel{padding:34px 30px}
:root body.login-redesign .login-panel h2{font-size:26px}
:root body.login-redesign .login-panel-description{font-size:12px;margin-bottom:22px}
:root body.login-redesign .login-form input{height:47px;margin-bottom:17px}
:root body.login-redesign .login-password-toggle{height:41px;min-height:41px;width:41px}
:root body.login-redesign .login-form .login-submit{min-height:47px}
:root body.login-redesign .login-kicker{font-size:9px;letter-spacing:1.7px}
:root body.login-redesign .login-story-footer{margin-top:19px;padding-top:16px;font-size:9px}
:root body.login-redesign .login-secure{font-size:10px;margin-top:21px}
:root body.login-redesign footer{width:min(960px,calc(100% - 40px));padding-bottom:15px;font-size:9px}
:root body.login-redesign .vault-scene{position:relative;height:150px;display:grid;place-items:center;isolation:isolate;margin:10px auto 0;color:#7cecb6;width:220px;max-width:100%}
:root body.login-redesign .vault-scene:before{content:"";position:absolute;width:115px;height:115px;border-radius:50%;background:#32dfaa13;filter:blur(20px);z-index:-1}
:root body.login-redesign .vault-lock{height:113px;width:96px;overflow:visible;filter:drop-shadow(0 0 12px #32dfaa18)}
:root body.login-redesign .vault-shackle{transform-origin:84px 61px;transition:transform .65s cubic-bezier(.2,.7,.2,1),stroke .3s}
:root body.login-redesign .vault-orbit{position:absolute;inset:12px 40px;border:1px solid #7cecb61a;border-radius:50%;transform:rotate(-25deg) scaleY(.72)}
:root body.login-redesign .vault-orbit-two{inset:0 22px;border-color:#c3b3ff16;transform:rotate(25deg) scaleY(.72)}
:root body.login-redesign .vault-indicator{position:absolute;width:5px;height:5px;left:34px;top:72px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor}
:root body.login-redesign .vault-caption{text-align:center;font-size:10px;color:var(--login-muted);margin:1px 0 0;line-height:1.6}
:root body.login-redesign .vault-status{margin:0;min-height:0;color:var(--login-muted);font-size:11px;line-height:1.5}
:root body.login-redesign .vault-status:not(:empty){margin-bottom:13px}
:root body.login-redesign [data-login-state=typing] .vault-scene{color:#d4d789}
:root body.login-redesign [data-login-state=checking] .vault-orbit{animation:vault-scan 1.2s linear infinite;border-top-color:#7cecb6}
:root body.login-redesign [data-login-state=error] .vault-scene{color:#ff929c;animation:vault-shake .45s ease-in-out}
:root body.login-redesign [data-login-state=success] .vault-scene{color:#8ef4bf}
:root body.login-redesign [data-login-state=success] .vault-shackle{transform:translate(5px,-12px) rotate(-26deg)}
:root body.login-redesign [data-login-state=success] .vault-body{fill-opacity:.18}
:root body.login-redesign .vault-welcome{text-align:center;max-width:470px;margin:30px auto;padding:38px 24px;border:1px solid var(--login-border);border-radius:22px;background:var(--login-surface)}
:root body.login-redesign .vault-welcome .login-kicker{justify-content:center}
:root body.login-redesign .vault-welcome h1{font-size:27px;letter-spacing:-.7px;color:var(--login-ink);margin:20px 0 12px}
:root body.login-redesign .vault-welcome p{font-size:13px;color:var(--login-muted)}
:root body.login-redesign .vault-welcome .vault-shackle{animation:vault-unlock .8s ease both}
:root body.login-redesign .vault-continue{display:inline-block;margin-top:15px;color:#7cecb6;font-size:12px;text-underline-offset:4px}
:root body.login-redesign .vault-demo-captcha{font-size:11px;color:var(--login-muted);border:1px solid var(--login-border);border-radius:6px;padding:14px}
:root body.login-redesign .login-verification small{font-size:10px;color:var(--login-muted)}
.vault-demo-tools{display:flex;justify-content:center;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 18px;border-top:1px solid #ffffff14;font:10px system-ui;color:#9eb2c2;background:#101924}.vault-demo-tools button{padding:8px 10px;border:1px solid #314653;border-radius:8px;background:#192a34;color:#d5ece5;font:11px system-ui;cursor:pointer}
@keyframes vault-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
@keyframes vault-scan{to{transform:rotate(335deg) scaleY(.72)}}
@keyframes vault-unlock{from{transform:translate(0,0) rotate(0)}to{transform:translate(5px,-12px) rotate(-26deg)}}
@media(max-width:720px){:root body.login-redesign main#content{max-width:460px}:root body.login-redesign .login-layout{grid-template-columns:1fr;padding:10px}:root body.login-redesign .login-story{padding:23px 22px 18px}:root body.login-redesign .login-brand{margin-bottom:17px}:root body.login-redesign .login-story h1{font-size:28px}:root body.login-redesign .vault-scene{height:112px;margin:3px auto 0;width:170px}:root body.login-redesign .vault-lock{height:87px;width:75px}:root body.login-redesign .vault-orbit{inset:5px 30px}:root body.login-redesign .vault-orbit-two{inset:0 17px}:root body.login-redesign .vault-caption{display:none}:root body.login-redesign .login-panel{padding:24px 22px}:root body.login-redesign .login-panel h2{font-size:25px}:root body.login-redesign .login-description{font-size:12px}}
@media(prefers-reduced-motion:reduce){:root body.login-redesign *{animation:none!important;transition:none!important}}

/* Layered lock illustration. Only the validated success state opens it. */
:root body.login-redesign .vault-scene{height:174px;width:240px;perspective:700px;overflow:visible;color:#8df5c7}
:root body.login-redesign .lock-stage{position:relative;width:115px;height:142px;transform-style:preserve-3d;transform:rotateX(9deg) rotateY(-19deg) rotateZ(-5deg);animation:lock-idle 7s ease-in-out infinite;will-change:transform}
:root body.login-redesign .lock-shadow{position:absolute;width:107px;height:16px;left:calc(50% - 53px);bottom:7px;background:#0006;border-radius:50%;filter:blur(7px);transform:rotate(-7deg);transition:opacity .4s}
:root body.login-redesign .lock-metal{position:absolute;left:27px;top:5px;width:57px;height:74px;box-sizing:border-box;border:10px solid #9bdcc8;border-bottom:0;border-radius:35px 35px 0 0;transform-origin:52px 69px;transform-style:preserve-3d;box-shadow:inset 3px 1px 3px #efffffa8,3px 1px 0 #447c72,-2px 0 0 #dcfff5;filter:drop-shadow(0 3px 2px #0004)}
:root body.login-redesign .lock-metal:after{content:"";position:absolute;right:-10px;bottom:-11px;width:10px;height:15px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,#5b9f90,#b3efdd 60%,#447a70)}
:root body.login-redesign .lock-case{position:absolute;left:7px;top:62px;width:101px;height:75px;border-radius:18px;transform-style:preserve-3d;background:linear-gradient(140deg,#a7ffe0 0%,#43b397 35%,#205c55 80%);border:1px solid #c0ffeb80;box-shadow:inset 1px 1px 1px #e4fff2b3,inset -2px -3px 4px #042e35a6,7px 5px 0 #173f3b,8px 6px 0 #427c6b,12px 14px 20px #0004}
:root body.login-redesign .lock-case:before{content:"";position:absolute;inset:8px;border:1px solid #dcfff04a;border-radius:12px;background:linear-gradient(115deg,#ffffff1a,transparent 46%)}
:root body.login-redesign .lock-case:after{content:"";position:absolute;top:1px;left:17px;right:17px;height:2px;border-radius:50%;background:#dcfff1ad;filter:blur(.5px)}
:root body.login-redesign .lock-keyhole{position:absolute;left:44px;top:25px;width:12px;height:12px;border-radius:50%;background:#092e31;box-shadow:0 1px 0 #e1fff77a,inset 0 2px 3px #0006}
:root body.login-redesign .lock-keyhole:after{content:"";position:absolute;left:4px;top:8px;width:5px;height:12px;border-radius:1px 1px 3px 3px;background:#092e31}
:root body.login-redesign .lock-key{position:absolute;width:68px;height:24px;top:94px;left:124px;transform-origin:12px 12px;transform:translateX(12px) rotate(-24deg);opacity:0;color:#e7d68f;filter:drop-shadow(2px 3px 2px #0005)}
:root body.login-redesign .lock-key svg{display:block;width:68px;height:24px}
:root body.login-redesign .lock-spark{position:absolute;left:calc(50% - 2px);top:70px;width:4px;height:4px;background:#abffdf;border-radius:50%;opacity:0;pointer-events:none}
:root body.login-redesign .lock-spark.s2{background:#e8dc93}
:root body.login-redesign .lock-spark.s3{background:#8dcaff}
:root body.login-redesign [data-login-state=typing] .lock-stage{filter:drop-shadow(0 0 9px #e5d48d24)}
:root body.login-redesign [data-login-state=checking] .lock-stage{animation:lock-check 1.4s ease-in-out infinite}
:root body.login-redesign [data-login-state=checking] .lock-key{animation:key-check 1.4s ease-in-out infinite}
:root body.login-redesign [data-login-state=error] .lock-stage{animation:lock-reject .55s ease-in-out;filter:drop-shadow(0 0 10px #ff728c55)}
:root body.login-redesign [data-login-state=error] .lock-case{background:linear-gradient(140deg,#ffb4ba,#a64c62 50%,#4d293f)}
:root body.login-redesign [data-login-state=success] .lock-stage{animation:lock-reveal 1.8s cubic-bezier(.22,.7,.25,1) both}
:root body.login-redesign [data-login-state=success] .lock-metal{animation:shackle-release 1.65s cubic-bezier(.22,.7,.25,1) both}
:root body.login-redesign [data-login-state=success] .lock-key{animation:key-unlock 1.4s ease both}
:root body.login-redesign [data-login-state=success] .lock-spark{animation:lock-sparkle 1.25s .65s ease-out both;--sx:-83px;--sy:-48px}
:root body.login-redesign [data-login-state=success] .lock-spark.s2{--sx:84px;--sy:-24px;animation-delay:.8s}
:root body.login-redesign [data-login-state=success] .lock-spark.s3{--sx:48px;--sy:-77px;animation-delay:.9s}
:root body.login-redesign [data-login-state=success] .lock-shadow{opacity:.45}
:root body.login-redesign .vault-welcome .vault-scene{margin-top:22px;height:190px}
@keyframes lock-idle{0%,100%{transform:rotateX(9deg) rotateY(-19deg) rotateZ(-5deg) translateY(0)}50%{transform:rotateX(5deg) rotateY(-8deg) rotateZ(-2deg) translateY(-5px)}}
@keyframes lock-check{0%,100%{transform:rotateX(8deg) rotateY(-22deg) rotateZ(-4deg)}50%{transform:rotateX(12deg) rotateY(8deg) rotateZ(2deg)}}
@keyframes key-check{0%,100%{opacity:.3;transform:translateX(8px) rotate(-15deg)}50%{opacity:.95;transform:translateX(-28px) rotate(15deg)}}
@keyframes lock-reject{0%,100%{transform:rotateY(-19deg) rotateZ(-5deg)}20%,60%{transform:translateX(-5px) rotateY(-25deg) rotateZ(-10deg)}40%,80%{transform:translateX(5px) rotateY(-12deg) rotateZ(2deg)}}
@keyframes lock-reveal{0%{transform:rotateX(9deg) rotateY(-19deg) rotateZ(-5deg)}35%{transform:rotateX(2deg) rotateY(10deg) rotateZ(0)}100%{transform:translateY(-6px) rotateX(-7deg) rotateY(-28deg) rotateZ(-4deg)}}
@keyframes shackle-release{0%,25%{transform:translateY(0) rotateY(0) rotateZ(0)}50%{transform:translateY(-24px) rotateY(0) rotateZ(0)}100%{transform:translateY(-24px) rotateY(-65deg) rotateZ(30deg)}}
@keyframes key-unlock{0%{opacity:0;transform:translateX(5px) rotate(-20deg)}25%{opacity:1;transform:translateX(-49px) rotate(0)}50%{opacity:1;transform:translateX(-49px) rotate(85deg)}100%{opacity:0;transform:translate(22px,20px) rotate(110deg)}}
@keyframes lock-sparkle{0%{opacity:0;transform:translate(0,0) scale(.3)}15%{opacity:1}100%{opacity:0;transform:translate(var(--sx),var(--sy)) scale(0)}}
@media(max-width:720px){:root body.login-redesign .vault-scene{height:142px;width:220px;margin-top:3px}:root body.login-redesign .lock-stage{scale:.85}:root body.login-redesign .lock-shadow{bottom:0}}
@media(prefers-reduced-motion:reduce){:root body.login-redesign .lock-stage{animation:none!important;will-change:auto}:root body.login-redesign [data-login-state=success] .lock-metal{transform:translateY(-24px) rotateZ(30deg)}:root body.login-redesign .lock-key,:root body.login-redesign .lock-spark{display:none}}
