:root{
  --grn:#2f6b2f;--grn-d:#1f4d2e;--grn-l:#e4f3e6;--grn-t:#1c6b2c;
  --ink:#23272a;--grey:#737a80;--line:#e6e8ea;--bg:#f6f8f6;--red:#c0392b;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--ink);background:var(--bg);line-height:1.5;-webkit-text-size-adjust:100%}
.box{max-width:440px;margin:0 auto;padding:40px 18px 60px}
.brand{text-align:center;margin-bottom:26px}
.brand h1{font-size:22px;font-weight:800;color:var(--grn-d)}
.brand p{color:var(--grey);font-size:14px;margin-top:6px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 22px}
.card h2{font-size:19px;font-weight:800;color:var(--grn-d);margin-bottom:4px}
.card .lead{color:var(--grey);font-size:14px;margin-bottom:18px}
label{display:block;font-size:13px;font-weight:600;color:#444;margin:14px 0 6px}
input{width:100%;font-size:16px;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;outline:none;background:#fff;color:var(--ink)}
input:focus{border-color:var(--grn);box-shadow:0 0 0 3px rgba(47,107,47,.12)}
.btn{display:block;width:100%;text-align:center;margin-top:20px;padding:13px;border:0;border-radius:12px;
  background:var(--grn);color:#fff;font-size:16px;font-weight:700;cursor:pointer;font-family:inherit;text-decoration:none}
.btn:hover{background:var(--grn-d)}
.btn.sec{background:#fff;color:var(--grn-d);border:1.5px solid var(--line)}
.btn.sec:hover{background:#f4f7f4;border-color:var(--grn)}
.muted{text-align:center;font-size:14px;color:var(--grey);margin-top:18px}
.muted a{color:var(--grn-t);font-weight:600;text-decoration:none}
.err{display:none;background:#fdecea;color:var(--red);border:1px solid #f3c6c0;border-radius:10px;
  padding:10px 12px;font-size:14px;margin-top:14px}
.ok-badge{display:inline-block;background:var(--grn-l);color:var(--grn-t);font-weight:700;font-size:13px;
  padding:5px 12px;border-radius:20px}
.row{display:flex;gap:10px;margin-top:18px}
.row .btn{margin-top:0}
.feat{font-size:14px;color:#444;margin:10px 0;padding-left:24px;position:relative}
.feat:before{content:"✓";position:absolute;left:0;color:var(--grn-t);font-weight:800}
.kv{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.kv:last-child{border-bottom:0}
.kv b{color:var(--ink)}

.consent{display:flex;gap:9px;align-items:flex-start;margin:16px 0 2px;font-size:13px;color:#555;line-height:1.45;font-weight:400;cursor:pointer}
.consent input{width:auto;margin:2px 0 0;flex:0 0 auto;accent-color:var(--grn);cursor:pointer}
.consent a{color:var(--grn-t);font-weight:600;text-decoration:none}
.consent a:hover{text-decoration:underline}

.pw-wrap{position:relative}
.pw-wrap input{padding-right:46px}
.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;
  color:var(--grey);cursor:pointer;padding:6px;display:flex;align-items:center;line-height:0}
.pw-toggle:hover{color:var(--grn-t)}
.pw-toggle svg{display:block}
