*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;background:#f3f4ef;color:#1e2318;font-family:Inter,'Helvetica Neue',sans-serif;font-size:15px;line-height:1.5}
.box{width:min(400px,calc(100% - 32px));background:#fff;border:1px solid #dcdfd4;border-radius:12px;padding:32px;box-shadow:0 6px 18px rgba(30,35,24,.08)}
.brand{display:flex;gap:12px;align-items:center;margin-bottom:24px;color:#274e13}
.name{font-family:Play,Inter,sans-serif;font-weight:700;letter-spacing:.18em}
.sub{font-size:12px;color:#626a5a}
h1{font-family:Play,Inter,sans-serif;font-size:24px;margin:0 0 4px}
.lead{margin:0 0 20px;color:#626a5a;font-size:13px}
label{display:block;font-size:12px;font-weight:600;color:#626a5a;text-transform:uppercase;letter-spacing:.06em;margin:14px 0 6px}
input[type=text],input[type=password]{width:100%;padding:10px 12px;border:1px solid #dcdfd4;border-radius:8px;font:inherit;background:#f8f9f5}
input:focus{outline:2px solid #274e13;outline-offset:1px;background:#fff}
button{margin-top:22px;width:100%;padding:11px;border:0;border-radius:999px;background:#274e13;color:#fff;font:inherit;font-weight:600;cursor:pointer}
button:hover{background:#1b3a0b}
.msg{margin:0 0 8px;padding:8px 12px;border-radius:8px;background:#f5ebc7;color:#5c4400;font-size:13px}
.foot{margin:24px 0 0;font-size:12px;color:#a3a99a}
