/* وبلاگ ویوان: سایدبار چسبان (با کاربر اسکرول می‌شود)، فهرست مطالب، نوار پیشرفت مطالعه و موشن سبک (فقط transform/opacity) */
.col-lg-4 > .row { position: sticky; top: 104px; align-self: flex-start; max-height: calc(100vh - 124px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: rgba(123,92,255,.5) transparent; padding-bottom: 4px; }
.col-lg-4 > .row::-webkit-scrollbar { width: 6px; } .col-lg-4 > .row::-webkit-scrollbar-thumb { background: rgba(123,92,255,.5); border-radius: 6px; }
@media (max-width: 991px) { .col-lg-4 > .row { position: static; max-height: none; overflow: visible; } }
.blog-sidebar { position: static !important; }
.sidebar-item { background: rgba(255,255,255,.04); backdrop-filter: blur(6px); }
.sidebar-item:hover { transform: translateY(-2px); }

/* نوار پیشرفت مطالعه */
.bp-progress { position: fixed; top: 0; inset-inline: 0; height: 3px; z-index: 99998; transform-origin: right; transform: scaleX(0); background: linear-gradient(90deg, #7b5cff, #22d3ee); pointer-events: none; }

/* فهرست مطالب مقاله */
.bp-toc { margin-bottom: 28px; }
.bp-toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; counter-reset: t; }
.bp-toc li a { display: flex; gap: 10px; padding: 7px 10px; border-radius: 10px; color: #cfcbe6; font-size: 14.5px; line-height: 1.7; transition: background .2s, color .2s; }
.bp-toc li a::before { counter-increment: t; content: counter(t, persian); color: #8f7bff; font-weight: 800; min-width: 18px; }
.bp-toc li a:hover { background: rgba(123,92,255,.14); color: #fff; }
.bp-toc li a.on { background: rgba(123,92,255,.22); color: #fff; font-weight: 700; }

/* ظاهر مقاله */
.blog-details-content h2 { position: relative; padding-inline-start: 16px; margin: 34px 0 14px; scroll-margin-top: 110px; }
.blog-details-content h2::before { content: ""; position: absolute; inset-inline-start: 0; top: .28em; bottom: .28em; width: 4px; border-radius: 4px; background: linear-gradient(#7b5cff, #22d3ee); }
.blog-details-content h3 { margin: 24px 0 10px; scroll-margin-top: 110px; }
.blog-details-content p, .blog-details-content li { line-height: 2.05; }
.blog-details-content ul, .blog-details-content ol { padding-inline-start: 22px; }
.blog-details-content a { color: #ad99ff; text-underline-offset: 3px; }
.blog-details-content blockquote { border-inline-start: 4px solid #7b5cff; background: rgba(123,92,255,.1); padding: 12px 18px; border-radius: 12px; }
.blog-details-content table { border-radius: 14px; overflow: hidden; }

/* کارت‌های لیست مقاله */
.blog-card { border-radius: 22px; overflow: hidden; transition: transform .35s cubic-bezier(.2,.9,.3,1), box-shadow .35s; }
.blog-card:hover { transform: translateY(-6px); box-shadow: 0 24px 60px rgba(0,0,0,.35); }
.blog-card figure { overflow: hidden; margin: 0; }
.blog-card figure img { transition: transform .6s cubic-bezier(.2,.9,.3,1); }
.blog-card:hover figure img { transform: scale(1.06); }

/* ظاهرشدن هنگام اسکرول */
.bp-rv { opacity: 0; transform: translateY(18px); transition: opacity .55s ease, transform .55s cubic-bezier(.2,.9,.3,1); transition-delay: var(--d, 0s); }
.bp-rv.in { opacity: 1; transform: none; }
.blog-related li { transition: transform .2s; } .blog-related li:hover { transform: translateX(-4px); }
@media (prefers-reduced-motion: reduce) { .bp-rv { opacity: 1; transform: none; transition: none; } .blog-card, .blog-card figure img { transition: none; } .bp-progress { display: none; } }
@counter-style persian { system: numeric; symbols: "۰" "۱" "۲" "۳" "۴" "۵" "۶" "۷" "۸" "۹"; }
