.auth-page { min-height: 68vh; display: grid; place-items: center; padding: 48px 16px 64px; }
.auth-card { width: min(100%, 460px); padding: clamp(24px, 5vw, 40px); border: 1px solid var(--line); border-radius: 16px; background: var(--deck); }
.auth-back { display: inline-block; font-size: 14px; color: var(--muted); text-decoration: none; margin-bottom: 32px; }
.auth-card h1 { font-size: clamp(28px, 5vw, 36px); line-height: 1.15; margin: 14px 0; }
.auth-intro { color: var(--muted); margin-bottom: 28px; }
.auth-provider { width: 100%; display: flex; justify-content: center; align-items: center; gap: 12px; background: var(--ink); color: var(--fg); border: 1px solid var(--line); margin-top: 12px; cursor: pointer; font: 500 15px var(--text); min-height: 50px; }
.auth-provider:enabled:hover { border-color: var(--accent); }
.auth-provider:disabled { opacity: .55; cursor: not-allowed; }
.google-mark { font: 700 20px var(--text); }
#google-signin { background: #fff; color: #1f1f1f; border-color: #747775; }
#google-signin img { flex: 0 0 20px; object-fit: contain; }
.auth-note, .auth-terms { font-size: 13px; color: var(--muted); margin-top: 14px; }
.auth-terms { padding-top: 20px; border-top: 1px solid var(--line); margin-top: 24px; }
#auth-status { margin-top: 20px; font-size: 14px; overflow-wrap: anywhere; }
#account-email { overflow-wrap: anywhere; margin: 20px 0 8px; }
#account-panel .btn { margin: 20px 8px 0 0; }
[hidden] { display: none !important; }
