:root{--fg:#1f2328;--muted:#5b636b;--accent:#1d5d3a;--bg:#fff;--line:#d8dde2;--warn:#8a5300}
*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--fg);background:var(--bg)}
.site-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--line)}
.brand{font-weight:700;color:var(--accent);text-decoration:none}.site-header nav{display:flex;gap:1rem;align-items:center}
.content{max-width:60rem;margin:0 auto;padding:1rem}.narrow{max-width:28rem;margin:0 auto}
form.inline{display:inline}button.link{background:none;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit}
button,.button{background:var(--accent);color:#fff;border:0;border-radius:6px;padding:.6rem 1rem;font:inherit;cursor:pointer}
button.secondary{background:#e8ece9;color:var(--fg)}input,select,textarea{width:100%;padding:.55rem;border:1px solid var(--line);border-radius:6px;font:inherit}
label{display:block;font-weight:600;margin-top:.75rem}.messages{list-style:none;padding:0}.messages li{padding:.6rem .8rem;border-radius:6px;background:#eef6f0;margin-bottom:.5rem}
.messages li.error,.error{background:#fdecec;color:#8b1a1a}.warning{background:#fff4e0;color:var(--warn);padding:.6rem .8rem;border-radius:6px}
.cards{list-style:none;padding:0;display:grid;gap:.75rem}.cards a{display:block;padding:1rem;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--fg)}
.cards a span{display:block;color:var(--muted)}table{width:100%;border-collapse:collapse}td,th{padding:.4rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.status{display:inline-block;padding:.1rem .5rem;border-radius:999px;background:#eef1f4;font-size:.85rem}
