.auth-wrap{
  padding: 32px 16px;
  display: grid; place-items: center;
}
.auth-card{
  width: min(520px, 100%);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  padding: 18px 18px 22px;
}
.tabs{
  display:flex; gap:8px; border-bottom:1px solid #eee; margin-bottom:16px;
}
.tab{
  border:none; background:#f6f6f6; padding:10px 12px; border-radius:10px 10px 0 0;
  cursor:pointer; font-weight:700;
}
.tab.active{ background:#fff; border:1px solid #eee; border-bottom:none; }

.tab-pane{ display:none; }
.tab-pane.active{ display:grid; gap:10px; }

label{ font-size:14px; font-weight:700; }
input{
  border:1px solid #ddd; border-radius:10px; padding:10px 12px; font-size:14px; outline:none;
}
input:focus{ border-color:#c49b3f; }

.btn-primary{
  border:none; background:#c49b3f; color:#fff; padding:12px; border-radius:10px;
  font-weight:800; cursor:pointer; box-shadow:0 6px 16px rgba(196,155,63,.25);
}
.btn-primary:hover{ opacity:.95; }

.msg{ min-height:18px; font-size:13px; }
.msg.ok{ color:#2e7d32; }
.msg.err{ color:#d32f2f; }
