.reading-progress-pill.is-visible{opacity:1;transform:translateY(0)}.sp-tags{display:flex;flex-wrap:wrap;gap:8px}.sp-tags a{display:inline-flex;padding:7px 12px;border-radius:999px;background:#f7f8fc;border:1px solid transparent;color:#586889;font-size:12px;font-weight:600;transition:all .2s ease}.sp-tags a:hover{background:var(--sp-soft);border-color:rgba(51,161,253,.2);color:var(--sp-primary)}.sp-toc-mobile{display:none;padding:18px 20px}.sp-toc-mobile summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:14px;font-weight:800;color:var(--sp-text);list-style:none}.sp-toc-mobile summary::-webkit-details-marker{display:none}.sp-toc-mobile .coursepree-toc,.sp-toc-mobile .sp-toc-list{margin-top:14px}.sp-article-body h1,.sp-article-body h2,.sp-article-body h3,.sp-article-body h4{font-family:"Rokh",sans-serif;color:var(--sp-text);margin:28px 0 14px}.sp-article-body img{display:block;width:100%;max-width:100%;height:auto;margin:28px 0;border-radius:22px}.sp-article-body blockquote{margin:24px 0;padding:18px 22px;border-right:4px solid var(--sp-primary);border-radius:16px;background:var(--sp-soft);color:#586889;font-size:15px;line-height:30px}.sp-article-body ul,.sp-article-body ol{margin:0 0 18px;padding-right:20px;color:#586889}.sp-article-body li{margin-bottom:8px;line-height:28px}.sp-comment-list{display:flex;flex-direction:column;gap:14px}.sp-comment{display:flex;gap:16px;padding:22px;transition:border-color .2s ease,box-shadow .2s ease}.sp-comment:hover{border-color:rgba(51,161,253,.22);box-shadow:0 18px 40px rgba(102,119,141,.1)}.sp-comment-avatar{width:64px;height:64px;border-radius:20px;object-fit:cover;flex-shrink:0;box-shadow:0 0 0 3px rgba(51,161,253,.08)}.sp-comment-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.sp-comment-name-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.sp-comment-top strong,.sp-comment-name-row strong{display:block;color:var(--sp-text);font-size:15px}.sp-comment-date{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:11px;color:var(--sp-muted)}.sp-comment-actions .comment-reply-link{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:12px;background:#f7f8fc;border:1px solid var(--sp-line);color:#586889;font-size:12px;font-weight:700;transition:all .2s ease}.sp-comment-actions .comment-reply-link:hover{background:rgba(51,161,253,.08);color:var(--sp-primary);border-color:rgba(51,161,253,.2)}.sp-badge-green{background:rgba(34,197,94,.12);color:#16a34a}.sp-comment-body>p{margin:0;font-size:14px;line-height:30px;color:#586889}.sp-comment-reply{display:flex;gap:12px;margin-top:16px;padding:16px;border-radius:22px;background:linear-gradient(180deg,#f7f9fc,#f3f6fb);border:1px solid var(--sp-line)}.sp-comment-reply .sp-comment-avatar{width:44px;height:44px;border-radius:14px}.sp-comment-reply p{margin:8px 0 0;font-size:13px;line-height:28px;color:#586889}.sp-comment-list>#respond,.sp-comment-body>#respond{margin-top:16px;padding:22px;border-radius:22px;background:#fff;border:1px solid rgba(51,161,253,.2);box-shadow:var(--sp-shadow)}.sp-side-toc .coursepree-toc__header,.sp-toc-mobile .coursepree-toc__header{display:none}.sp-side-toc .coursepree-toc__list,.sp-side-toc .coursepree-toc__sublist,.sp-toc-mobile .coursepree-toc__list,.sp-toc-mobile .coursepree-toc__sublist{list-style:none;margin:0;padding:0}.sp-side-toc .coursepree-toc__link,.sp-toc-mobile .coursepree-toc__link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;margin-bottom:8px;border-radius:16px;background:#f7f8fc;color:#586889;font-size:13px;transition:all .2s ease}.sp-side-toc .coursepree-toc__link:hover,.sp-side-toc .coursepree-toc__link.is-active,.sp-toc-mobile .coursepree-toc__link:hover{background:rgba(51,161,253,.08);color:var(--sp-primary)}.sp-side-toc .coursepree-toc__bullet{display:none}@media only screen and (max-width:991px){.sp-side-toc{display:none}.sp-toc-mobile{display:block}.reading-progress-pill.is-visible{transform:translate(-50%,0)}}@media only screen and (max-width:767px){.sp-comment{flex-direction:column}}