.article-wrap{max-width:800px;margin:0 auto;padding:0 var(--s6) var(--s12)}.article-header{padding:var(--s6) 0;border-bottom:1px solid var(--border-light);margin-bottom:var(--s8)}.article-header h1{font-size:clamp(1.6rem,3.2vw,2.2rem);font-weight:800;line-height:1.35;margin:var(--s3) 0 var(--s4)}.article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s3);font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--s4)}.article-meta .sep{opacity:0.4}.article-cover{width:100%;height:auto;max-height:420px;object-fit:cover;border-radius:var(--radius-lg);margin-bottom:var(--s8)}.article-body{font-size:1.02rem;line-height:1.95;color:var(--gray-800)}.article-body h2{font-size:var(--text-2xl);font-weight:800;margin:var(--s10) 0 var(--s4)}.article-body h3{font-size:var(--text-xl);font-weight:700;margin:var(--s6) 0 var(--s3)}.article-body p{margin-bottom:var(--s4)}.article-body img{max-width:100%;height:auto;border-radius:var(--radius);margin:var(--s4) 0}.article-body ul,.article-body ol{margin:0 0 var(--s4) var(--s6)}.article-body li{margin-bottom:var(--s2);line-height:1.9}.article-body blockquote{border-left:4px solid var(--brand);background:rgba(26,115,232,0.04);padding:var(--s4) var(--s5);border-radius:0 var(--radius) var(--radius) 0;margin:var(--s6) 0}.source-note{background:var(--gray-50);border:1px solid var(--border-light);border-radius:var(--radius);padding:var(--s4) var(--s5);margin-top:var(--s8);font-size:var(--text-sm);color:var(--text-muted)}.source-note a{color:var(--brand)}.nav-search-trigger{display:inline-flex;align-items:center;gap:4px;background:none;border:1px solid rgba(255,255,255,0.25);color:rgba(255,255,255,0.8);padding:6px 12px;border-radius:var(--radius,8px);cursor:pointer;font-size:0.8rem;transition:all 0.2s}.nav-search-trigger:hover{border-color:rgba(255,255,255,0.5);color:#fff}.search-kbd{font-size:0.65rem;opacity:0.5;margin-left:4px}.breadcrumb{max-width:var(--max-width,1200px);margin:0 auto;padding:calc(var(--s3,12px) + 60px) var(--s6,24px) var(--s3,12px);font-size:var(--text-sm,0.875rem);color:var(--text-muted,#6b7280)}.breadcrumb a{color:var(--brand,#1a73e8);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb .sep{margin:0 var(--s2,8px);opacity:0.4}