:root{--green:#0B2E1E;--green-deep:#071B11;--ink:#0B1F15;--cream:#F5F2EC;--mute:#5C6E63;--mute-l:#A9BBB0;--line:#E1E6E2;--gold:#F5CE5C;--gold-deep:#C9A227;--red:#B3261E}
*{margin:0;padding:0;box-sizing:border-box}
html,body{min-height:100%}
body{font-family:Montserrat,system-ui,sans-serif;font-size:15px;line-height:1.55;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
.split{display:grid;grid-template-columns:400px 1fr;min-height:100vh}
.panel{background:radial-gradient(120% 100% at 0% 0%,#12402A 0%,#0B2E1E 55%,#071B11 100%);color:var(--cream);padding:44px 40px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}
.logo{height:40px;width:auto;align-self:flex-start;margin-bottom:auto}
.panel h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;font-weight:800;letter-spacing:-.025em;line-height:1.1;margin:36px 0 26px}
.steps{list-style:none;counter-reset:s}
.steps li{counter-increment:s;position:relative;padding-left:40px;margin-bottom:18px;color:var(--mute-l);font-size:14px}
.steps li b{color:var(--cream);font-weight:600;display:block}
.steps li::before{content:counter(s);position:absolute;left:0;top:1px;width:26px;height:26px;border-radius:50%;background:var(--gold);color:var(--green-deep);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.small{color:var(--mute-l);font-size:12.5px;margin-top:auto}
.work{padding:56px clamp(24px,6vw,96px) 90px;max-width:860px}
h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;letter-spacing:-.02em;margin:40px 0 16px}
.field{display:block}
.field>span{display:block;font-size:13px;font-weight:600;color:var(--mute);margin-bottom:6px}
.field input,.field textarea{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1px solid #C9D2CC;border-radius:8px;padding:12px 14px;outline:none}
.field input:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(11,46,30,.12)}
.field input.bad,.field textarea.bad{border-color:var(--red)}
.field textarea{resize:vertical}
.code input{max-width:360px;font-weight:600;letter-spacing:.04em}
.login{border:1px solid var(--line);border-radius:12px;padding:20px 20px 22px;margin-bottom:14px;background:#FAFBFA}
.lhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.lhead .n{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;color:var(--green);font-size:14px}
.lhead .n::before{content:"Login "}
.rm{background:none;border:0;color:var(--mute);font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.rm:hover{color:var(--red)}
.login:only-child .rm{display:none}
.g{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.g .w{grid-column:1/-1}
.pw{position:relative;display:block}.pw input{padding-right:66px}
.eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);font:inherit;font-size:12px;font-weight:600;padding:5px 9px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--mute);cursor:pointer}
.eye:hover{color:var(--ink)}
.add{font:inherit;font-weight:600;font-size:14px;background:none;border:1.5px dashed #C9D2CC;color:var(--green);padding:11px 16px;border-radius:8px;cursor:pointer;width:100%}
.add:hover{border-color:var(--green)}
.err{margin-top:18px;color:var(--red);font-weight:600}
.send{display:block;width:100%;margin-top:28px;font:inherit;font-weight:700;font-size:16px;padding:15px 20px;border:0;border-radius:10px;background:var(--green);color:var(--gold);cursor:pointer}
.send:hover{background:#12402A}.send[disabled]{opacity:.6}
.hp{position:absolute;left:-9999px}
.done{padding:20px 0}.check{width:56px;height:56px;border-radius:50%;background:var(--gold);color:var(--green-deep);font-size:28px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.done h2{margin-top:0}.done p{color:var(--mute);margin-bottom:18px}
@media(max-width:860px){
  .split{grid-template-columns:1fr}
  .panel{position:static;height:auto;padding:28px 20px 30px}
  .logo{margin-bottom:0}
  .panel h1{font-size:24px;margin:22px 0 16px}
  .steps li{margin-bottom:12px}
  .small{display:none}
  .work{padding:28px 20px 60px}
  .g{grid-template-columns:1fr}
  h2{margin-top:28px}
}

.gateBox{max-width:420px;padding-top:10px}
.gateBox h2{margin-top:0}
.gateBox .send{margin-top:18px}
