*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;background:#faf9f7;color:#2b2b2b;line-height:1.9;max-width:720px;margin:0 auto;padding:0 20px}
body.home{max-width:1120px}
header{padding:48px 0 24px;border-bottom:2px solid #1a1a1a;margin-bottom:8px}
header h1{font-size:32px;letter-spacing:4px}
header h1 a{color:#1a1a1a;text-decoration:none}
header p{color:#888;font-size:14px;margin-top:8px}
nav{margin:16px 0 8px;font-size:14px}
nav a{color:#666;margin-right:16px;text-decoration:none}
nav a:hover{color:#1a1a1a}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;margin:28px 0 16px}
.card{background:#fff;border:1px solid #e9e6e0;border-radius:14px;padding:26px 24px;display:flex;flex-direction:column;transition:transform .15s ease,box-shadow .15s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(0,0,0,.09)}
.card .cat{align-self:flex-start;background:#1a1a1a;color:#fff;padding:2px 12px;border-radius:12px;font-size:12px}
.card h3{font-size:20px;line-height:1.55;margin:14px 0 10px}
.card h3 a{color:#1a1a1a;text-decoration:none}
.card h3 a:hover{text-decoration:underline}
.card .excerpt{color:#555;font-size:14.5px;line-height:1.85;flex:1}
.card .meta{color:#aaa;font-size:12px;margin-top:18px;padding-top:14px;border-top:1px solid #f0ede8}
.toolbar{margin:24px 0 4px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.search{flex:1;min-width:220px;max-width:420px}
.search input{width:100%;padding:11px 16px;font-size:15px;border:1px solid #ddd;border-radius:24px;background:#fff;outline:none}
.search input:focus{border-color:#1a1a1a}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:8px 18px;font-size:14px;border:1px solid #ddd;border-radius:20px;background:#fff;cursor:pointer;color:#555}
.chip:hover{border-color:#1a1a1a;color:#1a1a1a}
.chip.active{background:#1a1a1a;color:#fff;border-color:#1a1a1a}
.empty{display:none;text-align:center;color:#999;padding:60px 0;grid-column:1/-1}
article.post{margin-bottom:56px}
.post-meta{color:#999;font-size:13px;margin:8px 0 16px}
.post-meta .cat{background:#1a1a1a;color:#fff;padding:2px 10px;border-radius:12px;font-size:12px;margin-right:8px}
h2.ptitle{font-size:26px;line-height:1.5}
h2.ptitle a{color:#1a1a1a;text-decoration:none}
h2.ptitle a:hover{text-decoration:underline}
h3{font-size:19px;margin:32px 0 12px;padding-left:12px;border-left:4px solid #1a1a1a}
p{margin:14px 0}
.readmore{display:inline-block;margin-top:8px;color:#1a1a1a;font-size:14px}
footer{margin:64px 0 32px;padding-top:24px;border-top:1px solid #ddd;color:#999;font-size:13px;text-align:center}
blockquote{border-left:3px solid #ccc;padding-left:16px;color:#666;margin:16px 0}
hr{border:none;border-top:1px solid #e5e5e5;margin:24px 0}
.src{font-size:13px;color:#999;margin-top:32px}
@media(max-width:640px){.grid{grid-template-columns:1fr}}
