.auth-wall{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font);padding:calc(24px + env(safe-area-inset-top)) calc(24px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(24px + env(safe-area-inset-left));flex-direction:column;justify-content:safe center;align-items:center;gap:36px;display:flex;overflow-y:auto}.auth-brand svg{width:auto;height:26px;color:var(--text);display:block}.auth-card{background:var(--bg-side);border-radius:14px;flex-direction:column;gap:14px;width:min(380px,100%);padding:28px 26px;display:flex}.auth-card h1{margin:0;font-size:19px;font-weight:700}.auth-sub{color:var(--text-2);margin:-6px 0 2px;font-size:13px}.auth-field{flex-direction:column;gap:5px;display:flex}.auth-field span{color:var(--text-2);font-size:12px;font-weight:600}.auth-field input{background:var(--bg-input);border:1px solid var(--border);border-radius:9px;outline:none;padding:8px 11px;font-size:14px}.auth-field input:focus{border-color:var(--focus);box-shadow:0 0 0 3px rgba(var(--focus-rgb),.18)}.auth-error{color:var(--danger);margin:0;font-size:13px}.auth-notice{color:var(--ok);margin:0;font-size:13px}.auth-cta{background:var(--grad-brand);color:var(--on-accent);box-shadow:0 2px 8px rgba(var(--glow),.3);border-radius:9px;margin-top:4px;padding:9px 16px;font-size:14px;font-weight:600;transition:filter .12s}.auth-cta:hover{filter:brightness(1.06)}.auth-cta:disabled{opacity:.6}.auth-links{flex-wrap:wrap;justify-content:center;gap:6px 16px;margin-top:2px;display:flex}.auth-links button{color:var(--text-2);white-space:nowrap;font-size:12.5px;transition:color .12s}.auth-links button:hover{color:var(--text)}.auth-body{flex-direction:column;gap:14px;display:flex}.auth-card>.auth-body+.auth-links{margin-top:14px}.auth-progress{align-items:center;gap:10px;display:flex}.auth-progress-track{background:var(--bg-hover);border-radius:999px;flex:1;min-width:0;height:4px;overflow:hidden}.auth-progress-fill{background:var(--grad-brand);border-radius:999px;height:100%;transition:width .3s cubic-bezier(.4,0,.2,1)}.auth-progress-count{color:var(--text-3);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11.5px;font-weight:600}@media (prefers-reduced-motion:reduce){.auth-progress-fill{transition:none}}.auth-tight{margin-top:-4px}.auth-avatar-wrap{justify-content:center;padding:4px 0 2px;display:flex}.auth-avatar{cursor:pointer;width:96px;height:96px;color:var(--text-2);border:1px dashed var(--border-2);background:0 0;border-radius:50%;place-items:center;transition:border-color .12s,background .12s;display:grid;position:relative;overflow:hidden}.auth-avatar:hover{background:var(--bg-callout);border-color:var(--focus)}.auth-avatar:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.auth-avatar.has-img{background:0 0;border-style:solid;border-color:#0000}.auth-avatar img{object-fit:cover;width:100%;height:100%;display:block}.auth-avatar-initial{font-size:32px;font-weight:600;line-height:1}.auth-avatar .auth-avatar-person{width:42px;height:42px;color:var(--text-3);margin-bottom:12px}.auth-avatar-edit{color:#fff;letter-spacing:.09em;text-transform:uppercase;text-align:center;pointer-events:none;background:#00000094;padding:4px 0 5px;font-size:9.5px;font-weight:700;line-height:1;position:absolute;bottom:0;left:0;right:0;box-shadow:inset 0 1px #ffffff29}@media (any-pointer:coarse){.auth-links button{align-items:center;min-height:44px;display:inline-flex}}
