.reading-progress{position:fixed;top:0;left:0;height:2px;width:0%;background:linear-gradient(90deg,var(--accent),var(--accent-warm));z-index:100;transition:width 80ms linear;pointer-events:none;box-shadow:0 0 12px var(--accent-glow)}.article-wrap{max-width:1200px;margin:0 auto;padding:2.5rem 1.25rem 4rem}.article-grid{display:grid;grid-template-columns:1fr;gap:0}@media(min-width:1024px){.article-grid{grid-template-columns:240px 1fr;gap:3rem}}.article-main{max-width:760px;margin:0 auto;width:100%}.article-toc{display:none}@media(min-width:1024px){.article-toc{display:block;position:sticky;top:88px;align-self:start;max-height:calc(100vh - 120px);overflow-y:auto;padding:.5rem 0 1.5rem}}.toc-title{font-family:var(--font-display);font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .875rem}.toc-list{list-style:none;padding:0;margin:0}.toc-item{margin-bottom:2px}.toc-item.depth-3{margin-left:.85rem}.toc-link{display:block;font-size:.8125rem;color:var(--text-tertiary);line-height:1.45;padding:.4rem .7rem;border-left:2px solid transparent;transition:color var(--duration-base) ease,background var(--duration-base) ease,border-color var(--duration-base) ease;text-decoration:none}.toc-link:hover{color:var(--accent);background:#00d9ff0d}.toc-link.is-active{color:var(--accent);border-left-color:var(--accent);background:#00d9ff14}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.8125rem;color:var(--text-muted);margin-bottom:1.5rem}.breadcrumb-link{color:var(--text-tertiary);text-decoration:none;transition:color var(--duration-base) ease}.breadcrumb-link:hover{color:var(--accent)}.breadcrumb-current{color:var(--text-secondary)}.breadcrumb-sep{color:var(--text-muted)}.article-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-default)}.article-category{display:inline-block;font-family:var(--font-display);font-size:.6875rem;font-weight:700;color:var(--accent);background:#00d9ff14;border:1px solid rgba(0,217,255,.18);padding:.3rem .75rem;border-radius:999px;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;margin-bottom:1.25rem;transition:background var(--duration-base) ease,border-color var(--duration-base) ease}.article-category:hover{background:#00d9ff24;border-color:var(--accent)}.article-title{font-family:var(--font-display);font-size:clamp(1.875rem,4.5vw,2.875rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;margin:0 0 1rem;color:var(--text-primary)}.article-lead{color:var(--text-secondary);font-size:1.0625rem;line-height:1.65;margin:0 0 1.5rem}.article-meta{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.article-author{display:flex;align-items:center;gap:.75rem}.author-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,rgba(0,217,255,.3) 100%);color:var(--bg-primary);font-family:var(--font-display);font-weight:700;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 0 14px #00d9ff4d}.author-name{color:var(--text-primary);font-weight:600;font-size:.875rem;text-decoration:none;display:block;line-height:1.2;transition:color var(--duration-base) ease}.author-name:hover{color:var(--accent)}.author-meta-line{font-size:.75rem;color:var(--text-muted);display:block}.article-hero-img{margin:1.5rem 0 2.5rem}.article-hero-img img{width:100%;height:auto;border-radius:12px;border:1px solid var(--border-default)}.article-hero-img figcaption{font-size:.8125rem;color:var(--text-muted);text-align:center;margin-top:.5rem}.article-prose h2{position:relative;scroll-margin-top:100px;padding-left:.85rem;margin-top:2.5rem}.article-prose h2:before{content:"";position:absolute;left:0;top:.4em;bottom:.4em;width:3px;background:linear-gradient(180deg,var(--accent),var(--accent-warm));border-radius:2px}.article-prose h3{scroll-margin-top:100px;color:var(--text-primary)}.article-faq{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-default)}.article-faq h2{margin-top:0}.article-faq-list{display:flex;flex-direction:column;gap:.6rem;margin-top:1.5rem}.article-faq .faq-item{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:10px;overflow:hidden;transition:border-color var(--duration-base) ease,background var(--duration-base) ease}.article-faq .faq-item[open]{border-color:#00d9ff66;background:var(--bg-tertiary)}.article-faq .faq-summary{list-style:none;cursor:pointer;padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;justify-content:space-between;font-weight:600;color:var(--text-primary);font-size:.9375rem}.article-faq .faq-summary::-webkit-details-marker{display:none}.article-faq .faq-q{flex:1;line-height:1.4}.article-faq .faq-item[open] .faq-q{color:var(--accent)}.article-faq .faq-chevron{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#00d9ff14;color:var(--accent);display:inline-flex;align-items:center;justify-content:center;transition:transform var(--duration-slow) var(--easing)}.article-faq .faq-item[open] .faq-chevron{transform:rotate(180deg)}.article-faq .faq-content{padding:0 1.25rem 1.25rem;color:var(--text-secondary);line-height:1.65;font-size:.9375rem}.article-faq .faq-content p{margin:0}.article-citations{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-default)}.article-citations h2{margin-top:0;font-size:1.5rem}.citations-list{padding-left:1.5rem;color:var(--text-tertiary);font-size:.875rem;line-height:1.8}.citations-list a{word-break:break-word}.article-share{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border-default);display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}.article-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{font-size:.75rem;background:var(--bg-secondary);color:var(--text-tertiary);padding:.3rem .65rem;border-radius:6px;border:1px solid var(--border-default)}.share-btns{display:flex;flex-wrap:wrap;gap:.5rem}.share-btn{padding:.4rem .85rem;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:8px;color:var(--text-tertiary);font-family:var(--font-body);font-weight:500;font-size:.8125rem;cursor:pointer;transition:border-color var(--duration-base) ease,color var(--duration-base) ease,background var(--duration-base) ease}.share-btn:hover{border-color:var(--accent);color:var(--accent);background:#00d9ff0a}.share-btn.copied{border-color:var(--accent);color:var(--accent);background:#00d9ff1a}.article-related{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid var(--border-default)}.article-related h2{margin-top:0}.related-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.5rem}@media(min-width:768px){.related-grid{grid-template-columns:repeat(3,1fr)}}.related-card{display:block;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:transform var(--duration-slow) var(--easing),border-color var(--duration-base) ease,box-shadow var(--duration-base) ease}.related-card:hover{transform:translateY(-3px);border-color:#00d9ff59;box-shadow:0 14px 32px -16px #00d9ff40}.related-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-secondary));display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border-default)}.thumb-glyph{font-family:var(--font-display);font-weight:700;font-size:1.75rem;color:var(--accent);text-shadow:0 0 18px var(--accent-glow)}.related-body{padding:1rem 1.25rem 1.25rem}.related-cat{display:inline-block;font-family:var(--font-display);font-size:.6875rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.related-body h3{font-family:var(--font-display);font-size:1rem;color:var(--text-primary);margin:0 0 .5rem;line-height:1.35}.related-body p{color:var(--text-tertiary);font-size:.8125rem;margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
