.auth-wrap { min-height: 100vh; display: grid; place-items: center; padding: 2rem 1.2rem; }
.auth-back { color: var(--body); font-weight: 600; margin-bottom: 0.8rem; display: inline-block; }
.auth-card {
  width: min(880px, 100%);
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow);
}
.auth-card.single { grid-template-columns: 1fr; width: min(460px, 100%); }
.auth-card aside { background: var(--navy); color: #e8edf4; padding: 2.2rem 1.8rem; }
.auth-card aside h1 { margin: 0 0 0.7rem; color: #fff; font-size: 1.8rem; letter-spacing: -0.03em; }
.auth-card aside p { margin: 0; }
.auth-form { padding: 2rem 1.7rem; }
.auth-form h2 { margin: 0 0 0.8rem; color: var(--ink); }
.auth-form label { display: block; font-size: 0.78rem; font-weight: 700; color: var(--mute); margin: 0.7rem 0 0.3rem; }
.auth-form input[type="email"],
.auth-form input[type="password"],
.auth-form input[type="text"] {
  width: 100%;
  padding: 0.7rem 0.75rem;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  font: 1rem var(--sans);
}
.auth-form .btn { width: 100%; justify-content: center; margin-top: 1rem; border: 0; cursor: pointer; }
.auth-error { background: #fef2f2; color: #b42318; padding: 0.65rem 0.75rem; border-radius: 8px; font-size: 0.9rem; }
.auth-note { background: #f0faf4; color: #067647; padding: 0.65rem 0.75rem; border-radius: 8px; font-size: 0.9rem; }
.auth-links, .sub { color: var(--mute); font-size: 0.88rem; }
.auth-links a { color: var(--ink); font-weight: 700; }
.check { display: flex; gap: 0.5rem; align-items: flex-start; font-weight: 500; color: var(--body); text-transform: none; letter-spacing: 0; }
.check input { width: auto; margin-top: 0.2rem; }
@media (max-width: 760px) { .auth-card { grid-template-columns: 1fr; } }
