@font-face{font-family:Inter;src:url(/assets/inter.ttf) format('truetype');font-weight:100 900;font-display:swap}
:root{--ink:#1e1b22;--muted:#6b6670;--line:#e6e3e9;--brand:#497637;--error:#b42318}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:#f6f5f7;color:var(--ink);font:15px/1.5 Inter,system-ui,sans-serif}
.card{width:100%;max-width:420px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px 28px;box-shadow:0 10px 30px rgba(30,27,34,.06)}
.logo{height:34px;display:block;margin-bottom:18px}
h1{font-size:22px;margin:0 0 18px}
label{display:block;font-weight:600;font-size:14px;margin:0 0 14px}
input{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #cfcad3;border-radius:10px;font:inherit;font-weight:400}
input:focus{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}
small{display:block;color:var(--muted);font-weight:400;font-size:12.5px;margin-top:4px}
button{width:100%;padding:12px;border:0;border-radius:10px;background:var(--brand);color:#fff;font:inherit;font-weight:600;cursor:pointer}
button:disabled{opacity:.6;cursor:progress}
.error{color:var(--error);background:#fef3f2;border-radius:8px;padding:9px 12px;margin:0 0 14px;font-size:14px}
.qr{display:grid;place-items:center;margin:14px 0}
.qr svg{width:200px;height:200px}
code{display:block;font-size:15px;letter-spacing:.06em;background:#f6f5f7;padding:10px;border-radius:8px;word-break:break-all}
ol{padding-left:20px;margin:0 0 6px}
details{margin:0 0 18px;color:var(--muted);font-size:14px}
.note{background:#f6f5f7;border-radius:8px;padding:9px 12px;margin:10px 0 14px;font-size:14px;color:var(--muted)}
[hidden]{display:none!important}
