/* Log in, sign up, password pages (Views/Account/_AuthLayout): the form on the left, the pitch on the right on wide
   screens — the public site's ink and the logo's accent (#696cff). */
.auth-split { display: flex; min-height: 100vh; background: #fff; }
.auth-main { position: relative; flex: 1 1 50%; display: flex; align-items: center; justify-content: center; padding: 4.5rem 1.5rem 3rem; }
.auth-back {
  position: absolute; top: 1.4rem; left: 1.5rem; display: inline-flex; align-items: center; gap: 0.25rem;
  color: #6d7193; font-size: 0.92rem;
}
.auth-back:hover { color: #171a3a; }
.auth-box { width: 100%; max-width: 410px; }
.auth-brand { display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 2rem; color: #171a3a; }
.auth-brand .brand-logo { height: 34px; }
.auth-brand .brand-word { font-size: 1.45rem; }
.auth-box h4 { font-family: 'Sora', 'Public Sans', sans-serif; font-weight: 700; letter-spacing: -0.02em; font-size: 1.6rem; margin-bottom: 0.4rem; }
.auth-sub { color: #6d7193; margin-bottom: 1.8rem; }
.auth-box .btn-primary { padding-top: 0.7rem; padding-bottom: 0.7rem; font-weight: 600; }
.auth-foot { margin-top: 1.5rem; text-align: center; color: #6d7193; }
.auth-legal { margin-top: 1.25rem; text-align: center; font-size: 0.82rem; color: #8b8fae; }
.auth-plan {
  display: flex; gap: 0.75rem; align-items: center; padding: 0.85rem 1rem; margin-bottom: 1.5rem;
  border-radius: 12px; background: #f0f0ff; border: 1px solid #dcdcff; color: #31357a; font-size: 0.93rem;
}
.auth-plan i { font-size: 1.5rem; color: #696cff; }

.auth-aside {
  position: relative; overflow: hidden; flex: 1 1 50%; flex-direction: column; justify-content: center;
  padding: 3.5rem clamp(2.5rem, 5vw, 5rem); color: #fff;
  background:
    radial-gradient(700px 420px at 90% 5%, rgba(105, 108, 255, 0.5), transparent 60%),
    radial-gradient(600px 420px at 0% 100%, rgba(155, 107, 255, 0.32), transparent 60%),
    linear-gradient(180deg, #0c0e2b 0%, #14174a 100%);
}
.auth-aside h2 { font-family: 'Sora', sans-serif; font-weight: 700; letter-spacing: -0.025em; font-size: clamp(1.8rem, 2.6vw, 2.4rem); line-height: 1.15; color: #fff; }
.auth-aside h2 span {
  background: linear-gradient(90deg, #8d90ff 0%, #9b6bff 45%, #2fd3f0 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.auth-points { list-style: none; padding: 0; margin: 2rem 0 0; }
.auth-points li { display: flex; gap: 0.9rem; padding: 0.7rem 0; }
.auth-points i {
  flex-shrink: 0; width: 40px; height: 40px; border-radius: 12px; display: flex; align-items: center; justify-content: center;
  background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.14); font-size: 1.3rem; color: #b9bbff;
}
.auth-points strong { display: block; color: #fff; }
.auth-points span { color: #b4b7e3; font-size: 0.93rem; }
.auth-avatar {
  display: flex; align-items: center; gap: 0.9rem; margin-top: 2.5rem; padding: 0.9rem 1rem; border-radius: 16px;
  background: rgba(255, 255, 255, 0.07); border: 1px solid rgba(255, 255, 255, 0.12); max-width: 440px;
}
.auth-avatar img { width: 54px; height: 54px; border-radius: 50%; object-fit: cover; object-position: 50% 18%; border: 2px solid #fff; }
.auth-avatar p { margin: 0; font-size: 0.9rem; color: #d9dbff; }
.auth-avatar b { color: #fff; }
