:root{--ink:#2b2118;--ink-soft:#6b5a47;--parchment:#f3e6cf;--parchment-deep:#e6d3b3;--edge:#b9a077;--accent:#7a3b1e;--danger:#8c2f22;--ok:#2f6b3a}*{box-sizing:border-box}body{min-height:100dvh;color:var(--ink);background:radial-gradient(circle at 50% 0,#efe0c5 0%,#d9c4a0 100%);justify-content:center;margin:0;padding:3rem 1rem;font-family:ui-serif,Georgia,Times New Roman,serif;display:flex}main{width:100%;max-width:26rem}.card{background:var(--parchment);border:1px solid var(--edge);border-radius:6px;padding:2rem;box-shadow:0 12px 28px #2b21182e}h1{margin:0 0 .25rem;font-size:1.5rem}.subtitle{color:var(--ink-soft);margin:0 0 1.5rem;font-size:.9rem}label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.35rem;font-size:.8rem;display:block}input{border:1px solid var(--edge);width:100%;color:var(--ink);font:inherit;background:#fffaf0;border-radius:4px;margin-bottom:1rem;padding:.6rem .7rem;font-size:.95rem}input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button,.button-link{border:1px solid var(--accent);background:var(--accent);width:100%;color:var(--parchment);font:inherit;cursor:pointer;text-align:center;border-radius:4px;padding:.65rem .8rem;font-size:.95rem;text-decoration:none;display:inline-block}button:hover:not(:disabled),.button-link:hover{filter:brightness(1.12)}button:disabled{opacity:.55;cursor:progress}button.secondary,.button-link.secondary{color:var(--accent);background:0 0}.divider{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.75rem;margin:1.5rem 0;font-size:.75rem;display:flex}.divider:before,.divider:after{content:"";background:var(--edge);flex:1;height:1px}.social{gap:.5rem;display:grid}.social button{background:var(--parchment-deep);color:var(--ink);border-color:var(--edge)}.error{border:1px solid var(--danger);color:var(--danger);background:#f7dcd7;border-radius:4px;margin-bottom:1rem;padding:.55rem .7rem;font-size:.85rem}.notice{border:1px solid var(--ok);color:var(--ok);background:#dcecdf;border-radius:4px;margin-bottom:1rem;padding:.55rem .7rem;font-size:.85rem}.footnote{text-align:center;color:var(--ink-soft);margin-top:1.25rem;font-size:.85rem}a{color:var(--accent)}.code{letter-spacing:.25em;text-align:center;margin:1.5rem 0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.8rem}.stack{gap:.75rem;display:grid}
