:root{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue","Noto Sans SC",sans-serif;color:#20242c}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#f8fbff,#eef4fb 46%,#f5f0ff)}body:before{content:"";position:fixed;inset:-20%;opacity:.48;background-image:linear-gradient(#ffffffb3 1px,transparent 1px),linear-gradient(90deg,#ffffffb3 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle,black,transparent 72%);animation:grid 24s linear infinite}.aurora{position:fixed;inset:-35%;background:conic-gradient(from 120deg,#529bff33,#9668ff2b,#4edad22b,#5b8eff30);filter:blur(80px);animation:spin 28s linear infinite}.orb{position:fixed;border-radius:50%;opacity:.78;will-change:transform}.orb.one{width:240px;height:240px;left:7%;top:11%;background:linear-gradient(135deg,#78bfff,#8b8dff);box-shadow:0 35px 100px #507beb57,inset 12px 12px 35px #ffffff47;animation:f1 12s ease-in-out infinite}.orb.two{width:195px;height:195px;right:8%;bottom:10%;background:linear-gradient(135deg,#bca0ff,#6fd9dc);box-shadow:0 35px 100px #8665de4d,inset 12px 12px 35px #ffffff4d;animation:f2 15s ease-in-out infinite}.orb.three{width:82px;height:82px;right:23%;top:13%;background:linear-gradient(135deg,#7ee7db,#78a8ff);box-shadow:0 24px 70px #42a0db40;animation:f3 10s ease-in-out infinite}.login-shell{position:relative;z-index:1;width:min(430px,calc(100% - 34px));text-align:center}.login-card{padding:38px 38px 28px;text-align:left;border:1px solid #fffffff0;border-radius:28px;background:#ffffffb3;box-shadow:0 30px 90px #2837582e,inset 0 1px #fff;backdrop-filter:blur(32px) saturate(165%);-webkit-backdrop-filter:blur(32px) saturate(165%)}.identity{display:flex;align-items:center;gap:14px}.identity img{width:54px;height:54px;border-radius:16px;box-shadow:0 10px 25px #235bcd3d}.identity h1{font-size:22px;margin:0;line-height:54px;letter-spacing:-.5px}.welcome{margin:30px 0 23px}.welcome h2{margin:0 0 7px;font-size:25px;letter-spacing:-.7px}.welcome p{margin:0;color:#8b929e;font-size:12px}form{display:grid;gap:16px}label>span{display:block;margin:0 0 7px 3px;color:#666d78;font-size:11px;font-weight:600}.input-wrap{height:47px;display:flex;align-items:center;border:1px solid #303c501f;border-radius:13px;background:#ffffffcc;transition:.2s}.input-wrap:focus-within{border-color:#56a1ee;box-shadow:0 0 0 4px #0a84ff1c;background:#fff}.input-wrap b{width:42px;text-align:center;color:#a0a7b3;font-size:17px}.input-wrap input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:13px;color:#232832}.input-wrap button{border:0;background:none;padding:0 14px;color:#0a7ce8;font-size:10px;cursor:pointer}.submit{height:47px;margin-top:2px;border:0;border-radius:13px;display:flex;justify-content:center;align-items:center;gap:10px;background:linear-gradient(#168aff,#0878ed);color:#fff;font:inherit;font-size:13px;font-weight:650;box-shadow:0 10px 24px #0a84ff3d;cursor:pointer;transition:.2s}.submit:hover{transform:translateY(-1px);box-shadow:0 13px 29px #0a84ff4d}.submit:disabled{opacity:.65}.submit i{font-style:normal;font-size:17px}.error{display:none;margin:-5px 0 -3px;padding:9px 11px;border-radius:9px;color:#c4414b;background:#fff0f1;font-size:11px}.error.show{display:block}.secure{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:24px;padding-top:20px;border-top:1px solid #303c5014;color:#9aa0aa;font-size:9px}.secure span{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#e6f7ef;color:#20a36d}.copyright{margin:20px 0 0;color:#89919f;font-size:9px;letter-spacing:.5px}@keyframes spin{to{transform:rotate(360deg) scale(1.06)}}@keyframes grid{to{transform:translate(48px,48px)}}@keyframes f1{50%{transform:translate(28px,-20px) rotate(7deg)}}@keyframes f2{50%{transform:translate(-32px,23px) scale(1.06)}}@keyframes f3{50%{transform:translate(-18px,25px)}}@media(prefers-reduced-motion:reduce){.aurora,.orb,body:before{animation:none}}@media(max-width:480px){.login-card{padding:32px 24px 24px}.orb.one{left:-95px}.orb.two{right:-80px}.orb.three{display:none}}
