:root { --bg:#faf7f2; --ink:#2b2b2b; --accent:#7a5c3e; --line:#e5ddd0; --in:#3a7d44; --maybe:#b7791f; --out:#9b9b9b; }
* { box-sizing: border-box; }
body { margin:0; font: 17px/1.5 -apple-system, system-ui, Georgia, serif; color:var(--ink); background:var(--bg); }
main { max-width: 640px; margin: 0 auto; padding: 24px 18px 64px; }
h1 { font-size: 1.7rem; margin: .2em 0; }
nav { display:flex; gap:16px; margin: 8px 0 24px; }
nav a { color:var(--accent); text-decoration:none; font-weight:600; }
.card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:20px; margin:16px auto; max-width:480px; }
label { display:block; margin:12px 0 4px; font-weight:600; font-size:.95rem; }
input, select, textarea { width:100%; padding:10px; font-size:16px; border:1px solid var(--line); border-radius:8px; background:#fff; }
button { margin-top:16px; padding:11px 18px; font-size:16px; border:0; border-radius:8px; background:var(--accent); color:#fff; font-weight:600; }
.row { display:flex; gap:12px; } .row > * { flex:1; }
.status-in{color:var(--in)} .status-maybe{color:var(--maybe)} .status-out{color:var(--out)}
.person { border-top:1px solid var(--line); padding:12px 0; } .person:first-child{border-top:0}
.person .meta { font-size:.9rem; color:#666; }
.group-h { margin-top:24px; font-size:1.1rem; }
