*{box-sizing:border-box;margin:0;padding:0}
body{min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:radial-gradient(1200px 600px at 50% -10%,#1b2340 0%,#0c0f1a 60%,#070910 100%);color:#e8ecf6;display:flex;align-items:center;justify-content:center}
.wrap{width:100%;padding:24px}
.card{max-width:360px;margin:0 auto;background:rgba(20,25,42,.72);border:1px solid rgba(120,140,210,.18);border-radius:20px;padding:38px 30px;backdrop-filter:blur(14px);box-shadow:0 24px 70px rgba(0,0,0,.55);text-align:center}
.logo{width:64px;height:64px;margin:0 auto 16px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ff2d9b,#7b5bff);color:#fff;box-shadow:0 10px 30px rgba(123,91,255,.45)}
h1{font-size:25px;font-weight:700;letter-spacing:.2px}
h1 span{background:linear-gradient(135deg,#ff5fb4,#9d86ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.sub{margin-top:6px;font-size:13px;color:#8b94ad;letter-spacing:.3px}
form{margin-top:26px;display:flex;flex-direction:column;gap:12px}
input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid rgba(120,140,210,.22);background:rgba(10,13,24,.7);color:#fff;font-size:15px;outline:none;transition:.15s}
input:focus{border-color:#7b5bff;box-shadow:0 0 0 3px rgba(123,91,255,.22)}
button{width:100%;padding:14px;border:0;border-radius:12px;background:linear-gradient(135deg,#ff2d9b,#7b5bff);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:.15s}
button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.err{display:none;margin-top:14px;color:#ff7a90;font-size:13px}
.err.show{display:block}
.foot{margin-top:22px;font-size:11px;color:#59617a;letter-spacing:.3px}
