:root{--ink:#10251d;--leaf:#28734e;--mint:#d9f4df;--cream:#fffaf0;--sun:#ffc752;--line:#d3e3d7}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:ui-rounded,"Avenir Next",system-ui,sans-serif}main{max-width:760px;margin:auto;padding:18px 16px 105px}header{padding:44px 20px 35px;text-align:center;background:linear-gradient(135deg,#c4ebc9,#f7e5a8);border-radius:28px 28px 12px 12px}header p{font-size:.75rem;font-weight:900;letter-spacing:.18em;color:var(--leaf)}h1{margin:14px 0;font-size:clamp(3rem,13vw,5.6rem);line-height:.85;letter-spacing:-.08em}h1 em{color:#f17658;font-style:normal}header strong{display:inline-block;padding:9px 14px;border-radius:999px;background:var(--ink);color:#fff}header small{color:var(--mint);font-weight:600}section{padding:22px 3px;border-bottom:1px solid var(--line)}h2{margin:0;font-size:1.2rem}section p{margin:4px 0 14px;font-size:.8rem;color:#577063}section>label{display:grid;gap:7px;margin-bottom:14px;font-weight:900;font-size:.9rem}input[type=text],input:not([type]),textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff;font:inherit}textarea{min-height:72px;resize:vertical}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choices label{border:1px solid var(--line);border-radius:12px;padding:11px 10px;background:#fff;font-size:.87rem;font-weight:700;cursor:pointer}.choices input{accent-color:var(--leaf);margin-right:5px}.choices label:has(input:checked){background:var(--leaf);border-color:var(--leaf);color:#fff}.choices label.is-disabled{opacity:.42;pointer-events:none}footer{position:fixed;z-index:3;bottom:0;left:0;right:0;padding:12px max(16px,calc((100vw - 760px)/2));display:flex;justify-content:space-between;align-items:center;gap:12px;background:#10251df5;color:#fff;font-weight:800}footer strong{display:block;font-size:1.25rem}button{border:0;border-radius:13px;padding:13px;background:var(--sun);color:var(--ink);font:inherit;font-size:.85rem;font-weight:900;cursor:pointer}@media(min-width:620px){.choices{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:380px){.choices{grid-template-columns:1fr}button{padding:11px 8px;font-size:.74rem}}
