:root{
  --card-width:420px;
}
.register-card{
  width:var(--card-width);
  max-width:92%;
  margin:6vh auto;
  background:var(--glass-bg);
  border:1px solid var(--glass-border);
  border-radius:1.25rem;
  padding:2.5rem 2rem;
  box-shadow:var(--shadow-xl);
}
.register-card h2{
  text-align:center;
  margin-bottom:1.5rem;
  font-size:1.75rem;
}
.form-item{
  margin-bottom:1.2rem;
}
.form-item label{
  display:block;
  margin-bottom:.4rem;
  font-size:.95rem;
  color:var(--text-secondary);
}
.form-item input{
  width:100%;
  padding:.7rem 1rem;
  border:1px solid var(--glass-border);
  background:rgba(255,255,255,.05);
  border-radius:.6rem;
  color:var(--text-primary);
  font-size:1rem;
  transition:all .3s ease;
}
.form-item input:focus{
  outline:none;
  border-color:var(--primary-color);
}
.captcha-box{
  display:flex;
  gap:.6rem;
}
.captcha-box input{
  flex:1;
}
.btn-captcha{
  padding:0 1rem;
  border:1px solid var(--glass-border);
  background:rgba(255,255,255,.08);
  color:var(--text-secondary);
  border-radius:.6rem;
  cursor:pointer;
  transition:all .3s ease;
  white-space:nowrap;
}
.btn-captcha:hover{
  border-color:var(--primary-color);
  color:var(--primary-color);
}
.btn-captcha:disabled{
  cursor:not-allowed;
  opacity:.6;
}
.btn-submit{
  width:100%;
  padding:.8rem;
  margin-top:.5rem;
  border:none;
  background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));
  border-radius:.6rem;
  color:#fff;
  font-size:1rem;
  font-weight:500;
  cursor:pointer;
  transition:all .3s ease;
}
.btn-submit:hover{transform:translateY(-2px);}
.switch{
  text-align:center;
  margin-top:1rem;
  font-size:.875rem;
  color:var(--text-muted);
}
.switch a{color:var(--primary-color);}
@media(max-width:480px){
  .register-card{padding:1.5rem 1.25rem;}
}