
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:#f2f5f1;color:#17302b;font:16px/1.5 system-ui,sans-serif}
main{width:min(100% - 2rem,33rem);margin:clamp(2rem,10vh,7rem) auto}header{font-weight:750;letter-spacing:-.04em;font-size:1.5rem;margin-bottom:1rem}
section{background:white;border:1px solid #dce5de;border-radius:1.25rem;padding:clamp(1.25rem,4vw,2.25rem)}
h1{font-size:clamp(1.6rem,5vw,2.1rem);line-height:1.15;letter-spacing:-.045em;margin:0 0 .75rem}
p{color:#455d55;margin:0 0 1.5rem}label{display:grid;gap:.35rem;font-weight:600;margin:0 0 1rem}
input:not([type=checkbox]){width:100%;border:1px solid #a9bcb2;border-radius:.6rem;padding:.7rem .75rem;font:inherit}
input:focus-visible,button:focus-visible{outline:3px solid #447f6e;outline-offset:3px}
.check{display:flex;align-items:flex-start;gap:.6rem;font-weight:400;color:#344b44}.check input{margin-top:.4rem;accent-color:#164839}
button{cursor:pointer;font:inherit;font-weight:650;border-radius:.6rem;padding:.65rem .95rem;border:1px solid transparent}
button:disabled{opacity:.6;cursor:wait}.primary{background:#164839;color:white;width:100%}
.secondary{background:#f2f5f1;color:#17302b;border-color:#dce5de}.controls form+form{margin-top:.7rem}
footer{display:flex;justify-content:flex-end;gap:1rem;border-top:1px solid #e6ede8;margin-top:1.5rem;padding-top:.65rem}
.link{background:transparent;color:#395e52;padding:.35rem 0;text-decoration:underline;text-underline-offset:.22em}.notice{background:#fff3dd;color:#613916;border-radius:.6rem;padding:.7rem .8rem}
