/* PP Article Style: single article pages (white bg, share buttons, comments) */
html, body.single-post { background-color:#FFFFFF !important; background-image:none !important; }

/* ---------- Share ---------- */
body.single-post .blog-share { margin:36px 0 18px; padding:44px 20px 26px; position:relative; border-radius:22px; background:linear-gradient(135deg,#F3FAF6 0%,#EBF7F0 100%); border:1px solid rgba(82,183,136,.25); }
body.single-post .blog-share .is-divider { display:none; }
body.single-post .blog-share::before { content:"اشتراک‌گذاری مقاله"; position:absolute; top:-15px; right:50%; transform:translateX(50%); background:#0F382A; color:#fff; font-size:13px; font-weight:700; padding:6px 18px; border-radius:999px; box-shadow:0 6px 16px rgba(15,56,42,.25); white-space:nowrap; }
body.single-post .blog-share .share-icons { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; }
body.single-post .blog-share .share-icons a.button { width:46px; height:46px; min-height:0; margin:0; padding:0; display:inline-flex; align-items:center; justify-content:center; border-radius:50% !important; background:#fff !important; border:1.5px solid #52B788 !important; color:#0F382A !important; box-shadow:0 4px 12px rgba(15,56,42,.08); transition:all .25s ease; }
body.single-post .blog-share .share-icons a.button i { font-size:18px; margin:0; line-height:1; }
body.single-post .blog-share .share-icons a.button:hover { background:#0F382A !important; border-color:#0F382A !important; color:#fff !important; transform:translateY(-3px); box-shadow:0 10px 20px rgba(15,56,42,.25); }
@media (min-width:850px){ body.single-post .blog-share .share-icons a.show-for-medium { display:none !important; } }

/* ---------- Comments ---------- */
body.single-post #comments { margin-top:28px; }
body.single-post #comments .comment-respond { background:#fff; border:1px solid rgba(15,56,42,.08); border-radius:22px; padding:30px 28px; box-shadow:0 14px 40px -18px rgba(15,56,42,.25); }
body.single-post #comments .comment-reply-title { font-size:20px; font-weight:800; color:#0F382A; margin:0 0 18px; padding-right:16px; position:relative; }
body.single-post #comments .comment-reply-title::before { content:""; position:absolute; right:0; top:4px; bottom:4px; width:5px; border-radius:4px; background:linear-gradient(#52B788,#0F382A); }
body.single-post #comments .comment-reply-title small a { font-size:12px; color:#E63946; margin-right:10px; }
body.single-post #comments .comment-notes { color:#6b7a73; font-size:13px; margin-bottom:16px; }
body.single-post #comments .comment-form { display:grid; grid-template-columns:1fr 1fr; gap:14px 16px; }
body.single-post #comments .comment-form > p { margin:0; }
body.single-post #comments .comment-form .comment-notes,
body.single-post #comments .comment-form .comment-form-comment,
body.single-post #comments .comment-form .comment-form-url,
body.single-post #comments .comment-form .comment-form-cookies-consent,
body.single-post #comments .comment-form .form-submit { grid-column:1 / -1; }
body.single-post #comments label { display:block; font-size:13px; font-weight:700; color:#0F382A; margin-bottom:6px; }
body.single-post #comments input[type=text],
body.single-post #comments input[type=email],
body.single-post #comments input[type=url],
body.single-post #comments textarea { width:100%; margin:0; background:#F8FAF8; border:1.5px solid #dbe7e0; border-radius:14px; padding:12px 16px; font-size:14px; box-shadow:none; transition:all .2s ease; }
body.single-post #comments textarea { min-height:150px; resize:vertical; }
body.single-post #comments input:focus, body.single-post #comments textarea:focus { background:#fff; border-color:#52B788; box-shadow:0 0 0 4px rgba(82,183,136,.18); outline:0; }
body.single-post #comments .form-submit .submit,
body.single-post #comments input#submit { min-width:170px; height:48px; min-height:0; margin:0; padding:0 28px; border-radius:14px; border:1px solid rgba(255,255,255,.2) !important; background:linear-gradient(135deg,rgba(15,56,42,.96),rgba(45,138,94,.92)) !important; color:#fff !important; font-weight:700; font-size:14px; box-shadow:0 10px 22px -8px rgba(15,56,42,.5); transition:all .25s ease; cursor:pointer; }
body.single-post #comments .form-submit .submit:hover { transform:translateY(-2px); box-shadow:0 14px 26px -8px rgba(15,56,42,.6); }

/* existing comments */
body.single-post #comments .commentlist { list-style:none; margin:0 0 26px; padding:0; }
body.single-post #comments .commentlist li.comment > article,
body.single-post #comments .commentlist .comment-body { background:#F8FAF8; border:1px solid #e3eee8; border-radius:18px; padding:18px 20px; margin-bottom:14px; }
body.single-post #comments .commentlist .children { list-style:none; margin-right:28px; padding:0; }
body.single-post #comments .commentlist img.avatar { border-radius:50%; border:2px solid #52B788; }
body.single-post #comments .commentlist .reply a, body.single-post #comments .commentlist a.comment-reply-link { display:inline-block; font-size:12px; font-weight:700; padding:4px 14px; border-radius:999px; background:#EBF7F0; color:#0F382A; transition:all .2s ease; }
body.single-post #comments .commentlist .reply a:hover { background:#0F382A; color:#fff; }

@media (max-width:640px){
 body.single-post #comments .comment-respond { padding:22px 16px; }
 body.single-post #comments .comment-form { grid-template-columns:1fr; }
 body.single-post .blog-share .share-icons a.button { width:42px; height:42px; }
}
@media (prefers-reduced-motion:reduce){ body.single-post .blog-share a.button, body.single-post #comments *{ transition:none !important; } }
/* ---------- Article hero ---------- */
body.single-post #content.blog-single { padding-top:34px; }
body.single-post .blog-single .large-10 { max-width:860px; flex-basis:100%; margin:0 auto; }
.pp-art-hero { text-align:center; margin:0 0 34px; }
.pp-art-top { margin-bottom:16px; }
.pp-art-cat { display:inline-block; padding:6px 18px; border-radius:999px; background:#EBF7F0; color:#2D8A5E; border:1px solid rgba(82,183,136,.35); font-size:13px; font-weight:700; text-decoration:none; transition:all .2s ease; }
.pp-art-cat:hover { background:#0F382A; color:#fff; }
.pp-art-title { font-size:36px; line-height:1.6; font-weight:900; color:#0F382A; margin:0 0 18px; letter-spacing:-.3px; }
.pp-art-meta { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin-bottom:26px; }
.pp-art-meta span { display:inline-flex; align-items:center; padding:6px 16px; border-radius:999px; background:#F8FAF8; border:1px solid #e3eee8; color:#4b5d54; font-size:13px; font-weight:600; }
.pp-art-figure { margin:0; border-radius:26px; overflow:hidden; box-shadow:0 24px 50px -22px rgba(15,56,42,.45); border:1px solid rgba(15,56,42,.08); position:relative; }
.pp-art-figure::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 60%,rgba(15,56,42,.18)); pointer-events:none; }
.pp-art-figure img { display:block; width:100%; height:auto; max-height:480px; object-fit:cover; }

/* ---------- Article typography ---------- */
body.single-post .entry-content { font-size:18px; line-height:2.1; color:#26332d; }
body.single-post .entry-content p { margin-bottom:1.3em; }
body.single-post .entry-content strong { color:#0F382A; }
body.single-post .entry-content a:not(.button) { color:#2D8A5E; font-weight:700; text-decoration:none; border-bottom:2px solid rgba(82,183,136,.4); transition:all .2s ease; }
body.single-post .entry-content a:not(.button):hover { color:#0F382A; border-bottom-color:#0F382A; }
body.single-post .entry-content h2 { font-size:26px; font-weight:800; color:#0F382A; line-height:1.7; margin:2em 0 .7em; padding-right:18px; position:relative; }
body.single-post .entry-content h2::before { content:""; position:absolute; right:0; top:.35em; bottom:.35em; width:6px; border-radius:6px; background:linear-gradient(#52B788,#0F382A); }
body.single-post .entry-content h3 { font-size:22px; font-weight:800; color:#2D8A5E; margin:1.6em 0 .5em; }
body.single-post .entry-content ul { list-style:none; margin:0 0 1.5em; padding:0; }
body.single-post .entry-content ul > li { position:relative; margin:0 0 12px; padding:14px 46px 14px 18px; background:#F8FAF8; border:1px solid #e3eee8; border-radius:16px; }
body.single-post .entry-content ul > li::before { content:""; position:absolute; right:18px; top:1.35em; width:12px; height:12px; border-radius:50%; background:#52B788; box-shadow:0 0 0 4px rgba(82,183,136,.2); }
body.single-post .entry-content ol { margin:0 0 1.5em; padding-right:1.4em; }
body.single-post .entry-content ol > li { margin-bottom:10px; padding-right:6px; }
body.single-post .entry-content ol > li::marker { color:#2D8A5E; font-weight:800; }
body.single-post .entry-content hr { border:0; height:1px; background:linear-gradient(90deg,transparent,#52B788,transparent); margin:2.2em 0; opacity:1; }
body.single-post .entry-content blockquote { margin:1.8em 0; padding:20px 24px; border:0; border-right:5px solid #52B788; border-radius:18px; background:#EBF7F0; color:#0F382A; font-weight:600; }
body.single-post .entry-content img { border-radius:18px; }
body.single-post .entry-content table { border-radius:14px; overflow:hidden; }
body.single-post .entry-meta { margin-top:18px; font-size:13px; color:#6b7a73; text-align:right; }
body.single-post .entry-meta a { color:#2D8A5E; font-weight:600; }

@media (max-width:640px){
 .pp-art-title { font-size:25px; }
 .pp-art-figure { border-radius:18px; }
 body.single-post .entry-content { font-size:17px; line-height:2; }
 body.single-post .entry-content h2 { font-size:22px; }
 body.single-post .entry-content ul > li { padding:12px 40px 12px 14px; }
}
/* ---------- Embedded video (Aparat) ---------- */
.pp-video { margin:30px 0; padding:10px; border-radius:28px; background:linear-gradient(135deg,#EBF7F0,#F8FAF8); border:1px solid rgba(82,183,136,.3); box-shadow:0 22px 46px -24px rgba(15,56,42,.45); }
.pp-video-frame { position:relative; width:100%; padding-top:56.25%; border-radius:20px; overflow:hidden; background:#0F382A; }
.pp-video-frame iframe { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }
@media (max-width:640px){ .pp-video { padding:6px; border-radius:20px; margin:22px 0; } .pp-video-frame { border-radius:15px; } }