:root { --fg:#0b0b0c; --muted:#5a6169; --accent:#ffc72c; --line:#e6e8eb; --bg:#fff; --card:#fafbfc; }
* { box-sizing:border-box; }
body { margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; color:var(--fg); background:var(--bg); line-height:1.55; }
main { max-width:980px; margin:0 auto; padding:24px 16px 64px; }
h2,h3,h4,h5 { margin:0 0 8px; line-height:1.25; }
p { margin:0 0 12px; }
.section { border:1px solid var(--line); border-radius:8px; margin:16px 0; background:var(--card); padding:14px; }
.table { width:100%; border-collapse:collapse; }
.table th, .table td { border-bottom:1px solid var(--line); padding:6px 8px; text-align:left; }
.badge { display:inline-block; padding:2px 8px; border-radius:10px; background:var(--line); font-size:.825rem; color:var(--muted); }
.card { background:#fff; border:1px solid var(--line); border-radius:8px; padding:10px 12px; margin:10px 0; }
.status-met { color:#037a00; }
.status-not_met { color:#b00020; }
.status-exceeded { color:#0053b3; }
.status-mixed, .status-inconclusive { color:#6b6b6b; }
.kv { display:flex; gap:8px; flex-wrap:wrap; }
.kv div { background:#fff; border:1px solid var(--line); border-radius:6px; padding:6px 8px; }
