:root{--ink:#1d2733;--muted:#5b6776;--line:#d9dee5;--bg:#f6f7f9;--card:#fff;--accent:#1f4e79;--accent-ink:#fff;--warn:#8a4b00;--warn-bg:#fff4e5;--ok:#1e6b3a;--radius:10px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;padding:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:760px;margin:0 auto;padding:24px 16px 64px}h1{margin:0 0 8px;font-size:1.6rem}h2{margin:0 0 16px;font-size:1.25rem}p.lead{color:var(--muted);margin-top:0}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field label,legend{font-weight:600}input[type=text],input[type=email],input[type=tel],input[type=number],select,textarea{font:inherit;border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-height:44px;padding:10px 12px}fieldset{border:0;margin:0 0 16px;padding:0}.choice{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:12px;display:flex}.choice:has(input:checked){border-color:var(--accent);background:#eef3f8}.choice input{margin-top:4px}.row{flex-wrap:wrap;gap:12px;display:flex}.row>*{flex:200px}.actions{justify-content:space-between;gap:12px;margin-top:24px;display:flex}button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer;border-radius:8px;min-height:44px;padding:12px 20px}button.secondary{color:var(--accent);background:#fff}button:disabled{opacity:.5;cursor:not-allowed}.progress{background:var(--line);border-radius:3px;height:6px;margin:8px 0 20px;overflow:hidden}.progress>div{background:var(--accent);height:100%}.meta{color:var(--muted);font-size:.9rem}.banner{border-radius:8px;margin-bottom:16px;padding:12px 16px}.banner.warn{background:var(--warn-bg);color:var(--warn)}.banner.ok{color:var(--ok);background:#e8f5ec}.small{color:var(--muted);font-size:.9rem}ul.missing{padding-left:18px}ul.missing li{margin-bottom:6px}.linklike{color:var(--accent);text-align:left;background:0 0;border:none;align-items:center;min-height:44px;padding:8px 0;text-decoration:underline;display:inline-flex}@media (max-width:480px){main{padding:16px 12px 48px}.card{padding:16px}.actions{flex-direction:column-reverse}.actions button{width:100%}}.req{color:var(--warn);font-weight:600}
