*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;background:#f5f2ec;font-family:Inter,system-ui,sans-serif;color:#1f2a26}
.box{width:min(360px,92vw);background:#fff;border:1px solid #e4dfd5;border-radius:18px;padding:32px 28px;text-align:center;box-shadow:0 10px 30px rgba(47,79,69,.08)}
h1{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:26px;margin:14px 0 4px}p{margin:0 0 20px;color:#6b726e;font-size:14px}
.who{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.who input{display:none}
.who span{display:block;padding:12px;border:1px solid #e4dfd5;border-radius:10px;cursor:pointer;font-weight:500}
.who input:checked+span{border-color:#2f4f45;background:#eaf0ed;color:#2f4f45}
input[name=passcode]{width:100%;padding:12px 14px;border:1px solid #d9d3c8;border-radius:10px;font:inherit;font-size:16px;margin-bottom:12px}
button{width:100%;padding:12px;border:0;border-radius:10px;background:#2f4f45;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.err{color:#b3422d;margin:12px 0 0;min-height:1em}
