    :root { --fg:#111; --muted:#666; --border:#e5e5e5; --bg:#fff; --link:#0b57d0; }
body { margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial; color:var(--fg); background:var(--bg); }
a { color:var(--link); text-decoration:none; }
a:hover { text-decoration:underline; }
.container { max-width: 980px; margin:0 auto; padding: 16px; }
.site-header { border-bottom:1px solid var(--border); position:sticky; top:0; background:rgba(255,255,255,0.95); backdrop-filter:saturate(180%) blur(8px); }
.brand { font-weight:700; }
.nav a { margin-left: 12px; color:var(--fg); }
.site-footer { border-top:1px solid var(--border); margin-top: 48px; padding: 12px 0; color:var(--muted); }
.grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; }
.card { border:1px solid var(--border); border-radius: 10px; padding: 12px; }
.card-title { font-weight: 650; margin-bottom: 4px; }
.card-meta { color:var(--muted); font-size: 12px; margin-bottom: 8px; }
.card-summary { color:var(--fg); font-size: 14px; line-height:1.4; }
.pill { display:inline-block; border:1px solid var(--border); border-radius: 999px; padding:2px 8px; font-size:12px; color:var(--muted); margin-right:6px; }
.h1 { font-size: 28px; margin: 18px 0 8px; }
.h2 { font-size: 20px; margin: 20px 0 8px; }
.muted { color:var(--muted); }
.btn { display:inline-block; border:1px solid var(--border); border-radius: 10px; padding:8px 12px; margin-right: 8px; }
.btn:hover { background:#fafafa; text-decoration:none; }
pre { background:#fafafa; border:1px solid var(--border); border-radius: 10px; padding: 12px; overflow:auto; }
table { border-collapse: collapse; width:100%; }
th, td { border-bottom:1px solid var(--border); padding:8px; text-align:left; font-size: 14px; }
input, select, textarea { font: inherit; }
textarea { width:100%; min-height: 260px; }
