*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:#0b0b0b;
  color:#fff;
  font-family: "Helvetica Neue", Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:28px;
}
.container { width:100%; max-width:420px; text-align:center; }
.logo-wrap{ margin:6px auto 18px auto; width:220px; height:120px; display:flex; align-items:center; justify-content:center; }
.logo-wrap img{max-width:100%; max-height:100%; display:block;}
.card{ background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.04); padding:20px; border-radius:12px; box-shadow: 0 8px 30px rgba(0,0,0,0.6); text-align:left; }
label{display:block; font-size:13px; color:#ddd; margin:8px 0 4px 0;}
input[type="tel"],input[type="text"], input[type="email"], input[type="password"], select{ width:100%; padding:12px 14px; border-radius:8px; border:1px solid rgba(255,255,255,0.06); background: rgba(255,255,255,0.02); color:#fff; font-size:14px; }
.btn-primary{ display:inline-block; width:100%; background: #f6c200; color: #0b0b0b; border-radius:10px; padding:12px 14px; font-weight:700; font-size:15px; border: none; cursor:pointer; margin-top:12px; }
.link { display:block; margin-top:10px; text-align:center; color:#f6c200; text-decoration:none; font-weight:600; }
.error-list { color:#ffb3b3; margin-bottom:10px; font-size:14px; }
.info { color:#9bd089; margin-bottom:10px; font-size:14px; }
.small { font-size:13px; color:rgba(255,255,255,0.7); margin-top:6px; }
.otp-box { margin-top:12px; padding:12px; background:#111; border-radius:8px;}
.otp-input { width:100%; padding:12px; border-radius:8px; border:1px solid #333; background:#0b0b0b; color:#fff; }
.resend { background:transparent; border:0; color:#f6c200; cursor:pointer; padding:6px 0; text-decoration:underline; }
@media(max-width:420px){ .btn-primary{ padding:12px } }