.loginwrap{min-height:100dvh;padding:var(--pad);background:var(--bg);place-items:center;display:grid}#loginCard{text-align:center;width:min(360px,100%);padding:22px}.loginttl{color:var(--fg);margin:0 0 16px;font-size:20px;font-weight:700}.loginsw{width:100%;margin-bottom:16px}.loginsw button{flex:1}.loginqr img{border-radius:var(--rs);background:#fff;margin:0 auto 12px;padding:8px;display:block}.loginhint{color:var(--fg-3);margin:10px 0 0;font-size:12px;line-height:1.5}.loginhint a{color:var(--accent)}.loginlink{color:var(--fg-2);margin-top:10px;font-size:12px;text-decoration:underline}.loginform{text-align:left;flex-direction:column;gap:10px;display:flex}.loginform label{color:var(--fg-2);flex-direction:column;gap:4px;font-size:12px;display:flex}.loginform input{border-radius:var(--rs);border:1px solid var(--line);background:var(--panel-2);height:36px;color:var(--fg);padding:0 10px;font-family:inherit;font-size:13px}.loginform input:focus{outline:2px solid var(--accent);outline-offset:-1px}.loginerr{color:var(--neg-fg);margin:12px 0 0;font-size:12px}.loginbtn{border-radius:var(--rs);background:var(--accent);height:38px;color:var(--accent-fg);margin-top:4px;font-size:13px;font-weight:600;transition:background .13s}.loginbtn:hover:not(:disabled){background:var(--accent-2)}.loginbtn:disabled{opacity:.55;cursor:default}.loginqr .loginlink+.loginlink{margin-left:14px}.tgbtn{color:#fff;background:#29a9eb;justify-content:center;align-items:center;gap:9px;text-decoration:none;display:flex}.tgbtn:hover{background:#1f97d6}.tgbtn svg{fill:currentColor;flex:none;width:20px;height:20px}
