/* Social sign-in buttons (Google + Facebook brand guidelines) */
.oauth-row { display: flex; flex-direction: column; gap: 10px; margin: 4px 0 14px; }
.oauth-btn { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; height: 44px;
  border-radius: 999px; font: 500 15px/1 Roboto, Inter, system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  cursor: pointer; text-decoration: none; letter-spacing: .1px; transition: box-shadow .15s, filter .15s; }
.oauth-btn svg { width: 20px; height: 20px; flex: none; }
.oauth-btn.google { background: #fff; color: #1f1f1f; border: 1px solid #747775; }
.oauth-btn.google:hover { box-shadow: 0 1px 3px rgba(0,0,0,.3); }
.oauth-btn.facebook { background: #1877F2; color: #fff; border: 1px solid #1877F2; }
.oauth-btn.facebook:hover { filter: brightness(1.06); }
.oauth-btn:disabled { opacity: .7; cursor: wait; }
.oauth-btn:focus-visible { outline: 3px solid #8b5cff; outline-offset: 2px; }
.oauth-or { display: flex; align-items: center; gap: 10px; color: var(--muted, #9aa3b5); font-size: .72rem; letter-spacing: .14em; margin: 2px 0 14px; }
.oauth-or::before, .oauth-or::after { content: ""; flex: 1; height: 1px; background: rgba(255,255,255,.12); }
.oauth-msg { font-size: .85rem; line-height: 1.4; margin: 0 0 12px; padding: 10px 12px; border-radius: 12px;
  background: rgba(139,92,255,.12); border: 1px solid rgba(139,92,255,.35); color: var(--text, #f3f4f8); }
.oauth-msg:empty { display: none; }
