/* Sign-in page (uses the tokens of app.css) */
body.login-page{overflow:auto;align-items:center;justify-content:center;padding:24px;min-height:100%;
  background:radial-gradient(1200px 520px at 50% -180px,var(--accent-soft),transparent 70%),var(--bg)}
.login-box{width:100%;max-width:400px;margin:auto}
.brand{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:26px}
.brand img{border-radius:12px;box-shadow:0 6px 18px rgba(59,130,246,.25)}
.brand-name{font-size:20px;font-weight:650;letter-spacing:-.02em}
.login-card{background:var(--s1);border:1px solid var(--b1);border-radius:var(--r3);padding:28px;box-shadow:var(--shadow)}
.login-card h1{font-size:18px;font-weight:600;letter-spacing:-.01em;margin-bottom:18px}
.login-card .btn-lg{margin-top:6px}
.btn-tg{background:#229ed9;color:#fff}.btn-tg:hover{background:#1c8cc2}
#code{height:52px;font:600 26px var(--mono);letter-spacing:.45em;text-align:center}
.info{font-size:14px;color:var(--dim);line-height:1.6;margin:-6px 0 18px}
.info b{color:var(--txt)}
.waiting{font-size:13px;color:var(--muted);text-align:center;margin-top:14px}
.link-btn{display:block;background:none;border:none;color:var(--dim);font:500 13px var(--sans);cursor:pointer;margin:14px auto 0}
.link-btn:hover{color:var(--txt)}.link-btn:disabled{opacity:.45;cursor:default}
.step{display:none}.step.active{display:block}
