*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;background:#fafaf8;color:#1a1a1a;line-height:1.8}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:720px;margin:0 auto;padding:0 20px 60px}
header.site{border-bottom:1px solid #e8e8e4;padding:24px 0 16px;margin-bottom:8px}
header.site h1{font-size:clamp(20px,5vw,26px);font-weight:700;letter-spacing:1px}
header.site h1 a:hover{color:#2563eb}
header.site p{color:#888;font-size:14px;margin-top:6px}
nav.cats{display:flex;gap:10px;margin:14px 0 6px;flex-wrap:wrap}
nav.cats a{font-size:14px;padding:4px 14px;border:1px solid #ddd;border-radius:99px;color:#555}
nav.cats a.on,nav.cats a:hover{background:#1a1a1a;color:#fff;border-color:#1a1a1a}
/* 公司专栏入口：与个人专栏的分类胶囊区分开，用主色描边，一眼能点到 */
nav.cats a.co{background:#0f766e;border-color:#0f766e;color:#fff;font-weight:600}
nav.cats a.co:hover{background:#0b5f59;border-color:#0b5f59;color:#fff}
/* 正文顶部的专栏卡片：直接列出最新两篇，读者不进专栏也知道里面有什么 */
a.co-card{display:block;margin:16px 0 4px;padding:18px 20px;border:1px solid #0f766e;
  border-left-width:5px;border-radius:12px;background:#f4fbfa;text-decoration:none;color:#1a1a1a}
a.co-card:hover{background:#eaf7f5}
a.co-card .co-tag{display:inline-block;font-size:12px;color:#fff;background:#0f766e;
  padding:2px 10px;border-radius:99px;margin-bottom:10px}
a.co-card strong{display:block;font-size:clamp(16px,4.2vw,19px);font-weight:700;margin-bottom:6px}
a.co-card .co-sub{display:block;color:#555;font-size:14px;margin-bottom:10px}
a.co-card ul{margin:0 0 10px;padding-left:20px}
a.co-card li{font-size:14px;color:#333;line-height:1.7}
a.co-card li a{color:#0f766e;text-decoration:none}
a.co-card li a:hover{text-decoration:underline}
a.co-card .co-go{font-size:14px;font-weight:600;color:#0f766e}
.post-card{padding:22px 0;border-bottom:1px solid #eee}
.post-card .thumb{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;border-radius:10px;margin-bottom:12px;display:block;background:#f0f0ec}
.post-card h2{font-size:clamp(17px,4.4vw,20px);font-weight:600;margin-bottom:8px;line-height:1.5}
.post-card h2 a:hover{color:#2563eb}
.meta{font-size:13px;color:#999;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.badge{font-size:12px;color:#fff;padding:2px 9px;border-radius:99px;flex:none}
.summary{color:#555;font-size:14.5px;margin-top:8px}
article.full h1{font-size:clamp(20px,5.4vw,26px);margin:30px 0 10px;line-height:1.4;overflow-wrap:break-word}
article.full .meta{margin-bottom:24px}
article.full p{margin:14px 0;overflow-wrap:break-word}
article.full h2,article.full h3{margin:24px 0 10px}
article.full ul,article.full ol{padding-left:24px;margin:12px 0}
article.full blockquote{border-left:3px solid #ddd;padding:4px 16px;color:#666;margin:14px 0;background:#f5f5f2}
article.full pre{background:#1a1a1a;color:#eee;padding:14px;border-radius:8px;overflow-x:auto;font-size:13.5px;margin:14px 0}
article.full code{background:#f0f0ec;padding:1px 6px;border-radius:4px;font-size:14px}
article.full pre code{background:none;padding:0}
article.full img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;border-radius:10px;margin:16px auto;display:block;cursor:zoom-in;background:#f0f0ec}
article.full table{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px;display:block;overflow-x:auto}
article.full th,article.full td{border:1px solid #e2e2de;padding:6px 10px;text-align:left}
article.full th{background:#f5f5f2}
.back{display:inline-block;margin-top:40px;font-size:14px;color:#888}
.back:hover{color:#2563eb}
footer.site{margin-top:50px;padding-top:18px;border-top:1px solid #e8e8e4;color:#aaa;font-size:13px}
.empty{color:#999;padding:60px 0;text-align:center}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;z-index:99;cursor:zoom-out;padding:16px}
.lightbox img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:6px}
@media(max-width:600px){
  .wrap{padding:0 14px 44px}
  .post-card .thumb{aspect-ratio:4/3}
  article.full img{aspect-ratio:4/3}
  .post-card{padding:18px 0}
}
