.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}
.auth-form{display:flex;flex-direction:column;padding:28px 40px}
.auth-form .logo{align-self:flex-start}
.auth-box{width:100%;max-width:400px;margin:auto;padding:40px 0}
.auth-box h1{font-size:36px;letter-spacing:-.04em;margin-bottom:8px}
.auth-box > p{color:var(--muted);margin-bottom:28px}
.g-btn{width:100%;height:48px;border-radius:12px;border:1px solid var(--line-2);background:#fff;display:flex;align-items:center;justify-content:center;gap:12px;font-weight:600;font-size:15px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s}
.g-btn:hover{border-color:var(--ink);box-shadow:var(--shadow-sm)}
.g-btn:active{transform:scale(.99)}
.g-btn svg{width:20px;height:20px}
.or{display:flex;align-items:center;gap:14px;color:var(--faint);font-size:13px;margin:22px 0}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.auth-fields{display:flex;flex-direction:column;gap:14px}
.auth-fields .btn{width:100%;height:48px;border-radius:12px;margin-top:6px}
.auth-alt{margin-top:22px;font-size:14.5px;color:var(--muted);text-align:center}
.auth-alt a{color:var(--ink);font-weight:600}
.auth-legal{font-size:12.5px;color:var(--faint);margin-top:18px;text-align:center}
.auth-legal a{text-decoration:underline}
.notice{border:1px solid #f5d0a9;background:#fff8f0;color:#8a4b0f;border-radius:12px;padding:12px 14px;font-size:14px;margin-bottom:18px}
.store-note{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--bg-soft);border-radius:12px;padding:10px 14px;font-size:14px;margin-bottom:22px}
.store-note b{font-weight:600}
.check-email{text-align:center}
.check-email .ic{width:56px;height:56px;border-radius:16px;background:var(--ok-soft);color:var(--ok);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}

.auth-side{background:var(--bg-warm);border-left:1px solid var(--line);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:40px}
.auth-side::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,#000 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at center,#000 20%,transparent 70%)}
.float-stack{position:relative;width:100%;max-width:420px;display:flex;flex-direction:column;gap:14px}
.float-stack .lead{animation:floatIn .9s var(--ease) both;animation-delay:calc(.2s + var(--i) * .15s)}
.float-stack .lead:nth-child(2){margin-left:36px}
.float-stack .lead:nth-child(3){margin-right:36px}
@keyframes floatIn{from{opacity:0;transform:translateY(24px) scale(.98)}}
.side-quote{position:relative;margin-top:28px;font-size:14px;color:var(--muted);text-align:center}
@media(max-width:900px){.auth{grid-template-columns:1fr}.auth-side{display:none}.auth-form{padding:20px 16px}}
