*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:#070d17;color:#f4f7fb;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
a{text-decoration:none;color:#9b80ff}
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px 15px;background:radial-gradient(circle at 50% 0,rgba(108,61,244,.16),transparent 38%)}
.auth-card{width:100%;max-width:500px;background:linear-gradient(180deg,#0d1624,#0b1420);border:1px solid #1c2a3c;border-radius:14px;padding:30px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.brand{text-align:center;margin-bottom:24px}
.brand-mark{width:48px;height:48px;border:2px solid #774cff;border-radius:14px;display:grid;place-items:center;color:#8b6bff;margin:0 auto 10px;font-size:22px}
.brand h1{font-size:22px;margin:0}.brand p{color:#8995a8;margin:5px 0 0;font-size:12px}
label{display:block;font-size:12px;font-weight:650;margin:0 0 7px;color:#dce2eb}
input{width:100%;padding:12px 13px;background:#080f1a;color:#fff;border:1px solid #26354a;border-radius:7px;outline:none}
input:focus{border-color:#7044f5;box-shadow:0 0 0 3px rgba(112,68,245,.12)}
.field{margin-bottom:15px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.btn{width:100%;border:0;border-radius:7px;padding:12px 16px;background:linear-gradient(90deg,#7044f5,#5630d8);color:#fff;font-weight:700;cursor:pointer}
.alert{padding:10px 12px;border-radius:7px;margin-bottom:15px;font-size:12px;background:#3a1820;border:1px solid #73313d;color:#ffb9c1}
.success{background:#12331f;border-color:#246a3d;color:#9df0b8}
.bottom{text-align:center;color:#8995a8;font-size:12px;margin-top:18px}
.ref-box{background:#080f1a;border:1px dashed #4d3a92;border-radius:7px;padding:11px;color:#b9aaff;font-size:12px}
@media(max-width:560px){.grid{grid-template-columns:1fr}.auth-card{padding:22px}}
