/* Auth pages: split layout with brand panel */
body.auth { background: #fff; }
.auth-wrap { min-height: 100dvh; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.auth-panel { position: relative; overflow: hidden; background: var(--plum); color: #fff; padding: 48px; display: flex; flex-direction: column; justify-content: space-between; }
.auth-panel::before { content: ""; position: absolute; width: 460px; height: 460px; border-radius: 50%; background: var(--violet); opacity: .35; filter: blur(20px); inset-inline-end: -180px; top: -160px; }
.auth-panel::after { content: ""; position: absolute; width: 16px; height: 16px; border-radius: 50%; background: var(--coral); inset-inline-start: 56px; bottom: 120px; }
.auth-panel .brand { color: #fff; position: relative; }
.auth-panel .brand img { background: #fff; border-radius: 10px; padding: 4px; }
.auth-panel h2 { font-size: clamp(1.6rem, 1rem + 1.8vw, 2.4rem); line-height: 1.3; position: relative; max-width: 460px; }
.auth-points { list-style: none; padding: 0; margin: 28px 0 0; display: flex; flex-direction: column; gap: 14px; position: relative; }
.auth-points li { display: flex; gap: 12px; align-items: center; color: #DCD5EE; }
.auth-points li span { width: 32px; height: 32px; border-radius: 10px; background: rgba(184,165,255,.16); color: var(--lavender); display: grid; place-items: center; flex: none; }
.auth-points svg { width: 17px; height: 17px; }
.auth-slogan { position: relative; color: var(--lavender); font-weight: 700; letter-spacing: .04em; font-family: "Plus Jakarta Sans", sans-serif; }
.auth-main { display: flex; flex-direction: column; padding: 28px clamp(16px, 5vw, 64px); }
.auth-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.auth-form { width: min(420px, 100%); margin: auto; padding: 32px 0; }
.auth-form h1 { font-size: 1.75rem; }
.auth-form > p { color: var(--text-2); margin-bottom: 28px; }
.pw-wrap { position: relative; }
.pw-wrap .input { padding-inline-end: 44px; }
.pw-toggle { position: absolute; inset-inline-end: 6px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; border: 0; background: none; border-radius: 8px; color: var(--text-3); cursor: pointer; display: grid; place-items: center; }
.pw-toggle svg { width: 18px; height: 18px; }
.pw-meter { display: flex; gap: 4px; margin-top: 6px; }
.pw-meter i { flex: 1; height: 4px; border-radius: 4px; background: var(--border); }
.pw-meter[data-s="1"] i:nth-child(-n+1) { background: var(--danger); }
.pw-meter[data-s="2"] i:nth-child(-n+2) { background: var(--warning); }
.pw-meter[data-s="3"] i:nth-child(-n+3) { background: var(--violet); }
.pw-meter[data-s="4"] i { background: var(--success); }
.auth-alt { text-align: center; margin-top: 22px; font-size: 14px; color: var(--text-2); }
@media (max-width: 900px) {
  .auth-wrap { grid-template-columns: 1fr; }
  .auth-panel { display: none; }
}
