@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.article-container{max-width:820px;margin:0 auto;padding:4rem 1.5rem;animation:fadeIn .6s ease-out;min-height:80vh}.article-meta{flex-direction:row;margin-bottom:2rem;margin-top:2rem}.article-category-date,.article-meta{display:flex;align-items:center;justify-content:center}.article-category-date{gap:3rem;font-size:1.25rem;position:relative}.article-category{font-weight:400;color:#888;text-transform:capitalize}.article-category,.article-date{font-size:1.25rem;position:relative}.article-date{color:#000;font-weight:600}.article-title{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:2rem;margin-top:2rem;text-align:center;letter-spacing:var(--letter-spacing);font-family:var(--font-family-main)}.article-image{width:100%;height:auto;margin-bottom:2.5rem;border-radius:8px;overflow:hidden;background-color:#f5f5f5;position:relative;aspect-ratio:16/9}.article-image img,.article-image-fill{width:100%;height:100%;object-fit:cover;display:block}.article-video-container{position:relative;width:100%;margin-bottom:2.5rem;aspect-ratio:16/9;border-radius:8px;overflow:hidden}.article-video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}.article-image-placeholder{display:flex;align-items:center;justify-content:center;height:100%;background-color:#f5f5f5;color:#666;font-size:.875rem}.article-content{font-size:1.125rem;line-height:1.7;color:#333}.article-excerpt{font-size:1.25rem;line-height:1.6;color:#444;margin-bottom:2rem;font-weight:500}.article-loading{min-height:80vh;animation:fadeIn .6s ease-out;max-width:820px;margin:0 auto;padding:4rem 1.5rem}.ghost-line{height:1.5rem;background-color:#f3f3f3;border-radius:4px;margin-bottom:1rem;animation:ghostPulse 1.5s infinite}.ghost-title{height:3rem;width:80%;margin:2rem auto}.ghost-meta{height:1.25rem;width:40%;margin:3rem auto 1.5rem}.ghost-image{width:100%;height:0;padding-bottom:56.25%;background-color:#f3f3f3;border-radius:8px;margin:2.5rem 0}.ghost-paragraph{height:1rem;margin-bottom:.75rem}.ghost-paragraph:nth-child(odd){width:100%}.ghost-paragraph:nth-child(2n){width:92%}@keyframes ghostPulse{0%{opacity:.6}50%{opacity:.8}to{opacity:.6}}.article-not-found{text-align:center;padding:3rem 0}.article-back-link{display:inline-block;margin-top:1.5rem;padding:.75rem 1.5rem;background-color:#0066cc;color:white;text-decoration:none;border-radius:4px;font-weight:500;transition:background-color .2s ease}.article-back-link:hover{background-color:#0055aa}.article-placeholder{padding:2.5rem;text-align:center;background-color:#f9f9f9;border-radius:8px;margin:2rem 0;color:#666}.article-content-figure{margin:2.5rem 0;width:100%}.article-content-image{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:6px;background-color:#f5f5f5}.article-content-image-fill{width:100%;height:100%;object-fit:cover}.article-content-caption{text-align:center;font-size:.875rem;color:#666;margin-top:.75rem;font-style:italic}.article-content-pre{background-color:#f5f5f5;padding:1.25rem;border-radius:6px;overflow-x:auto;margin:1.5rem 0;font-family:var(--font-family-mono);font-size:.9rem}.article-content h1{font-size:2.25rem;font-weight:700;margin:2.5rem 0 1.5rem;line-height:1.2}.article-content h2{font-size:1.75rem;font-weight:700;margin:2.25rem 0 1.25rem;line-height:1.3}.article-content h3{font-size:1.5rem;font-weight:600;margin:2rem 0 1rem;line-height:1.3}.article-content h4{font-size:1.25rem;font-weight:600;margin:1.75rem 0 1rem;line-height:1.4}.article-content p{margin:1.25rem 0}.article-content a{color:#0066cc;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.article-content a:hover{border-bottom-color:#0066cc}.article-content blockquote{margin:2rem 0;padding-left:1.5rem;border-left:3px solid #666;font-style:italic;color:#555}.article-content ol,.article-content ul{margin:1.5rem 0;padding-left:1.5rem}.article-content ul{list-style-type:disc}.article-content ol{list-style-type:decimal}.article-content li{margin:.5rem 0}.article-content img{max-width:100%;height:auto;margin:2rem 0;border-radius:4px}.article-breadcrumbs{display:none}.related-articles{margin-top:4rem;padding-top:2rem;border-top:1px solid #eaeaea}.related-articles-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.related-articles-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width:768px){.related-articles-grid{grid-template-columns:repeat(2,1fr)}}.related-article-card{border:1px solid #eaeaea;border-radius:8px;padding:1.25rem;transition:box-shadow .3s ease}.related-article-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.05)}.related-article-title{font-size:1.125rem;font-weight:600;margin-bottom:.75rem;line-height:1.4}.related-article-excerpt{font-size:.875rem;line-height:1.5;color:#666;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.related-article-link{font-size:.875rem;font-weight:500;color:#0066cc;text-decoration:none}.article-tags{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.5rem}.article-tag{background-color:#f0f0f0;color:#555;font-size:.75rem;padding:.35rem .75rem;border-radius:50px;white-space:nowrap}.downloads-section{margin-top:3rem;padding:1.5rem;background-color:#f9f9f9;border-radius:8px}.downloads-title{font-size:1.25rem;font-weight:600;margin-bottom:1.25rem}.download-item{display:flex;align-items:center;background-color:#fff;border:1px solid #eaeaea;border-radius:6px;padding:1rem;margin-bottom:1rem;transition:background-color .2s ease}.download-item:hover{background-color:#f5f5f5}.download-item:last-child{margin-bottom:0}.download-info{flex-grow:1}.download-title{font-weight:500;margin-bottom:.25rem}.download-description{font-size:.875rem;color:#666}.download-link{background-color:#0066cc;color:#fff;font-size:.875rem;font-weight:500;padding:.4rem .75rem;border-radius:4px;text-decoration:none;white-space:nowrap;transition:background-color .2s ease}.download-link:hover{background-color:#0055aa}@media (max-width:768px){.article-container{padding:2.5rem 1rem}.article-title{font-size:2rem;margin-bottom:1.5rem}.article-excerpt{font-size:1.125rem}.article-content{font-size:1rem}.article-content h1{font-size:1.75rem}.article-content h2{font-size:1.5rem}.article-content h3{font-size:1.25rem}}