/* ===========================
   SEO ARTICLE
=========================== */

.seo-article{
    text-align: right;
    background:#fff;
    border:1px solid #e8e8e8;
    border-radius:18px;
    padding:35px;
    margin-top:35px;
    line-height:2;
    color:#333;
    box-shadow:0 8px 25px rgba(0,0,0,.05);
}

.seo-article h2{
    font-size:1.2rem;
    color:#1e40af;
    margin:40px 0 18px;
    padding-bottom:10px;
    border-bottom:3px solid #eef3ff;
    font-weight:700;
}

.seo-article h2:first-child{
    margin-top:0;
}

.seo-article h3{
    font-size:23px;
    color:#222;
    margin:28px 0 12px;
    font-weight:700;
}

.seo-article p{
    font-size:18px;
    line-height:2;
    margin:15px 0;
    color:#444;
}

.seo-article strong{
    color:#111827;
    font-weight:700;
}

.seo-article ul,
.seo-article ol{
    margin:18px 0;
    padding-right:25px;
}

.seo-article li{
    margin:10px 0;
    font-size:18px;
    line-height:1.9;
}

.seo-article ul li::marker{
    color:#2563eb;
}

.seo-article ol li::marker{
    color:#2563eb;
    font-weight:bold;
    /*display: none;*/
}

.seo-article a{
    color:#2563eb;
    text-decoration:none;
    font-weight:600;
}

.seo-article a:hover{
    text-decoration:underline;
}

.seo-article blockquote{
    background:#f8f9ff;
    border-right:5px solid #2563eb;
    padding:18px 20px;
    margin:20px 0;
    border-radius:12px;
    color:#444;
}

.seo-article table{
    width:100%;
    border-collapse:collapse;
    margin:25px 0;
}

.seo-article table th{
    background:#2563eb;
    color:#fff;
    padding:12px;
}

.seo-article table td{
    padding:12px;
    border:1px solid #ececec;
}

.seo-article img{
    max-width:100%;
    border-radius:14px;
    margin:20px auto;
    display:block;
}

.seo-article hr{
    border:none;
    height:1px;
    background:#ececec;
    margin:35px 0;
}

.seo-article code{
    background:#f3f4f6;
    padding:3px 8px;
    border-radius:6px;
    font-size:15px;
}

.seo-article pre{
    background:#1e293b;
    color:#fff;
    padding:20px;
    border-radius:12px;
    overflow:auto;
}

@media(max-width:768px){

    .seo-article{
        padding:20px;
    }

    .seo-article h2{
        font-size:24px;
    }

    .seo-article h3{
        font-size:20px;
    }

    .seo-article p,
    .seo-article li{
        font-size:16px;
    }

}

/* ===========================
   BLOG POST — LAYOUT + SIDEBAR
=========================== */

.post-layout{
    display:grid;
    grid-template-columns:1fr 320px;
    gap:2rem;
    align-items:start;
    margin-top:1rem;
}

.post-sidebar{
    position:sticky;
    top:80px;
    display:flex;
    flex-direction:column;
    gap:1.2rem;
}

.post-sidebar-card{
    background:#fff;
    border:1px solid #e8e8e8;
    border-radius:16px;
    padding:1.2rem 1.4rem;
    box-shadow:0 8px 25px rgba(0,0,0,.05);
}

.post-sidebar-title{
    font-size:1.05rem;
    color:var(--primary);
    margin:0 0 0.9rem;
    padding-bottom:0.5rem;
    border-bottom:2px solid #eef3ff;
}

.post-list{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:0.6rem;
}

.post-list a{
    color:#333;
    font-size:0.9rem;
    font-weight:600;
    text-decoration:none;
    line-height:1.5;
}

.post-list a:hover{
    color:var(--primary);
}

.post-more-link{
    display:inline-block;
    margin-top:0.9rem;
    font-size:0.85rem;
    color:var(--primary);
    font-weight:700;
    text-decoration:none;
}

.share-row{
    display:flex;
    gap:0.5rem;
    flex-wrap:wrap;
}

.share-btn{
    flex:1;
    text-align:center;
    padding:0.55rem 0.4rem;
    border-radius:10px;
    font-size:0.82rem;
    font-weight:700;
    text-decoration:none;
    color:#fff;
}

.share-whatsapp{ background:#25D366; }
.share-twitter{ background:#111; }
.share-facebook{ background:#1877F2; }

.post-meta-row{
    display:flex;
    gap:1rem;
    color:#888;
    font-size:0.8rem;
    margin-bottom:1.2rem;
    flex-wrap:wrap;
}

.post-edit-link{
    display:inline-block;
    margin-bottom:0.8rem;
    font-size:0.8rem;
    color:var(--primary);
}

.post-toc{
    background:#f8f9ff;
    border:1px solid #eef3ff;
    border-radius:12px;
    padding:1rem 1.2rem;
    margin-bottom:1.5rem;
}

.post-toc-title{
    font-weight:800;
    color:var(--primary);
    margin-bottom:0.6rem;
    font-size:0.95rem;
}

.post-toc ul{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:0.4rem;
}

.post-toc a{
    color:#444;
    font-size:0.88rem;
    text-decoration:none;
}

.post-toc a:hover{
    color:var(--primary);
}

@media (max-width:900px){
    .post-layout{
        grid-template-columns:1fr;
    }

    .post-sidebar{
        position:static;
    }
}

/* ===========================
   BLOG LISTING — PAGINATION
=========================== */

.blog-pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1rem;
    margin-top:2.5rem;
}

.blog-pagination .page-btn{
    background:#fff;
    border:1px solid #e8e8e8;
    border-radius:10px;
    padding:0.6rem 1.3rem;
    font-weight:700;
    color:var(--primary);
    text-decoration:none;
    box-shadow:0 4px 14px rgba(0,0,0,.04);
    transition:background .15s ease, color .15s ease;
}

.blog-pagination .page-btn:hover{
    background:var(--primary);
    color:#fff;
}

.blog-pagination .page-info{
    color:#888;
    font-size:0.9rem;
    font-weight:600;
}