/* ── Login / Auth ───────────────────────────── */
.auth-wrap {
  min-height: 100vh;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 24px; background: radial-gradient(ellipse at center, rgba(251,191,36,0.04) 0%, #0c0c14 60%);
}
.auth-logo {
  display: flex; align-items: center; gap: 10px;
  text-decoration: none; color: #fff; font-weight: 800; font-size: 1.1rem;
  margin-bottom: 28px;
}
.auth-logo-icon {
  width: 38px; height: 38px; border-radius: 8px;
  background: #fbbf24; color: #111;
  display: flex; align-items: center; justify-content: center;
  font-weight: 800; font-size: .9rem;
}

.auth-card {
  background: #1a1a2e; border: 1px solid rgba(255,255,255,0.08); border-radius: 20px;
  padding: 32px 28px 24px; max-width: 380px; width: 100%;
  text-align: center;
}
.auth-card h2 { color: #fff; font-size: 1.3rem; font-weight: 700; margin-bottom: 18px; }

.auth-social { display: flex; flex-direction: column; gap: 10px; margin-bottom: 18px; }
.auth-social-btn {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  padding: 12px; border-radius: 10px; border: none; cursor: pointer;
  font-weight: 600; font-size: .9rem; color: #fff; transition: opacity .12s;
}
.auth-social-btn:hover { opacity: .9; }
.auth-social-btn svg { flex-shrink: 0; }
.auth-social-btn.google { background: #4285f4; }
.auth-social-btn.apple { background: #000; border: 1px solid rgba(255,255,255,0.15); }

.auth-divider {
  display: flex; align-items: center; gap: 12px;
  color: rgba(255,255,255,0.35); font-size: .8rem; text-transform: uppercase; margin-bottom: 18px;
}
.auth-divider::before, .auth-divider::after { content: ''; flex: 1; height: 1px; background: rgba(255,255,255,0.08); }

.auth-input {
  width: 100%; padding: 12px 14px; border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.12); background: rgba(0,0,0,0.25);
  color: #fff; font-size: .9rem; margin-bottom: 12px; box-sizing: border-box;
  outline: none; transition: border-color .15s;
}
.auth-input:focus { border-color: #fbbf24; }
.auth-input::placeholder { color: rgba(255,255,255,0.25); }

.auth-submit {
  width: 100%; padding: 12px; border-radius: 10px; border: none; cursor: pointer;
  background: #fbbf24; color: #111; font-weight: 700; font-size: .95rem;
  margin-top: 4px; transition: opacity .12s;
}
.auth-submit:hover { opacity: .85; }
.auth-submit:disabled { opacity: .5; cursor: not-allowed; }

.auth-toggle { margin-top: 16px; font-size: .86rem; color: rgba(255,255,255,0.5); }
.auth-toggle a { color: #fbbf24; text-decoration: none; font-weight: 600; }
.auth-error { font-size: .85rem; margin-top: 10px; min-height: 1.2em; color: #f87171; }
