:root{--paper:#f3f6f7;--card:#fff;--ink:#16233a;--ink-soft:#51607a;--mist:#d8e0e2;--safe:#0e7c66;--safe-deep:#0a5f4f;--seal:#c56a1d;--alert:#b3372f;--radius:14px;--font-display:"Bricolage Grotesque", "Avenir Next", system-ui, sans-serif;--font-body:"Instrument Sans", "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}.shell{flex-direction:column;align-items:center;min-height:100vh;padding:24px 16px 64px;display:flex}.brand{color:var(--ink);align-items:center;gap:10px;margin:32px 0 40px;text-decoration:none;display:flex}.brand h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:28px;font-weight:700}.brand h1 .id{color:var(--safe)}.card{background:var(--card);border:1px solid var(--mist);border-radius:var(--radius);width:100%;max-width:420px;padding:32px 28px;box-shadow:0 2px 6px #16233a0d}.card h2{font-family:var(--font-display);margin:0 0 6px;font-size:22px;font-weight:500}.card p.lead{color:var(--ink-soft);margin:0 0 24px;font-size:14.5px}label{margin:16px 0 6px;font-size:13.5px;font-weight:600;display:block}input{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--mist);border-radius:10px;padding:11px 12px}input:focus-visible{outline:2px solid var(--safe);outline-offset:1px;border-color:var(--safe)}input.code{font-family:var(--font-mono);letter-spacing:.35em;text-align:center;text-transform:uppercase;font-size:20px}button{font:inherit;cursor:pointer;border:none;border-radius:10px;padding:12px 16px;font-weight:600}button.primary{background:var(--safe);color:#fff;width:100%;margin-top:24px}button.primary:hover{background:var(--safe-deep)}button.primary:disabled{background:var(--mist);color:var(--ink-soft);cursor:default}button.quiet{color:var(--safe);background:0 0;padding:8px 4px}button:focus-visible{outline:2px solid var(--safe);outline-offset:2px}label.consent{color:var(--ink-soft);align-items:flex-start;gap:10px;margin-top:20px;font-size:13.5px;font-weight:400;display:flex}label.consent input{width:auto;accent-color:var(--safe);margin-top:3px}label.consent a{color:var(--safe);font-weight:600}.error{color:var(--alert);background:#faeceb;border-radius:10px;margin:16px 0 0;padding:10px 12px;font-size:14px}.hint{color:var(--ink-soft);margin:12px 0 0;font-size:13.5px}.switch{color:var(--ink-soft);text-align:center;margin-top:20px;font-size:14px}.switch a{color:var(--safe);font-weight:600;text-decoration:none}.switch a:hover{text-decoration:underline}.seal{margin:0 auto 8px;display:block}.seal .arc{transition:stroke .6s}@media (prefers-reduced-motion:reduce){.seal .arc{transition:none}}.anchor-row{border-top:1px solid var(--mist);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;font-size:14.5px;display:flex}.anchor-row:first-of-type{border-top:none}.anchor-row .state{font-weight:600}.anchor-row .state.ok{color:var(--safe)}.anchor-row .state.todo{color:var(--seal)}dl.me{margin:0;font-size:14.5px}dl.me dt{color:var(--ink-soft);margin-top:14px;font-size:13px}dl.me dd{font-family:var(--font-mono);word-break:break-all;margin:2px 0 0;font-size:14px}
