.tf-blog-hero{background:var(--c-gradient);padding:80px 0 60px}.tf-blog-hero h1{font-size:36px;color:#fff}@media (max-width:768px){.tf-blog-hero{padding:60px 0 40px}.tf-blog-hero h1{font-size:26px}}.tf-blog-list{display:flex;flex-direction:column;gap:32px}.tf-blog-item{display:flex;gap:20px;padding-bottom:32px;border-bottom:1px solid var(--c-border)}.tf-blog-item__meta{flex-shrink:0}.tf-blog-item__date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:56px;background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius-sm)}.tf-blog-item__day{font-size:20px;font-weight:700;color:var(--c-accent);line-height:1}.tf-blog-item__month{font-size:11px;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.06em}.tf-blog-item__cat a{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--c-brand-light)}.tf-blog-item__title{font-size:20px;margin:4px 0 8px}.tf-blog-item__title a{color:var(--c-text);transition:color var(--dur-hover) var(--ease-default)}.tf-blog-item__title a:hover{color:var(--c-accent)}.tf-blog-item__author{font-size:12px;color:var(--c-text-muted);margin-bottom:10px}.tf-blog-item__author a{color:var(--c-text-secondary)}.tf-blog-item__excerpt{font-size:14px;color:var(--c-text-secondary);line-height:1.7;margin-bottom:10px}.tf-blog-item__readmore{font-size:13px;font-weight:500;color:var(--c-accent)}.tf-blog-item__readmore:hover{color:var(--c-accent-light)}@media (max-width:576px){.tf-blog-item{flex-direction:column;gap:12px}}.pagination .page-link{background:var(--c-bg-card);border-color:var(--c-border);color:var(--c-text-secondary);font-size:13px}.pagination .page-link:hover{background:var(--c-bg-alt);border-color:var(--c-accent);color:var(--c-accent)}.pagination .active .page-link{background:var(--c-gradient);border-color:transparent;color:#fff}.pagination .disabled .page-link{background:var(--c-bg-card);border-color:var(--c-border);color:var(--c-text-muted);opacity:.5}.tf-sidebar{position:sticky;top:80px;padding:24px;background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius-md)}.tf-sidebar__title{font-size:15px;font-weight:600;color:var(--c-text);text-transform:uppercase;letter-spacing:.06em}.tf-sidebar__recent{list-style:none;padding:0;margin:0}.tf-sidebar__recent li{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--c-border)}.tf-sidebar__recent li:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.tf-sidebar__date{display:flex;flex-direction:column;align-items:center;min-width:40px;padding:4px 6px;background:var(--c-bg-alt);border-radius:var(--radius-sm)}.tf-sidebar__date-day{font-size:16px;font-weight:700;color:var(--c-accent);line-height:1}.tf-sidebar__date-month{font-size:10px;color:var(--c-text-muted);text-transform:uppercase}.tf-sidebar__recent a{font-size:13px;color:var(--c-text-secondary);line-height:1.5;transition:color var(--dur-hover) var(--ease-default)}.tf-sidebar__recent a:hover{color:var(--c-accent)}.tf-blog-detail__cat a{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--c-brand-light)}.tf-blog-detail__title{font-size:32px;margin:8px 0 12px;line-height:1.3}.tf-blog-detail__meta{font-size:13px;color:var(--c-text-muted);margin-bottom:32px}.tf-blog-detail__meta a{color:var(--c-text-secondary)}.tf-blog-detail__body{font-size:15px;line-height:1.8;color:var(--c-text-secondary)}.tf-blog-detail__body h2,.tf-blog-detail__body h3,.tf-blog-detail__body h4{color:var(--c-text);margin-top:32px;margin-bottom:16px}.tf-blog-detail__body p{margin-bottom:16px}.tf-blog-detail__body img{max-width:100%;border-radius:var(--radius-md);margin:16px 0}.tf-blog-detail__body blockquote{border-left:3px solid var(--c-brand-light);padding-left:20px;margin:24px 0;color:var(--c-text-muted);font-style:italic}.tf-blog-detail__share{margin-top:32px;padding-top:16px}.tf-blog-detail__share-label{font-size:13px;color:var(--c-text-muted);margin-right:12px}.tf-share-link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--c-border);color:var(--c-text-muted);margin-right:8px;transition:all var(--dur-hover) var(--ease-default)}.tf-share-link:hover{border-color:var(--c-accent);color:var(--c-accent)}.tf-blog-detail__entry-meta{margin-top:24px;padding:16px 0;border-top:1px solid var(--c-border);font-size:12px;color:var(--c-text-muted)}.tf-blog-detail__entry-meta span{margin-right:16px}.tf-author-box{margin-top:32px;padding:24px;background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius-md)}.tf-author-avatar{width:64px;height:64px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.tf-author-name{font-size:16px;margin-bottom:4px}.tf-author-bio{font-size:13px;color:var(--c-text-muted);margin:0}.tf-blog-nav{margin-top:32px;border-top:1px solid var(--c-border)}.tf-blog-nav__next,.tf-blog-nav__prev{padding:20px 0}.tf-blog-nav__prev{border-right:1px solid var(--c-border)}.tf-blog-nav__label{display:block;font-size:12px;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.tf-blog-nav__title{display:block;font-size:14px;color:var(--c-text-secondary);line-height:1.4}.tf-blog-nav a{color:inherit;-webkit-text-decoration:none;text-decoration:none}.tf-blog-nav a:hover .tf-blog-nav__title{color:var(--c-accent)}.tf-blog-nav__next{text-align:right}@media (max-width:768px){.tf-blog-detail__title{font-size:24px}.tf-blog-nav__prev{border-right:none;border-bottom:1px solid var(--c-border)}}.tf-blog-reply h3{font-size:20px;margin-bottom:16px}.tf-reply-note{font-size:12px;color:var(--c-text-muted)}.tf-require-star{color:var(--c-accent)}.tf-blog-reply .form-label{font-size:13px;color:var(--c-text-secondary)}.tf-blog-reply .form-label.require::after{content:" *";color:var(--c-accent)}.tf-blog-reply .form-control{background-color:rgba(255,255,255,.06);border-color:var(--c-border);color:var(--c-text)}.tf-blog-reply .form-control:focus{background-color:rgba(255,255,255,.08);border-color:var(--c-accent);box-shadow:0 0 0 2px rgba(6,182,212,.15);color:var(--c-text)}.tf-blog-reply .form-check-label{font-size:12px;color:var(--c-text-muted)}.tf-blog-reply .form-check-input{background-color:transparent;border-color:var(--c-border)}.tf-blog-reply .form-check-input:checked{background-color:var(--c-accent);border-color:var(--c-accent)}