:root{color-scheme:light dark;--text:#202820;--bg:#f4f4ef;--line:#d9ddd2;--body:#586052;--muted:#65705f;--accent-text:#536747;--card:#fffefa;--field:#fff;--field-line:#b8c0af;--primary:#334e32;--on-primary:#fff;--focus:#bf8b34;--soft:#e8eddf;--warn:#6d592b}@media(prefers-color-scheme:dark){:root{--text:#e9ece4;--bg:#121613;--line:#2b332a;--body:#c4cbbb;--muted:#99a48f;--accent-text:#a9c39b;--card:#1b211b;--field:#151a16;--field-line:#45503f;--primary:#7fb078;--on-primary:#0e140e;--focus:#e0ab4e;--soft:#243024;--warn:#dcb86a}}
:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 6vw}.brand{font-size:15px;letter-spacing:.12em;font-weight:800;color:inherit;text-decoration:none}.brand span{font-size:10px;display:block;letter-spacing:.3em;color:var(--muted);margin-top:4px}main{max-width:1240px;padding:54px 30px 80px;margin:auto}.intro{max-width:730px;margin-bottom:32px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--accent-text)}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(36px,5vw,60px);letter-spacing:-.04em;margin:12px 0}h2{font-size:21px;letter-spacing:-.025em;margin:0 0 22px}p{line-height:1.65;color:var(--body)}.card{border:1px solid var(--line);background:var(--card);padding:28px;border-radius:12px;margin-bottom:22px}.narrow{max-width:460px}.layout{display:grid;grid-template-columns:285px 1fr;gap:24px}label{display:block;font-size:13px;font-weight:600;margin:0 0 20px}input,textarea,select{font:inherit;width:100%;display:block;padding:12px;border:1px solid var(--field-line);background:var(--field);border-radius:6px;margin-top:8px;color:var(--text)}textarea{resize:vertical}button{font:inherit;font-size:13px;font-weight:600;padding:11px 16px;background:var(--primary);color:var(--on-primary);border:1px solid var(--primary);border-radius:6px;cursor:pointer}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:3px}#projects button{display:block;text-align:left;width:100%;margin-bottom:8px;background:transparent;color:var(--primary);border-color:var(--line)}#projects button[aria-current=true]{background:var(--soft);border-color:var(--primary)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.task{padding:22px 0;border-top:1px solid var(--line)}.task p{var(--on-primary)-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);margin:8px 0}.task small{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:10px}#notice:empty{display:none}#notice{padding:14px 18px;background:var(--soft);border-radius:8px}#protection{color:var(--warn)}footer{font-size:11px;line-height:1.8;padding:24px 6vw;border-top:1px solid var(--line);color:var(--muted)}footer a{color:inherit}[hidden]{display:none!important}@media(max-width:720px){.layout{grid-template-columns:1fr}main{padding:32px 20px}.card{padding:22px}header{height:72px}.intro{margin-bottom:24px}}

#preview-frame{display:block;width:100%;height:70vh;min-height:320px;border:1px solid currentColor;background:#fff}

.task-sharing{margin-top:12px}.task-sharing form{margin-top:18px}.task-sharing button{margin:4px 8px 4px 0}.task-sharing [role=status]{font-size:13px}

#review-queue dd{margin:0 0 1rem;overflow-wrap:anywhere}#review-queue dt{font-weight:600}#review-queue details{margin-top:1rem}
.preview-grants{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.preview-grants form{display:grid;gap:8px;max-width:420px;margin:12px 0}.preview-grants label{display:grid;gap:4px;font-size:13px}.grant-list{list-style:none;padding:0;display:grid;gap:8px}.grant-list li{display:grid;gap:4px}.grant-list span{font-size:13px;color:var(--body);overflow-wrap:anywhere}
.client-members form{display:grid;gap:8px;max-width:520px;margin:12px 0}.client-members label{display:grid;gap:4px;font-size:13px}.member-list{list-style:none;padding:0;display:grid;gap:10px}.member-list li{display:grid;gap:6px}.member-list span{font-size:13px;color:var(--body);overflow-wrap:anywhere}
.staff-access form{display:grid;gap:8px;max-width:520px;margin:12px 0}.staff-access label{display:grid;gap:4px;font-size:13px}
.release-decision{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.approval-list{list-style:none;padding:0;display:grid;gap:8px}.approval-list li{display:grid;gap:4px}.approval-list span{font-size:13px;color:var(--body)}
button[aria-busy=true]{position:relative;color:transparent!important;cursor:progress}button[aria-busy=true]::after{content:'';position:absolute;inset:0;margin:auto;width:16px;height:16px;border:2px solid currentColor;border-color:var(--on-primary) transparent var(--on-primary) transparent;border-radius:50%;animation:ff-spin .8s linear infinite}#projects button[aria-busy=true]::after,.secondary[aria-busy=true]::after{border-color:var(--primary) transparent var(--primary) transparent}@keyframes ff-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){button[aria-busy=true]::after{animation-duration:2s}}#notice[aria-busy=true]{background:transparent;border:1px solid var(--line)}
