.auth-body{margin:0;min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--sokna-canvas);color:var(--ink)}
.auth-shell{width:min(440px,100%)}
.auth-brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:16px;text-decoration:none}
.auth-brand .brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:var(--sokna-sidebar);color:#fff;font-weight:950;box-shadow:var(--elevation-1)}
.auth-brand-copy strong,.auth-brand-copy small{display:block}.auth-brand-copy strong{font-size:1rem}.auth-brand-copy small{margin-top:2px;color:var(--muted);font-size:.7rem}
.auth-card{background:var(--sokna-surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--elevation-2);overflow:hidden}
.auth-head{padding:22px 22px 10px;text-align:center}.auth-head h1{margin:0;font-size:1.08rem}.auth-head p{margin:6px auto 0;max-width:34ch;color:var(--muted);font-size:.72rem;line-height:1.9}
.auth-form{display:grid;gap:14px;padding:18px 22px 22px}.auth-form .btn{width:100%}.auth-meta{padding:0 22px 22px;text-align:center;color:var(--muted);font-size:.66rem}.auth-meta a{color:var(--primary);font-weight:850;text-decoration:none}
.auth-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.64rem}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}
@media(max-width:520px){.auth-body{padding:14px}.auth-card{border-radius:20px}.auth-head{padding-inline:18px}.auth-form,.auth-meta{padding-inline:18px}}
