/* ==========================================
   BILBILIK BLOG MOBILE FIXES
   ========================================== */

@media (max-width: 768px) {

    /* ===== Container ===== */
    .article-layout {
        padding: 0 12px;
        gap: 16px;
    }

    .article-main {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    /* ===== Article Content ===== */
    .article-content {
        padding: 20px 16px !important;
        font-size: 15px;
        line-height: 1.9;
        border-radius: 14px;
        overflow-wrap: break-word;
        word-wrap: break-word;
        max-width: 100%;
        overflow-x: hidden;
    }

    .article-content p {
        font-size: 15px;
        line-height: 1.9;
        margin: 0 0 14px;
    }

    .article-content > p:first-child {
        font-size: 16px;
        padding-bottom: 14px;
        margin-bottom: 18px;
    }

    /* ===== Headings در موبایل ===== */
    .article-content h2 {
        font-size: 20px !important;
        margin-top: 32px;
        margin-bottom: 14px;
        padding-right: 14px;
        line-height: 1.5;
    }

    .article-content h2::before {
        width: 4px;
        height: 65%;
    }

    .article-content h2::after {
        margin-top: 10px;
        width: 45px;
        height: 2.5px;
    }

    .article-content h3 {
        font-size: 17px !important;
        margin-top: 26px;
        gap: 8px;
    }

    .article-content h3::before {
        font-size: 14px;
    }

    .article-content h4 {
        font-size: 15px !important;
        padding: 6px 12px;
        margin-top: 22px;
    }

    /* ===== Blockquote ===== */
    .article-content blockquote {
        padding: 18px 18px 18px 42px;
        margin: 20px 0;
        font-size: 14.5px;
        line-height: 1.85;
        border-radius: 12px;
        border-right-width: 4px;
        max-width: 100%;
        overflow-wrap: break-word;
    }

    .article-content blockquote::before {
        font-size: 42px;
        left: 12px;
        top: 8px;
    }

    .article-content blockquote p {
        font-size: 14.5px;
        line-height: 1.85;
    }

    /* ===== Lists ===== */
    .article-content ul,
    .article-content ol {
        padding-right: 0;
    }

    .article-content ul li,
    .article-content ol li {
        font-size: 15px;
        line-height: 1.9;
        padding-right: 24px;
        margin-bottom: 8px;
    }

    .article-content ul li::before {
        top: 12px;
        width: 7px;
        height: 7px;
        right: 6px;
    }

    .article-content ol li {
        padding-right: 32px;
    }

    .article-content ol li::before {
        width: 22px;
        height: 22px;
        font-size: 11px;
    }

    /* ===== Table ===== */
    .article-content table {
        font-size: 12px;
        margin: 20px 0;
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap;
        border-radius: 10px;
    }

    .article-content table thead th {
        padding: 10px 12px;
        font-size: 12px;
        white-space: nowrap;
    }

    .article-content table tbody td {
        padding: 10px 12px;
        font-size: 12px;
        white-space: nowrap;
    }

    /* ===== Images ===== */
    .article-content img,
    .article-featured-image img {
        max-width: 100%;
        height: auto;
        border-radius: 10px;
    }

    .article-featured-image {
        margin-bottom: 20px;
        border-radius: 12px;
    }

    .article-featured-image img {
        aspect-ratio: 4 / 3;
        object-fit: cover;
    }

    /* عکس‌های aligncenter */
    .article-content .aligncenter,
    .article-content .alignright,
    .article-content .alignleft {
        max-width: 100%;
        margin: 18px auto;
        display: block;
        float: none;
    }

    /* ===== Hero ===== */
    .article-hero {
        padding: 30px 16px 20px;
    }

    .article-hero h1,
    .article-title {
        font-size: 22px !important;
        line-height: 1.5;
        margin-bottom: 14px;
    }

    .article-excerpt {
        font-size: 14px;
        line-height: 1.85;
        padding: 0 4px;
    }

    .article-stats-row {
        flex-wrap: wrap;
        gap: 10px 14px;
        font-size: 12px;
    }

    .article-stats-row > span {
        white-space: nowrap;
    }

    /* ===== Aside (Sidebar) ===== */
    .article-aside {
        width: 100%;
        max-width: 100%;
        padding: 0;
    }

    .article-aside .aside-promo-card-x,
    .article-aside .newsletter-card-x,
    .article-aside .toc-card {
        margin-bottom: 16px;
    }

    /* TOC در موبایل به صورت collapsible */
    .toc-card {
        padding: 16px;
    }

    .toc-list {
        max-height: 350px;
        overflow-y: auto;
    }

    .toc-link {
        font-size: 12px;
        padding: 7px 10px;
    }

    .toc-link.toc-h3 {
        font-size: 11px;
        padding-right: 18px;
    }

    /* ===== Reading Progress ===== */
    .reading-progress {
        height: 3px;
    }

    /* ===== Code Blocks ===== */
    .article-content pre {
        padding: 16px;
        font-size: 12.5px;
        border-radius: 10px;
        margin: 18px 0;
        max-width: 100%;
        overflow-x: auto;
    }

    .article-content code {
        font-size: 0.88em;
        padding: 1px 6px;
        word-break: break-all;
    }

    /* ===== Comments ===== */
    .bb-comments {
        padding: 20px 16px;
        margin: 20px 0;
        border-radius: 14px;
    }

    .bb-comment-card {
        padding: 14px;
        gap: 10px;
    }

    .bb-comment-body {
        font-size: 13.5px;
    }

    .bb-comments-login-prompt {
        padding: 26px 16px;
    }

    .bb-comments-login-prompt h3 {
        font-size: 16px;
    }

    /* ===== HR ===== */
    .article-content hr {
        margin: 26px 0;
        background-size: 14px 14px;
    }
}


/* ===== برای موبایل خیلی کوچک (< 380px) ===== */
@media (max-width: 380px) {

    .article-layout {
        padding: 0 10px;
    }

    .article-content {
        padding: 18px 14px !important;
        font-size: 14.5px;
    }

    .article-content h2 {
        font-size: 18px !important;
    }

    .article-content h3 {
        font-size: 16px !important;
    }

    .article-hero h1,
    .article-title {
        font-size: 20px !important;
    }

    .article-content table {
        font-size: 11.5px;
    }

    .article-content blockquote {
        padding: 16px 14px 16px 38px;
        font-size: 14px;
    }
}
