:root{--text: #1a1a1a;--muted: #5c5c5c;--rule: #d4d4d0;--paper: #fbfbf9;--inset: #f3f3f0;--bad: #8a1f1f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--text);font-family:Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.45}header,main,footer{max-width:42rem;margin:0 auto;padding:1.25rem}header{display:flex;justify-content:space-between;gap:1rem;align-items:center}.brand{margin:0;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:600;line-height:1.25}h1{font-size:1.6rem;margin:.1rem 0 0}h2{font-size:1.25rem;margin:1.5rem 0 .6rem}a{color:inherit}nav a,button.link{margin-right:.8rem}.muted{color:var(--muted)}.err{color:var(--bad)}label{display:block;margin:.55rem 0}input,select,textarea,button{font:inherit}textarea{width:100%;min-height:4.5rem}pre,.panel{white-space:pre-wrap;background:var(--inset);border:1px solid var(--rule);padding:.75rem .9rem}ul.plain{list-style:none;padding:0}ul.plain li{border-bottom:1px solid var(--rule);padding:.55rem 0}.person-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.person-edit{display:grid;grid-template-columns:1fr 1fr auto auto;gap:.6rem;align-items:end;margin-top:.45rem}.person-edit[hidden]{display:none}.person-edit label{margin:0}.person-edit input,.person-edit button{height:2.4rem;padding:0 .55rem}.person-edit input{width:100%}.row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.person-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:.6rem;align-items:end;margin:.6rem 0}.person-row label{margin:0}.person-row input,.person-row select,.person-row button{width:100%;height:2.4rem;padding:0 .55rem}.person-row button{width:auto;white-space:nowrap}.office-row{display:grid;grid-template-columns:1fr auto auto;gap:.6rem;align-items:end;margin:.6rem 0}.office-row label{margin:0}.office-row input,.office-row button{height:2.4rem;padding:0 .55rem}.office-row input{width:100%}.office-row button{white-space:nowrap}#add-person{min-width:2.4rem}footer{margin-top:1rem;padding-top:0;color:var(--muted);font-size:.85rem}
