:root{--bg:#fbf3e4;--bg-soft:#f6e9d2;--card:#fffdf7;--border:#e6d7ba;--fg:#33291f;--muted:#6f5f4c;--leaf:#2e6b4f;--leaf-dark:#245540;--leaf-soft:#e2efe2;--terracotta:#c96a50;--terracotta-soft:#f7e3d9;--marigold:#e9b44c;--marigold-soft:#faeecd;--danger:#a83c32;--danger-soft:#f6ded9;--ok:#2e6b4f;--radius:14px;--radius-small:9px;--shadow:0 2px 10px rgba(90,66,40,0.08);--font-body:system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{font-size:17px}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);line-height:1.6}main{max-width:880px;margin:0 auto;padding:1.5rem 1.25rem 4rem}h1,h2,h3{font-family:var(--font-display);line-height:1.2;color:var(--fg)}h1{font-size:2rem}h2{font-size:1.4rem}a{color:var(--leaf);text-underline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--marigold);outline-offset:2px;border-radius:var(--radius-small)}.site-header{background:var(--card);border-bottom:1px solid var(--border)}.site-header .inner{max-width:880px;margin:0 auto;padding:.65rem 1.25rem;display:flex;align-items:center;gap:.8rem}.site-header img{display:block}.brand{font-family:var(--font-display);font-size:1.45rem;font-weight:700;color:var(--fg);text-decoration:none}.site-header nav{margin-left:auto;display:flex;gap:1.1rem;align-items:center;font-size:.98rem}.site-footer{border-top:1px solid var(--border);background:var(--bg-soft);color:var(--muted);font-size:.92rem}.site-footer .inner{max-width:880px;margin:0 auto;padding:1.1rem 1.25rem}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.4rem 1.5rem;margin-bottom:1.25rem}.card>h2:first-child{margin-top:0}form.stack{display:grid;grid-gap:.9rem;gap:.9rem;max-width:28rem}label{font-size:.95rem;color:var(--muted);display:grid;grid-gap:.3rem;gap:.3rem;font-weight:600}input,select,textarea{padding:.65rem .75rem;border:1.5px solid var(--border);border-radius:var(--radius-small);font:inherit;color:var(--fg);background:#fff;min-height:2.8rem}button{padding:.65rem 1.25rem;border:none;border-radius:var(--radius-small);background:var(--leaf);color:#fff;font:inherit;font-weight:700;cursor:pointer;width:-moz-fit-content;width:fit-content;min-height:2.7rem}button:hover{background:var(--leaf-dark)}button.secondary{background:var(--leaf-soft);color:var(--leaf-dark);border:1.5px solid var(--leaf)}button.secondary:hover{background:#d3e6d3}table{width:100%;border-collapse:collapse;font-size:.97rem}td,th{text-align:left;padding:.6rem;border-bottom:1px solid var(--border);vertical-align:middle}th{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}tr:last-child td{border-bottom:none}.muted{color:var(--muted)}.error,.muted{font-size:.95rem}.error{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-small);padding:.5rem .8rem}.pill{display:inline-block;background:var(--leaf-soft);color:var(--leaf-dark);border-radius:999px;padding:.12rem .7rem;font-size:.82rem;font-weight:700;white-space:nowrap}.pill.warn{background:var(--marigold-soft);color:#7a5a12}.pill.alert{background:var(--danger-soft);color:var(--danger)}.linked{color:var(--ok);font-weight:700;white-space:nowrap}.notlinked{color:var(--muted);white-space:nowrap}.hero{text-align:center;padding:1.5rem 0 0}.hero h1{font-size:2.6rem;margin:.8rem 0 .4rem}.hero .lede{font-size:1.2rem;color:var(--muted);max-width:34rem;margin:0 auto 1.4rem}.hero-art{width:100%;max-width:880px;border-radius:var(--radius);border:1px solid var(--border);display:block;margin:1.6rem auto 0}.cta{display:inline-block;background:var(--leaf);color:#fff;font-weight:700;font-size:1.1rem;padding:.8rem 1.7rem;border-radius:var(--radius-small);text-decoration:none}.cta:hover{background:var(--leaf-dark)}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:1rem;gap:1rem;margin-top:1.6rem;text-align:left}.feature{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;box-shadow:var(--shadow)}.feature .emoji{font-size:1.7rem}.feature h3{margin:.4rem 0 .3rem;font-size:1.08rem}.feature p{margin:0;color:var(--muted);font-size:.95rem}.empty-state{text-align:center;padding:1rem 0}.empty-state img{width:240px;max-width:70%}