/* ------------------------------------------------------------------------- Single article view ------------------------------------------------------------------------- */ /* Back link above the article */ .back-link { display: inline-block; margin-bottom: 1.25rem; font-size: 0.9rem; color: var(--color-text-muted); text-decoration: none; transition: color 0.15s; } .back-link:hover { color: var(--color-accent); text-decoration: underline; } .article > header { background: transparent; border: none; padding: 0; margin-bottom: 2rem; border-bottom: 1px solid var(--color-border); padding-bottom: 1.25rem; } .article > header h1 { margin: 0 0 0.3rem; font-size: 2rem; line-height: 1.2; font-weight: 700; } /* Date + reading-time row */ .article-byline { display: flex; align-items: center; gap: 0.6rem; margin-bottom: 0.5rem; } .article > header time { display: block; font-size: 0.85rem; color: var(--color-text-muted); } .article-reading-time { font-size: 0.82rem; color: var(--color-text-muted); } .article-reading-time::before { content: '·'; margin-right: 0.4rem; } .article > header .description { margin: 0 0 0.75rem; color: var(--color-text-soft); font-size: 1.05rem; font-style: italic; } /* Author + tag row in article header — .author-link and .tag defined in card.css */ .article-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 0.5rem; font-size: 0.85rem; } /* Hero image shown between article header and content */ .hero-image { margin: 0 0 2rem; border-radius: var(--radius); overflow: hidden; } .hero-image img { display: block; width: 100%; max-height: 400px; object-fit: cover; } /* Divider between article body and author profile — mirrors the article header's border-bottom */ .article-divider { border: none; border-top: 1px solid var(--color-border); margin: 2rem 0 0; } @media (max-width: 640px) { .article > header h1 { font-size: 1.5rem; } .hero-image img { max-height: 220px; } }