:root{color-scheme:light;--green:#24654f;--ink:#20362c;--bg:#f4f3ed}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,sans-serif}header{background:#1e3029;color:#f9f6ef;padding:30px max(20px,calc((100vw - 1120px)/2))}header a{color:#c9ddca}h1,h2,h3{font-family:Georgia,serif;overflow-wrap:anywhere}h1{font-size:2.5rem;margin:12px 0}main{max-width:1160px;padding:20px;margin:auto;min-height:65vh}a{color:var(--green)}button,input,textarea,select{font:inherit;min-height:44px;border-radius:8px;border:1px solid #bdc9be;padding:9px 12px}button{background:var(--green);color:white;cursor:pointer}button:disabled{opacity:.5}button[aria-selected=true]{background:#193426;outline:3px solid #b9cda7}button.danger{background:#963b34}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b58e36;outline-offset:2px}nav,.actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}label{display:flex;flex-direction:column;gap:6px;margin:14px 0}label input[type=checkbox]{align-self:start}input,textarea{max-width:100%;width:100%;background:white;color:var(--ink)}input[type=checkbox]{width:24px;min-width:24px;accent-color:var(--green)}.project{background:#fffefa;border:1px solid #d9ded5;border-radius:12px;padding:20px;margin:18px 0;box-shadow:0 8px 25px #20362c08}.project h3{margin-top:0;font-size:1.45rem}ul{list-style:none;padding:0}.task{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;border-top:1px solid #e1e5dd;padding:16px 0}.task .actions{grid-column:2}.task p{margin:0 0 8px;white-space:pre-wrap;overflow-wrap:anywhere}.task-text{font-weight:550}small{display:block;color:#627367}details p,.instruction{white-space:pre-wrap;overflow-wrap:anywhere}summary{cursor:pointer;color:#526857}pre{max-width:100%;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem}.error{color:#922e28;font-weight:600}#sync{padding:12px;background:#e7eee8;border-radius:8px}#status{min-height:24px}dialog{width:min(680px,calc(100vw - 24px));border:1px solid #b2c0af;border-radius:12px;max-height:90vh;overflow:auto;padding:24px}dialog::backdrop{background:#10271d99}footer{padding:24px;text-align:center;color:#627367;font-size:.85rem}[hidden]{display:none!important}@media(max-width:600px){header{padding:24px 18px}h1{font-size:2rem}main{padding:12px}.project{padding:14px}.task .actions{grid-column:1/-1}nav button{flex:1 1 45%}.actions button{flex:1 1 auto}}