:root{--paper:#f7f4ee;--ink:#231d14;--ink2:#4f4535;--ink3:#6b5f4e;--line:#d8cbb3;--gold:#8a5a19;--gold2:#6e4612;--dark:#1d1811;--dark2:#2a2318;--crit:#a11c15}
*{box-sizing:border-box}html,body{margin:0;min-height:100%}
body{background:var(--dark);color:#ece5d6;font:16px/1.5 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.gate{min-height:100vh;display:grid;place-items:center;padding:24px}
.card{width:100%;max-width:560px;background:var(--dark2);border:1px solid #3a3122;border-radius:10px;padding:32px}
.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.brand .mark{width:34px;height:34px;border-radius:7px;background:var(--gold);display:grid;place-items:center;color:#fff;font:700 16px/1 Inter,system-ui,sans-serif;letter-spacing:-.04em}
.brand small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#b8ac95}.brand b{font-size:18px}
h1{margin:0 0 10px;font-size:28px;letter-spacing:-.01em}
p{margin:0;color:#d9d0bf}
label{display:block;margin:22px 0 6px;font-size:13px;color:#b8ac95}
.row{display:flex;gap:10px}
input{flex:1;min-width:0;min-height:46px;border:1px solid #5a4d36;border-radius:6px;background:#1d1811;color:#f3ede2;padding:0 14px;font:16px Inter,system-ui,sans-serif}
input:focus{outline:2px solid #d9a655;outline-offset:2px;border-color:#d9a655}
button{min-height:46px;padding:0 18px;border:0;border-radius:6px;background:var(--gold);color:#fff;font:600 15px Inter,system-ui,sans-serif;cursor:pointer}
button:hover{background:var(--gold2)}button:disabled{opacity:.6;cursor:wait}
.err{margin-top:10px;color:#f0a39c;font-size:14px}.busy{margin-top:10px;color:#b8ac95;font-size:14px}
.meta{margin:26px 0 0;padding-top:18px;border-top:1px dashed #3a3122;display:grid;gap:10px;font-size:12.5px}
.meta div{display:grid;grid-template-columns:150px 1fr;gap:10px}.meta dt{color:#b8ac95}.meta dd{margin:0;color:#d9d0bf}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace}
.foot{margin-top:18px;font-size:12px;color:#8a7f6a;text-align:center}
@media (max-width:520px){.card{padding:24px}.meta div{grid-template-columns:1fr;gap:2px}}
