.blog-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;display:grid}.blog-card{border-radius:var(--radius-md);cursor:pointer;background:#fff;border:2px solid #e2e8f0;transition:all .3s;overflow:hidden}.blog-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-light);transform:translateY(-3px)}.blog-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.blog-card-image{background:var(--gradient-primary);justify-content:center;align-items:center;width:100%;height:200px;display:flex;overflow:hidden}.blog-card-image img{object-fit:cover;width:100%;height:100%}.blog-card-placeholder{font-size:var(--sui-fs-5xl);opacity:.3;color:#fff}.blog-card-body{padding:1.5rem}.blog-card-meta{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.blog-category-badge{font-size:var(--sui-fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--primary);border-radius:var(--radius-full);background:#6c3ce11a;padding:.15rem .6rem;font-weight:700;display:inline-block}.blog-reading-time{font-size:var(--sui-fs-sm);color:var(--text-muted)}.blog-card-title{font-size:var(--sui-fs-lg);color:var(--text-dark);margin-bottom:.5rem;font-weight:700;line-height:1.35}.blog-card-excerpt{font-size:var(--sui-fs-md);color:var(--text-muted);margin-bottom:1rem;line-height:1.6}.blog-card-footer{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding-top:.75rem;display:flex}.blog-author{font-size:var(--sui-fs-sm);color:var(--text-dark);font-weight:600}.blog-date{font-size:var(--sui-fs-sm);color:var(--text-muted)}.read-more{font-size:var(--sui-fs-sm);color:var(--primary);font-weight:600;transition:color .2s}.blog-card:hover .read-more{color:var(--primary-dark)}.blog-filters{margin-bottom:2rem}.blog-filter-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.blog-detail{max-width:800px;margin:0 auto}.blog-detail-header{margin-bottom:2rem}.blog-detail-meta{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.blog-detail-title{font-size:var(--sui-fs-4xl);color:var(--text-dark);margin-bottom:1rem;font-weight:800;line-height:1.2}.blog-detail-author-row{border-bottom:1px solid #e2e8f0;align-items:center;gap:1rem;padding-bottom:1.5rem;display:flex}.blog-author-avatar{background:var(--gradient-primary);color:#fff;width:44px;height:44px;font-size:var(--sui-fs-md);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.blog-author-info{flex-direction:column;gap:.15rem;display:flex}.blog-author-name{font-size:var(--sui-fs-md);color:var(--text-dark);font-weight:600}.blog-author-date{font-size:var(--sui-fs-sm);color:var(--text-muted)}.blog-detail-image{border-radius:var(--radius-md);width:100%;margin-bottom:2rem;overflow:hidden}.blog-detail-image img{width:100%;height:auto;display:block}.blog-content{font-size:var(--sui-fs-md);color:var(--text-dark);line-height:1.8}.blog-content p{margin-bottom:1.5rem}.blog-content h2{font-size:var(--sui-fs-2xl);margin-top:2.5rem;margin-bottom:1rem;font-weight:700}.blog-content h3{font-size:var(--sui-fs-xl);margin-top:2rem;margin-bottom:.75rem;font-weight:700}.blog-content ul,.blog-content ol{margin-bottom:1.5rem;padding-left:1.5rem}.blog-content li{margin-bottom:.5rem}.blog-content blockquote{border-left:4px solid var(--primary);color:var(--text-muted);margin:1.5rem 0;padding-left:1.25rem;font-style:italic}.blog-detail-tags{border-top:1px solid #e2e8f0;flex-wrap:wrap;gap:.5rem;margin-top:2rem;padding-top:1.5rem;display:flex}.blog-tag{font-size:var(--sui-fs-sm);color:var(--accent-text);border-radius:var(--radius-full);background:#06b6d41a;padding:.25rem .75rem;font-weight:600}.comments-section{border-top:2px solid #e2e8f0;margin-top:3rem;padding-top:2rem}.comments-section h2{font-size:var(--sui-fs-xl);color:var(--text-dark);margin-bottom:1.5rem;font-weight:700}.comment-form{border-radius:var(--radius-md);background:#fff;border:1px solid #e2e8f0;margin-bottom:2rem;padding:1.5rem}.comment-form textarea{border-radius:var(--radius-sm);width:100%;min-height:100px;font-size:var(--sui-fs-md);resize:vertical;border:2px solid #e2e8f0;outline:none;margin-bottom:1rem;padding:.85rem 1rem;font-family:inherit;transition:border-color .2s}.comment-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6c3ce11a}.comment-login-prompt{text-align:center;border-radius:var(--radius-md);background:#6c3ce10d;margin-bottom:2rem;padding:1.5rem}.comment-login-prompt p{color:var(--text-muted);margin-bottom:.75rem}.comment-list{flex-direction:column;gap:1rem;display:flex}.comment-item{border-radius:var(--radius-md);background:#fff;border:1px solid #e2e8f0;padding:1.25rem}.comment-header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.comment-avatar{width:36px;height:36px;color:var(--primary);font-size:var(--sui-fs-sm);background:#6c3ce11a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.comment-author{font-size:var(--sui-fs-md);color:var(--text-dark);font-weight:600}.comment-date{font-size:var(--sui-fs-sm);color:var(--text-muted)}.comment-body{font-size:var(--sui-fs-md);color:var(--text-muted);line-height:1.6}.comment-empty{text-align:center;color:var(--text-muted);padding:2rem}@media (width<=768px){.blog-grid{grid-template-columns:1fr}.blog-detail-title{font-size:var(--sui-fs-3xl)}.blog-filter-row{flex-direction:column}}
