:root{--ink:#1a1a1a;--soft:#555;--muted:#888;--rule:#e6e3dd;--paper:#faf8f4;--card:#fff;--moss:#2f7d4f;--moss-bg:#eaf4ee;--amber:#9a6a00;--amber-bg:#fbf1d9;--crimson:#9a2b2b;--crimson-bg:#f7e6e6}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font:14px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit}.wrap{max-width:1080px;margin:0 auto;padding:32px 24px 64px}h1{letter-spacing:-.02em;margin:0 0 2px;font-size:28px}h2{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:28px 0 10px;font-size:15px}.sub{color:var(--soft);margin:0 0 20px}.stats{flex-wrap:wrap;gap:12px;margin:16px 0 4px;display:flex}.stat{background:var(--card);border:1px solid var(--rule);border-radius:10px;min-width:120px;padding:12px 16px}.stat b{font-size:24px;display:block}.stat span{color:var(--muted);font-size:12px}table{border-collapse:collapse;background:var(--card);border:1px solid var(--rule);border-radius:10px;width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:10px 14px}th{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:11px}tr:last-child td{border-bottom:none}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.pill{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.ok{background:var(--moss-bg);color:var(--moss)}.warn{background:var(--amber-bg);color:var(--amber)}.bad{background:var(--crimson-bg);color:var(--crimson)}.neutral{color:var(--soft);background:#efece6}.dot{border-radius:999px;width:8px;height:8px;margin-right:6px;display:inline-block}.dot.on{background:var(--moss)}.dot.off{background:var(--muted)}.card{background:var(--card);border:1px solid var(--rule);border-radius:10px;padding:16px}form.inline{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}label{color:var(--soft);margin-bottom:3px;font-size:12px;display:block}input,textarea,select{font:inherit;border:1px solid var(--rule);background:var(--paper);border-radius:8px;padding:7px 10px}button{font:inherit;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:8px;padding:7px 14px;font-weight:600}button.ghost{background:var(--paper);color:var(--ink);border-color:var(--rule)}.muted{color:var(--muted)}.notes{white-space:pre-wrap;color:var(--soft);font-size:13px}
