.brand-word { height: 48px; width: auto; max-width: 240px; object-fit: contain; border-radius: 0; background: transparent; display: block; }
.auth-copy .brand-word { height: 84px; max-width: 380px; margin-bottom: 28px; }
.auth-card .brand-word { margin-bottom: 18px; }
.auth { min-height: 100vh; min-height: 100dvh; display: grid; }
@media (min-width: 900px) { .auth { grid-template-columns: 1.1fr 0.9fr; } }
.auth-copy { display: none; padding: 56px; background: var(--elev); }
@media (min-width: 900px) { .auth-copy { display: flex; flex-direction: column; justify-content: center; } }
.auth-copy h1 { font-size: 40px; font-weight: 550; letter-spacing: -0.03em; max-width: none; line-height: 1.1; color: #fff; }
html.day .auth-copy h1 { color: var(--fg); }
.auth-sub { margin: 10px 0 0; font-size: 14px; letter-spacing: 0.06em; color: var(--muted); }
.auth-card { padding: 44px 28px; max-width: 420px; margin: auto; width: 100%; }
.auth-card .err {
  color: var(--bad);
  background: color-mix(in oklab, var(--bad) 12%, var(--elev));
  border: 1px solid color-mix(in oklab, var(--bad) 35%, var(--line));
  padding: 12px 14px;
  border-radius: 10px;
  margin: 0 0 16px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
}
.alt { margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--line); }
.auth-theme { margin-top: 28px; }

@media (max-width: 959px) {
  .auth {
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom);
  }
  .auth-card {
    padding: 24px 18px 32px;
    max-width: none;
  }
  .auth-card input, .auth-card select {
    font-size: 16px;
    min-height: 44px;
  }
  .auth-card button {
    width: 100%;
    min-height: 48px;
  }
  .auth-theme { width: 100%; justify-content: stretch; }
  .auth-theme button { flex: 1; min-height: 44px; }
}