/* ============ auth.css — login & register ============ */
.auth-wrap{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh;background:var(--surface)}
.auth-hero{background:linear-gradient(160deg,#013542 0%,#036672 100%);color:#fff;padding:64px 56px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.auth-hero::before,.auth-hero::after{content:'';position:absolute;border-radius:50%;background:rgba(255,255,255,.05)}
.auth-hero::before{top:-80px;right:-80px;width:300px;height:300px}
.auth-hero::after{bottom:-120px;left:-60px;width:380px;height:380px;background:rgba(255,255,255,.04)}
.auth-hero__brand{display:flex;align-items:center;gap:12px;margin-bottom:48px;position:relative}
.auth-hero__logo{width:44px;height:44px;background:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--accent);font-family:'Source Serif 4',serif;font-weight:700;font-size:22px}
.auth-hero__title{color:#fff;font-size:42px;line-height:1.15;margin-bottom:18px;max-width:440px;position:relative}
.auth-hero__lead{color:#B8DCE0;font-size:15px;line-height:1.6;max-width:420px;position:relative}
.auth-hero__features{position:relative;display:flex;gap:32px;font-size:12px;color:#9CC9CE;flex-wrap:wrap}
.auth-form-wrap{padding:64px;display:flex;flex-direction:column;justify-content:center}
.auth-form{max-width:380px;width:100%;margin:0 auto}
.auth-form h2{font-size:30px;margin-bottom:8px}
.auth-form__lead{color:var(--ink-2);margin-bottom:36px}
.auth-form .form-group{margin-bottom:18px}
.auth-form__row{display:flex;justify-content:space-between;align-items:center;margin:14px 0 28px}
.auth-form__footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--border);font-size:13px;color:var(--ink-2);text-align:center}
.auth-alert{background:var(--danger-soft);color:var(--danger);padding:11px 14px;border-radius:8px;font-size:13px;margin-bottom:18px;border-left:3px solid var(--danger)}
.auth-alert--info{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}

@media (max-width:900px){
  .auth-wrap{grid-template-columns:1fr}
  .auth-hero{padding:40px 24px;min-height:auto}
  .auth-hero__title{font-size:28px}
  .auth-form-wrap{padding:40px 24px}
}
