body{margin:0;min-height:100vh;display:grid;place-items:center;background:#f5f5f3;color:#202722;font:16px system-ui,sans-serif}main{background:white;border:1px solid #dedfd8;border-radius:16px;padding:36px;width:min(340px,80vw)}h1{font-size:25px}p{color:#606b64;line-height:1.6}label{display:block;margin:18px 0 6px}input,button{box-sizing:border-box;width:100%;font:inherit;padding:12px;border:1px solid #bcc5bd;border-radius:8px}button{margin-top:22px;background:#315c43;color:white;cursor:pointer}a{color:#315c43}.error{color:#a12a2a}button{background:#1d1d1f}