.auth-wrap{
  min-height:calc(100vh - 140px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:60px 20px;
}
.auth-card{
  width:100%;
  max-width:420px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:20px;
  padding:38px 34px 30px;
  box-shadow:var(--shadow);
}
.auth-eyebrow{
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gold);
  margin:0 0 10px;
}
.auth-title{
  font-family:var(--font-display);
  font-size:1.9rem;
  font-weight:500;
  margin:0 0 8px;
}
.auth-sub{color:var(--text-dim);font-size:.9rem;margin:0 0 26px;}

.auth-tabs{
  display:flex;
  border:1px solid var(--border);
  border-radius:999px;
  padding:4px;
  margin-bottom:26px;
}
.auth-tab{
  flex:1;
  border:none;
  background:transparent;
  color:var(--text-dim);
  font-size:.85rem;
  padding:9px 0;
  border-radius:999px;
  transition:all .2s ease;
}
.auth-tab.is-active{background:var(--gold);color:#1b1a16;font-weight:600;}

.auth-form{display:flex;flex-direction:column;gap:16px;}
.field{display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--text-dim);}
.field input{
  border:1px solid var(--border);
  background:var(--bg-soft);
  color:var(--text);
  border-radius:10px;
  padding:11px 14px;
  font-size:.92rem;
  font-family:var(--font-body);
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.field input:focus{border-color:var(--gold-dim);box-shadow:0 0 0 3px var(--gold-dim);}

.field-row{display:flex;align-items:center;justify-content:space-between;font-size:.8rem;}
.checkbox{display:flex;align-items:center;gap:8px;color:var(--text-dim);}
.checkbox input{accent-color:var(--gold);}
.auth-link{color:var(--gold);}
.auth-link:hover{color:var(--gold-soft);}

.auth-submit{
  border:none;
  background:var(--gold);
  color:#1b1a16;
  font-weight:700;
  font-size:.95rem;
  padding:13px 0;
  border-radius:10px;
  margin-top:6px;
  transition:background .2s ease, transform .15s ease;
}
.auth-submit:hover{background:var(--gold-soft);transform:translateY(-1px);}

.auth-msg{
  min-height:1.1em;
  font-size:.82rem;
  color:var(--gold);
  margin:0;
  text-align:center;
}

.auth-note{
  font-size:.74rem;
  color:var(--text-dim);
  margin:22px 0 0;
  padding-top:16px;
  border-top:1px solid var(--border);
  line-height:1.5;
}
.auth-note code{
  font-family:var(--font-mono);
  background:var(--bg-soft);
  padding:1px 6px;
  border-radius:5px;
}

.only-register{display:none;}
.auth-card[data-mode="register"] .only-register{display:flex;}
.auth-card[data-mode="register"] .only-login{display:none;}