.categories-container{max-width:var(--content-max);margin:0 auto;padding:var(--page-padding)}.tags-wrapper{display:flex;flex-wrap:wrap;gap:10px}.tag-item{position:relative;padding:8px 16px;border:1px solid var(--border-color);border-radius:var(--radius-pill);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;color:var(--classify-tag-color);background:var(--classify-tag-bg);font-size:14px}.tag-item:hover{border-color:var(--theme-color);color:var(--theme-color)}.tag-item.active{border-color:var(--theme-color);box-shadow:0 4px 12px color-mix(in srgb,var(--theme-color) 28%,transparent)}.tag-count,.tag-item.active{background-color:var(--theme-color);color:var(--theme-on-color)}.tag-count{position:absolute;top:-8px;right:-6px;font-size:11px;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-pill);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--theme-bg-color)}.tag-item.active .tag-count{background-color:var(--theme-color-hover);color:var(--theme-on-color)}.blog-list{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:1.75rem}.blog-list.blog-list--flush{margin-top:0}.empty-tip{width:100%;text-align:center;color:var(--desc-text-color);padding:48px 0}.blog-card{display:flex;flex-direction:column;background:var(--card-bg);padding:20px 20px 16px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer;min-height:128px}.blog-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--theme-color) 40%,var(--border-color))}.blog-card .blog-title{margin:0 0 12px;font-size:1.05rem;font-weight:600;line-height:1.5;color:var(--text-color);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-card .blog-date{margin:auto 0 0;color:var(--desc-text-color);font-size:13px}@media(max-width:992px){.blog-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.categories-container{padding:16px 12px}.blog-list{grid-template-columns:1fr;gap:12px}.blog-card{min-height:0}}