.nl-authpage{flex-direction:column;min-height:100dvh;display:flex}.nl-auth{background-image:radial-gradient(var(--dot) 1px, transparent 1px);background-size:16px 16px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:56px 16px 80px;display:flex}.nl-auth-card{background:var(--surface);border:1px solid var(--chip-line);width:min(420px,100%);box-shadow:var(--shadow-win);color:var(--ink);border-radius:22px;animation:.4s cubic-bezier(.2,.8,.2,1) nl-ra-rise;overflow:hidden}.nl-auth-body{text-align:center;padding:32px 32px 28px}.nl-auth-dev{width:min(420px,100%)}.nl-auth h1{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:28px;font-weight:600;line-height:1.15}.nl-auth .su-sub{color:var(--ink-3);margin-top:8px;font-size:15px;line-height:1.5}.nl-auth .su-sub b{color:var(--ink);font-weight:500}.nl-auth .su-body{text-align:left;gap:12px;margin-top:24px}.nl-auth .su-input{border:1px solid var(--chip-line);background:var(--page);height:44px;color:var(--ink);border-radius:10px;padding:0 14px;font-size:15px;font-weight:400}.nl-auth .su-input::placeholder{color:var(--muted)}.nl-auth .su-input:focus,.nl-auth .su-otp input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.nl-auth .su-pw-eye{color:var(--muted)}.nl-auth .su-pw-eye:hover{color:var(--ink)}.nl-auth .su-btn{border:1px solid var(--chip-line);background:var(--surface);height:44px;box-shadow:var(--shadow-chip);color:var(--ink);border-radius:10px;font-size:15px;font-weight:500}.nl-auth .su-btn:hover{background:var(--surface-hover)}.nl-auth .su-btn.is-main{background:var(--accent-btn);color:var(--on-accent);box-shadow:var(--shadow-btn);filter:none;border:0}.nl-auth .su-btn.is-main:hover{background:var(--accent-btn-hover)}.nl-auth .su-btn.is-main svg{color:var(--on-accent)}.nl-auth .su-btn:disabled{opacity:.5}.nl-auth .su-otp{gap:8px}.nl-auth .su-otp input{border:1px solid var(--chip-line);background:var(--panel);height:52px;color:var(--ink);caret-color:var(--accent);border-radius:10px;font-size:22px}.nl-auth .su-otp.is-bad input{border-color:var(--red-fg)}.nl-auth .su-error{background:var(--red-bg);color:var(--red-fg);border:0;border-radius:10px}.nl-auth .su-note{color:var(--muted);font-size:13px;line-height:20px}.nl-auth .su-link{color:var(--muted);font-size:13px}.nl-auth .su-link:hover{color:var(--ink)}.nl-auth .su-link b,.nl-auth .nl-auth-link{color:var(--ink);font-weight:500}.nl-auth .nl-auth-link:hover{color:var(--accent)}@media (prefers-reduced-motion:reduce){.nl-auth-card{animation:none}}@media (max-width:767px){.nl-auth{justify-content:flex-start;padding:32px 16px 48px}.nl-auth-body{padding:28px 20px 24px}.nl-auth h1{font-size:24px}}
