.article{max-width:680px;margin:0 auto;padding:0 1.5rem}.article-header{padding-top:3rem;margin-bottom:2rem}.article-header h1{font-family:var(--font-sans);font-size:2.75rem;font-weight:800;line-height:1.1;letter-spacing:-.02em;color:var(--color-text);margin-bottom:1rem}.article-subtitle{font-family:var(--font-serif);font-size:1.35rem;line-height:1.5;color:var(--color-text-secondary);margin:0 0 1.75rem}.article-meta{display:flex;align-items:center;gap:1rem}.author-info{display:flex;align-items:center;gap:.75rem}.author-avatar{width:44px;height:44px;border-radius:50%;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:.875rem;font-weight:600}.author-details{display:flex;flex-direction:column;gap:.125rem}.author-name{font-family:var(--font-sans);font-size:.9rem;font-weight:500;color:var(--color-text)}.publish-info{font-family:var(--font-sans);font-size:.85rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:.5rem}.separator{color:var(--color-text-secondary)}.featured-image{margin:0 0 2rem}.featured-image img{width:100%;height:auto;display:block}.featured-image figcaption{font-family:var(--font-sans);font-size:.85rem;line-height:1.4;color:var(--color-text-secondary);text-align:center;margin-top:.5rem}.article-content{font-family:var(--font-serif);font-size:1.125rem;line-height:1.8;color:var(--color-text)}.article-content p{margin-bottom:1.5rem}.article-content h2{font-family:var(--font-sans);font-size:1.75rem;font-weight:800;line-height:1.2;letter-spacing:-.015em;margin-top:2.5rem;margin-bottom:1rem}.article-content h3{font-family:var(--font-sans);font-size:1.35rem;font-weight:700;line-height:1.3;margin-top:2rem;margin-bottom:.75rem}.article-content h4{font-family:var(--font-sans);font-size:1.15rem;font-weight:700;margin-top:1.5rem;margin-bottom:.5rem}.article-content a{color:inherit;text-decoration:underline;text-decoration-color:var(--color-text-secondary);text-underline-offset:2px;transition:text-decoration-color .2s}.article-content a:hover{text-decoration-color:var(--color-text)}.article-content strong{font-weight:600}.article-content em{font-style:italic}.article-content blockquote{margin:2rem 0;padding-left:1.5rem;border-left:4px solid var(--color-accent);font-style:italic;color:var(--color-text);font-size:1.05rem}.article-content blockquote p{margin-bottom:.75rem}.article-content blockquote p:last-child{margin-bottom:0}.article-content ul,.article-content ol{margin:1.75rem 0;padding-left:1.5rem}.article-content li{margin-bottom:.5rem;padding-left:.25rem}.article-content figure{margin:2rem 0 .25rem;text-align:center}.article-content figcaption{font-family:var(--font-sans);font-size:.85rem;line-height:1.4;color:var(--color-text-secondary);text-align:center;margin-top:.5rem;margin-bottom:1.5rem}.article-content img{max-width:100%;height:auto;display:block;margin:0 auto}.article-content hr{border:none;text-align:center;margin:2rem 0}.article-content hr:before{content:"...";font-size:1.5rem;letter-spacing:1rem;color:var(--color-text-secondary)}.article-content hr.solid-divider{height:1px;background:#000;margin:2rem 0}.article-content hr.solid-divider:before{content:none}.article-content .section-break{height:1.5rem}.article-footer{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{font-family:var(--font-sans);font-size:.85rem;padding:.5rem 1rem;background:var(--color-bg-subtle);border-radius:100px;color:var(--color-text-secondary);transition:background .2s}.tag:hover{background:var(--color-border)}.article-nav{max-width:680px;margin:3rem auto;padding:0 1.5rem}.back-link{display:inline-flex;align-items:center;gap:.25rem;font-family:var(--font-sans);font-size:.9rem;color:var(--color-accent);text-decoration:none;transition:opacity .2s}.back-link:hover{opacity:.8}.back-link svg{width:18px;height:18px}.placeholder-notice{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;font-family:var(--font-sans);font-size:1rem}.excerpt-preview{margin-top:1rem;color:var(--color-text-secondary)}@media(max-width:600px){.article-header h1{font-size:1.75rem}.article-content{font-size:1.125rem}.article-content h2{font-size:1.35rem}}
