@font-face{font-family:"Inter";src:url(/fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--bg:#f3f4f6;--panel:#fff;--line:#d9dce1;--ink:#111318;--mut:#6b7280;--acc:#2563eb;--danger:#dc2626}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font:600 15px/1.4 "Inter",system-ui,sans-serif}
.login{min-height:100dvh;display:grid;align-content:center;justify-items:center;padding:24px 16px}
.wordmark{margin:0 0 28px;text-align:center;font:800 48px/1 "Inter",system-ui,sans-serif;letter-spacing:-.03em;color:var(--ink)}
.viewport{width:100%;max-width:380px;overflow:hidden}
.track{display:flex;width:200%;transition:transform .38s cubic-bezier(.32,.72,0,1)}
.track.two{transform:translateX(-50%)}
.step{width:50%;flex:none;display:grid;gap:16px;align-content:start;padding:2px 4px 4px}
.step[inert]{visibility:hidden;transition:visibility 0s .38s}
h1{margin:0;font:800 30px/36px "Inter",sans-serif;letter-spacing:-.03em}
.sub{margin:-6px 0 0;color:var(--mut);overflow-wrap:anywhere}.sub b{color:var(--ink);font-weight:700}
.field{display:grid;gap:2px;align-content:center;min-height:56px;padding:6px 16px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.field span{font-size:12px;line-height:16px;color:var(--mut)}
.field input{min-height:24px;padding:0;border:0;background:none;color:var(--ink);font:600 17px "Inter",sans-serif;outline:0}
.field:focus-within,.code:focus{border-color:var(--acc)}
.code{width:100%;height:76px;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--ink);text-align:center;font:800 38px "Inter",sans-serif;letter-spacing:.42em;padding-left:.42em;outline:0}
.code::placeholder{color:#c4c8cf}
.code.bad{border-color:var(--danger)}
.status{min-height:20px;margin:0;font-size:14px;color:var(--danger)}.status[data-ok]{color:var(--mut)}
.pill{height:52px;border:0;border-radius:99px;background:var(--acc);color:#fff;font:800 16px "Inter",sans-serif;cursor:pointer;transition:opacity .15s}
.pill:disabled{opacity:.4;cursor:default}
.link{border:0;background:none;padding:0;color:var(--acc);font:700 14px "Inter",sans-serif;cursor:pointer}
.link:disabled{color:var(--mut);cursor:default}
.resend{justify-self:center}
.projects{align-content:start;padding-top:12vh}.projects h1{margin-bottom:16px}
.projects nav{width:100%;max-width:420px;display:grid;gap:8px}
.projects a{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);text-decoration:none}
.projects a span{color:var(--mut);font-size:13px}.projects a:hover{border-color:var(--acc)}
