:root{
  --bg:#ffffff;
  --text:#222;
  --muted:#555;
  --link:#0033cc;
  --border:#e6e6e6;
  --max:900px;
}
*{box-sizing:border-box}
html,body{
  margin:0; padding:0;
  background:var(--bg); color:var(--text);
  font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
a{color:var(--link); text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:var(--max); margin:2rem auto; padding:0 1rem}
.nav{border-bottom:1px solid var(--border); background:#fff; position:sticky; top:0; z-index:10}
.nav .inner{max-width:var(--max); margin:0 auto; display:flex; gap:1rem; align-items:center; padding:0.9rem 1rem}
.brand{margin-right:auto; font-weight:700}
header{display:flex; flex-wrap:wrap; align-items:center; gap:1.5rem; margin:1.5rem 0 2rem}
header img{width:220px; height:auto; border-radius:8px}
h1{font-size:2.2rem; margin:0 0 .3rem}
h2{margin-top:2rem}
.small{color:var(--muted); font-size:.95rem}
.footer{margin-top:3rem; padding:1rem; border-top:1px solid var(--border); text-align:center; color:var(--muted)}
ul{margin-top:.5rem}
ol{padding-left:1.2rem}
.card{border:1px solid var(--border); border-radius:10px; padding:1rem; background:#fff}
.list{display:grid; gap:1rem}
.pub .meta{color:var(--muted); font-size:.95rem; margin-top:.2rem}
