:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#17211b;background:#eef2ee;--green:#126846;--dark:#12261d;--line:#d5ded8}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,#d9f1e4,transparent 42%),#eef2ee}.shell{max-width:620px;margin:auto;min-height:100vh;background:#fff;padding:24px 20px 28px;box-shadow:0 0 60px #17211b14}header{padding:8px 4px 22px}.eyebrow{color:var(--green);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1{font-size:32px;margin:8px 0 18px}h2{font-size:23px;margin:4px 0 18px}.progress{height:7px;background:#e8eeea;border-radius:9px;overflow:hidden}.progress i{display:block;height:100%;width:20%;background:var(--green);transition:.25s}#stepLabel{font-size:13px;color:#6b766f;margin-bottom:0}.step{display:none;min-height:370px}.step.active{display:block}.cards{display:grid;gap:10px}.card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:17px;text-align:left;font-size:16px;font-weight:700;color:var(--dark)}.card.selected{border:2px solid var(--green);background:#edf8f2;padding:16px}.fields{display:grid;gap:14px}label.field{display:grid;gap:7px;font-size:13px;font-weight:750}input,textarea,select{width:100%;border:1px solid #cbd6cf;border-radius:12px;padding:13px;font:inherit;background:#fff}textarea{min-height:92px;resize:vertical}.required:after{content:' *';color:#b52424}.upload{border:2px dashed #a8bdb0;border-radius:18px;padding:28px 18px;text-align:center;display:grid;gap:7px;background:#f7faf8}.upload input{position:absolute;opacity:0;pointer-events:none}.upload span{color:#718078;font-size:13px}#fileList{display:grid;gap:8px;margin-top:14px}.file{padding:11px 13px;border-radius:10px;background:#eef4f0;font-size:13px}.preview{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fafcfb;white-space:pre-wrap;line-height:1.5}.confirm{display:flex;gap:10px;margin-top:16px;align-items:flex-start}.confirm input{width:auto;margin-top:3px}footer{position:sticky;bottom:0;display:flex;gap:10px;padding-top:18px;background:#fff}button{border:0;border-radius:13px;padding:14px 18px;background:var(--green);color:white;font-weight:800;font-size:15px;flex:1}.secondary{background:#e8eeea;color:#263c31}#error{color:#a51f1f;font-size:13px;min-height:20px;padding-top:8px}#success{text-align:center;padding:70px 16px}.success-mark{width:72px;height:72px;margin:auto;border-radius:50%;display:grid;place-items:center;background:#daf4e5;color:var(--green);font-size:38px;font-weight:900}#success h2{margin-top:22px}
