:root{--green:#245c49;--ink:#253f37;--muted:#6d7973;--paper:#f7f8f3;--line:#dde5dc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 -apple-system,BlinkMacSystemFont,'Noto Sans',sans-serif}header{background:white;border-bottom:1px solid var(--line);padding:20px max(6vw,20px);display:flex;justify-content:space-between;align-items:center}.brand{font-size:21px;font-weight:800;color:var(--green);text-decoration:none}.brand span{display:block;font-size:10px;letter-spacing:3px}header small{color:var(--muted)}main{max-width:1000px;margin:auto;padding:36px 24px}nav{display:flex;gap:20px;align-items:center;font-size:13px;color:#8b958d;margin-bottom:48px}nav .active{color:var(--green);font-weight:800}nav i{font-style:normal;color:#c2ccc3}.eyebrow{font-size:13px;letter-spacing:2px;color:var(--green);font-weight:bold}h1{font-size:38px;line-height:1.55;letter-spacing:1px;margin:12px 0 20px}h2{font-size:19px;line-height:1.6}p{margin:10px 0}.lead{color:var(--muted)}.features{display:flex;gap:24px;font-size:13px;margin:24px 0 38px}#cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:26px;text-align:left;cursor:pointer;color:var(--ink);display:flex;gap:18px;align-items:start;transition:.2s}.card:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 6px 22px #245c4910}.card:last-child{grid-column:1/-1}.num{background:#edf3e9;color:var(--green);border-radius:11px;padding:10px;font:22px Georgia,serif}.card h2{margin:0 0 8px;font-size:18px}.card p{color:var(--muted);font-size:13px}.card .arrow{margin-left:auto;color:var(--green)}button{font:inherit;background:var(--green);color:white;border:1px solid var(--green);border-radius:10px;padding:13px 25px;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d5ad45;outline-offset:3px}button:disabled{opacity:.6;cursor:wait}.secondary{background:white;color:var(--green)}.back{border:0;padding:0;background:none;color:var(--muted);font-size:14px;margin-bottom:20px}.privacy{font-size:12px;color:var(--muted);margin:26px 0}.metadata{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.metadata label,.field{font-size:13px;font-weight:600}input:not([type=checkbox]),textarea,select{width:100%;display:block;padding:12px;background:white;color:var(--ink);border:1px solid #cbd7cc;border-radius:8px;font:16px/1.6 inherit;font-family:inherit;font-size:16px;min-width:0}input[type=date]{min-height:50px}textarea{resize:none;overflow:auto;height:88px}#memo{height:150px}.progress{font-size:12px;display:flex;justify-content:space-between;flex-wrap:wrap;color:var(--muted);gap:10px;margin-bottom:24px}progress{width:100%;height:6px;accent-color:var(--green)}.panel{border:1px solid var(--line);border-radius:14px;background:white;padding:24px;margin-bottom:20px}.panel h2{margin:0 0 18px}.check{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #edf0e9;cursor:pointer;font-size:15px;overflow-wrap:anywhere}.check:last-child{border:0}.check input{width:21px;height:21px;flex-shrink:0;accent-color:var(--green);margin-top:4px}.check:has(input:checked){color:#527464}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.actions{display:flex;gap:14px;margin:30px 0;flex-wrap:wrap}footer{border-top:1px solid var(--line);padding:30px 0;margin-top:65px;font-size:14px;color:var(--green)}footer span{float:right;font-size:12px;color:var(--muted)}#preview canvas{display:block;width:100%;max-width:700px;margin:24px auto;background:white;box-shadow:0 4px 25px #203b3412}#preview{background:#e7ece5;padding:12px;border-radius:14px}[hidden]{display:none!important}@media(max-width:640px){header{padding:15px 20px}header small{display:none}main{padding:24px 18px}nav{gap:9px;font-size:11px;margin-bottom:32px}h1{font-size:29px}#cards{grid-template-columns:1fr}.card{padding:21px}.features{gap:12px;font-size:11px}.metadata,.fields{grid-template-columns:1fr}.panel{padding:20px}.actions button{width:100%}footer span{display:block;float:none}.progress span:last-of-type{font-size:11px}}@page{size:A4;margin:0}@media print{body{background:white}header,nav,#choose,#edit,footer,#result>.back,#result>.eyebrow,#result>h1,#result>.lead,.actions,#status{display:none!important}main{max-width:none;padding:0;margin:0}#result{display:block!important}#preview{padding:0;background:white;border:0}#preview canvas{width:210mm;height:297mm;max-width:none;box-shadow:none;margin:0;break-after:page}#preview canvas:last-child{break-after:auto}}

.brand img{display:block;width:240px;max-width:58vw;height:auto}.brand span{margin-top:5px}.back-bottom{display:block;text-decoration:underline;text-underline-offset:4px;margin-top:-12px;margin-bottom:28px}

/* Keep choice controls separate from free-text notes. */
.field-group + .field-group{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}
.field-group h3{font-size:16px;line-height:1.6;margin:0 0 6px;color:var(--green)}
.field-group-description{font-size:13px;color:var(--muted);margin:0 0 18px}
.field-group .fields{gap:20px 24px;margin-bottom:0;align-items:start}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field-label{line-height:1.6}
select{appearance:none;-webkit-appearance:none;height:50px;line-height:1.6;padding:10px 48px 10px 14px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23245c49' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;background-size:16px 16px;cursor:pointer}
select:focus-visible{outline:3px solid #d5ad45;outline-offset:3px}
@media(max-width:640px){.field-group .fields{gap:18px}.field-group + .field-group{margin-top:24px;padding-top:22px}}
@media(forced-colors:active){select{appearance:auto;background-image:none}}

.article-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin:4px 0 24px;padding:12px 22px;border:1px solid var(--green);border-radius:10px;background:white;color:var(--green);font-size:15px;font-weight:600;text-decoration:none;transition:background .15s}.article-button:hover{background:#edf3e9}@media(max-width:640px){.article-button{display:flex;width:100%;font-size:14px;padding:12px 16px}}
