*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,'Segoe UI',Arial,sans-serif}body{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:52px 20px 68px;color:#fff;background:radial-gradient(ellipse at 12% 15%,#243568 0,transparent 43%),radial-gradient(ellipse at 90% 90%,#30214c 0,transparent 50%),#080e20;overflow-x:hidden}.ambient{position:fixed;inset:0;overflow:hidden;pointer-events:none}.ambient i{position:absolute;display:block;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,#9aacf488,transparent 68%);filter:blur(6px);animation:float 15s ease-in-out infinite alternate}.ambient i:nth-child(3n){background:radial-gradient(circle,#ffab6977,transparent 70%)}.ambient i:nth-child(1){top:5%;left:5%}.ambient i:nth-child(2){top:17%;left:70%;animation-delay:-5s}.ambient i:nth-child(3){top:75%;left:85%;animation-delay:-8s}.ambient i:nth-child(4){top:67%;left:8%;animation-delay:-3s}.ambient i:nth-child(5){top:44%;left:44%;animation-delay:-10s}.ambient i:nth-child(6){top:7%;left:92%}.ambient i:nth-child(7){top:91%;left:38%;animation-delay:-6s}.ambient i:nth-child(8){top:32%;left:18%;animation-delay:-9s}.ambient i:nth-child(9){top:55%;left:76%}.ambient i:nth-child(10){top:90%;left:65%;animation-delay:-4s}.ambient i:nth-child(11){top:3%;left:40%;animation-delay:-7s}.ambient i:nth-child(12){top:40%;left:95%;animation-delay:-2s}@keyframes float{from{transform:translate3d(-30px,30px,0) scale(.7)}to{transform:translate3d(30px,-60px,0) scale(1.5)}}.elv-stars .ambient i{width:4px;height:4px;background:#fff;filter:none;box-shadow:0 0 15px 4px #a9c7ff;animation:twinkle 3s infinite alternate}.elv-bubbles .ambient i{width:38px;height:38px;border:1px solid #ffffff40;background:#ffffff12;filter:none;animation:rise 14s linear infinite}.elv-none .ambient{display:none}@keyframes twinkle{to{opacity:.15;transform:scale(.4)}}@keyframes rise{from{transform:translateY(100vh);opacity:0}to{transform:translateY(-110vh);opacity:.8}}.login-card{position:relative;width:min(100%,440px);padding:44px 42px 30px;border:1px solid #ffffff2e;border-radius:26px;background:linear-gradient(140deg,#ffffff1e,#ffffff0a);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 30px 90px #0008, inset 0 1px #ffffff20;animation:appear .8s both}@keyframes appear{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.brand-mark{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 23px;border-radius:19px;background:linear-gradient(135deg,var(--accent),#ffcd8b);color:#19203c;font-size:35px;font-weight:900;box-shadow:0 12px 40px #ff8a3440}.brand-mark span{font-size:15px;align-self:flex-start;margin-top:12px}.eyebrow{text-align:center;font-size:10px;font-weight:800;letter-spacing:3px;color:#b4c2df}h1{text-align:center;font-size:29px;letter-spacing:-1px;margin:12px 0 10px}.subtitle{text-align:center;color:#b7c3da;font-size:14px;margin:0 0 32px;line-height:1.6}label{font-size:12px;font-weight:700;color:#e4eaf8}.pass-wrap{display:flex;align-items:center;margin:9px 0 19px;border:1px solid #ffffff35;border-radius:12px;background:#050c1c7a;transition:.2s}.pass-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #ff8a3425}.pass-wrap input{width:100%;min-width:0;padding:16px;background:transparent;color:#fff;border:0;outline:0;font-size:14px}.pass-wrap input::placeholder{color:#8593af}.reveal{border:0;background:transparent;color:#c6d2e9;cursor:pointer;padding:12px}.submit{width:100%;border:0;border-radius:12px;background:linear-gradient(100deg,var(--accent),#ffbc78);color:#1c2232;font-weight:800;font-size:14px;padding:17px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 9px 26px #ff8a3430}.submit:hover{transform:translateY(-2px);box-shadow:0 13px 32px #ff8a3455}.submit span{margin-left:12px;font-size:18px}.card-foot{display:flex;align-items:center;justify-content:center;gap:8px;color:#aebbd1;font-size:11px;margin-top:29px}.dot{height:7px;width:7px;border-radius:50%;background:#5ee1b0;box-shadow:0 0 10px #5ee1b0}.error{margin-bottom:15px;padding:12px;border-radius:9px;background:#ff5c6420;color:#ffb5b8;font-size:13px}footer{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:11px;color:#a1adc7}@media(max-width:480px){.login-card{padding:35px 25px 28px;border-radius:21px}h1{font-size:25px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
