.topic-library{--topic-ink:#17382b;--topic-accent:#a33b2b;--topic-paper:#fff;--topic-line:#dfe6e1;padding:64px 24px;background:#f5f7f5;color:var(--topic-ink)}
.topic-library-inner{width:min(1180px,100%);margin:0 auto}
.topic-library-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:24px}
.topic-library-head small{display:block;margin-bottom:8px;color:var(--topic-accent);font-size:12px;font-weight:800}
.topic-library-head h1,.topic-library-head h2{margin:0;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(28px,3vw,42px);line-height:1.2;letter-spacing:0}
.topic-library-head p{max-width:520px;margin:10px 0 0;color:#5c6d64;font-size:15px;line-height:1.8}
.topic-library-tabs{display:flex;gap:8px;overflow:auto;padding:2px 0 18px;scrollbar-width:thin}
.topic-library-tabs button,.topic-library-tabs a{display:inline-grid;place-items:center;flex:0 0 auto;min-height:38px;padding:0 14px;border:1px solid #ccd6d0;border-radius:4px;background:#fff;color:#385247;font-size:14px;text-decoration:none;cursor:pointer}
.topic-library-tabs button[aria-selected="true"],.topic-library-tabs a[aria-current="page"]{border-color:var(--topic-ink);background:var(--topic-ink);color:#fff}
.topic-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.topic-article{display:grid;grid-template-rows:180px auto;min-width:0;border:1px solid var(--topic-line);border-radius:6px;overflow:hidden;background:var(--topic-paper);color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease}
.topic-article:hover{transform:translateY(-3px);border-color:#a9b9af}
.topic-article-media{position:relative;overflow:hidden;background:#e5ebe7}
.topic-article-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.topic-article:hover img{transform:scale(1.025)}
.topic-article-media span{position:absolute;left:12px;bottom:12px;padding:5px 8px;border-radius:3px;background:rgba(18,48,36,.9);color:#fff;font-size:12px}
.topic-article-copy{display:grid;align-content:start;gap:10px;padding:20px}
.topic-article-copy h3{margin:0;font-family:"Noto Serif SC","Songti SC",serif;font-size:20px;line-height:1.45;letter-spacing:0}
.topic-article-copy p{display:-webkit-box;overflow:hidden;margin:0;color:#627168;font-size:14px;line-height:1.75;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.topic-article-copy time{color:#8a9890;font-size:12px}
.topic-library-more{display:inline-flex;margin-top:22px;color:var(--topic-ink);font-size:14px;font-weight:750;text-underline-offset:5px}
.article-archive{min-height:70vh}.article-archive .topic-library-inner{padding-top:18px}.article-archive-back{display:inline-flex;margin-bottom:28px;color:#53675c;font-size:14px;text-decoration:none}.article-archive-pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:30px}.article-archive-pager a,.article-archive-pager span{min-width:42px;padding:9px 12px;border:1px solid var(--topic-line);border-radius:4px;background:#fff;color:var(--topic-ink);text-align:center;text-decoration:none;font-size:13px}.article-archive-pager [aria-disabled="true"]{opacity:.45;pointer-events:none}
@media(max-width:850px){.topic-library{padding:48px 20px}.topic-library-head{display:block}.topic-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.topic-library{padding:40px 16px}.topic-library-grid{grid-template-columns:1fr}.topic-article{grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto;min-height:142px}.topic-article-media{min-height:142px}.topic-article-copy{padding:15px}.topic-article-copy h3{font-size:17px}.topic-article-copy p{-webkit-line-clamp:2}}
@media(prefers-reduced-motion:reduce){.topic-article,.topic-article-media img{transition:none}}
