:root { --paper:#FBFAF7; --tint:#F4F2EC; --plate:#fff; --ink:#1C1B1A; --annot:#5A574F; --rule:#E3DFD5; --wax:#7A1E1E; }
* { margin:0; padding:0; box-sizing:border-box; }
body { background:var(--paper); color:var(--ink); font:15px/1.6 "Instrument Sans",-apple-system,"Segoe UI",sans-serif; }
a { color:var(--wax); }
.wrap { max-width:70rem; margin:0 auto; padding:1.5rem 2rem 4rem; }
.bar { display:flex; gap:1.4rem; align-items:baseline; border-bottom:1px solid var(--rule); padding:1rem 2rem; background:var(--plate); }
.bar .wordmark { font-family:Georgia,serif; font-weight:700; letter-spacing:.3em; text-transform:uppercase; color:var(--ink); text-decoration:none; }
.bar a { color:var(--annot); text-decoration:none; font-size:.9rem; }
.bar a:hover { color:var(--ink); }
h1 { font-family:Georgia,serif; font-size:1.6rem; margin:1.6rem 0 1rem; }
h2 { font-family:Georgia,serif; font-size:1.15rem; margin:1.8rem 0 .7rem; }
table { width:100%; border-collapse:collapse; background:var(--plate); border:1px solid var(--rule); }
th,td { text-align:left; padding:.55rem .8rem; border-bottom:1px solid var(--rule); font-size:.9rem; vertical-align:top; }
th { background:var(--tint); font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; color:var(--annot); }
tr:last-child td { border-bottom:none; }
.card { background:var(--plate); border:1px solid var(--rule); border-radius:4px; padding:1.2rem 1.4rem; margin:1rem 0; }
label { display:block; font-size:.8rem; text-transform:uppercase; letter-spacing:.05em; color:var(--annot); margin:.7rem 0 .2rem; }
input,select,textarea { width:100%; padding:.55rem .7rem; border:1px solid var(--rule); border-radius:3px; font:inherit; background:var(--plate); }
textarea { min-height:7rem; }
button { background:var(--wax); color:var(--paper); border:none; padding:.65rem 1.3rem; font:600 .9rem "Instrument Sans",sans-serif; border-radius:3px; cursor:pointer; margin-top:.9rem; }
button:hover { background:#611717; }
.pill { display:inline-block; font-size:.75rem; font-weight:600; border:1px solid var(--rule); border-radius:100px; padding:.1rem .7rem; background:var(--plate); }
.pill.ok { color:#1d5c2f; border-color:#1d5c2f55; }
.pill.bad { color:var(--wax); border-color:#7A1E1E55; }
.pill.stage { color:var(--annot); }
.error { background:#7A1E1E12; border:1px solid #7A1E1E44; color:var(--wax); padding:.7rem 1rem; border-radius:3px; margin:1rem 0; font-size:.9rem; }
.muted { color:var(--annot); font-size:.85rem; }
.grid2 { display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; }
.mono { font-family:"IBM Plex Mono",monospace; font-size:.8rem; }
.stat { display:inline-block; margin-right:2rem; }
.stat b { font-size:1.5rem; font-family:Georgia,serif; }
@media (max-width:700px){ .grid2{grid-template-columns:1fr} .wrap{padding:1rem 1rem 3rem} .bar{flex-wrap:wrap;padding:1rem} }
