:root{font-family:system-ui,sans-serif;color:#233e34;background:#f5f6f0;color-scheme:light}*{box-sizing:border-box}body{margin:0;padding:32px 20px}main{max-width:390px;margin:7vh auto;background:#fff;padding:32px;border:1px solid #d9dfd0;border-radius:16px}img{display:block;border-radius:14px}h1{margin:18px 0 6px}p{line-height:1.5}form{display:grid;gap:18px;margin-top:26px}label{display:grid;gap:7px;font-size:14px;font-weight:600}input{width:100%;min-height:48px;border:1px solid #b8c8b2;border-radius:7px;padding:10px;font:inherit;font-size:16px}button{min-height:48px;border:0;border-radius:7px;background:#31563f;color:white;font:inherit;font-weight:600;cursor:pointer}button:disabled{opacity:.65}.help{font-size:13px;color:#647266;margin-bottom:0}#message{margin:0;font-size:14px;color:#8a382a}input:focus-visible,button:focus-visible{outline:3px solid #b5a660;outline-offset:3px}
.banner{background:#eef3e6;border:1px solid #c8d6bd;border-radius:8px;padding:10px 12px;font-size:14px;margin:18px 0 0}button.link{background:none;color:#31563f;min-height:0;padding:0;text-decoration:underline;font-weight:500}
.show-password{display:flex;align-items:center;gap:10px;font-weight:400;margin:-4px 0 8px}.show-password input{width:20px;height:20px;min-height:0;margin:0}
