.login{box-sizing:border-box;place-items:center;min-height:100vh;padding:24px 16px;display:grid}.login-card{background:var(--sheet);border:1px solid var(--line);border-radius:16px;width:min(380px,100%);padding:32px 32px 28px;box-shadow:0 12px 32px -16px #0b0d122e}.login-brand{color:var(--ink);align-items:center;gap:10px;margin-bottom:24px;font-size:15px;font-weight:700;display:flex}.login-brand .mark{background:var(--ink);width:28px;height:28px;color:var(--sheet);border-radius:8px;place-items:center;display:inline-grid}.login-brand .mark svg{width:16px;height:16px}.login h1{letter-spacing:-.01em;color:var(--ink);margin:0 0 4px;font-size:20px;font-weight:700;line-height:1.3}.login .sub{color:var(--muted);margin:0 0 20px}.login label{color:var(--ink2);margin:14px 0 6px;font-size:13px;font-weight:500;display:block}.login input{box-sizing:border-box;width:100%;min-height:44px;font:inherit;color:var(--ink);background:var(--sheet);border:1px solid var(--line);border-radius:10px;padding:0 12px;display:block}.login input:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 4px #0b0d120f}.login .err{color:var(--neg);margin:14px 0 0;font-size:13px}.login button{width:100%;min-height:44px;font:inherit;color:var(--sheet);background:var(--ink);cursor:pointer;border:0;border-radius:10px;margin-top:22px;font-weight:600;display:block}.login button:hover{opacity:.92}.login button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
