:root{--ink:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--ground:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,'SF Pro Text','SF Pro Display','Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;color:var(--ink);letter-spacing:-.016em;line-height:1.47;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;background:var(--ground);padding:24px 16px}
.card{width:100%;max-width:420px;background:#fff;border-radius:28px;padding:40px 36px 28px}
.brand{display:flex;align-items:center;gap:8px;font-weight:600;font-size:20px;letter-spacing:-.8px;margin-bottom:32px;color:var(--ink);text-decoration:none}
.mark{width:22px;height:22px;display:grid;place-items:center;color:#000}
.mark svg{width:100%;height:100%;transform:translateY(1px)}
h1{margin:0;font-size:28px;line-height:1.14;font-weight:600;letter-spacing:-.011em}
.sub{margin:10px 0 28px;color:var(--muted);font-size:15px}
.sub strong{color:var(--ink);font-weight:500;word-break:break-all}
.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:46px;border-radius:980px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:15px;cursor:pointer;text-decoration:none;transition:background .15s}
.btn:hover{background:var(--ground)}
.btn svg{width:18px;height:18px}
.btn.primary{background:#1d1d1f;border-color:#1d1d1f;color:#fff;margin-top:14px}
.btn.primary:hover{background:#000}
.btn:disabled{opacity:.55;cursor:default}
.or{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--muted);font-size:13px}
.or:before,.or:after{content:'';height:1px;background:#e8e8ed;flex:1}
label{display:block;font-size:13px;font-weight:500;margin-bottom:8px}
input{width:100%;height:46px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;font-size:16px;color:var(--ink);background:#fff;outline:none}
input:focus{border-color:#1d1d1f;box-shadow:0 0 0 3px #1d1d1f1f}
#code{font-size:26px;letter-spacing:.5em;text-align:center;padding-left:.5em;font-variant-numeric:tabular-nums}
.links{display:flex;justify-content:space-between;gap:12px;margin-top:20px}
.link{border:0;background:none;padding:0;font:inherit;font-size:14px;color:#0066cc;cursor:pointer}
.link:disabled{color:var(--muted);cursor:default}
.error{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:#fff1f0;color:#8f1d12;font-size:14px}
.fine{margin:24px 0 0;color:#86868b;font-size:12px;text-align:center}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #1d1d1f40;outline-offset:3px}
@media(max-width:480px){.card{padding:32px 22px 22px;border-radius:22px}h1{font-size:24px}}
.fine a{color:inherit;text-decoration:underline}
