:root{--bg:#f5f7f4;--panel:#ffffff;--line:#d8ded8;--text:#152016;--muted:#5a675c;--brand:#1f6b3d;--brand-strong:#184f2f;--danger:#9f2d2d}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(circle at top right,#e5eee7 0,transparent 42%),var(--bg);color:var(--text);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}main{width:min(840px,calc(100% - 2rem));margin:2.5rem auto}.card{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:1.25rem;box-shadow:0 10px 30px rgba(10,25,13,.08)}h1{font-size:clamp(1.8rem,4vw,2.6rem)}h1,p{margin:0}.stack{display:grid;grid-gap:1rem;gap:1rem}.field{display:grid;grid-gap:.4rem;gap:.4rem}label{color:var(--muted);font-size:.9rem}input{border-radius:10px;border:1px solid var(--line);padding:0 .75rem;font-size:1rem}button,input{min-height:44px}button{border-radius:10px;border:1px solid transparent;background:var(--brand);color:#f6faf7;font-weight:600;cursor:pointer}button:hover{background:var(--brand-strong)}button:disabled{cursor:wait;opacity:.75}button.secondary{background:transparent;color:var(--text);border-color:var(--line)}.actions{display:flex;gap:.5rem}.message{min-height:1.4rem;color:var(--muted)}.message.error{color:var(--danger)}.message.success{color:var(--brand-strong)}