/* Extracted from module/computer/blog/post.phtml during audit Step 6c. */

/*
 * Chrome clearance — bump breathing room between sticky header and
 * the breadcrumb. The blog post breadcrumb sits inside a NAV inside
 * `nav[aria-label="breadcrumb"]` — targeting that directly avoids
 * matching the header's reuse of `.container.lb-mw-1320` (which
 * happens elsewhere in the layout and would push the nav menu out
 * of position if we matched the container's first row).
 */
body[data-module="/blog/"] nav[aria-label="breadcrumb"]{
    margin-top: 8px;
}

/* Progress Bar de Leitura */
#readingProgressBar{
    position: fixed;
    top: 0;
    left: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--lb-brand), var(--lb-brand-hover));
    width: 0%;
    z-index: 99999;
    transition: width 0.1s ease-out;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

/* Table of Contents (TOC) */
#tableOfContents{
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 20px 25px;
    margin: 30px 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

#tableOfContents h4{
    margin: 0 0 15px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--lb-brand);
    font-size: 15px;
    font-weight: 600;
    color: #333;
    display: flex;
    align-items: center;
}

#tableOfContents h4 i{
    margin-right: 10px;
    color: var(--lb-brand);
    font-size: 14px;
}

#tableOfContents ul{
    list-style: none;
    padding: 0;
    margin: 0;
    columns: 2;
    column-gap: 30px;
}

@media (max-width: 768px) {
    #tableOfContents ul {
        columns: 1;
    }
}

#tableOfContents ul li{
    padding: 6px 0;
    font-size: 21.6px;
    line-height: 18px;
    break-inside: avoid;
    page-break-inside: avoid;
}

#tableOfContents ul li a{
    color: #495057;
    text-decoration: none;
    transition: all 0.2s ease;
    display: flex;
    align-items: flex-start;
    padding: 6px 10px;
    border-radius: 4px;
}

#tableOfContents ul li a:hover{
    color: var(--lb-brand);
    background: rgba(255, 128, 0, 0.08);
}

#tableOfContents ul li a::before{
    content: "•";
    color: var(--lb-brand);
    font-weight: bold;
    margin-right: 10px;
    flex-shrink: 0;
}

#tableOfContents ul li.toc-h3{
    padding-left: 15px;
}

#tableOfContents ul li.toc-h3 a::before{
    content: "◦";
    color: #adb5bd;
}

#sharingLinks div div{
    margin-bottom: 32px;
}

#sharingLinks div:last-of-type{
    margin-bottom: 0;
}

#sharingLinks div div a.sharingLink{
    font-size: 18px;
}

#sharingLinks div div a.sharingLink:hover > i{
    color: #212121 !important;
}


#blogPostContent{
    margin: 0;
    padding: 0;
    margin-right: 14px;
    font-size: 16px;
    line-height: 28px;
    text-align: justify;
}

#blogPostContent h2{
    font-size: 24px;
    line-height: 34px;
    padding: 0;
    margin: 0;
}

#blogPostContent h3{
    font-size: 21px;
    line-height: 30px;
    padding: 0;
    margin: 0;
}

#blogPostContent h4{
    font-size: 18px;
    line-height: 28px;
    padding: 0;
    margin: 0;
}

#blogPostContent p{
    margin-bottom: 0;
}

#blogPostContent ul,
#blogPostContent ol{
    margin-top: 16px;
    margin-bottom: 16px;
}

#blogPostContent li{
    margin-bottom: 12.8px;
}

#blogPostContent li:last-child{
    margin-bottom: 0;
}


.blogPostCategories .badge, .blogPostTags .badge{
    margin: 0 4px;
}


.categoryLink{
    color: #FFF;
}

.categoryLink:hover{
    color: #f4f4f4;
}

.tagLink, .tagLink:hover{
    color: var(--lb-brand);
}

.mainBlogPageLink, .mainBlogPageLink:hover{
    color: var(--lb-brand);
}

/*
 * Social sharing column — native CSS sticky replaces the legacy
 * `stick_in_parent` jQuery plugin (sticky-kit). `top: 150px` matches
 * the old `offset_top` plugin option so positioning stays identical
 * relative to the sticky header. align-self prevents the col from
 * stretching to the row's full height (default flex behaviour).
 * Plugin was removed from computer/layout/head.phtml 2026-05-21 once
 * the sidenav also migrated to CSS sticky.
 */
.socialSticksy{
    position: sticky;
    top: 150px;
    align-self: flex-start;
}

/*
 * Mobile blog overrides removed 2026-05-21 — `module/blog/blog.php`
 * now routes by `$app->device`, so mobile renders its own templates
 * in `module/mobile/blog/` with dedicated CSS in
 * `public/assets/css/mobile/blog/`. Cross-device overrides here are
 * redundant. See [docs/...] for the split rationale.
 */
