/* =========================================================
   article.css — single article (article.html)
   Related article cards, badges, tags are shared in main.css
   ========================================================= */


/* ---------- ARTICLE HEADER ---------- */
.article-hero {
    padding-top: 22px;
    padding-bottom: 40px;
}

.article-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    max-width: 820px;
}

.back-link {
    color: var(--blue-bright);
    font-size: 13px;
    font-weight: 700;
}

.back-link:hover {
    text-decoration: underline;
}

.article-head h1 {
    font-size: var(--fs-h1-detail);
    line-height: 1.12;
    letter-spacing: -.03em;
}

.article-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 24px;
    margin-bottom: 26px;
}

.author {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-left: 24px;
    border-left: 1px solid #cbd6e5;
}

.author strong,
.author small {
    display: block;
}

.author strong {
    color: var(--navy);
    font-size: 13px;
}

.author small {
    color: var(--muted-light);
    font-size: var(--fs-sm);
}

/* Round initials avatar */
.avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: linear-gradient(135deg, #d9e4f2, #aabbd6);
    color: var(--navy);
    font-size: var(--fs-sm);
    font-weight: 800;
}

.avatar-lg {
    width: 64px;
    height: 64px;
    font-size: 16px;
}

.article-cover {
    width: 100%;
    height: 420px;
    border-radius: var(--radius);
    background: #dfe8f2;
    box-shadow: var(--shadow-sm);
    object-fit: cover;
}


/* ---------- ARTICLE TEXT ----------
   Base text styles (.prose) are in main.css */

/* Tags + author box at the end of the article */
.prose .article-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 36px;
}

.prose .article-tags a {
    text-decoration: none;
}

.article-tags-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-right: 4px;
    color: var(--navy);
    font-size: 13px;
    font-weight: 700;
}

.prose .author-box {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 30px;
    padding: 22px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.author-box h3 {
    margin: 0;
    font-size: 16px;
}

.author-box strong {
    color: var(--muted);
    font-size: 13px;
    font-weight: 600;
}

.author-box p {
    margin-top: 6px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.6;
}


/* ---------- RESPONSIVE ---------- */
@media (max-width: 900px) {
    .article-cover {
        height: 330px;
    }
}

@media (max-width: 680px) {
    /* long title is already the H1 — hide it (and its "›") */
    .breadcrumbs [aria-current],
    .breadcrumbs span:has(+ [aria-current]) {
        display: none;
    }

    .author {
        width: 100%;
        padding-left: 0;
        border-left: 0;
    }

    .article-cover {
        height: 230px;
    }

    .prose .author-box {
        align-items: flex-start;
    }
}
