:root {
  color-scheme: light;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #f8f4ee;
  color: #2b211d;
}

* { box-sizing: border-box; }

body {
  min-height: 100vh;
  margin: 0;
  background:
    radial-gradient(circle at top left, rgba(146, 35, 33, 0.12), transparent 34rem),
    #f8f4ee;
}

.auth-page {
  width: min(1080px, calc(100% - 32px));
  min-height: 100vh;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
  align-items: center;
  gap: clamp(32px, 7vw, 88px);
  padding: 40px 0;
}

.auth-brand { text-align: center; }
.auth-brand img { width: min(210px, 55vw); height: auto; }
.brand-owner { margin: 18px 0 2px; color: #922321; font-size: 1.25rem; font-weight: 700; }
.auth-brand h1 { margin: 0; font-family: Georgia, serif; font-size: clamp(2.5rem, 6vw, 4.8rem); line-height: 0.95; color: #922321; }
.auth-brand p:last-child { margin: 18px auto 0; max-width: 30rem; font-size: 1.1rem; }

.auth-panel {
  min-height: 460px;
  display: grid;
  place-items: center;
  padding: 24px;
  border: 1px solid rgba(78, 53, 42, 0.14);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 24px 60px rgba(78, 53, 42, 0.12);
}

.auth-message, .auth-error { text-align: center; }
.auth-error { color: #922321; font-weight: 700; }
.access-message { text-align: center; }
.access-message h2 { margin: 22px 0 10px; color: #922321; }
.access-message p { max-width: 28rem; line-height: 1.55; }
.access-user-button { min-height: 40px; display: flex; justify-content: center; }

@media (max-width: 760px) {
  .auth-page { grid-template-columns: 1fr; gap: 24px; padding: 28px 0; }
  .auth-brand img { width: 130px; }
  .auth-brand h1 { font-size: 2.7rem; }
  .auth-panel { min-height: 420px; padding: 14px; }
}
