:root{--ink:#12202b;--muted:#5b6b75;--paper:#f4efe6;--card:#fffcf7;--line:#d7cfc3;--accent:#1f5c4d;--accent-ink:#f4efe6;--danger:#8f2d2d;--ok:#1f5c4d}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:Georgia,Times New Roman,serif}body{font-size:18px;line-height:1.45}a{color:var(--accent)}.shell{max-width:440px;margin:0 auto;padding:32px 20px 64px}.brand{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px}.brand strong{letter-spacing:.08em;text-transform:uppercase;font-size:14px}.card{background:var(--card);border:1px solid var(--line);padding:24px}h1{font-size:28px;font-weight:500;margin:0 0 8px}.lede{color:var(--muted);margin:0 0 24px;font-size:16px}label{display:block;font-size:14px;margin:0 0 6px}input{border:1px solid var(--line);background:#fff;color:var(--ink);padding:12px 10px;margin-bottom:16px}.button,button,input{width:100%;font:inherit}.button,button{display:inline-block;border:0;background:var(--accent);color:var(--accent-ink);padding:12px 14px;cursor:pointer;text-align:center;text-decoration:none}.button.secondary{background:transparent;color:var(--accent);border:1px solid var(--accent);margin-top:10px}.alert{border:1px solid var(--danger);color:var(--danger)}.alert,.ok{padding:10px 12px;margin-bottom:16px;font-size:15px}.ok{border:1px solid var(--ok);color:var(--ok)}.meta{color:var(--muted);font-size:14px}.stack{display:flex;flex-direction:column;gap:10px;margin-top:20px}footer{margin-top:28px;color:var(--muted);font-size:13px}