:root{--bg:#faf9f7;--text:#1d1b19;--muted:#6b6761;--accent:#7a1f3d;--border:#e4e0da;--card:#fff}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.7 Georgia,"Times New Roman",serif}
a{color:var(--accent)}
img{max-width:100%;height:auto}
header.site{display:flex;justify-content:space-between;align-items:center;max-width:960px;margin:0 auto;padding:16px;font-family:system-ui,sans-serif}
header.site .brand{font-weight:700;text-decoration:none;font-size:1.05rem}
header.site nav a{text-decoration:none;font-size:.95rem}
footer.site{max-width:960px;margin:48px auto 0;padding:24px 16px;border-top:1px solid var(--border);color:var(--muted);font:.9rem system-ui,sans-serif;text-align:center}
main.post{max-width:720px;margin:0 auto;padding:0 16px}
main.post h1{font-size:2rem;line-height:1.25;margin:.4em 0}
main.post h2{font-size:1.5rem;line-height:1.3;margin:1.8em 0 .5em}
main.post h3{font-size:1.2rem;margin:1.5em 0 .4em}
.crumbs,.byline,.tags{font:.85rem system-ui,sans-serif;color:var(--muted)}
.crumbs a{color:var(--muted)}
.cover{display:block;width:100%;border-radius:10px;margin:16px 0}
.content blockquote{margin:1.2em 0;padding:.2em 1em;border-left:4px solid var(--accent);color:var(--muted)}
.content table{border-collapse:collapse;width:100%;font-size:.95rem}
.content th,.content td{border:1px solid var(--border);padding:8px;text-align:left}
.cta{margin:32px 0;padding:16px 20px;border:1px solid var(--border);border-left:4px solid var(--accent);background:var(--card);border-radius:8px;font-family:system-ui,sans-serif}
.cta p{margin:0}
.related{font-family:system-ui,sans-serif}
.tags span{display:inline-block;border:1px solid var(--border);border-radius:999px;padding:2px 10px;margin:0 4px 4px 0}
main.index{max-width:960px;margin:0 auto;padding:0 16px}
main.index h1{font-size:2.2rem;margin:.3em 0 .1em}
.lead{color:var(--muted);margin-top:0;font-family:system-ui,sans-serif}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px;margin-top:24px}
.card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.thumb{display:block;aspect-ratio:16/9;background:#ece8e2}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.thumb .ph{display:block;width:100%;height:100%}
.card-body{padding:14px 16px 18px;font-family:system-ui,sans-serif}
.card-body h2{font-size:1.1rem;line-height:1.35;margin:.3em 0}
.card-body h2 a{text-decoration:none;color:var(--text)}
.card-body h2 a:hover{color:var(--accent)}
.card-body p{margin:0 0 8px;font-size:.92rem;color:var(--muted);line-height:1.5}
.card-body time{font-size:.8rem;color:var(--muted)}
.cat{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);font-weight:600}
