diff --git a/sql/20260723_external_point_request_scope.sql b/sql/20260723_external_point_request_scope.sql new file mode 100644 index 00000000..53d574b1 --- /dev/null +++ b/sql/20260723_external_point_request_scope.sql @@ -0,0 +1,11 @@ +ALTER TABLE `symphony_external_point_request` + ADD COLUMN `sourceAppId` VARCHAR(64) NOT NULL DEFAULT '' AFTER `oId`; + +UPDATE `symphony_external_point_request` e + INNER JOIN `symphony_pointtransfer` p ON p.`oId` = e.`transferId` +SET e.`sourceAppId` = p.`sourceAppId` +WHERE e.`transferId` <> '' AND p.`sourceAppId` IS NOT NULL; + +ALTER TABLE `symphony_external_point_request` + DROP INDEX `uk_external_point_request_id`, + ADD UNIQUE KEY `uk_external_point_request_scope` (`sourceAppId`, `requestId`); diff --git a/src/main/java/org/b3log/symphony/model/ExternalPointRequest.java b/src/main/java/org/b3log/symphony/model/ExternalPointRequest.java index 5625408c..9c521126 100644 --- a/src/main/java/org/b3log/symphony/model/ExternalPointRequest.java +++ b/src/main/java/org/b3log/symphony/model/ExternalPointRequest.java @@ -15,6 +15,7 @@ public final class ExternalPointRequest { public static final String EXTERNAL_POINT_REQUEST = "external_point_request"; + public static final String SOURCE_APP_ID = "sourceAppId"; public static final String REQUEST_ID = "requestId"; public static final String REQUEST_HASH = "requestHash"; public static final String TRANSFER_ID = "transferId"; diff --git a/src/main/java/org/b3log/symphony/repository/ExternalPointRequestRepository.java b/src/main/java/org/b3log/symphony/repository/ExternalPointRequestRepository.java index 78002a09..0ef8f768 100644 --- a/src/main/java/org/b3log/symphony/repository/ExternalPointRequestRepository.java +++ b/src/main/java/org/b3log/symphony/repository/ExternalPointRequestRepository.java @@ -10,6 +10,7 @@ package org.b3log.symphony.repository; import org.b3log.latke.repository.AbstractRepository; +import org.b3log.latke.repository.CompositeFilterOperator; import org.b3log.latke.repository.FilterOperator; import org.b3log.latke.repository.PropertyFilter; import org.b3log.latke.repository.Query; @@ -31,15 +32,19 @@ public ExternalPointRequestRepository() { } /** - * Gets a request by the specified id. + * Gets a request by the specified source application and request id. * + * @param sourceAppId source application id * @param requestId request id * @return request, returns {@code null} if not found * @throws RepositoryException repository exception */ - public JSONObject getByRequestId(final String requestId) throws RepositoryException { + public JSONObject getBySourceAppIdAndRequestId(final String sourceAppId, final String requestId) + throws RepositoryException { final Query query = new Query().setPage(1, 1).setFilter( - new PropertyFilter(ExternalPointRequest.REQUEST_ID, FilterOperator.EQUAL, requestId)); + CompositeFilterOperator.and( + new PropertyFilter(ExternalPointRequest.SOURCE_APP_ID, FilterOperator.EQUAL, sourceAppId), + new PropertyFilter(ExternalPointRequest.REQUEST_ID, FilterOperator.EQUAL, requestId))); final List requests = getList(query); return requests.isEmpty() ? null : requests.get(0); } diff --git a/src/main/java/org/b3log/symphony/service/ArticleMgmtService.java b/src/main/java/org/b3log/symphony/service/ArticleMgmtService.java index 523ad417..f57f7899 100644 --- a/src/main/java/org/b3log/symphony/service/ArticleMgmtService.java +++ b/src/main/java/org/b3log/symphony/service/ArticleMgmtService.java @@ -1078,6 +1078,8 @@ public void updateArticleByAdmin(final String articleId, final JSONObject articl article.put(Article.ARTICLE_STATEMENT, Integer.valueOf(article.optInt(Article.ARTICLE_STATEMENT, 0))); final JSONObject oldArticle = articleRepository.get(articleId); + final int oldArticleType = oldArticle.optInt(Article.ARTICLE_TYPE); + final String oldContent = oldArticle.optString(Article.ARTICLE_CONTENT); if (Article.ARTICLE_STATUS_C_INVALID == article.optInt(Article.ARTICLE_STATUS)) { article.put(Article.ARTICLE_TAGS, "回收站"); @@ -1117,6 +1119,15 @@ public void updateArticleByAdmin(final String articleId, final JSONObject articl userRepository.update(authorId, author); articleRepository.update(articleId, article); + final int articleType = article.optInt(Article.ARTICLE_TYPE); + final String articleContent = article.optString(Article.ARTICLE_CONTENT); + final boolean contentChanged = !oldContent.replaceAll("\\s+", "") + .equals(articleContent.replaceAll("\\s+", "")); + if (contentChanged && (Article.ARTICLE_TYPE_C_LONG == articleType + || Article.ARTICLE_TYPE_C_LONG == oldArticleType)) { + longArticleParagraphService.migrateCommentsInCurrentTransaction(articleId, oldContent, articleContent); + } + if (null != longArticleColumnRequest) { article.put(Keys.OBJECT_ID, articleId); longArticleColumnMgmtService.syncChapterInCurrentTransaction(article, longArticleColumnRequest); diff --git a/src/main/java/org/b3log/symphony/service/ExternalPointAdjustMgmtService.java b/src/main/java/org/b3log/symphony/service/ExternalPointAdjustMgmtService.java index 7999d84d..dab7d81c 100644 --- a/src/main/java/org/b3log/symphony/service/ExternalPointAdjustMgmtService.java +++ b/src/main/java/org/b3log/symphony/service/ExternalPointAdjustMgmtService.java @@ -65,10 +65,12 @@ public String adjust(final RequestContext context, final String userId, final St final int point, final String memo, final PointtransferSource source) throws ServiceException { final String requestHash = requestHash(userId, point, memo, source); - final ReentrantLock requestLock = REQUEST_LOCKS[Math.floorMod(source.requestId().hashCode(), LOCK_STRIPE_COUNT)]; + final int requestLockIndex = Math.floorMod(31 * source.appId().hashCode() + source.requestId().hashCode(), + LOCK_STRIPE_COUNT); + final ReentrantLock requestLock = REQUEST_LOCKS[requestLockIndex]; requestLock.lock(); try { - final JSONObject existing = getExisting(source.requestId()); + final JSONObject existing = getExisting(source.appId(), source.requestId()); if (null != existing) { return resolveExisting(existing, requestHash); } @@ -100,6 +102,7 @@ private String execute(final RequestContext context, final String userId, final JSONObject publicLog = null; try { final JSONObject request = new JSONObject(); + request.put(ExternalPointRequest.SOURCE_APP_ID, source.appId()); request.put(ExternalPointRequest.REQUEST_ID, source.requestId()); request.put(ExternalPointRequest.REQUEST_HASH, requestHash); request.put(ExternalPointRequest.TRANSFER_ID, ""); @@ -125,7 +128,7 @@ private String execute(final RequestContext context, final String userId, final transaction.rollback(); } - final JSONObject existing = getExisting(source.requestId()); + final JSONObject existing = getExisting(source.appId(), source.requestId()); if (null != existing) { return resolveExisting(existing, requestHash); } @@ -157,9 +160,9 @@ private void publishPostCommitActions(final String fromId, final String toId, } } - private JSONObject getExisting(final String requestId) throws ServiceException { + private JSONObject getExisting(final String sourceAppId, final String requestId) throws ServiceException { try { - return externalPointRequestRepository.getByRequestId(requestId); + return externalPointRequestRepository.getBySourceAppIdAndRequestId(sourceAppId, requestId); } catch (final RepositoryException e) { throw new ServiceException("请求记录查询失败。"); } diff --git a/src/main/resources/css/index.css b/src/main/resources/css/index.css index a726dad6..8747375e 100644 --- a/src/main/resources/css/index.css +++ b/src/main/resources/css/index.css @@ -1 +1 @@ -@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Regular-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Regular-J.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Medium-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Medium-J.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Bold-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Bold-J.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Black-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Black-J.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--background-color: #fff;--background-secondary-color: #f6f8fa;--text-color: #000;--text-gray-color: #787777;--text-fade-color: #878787;--layer-color: #616161;--layer-background-color: #fff;--layer-border-color: #eee;--layer-hover-color: #fff;--layer-hover-background-color: #4285f4;--header-background-color: #3b3e43;--toc-hover-color: #4285f4;--tab-current-background-color: var(--header-background-color);--box-shadow: 0 3px 12px rgba(27, 31, 35, 0.15);--dialog-close-color: hsla(0, 0%, 100%, 0.54);--input-border-color: #d1d5da;--logo-hover-color: var(--header-background-color)}.domains-count{padding:10px 18px;font-size:18px;line-height:26px;color:#3b3e43;text-align:center;border:1px solid #eee;background-color:#fff;width:100%;box-sizing:border-box;margin-bottom:20px;box-shadow:0px 0px 2px rgba(98,124,153,.1)}.domains-module{margin:0}.module-list.domain .slogan{text-align:center;margin-top:-8px;width:60px}.module-list.domain .title{margin-left:80px}.module-list.long-column-module-list .title{margin-left:0}.article{padding-top:60px}.article.long-article-page .article-container{width:100%;max-width:100%;margin:20px 0}.article.long-article-page .article-footer{width:100%;max-width:100%;box-sizing:border-box;padding:0 20px}.article .nav{position:fixed;top:0}.article .article-container{position:relative;margin:20px auto 20px;max-width:800px;background:#fff}.article .article-body .wrapper,.article .main .wrapper{display:block;max-width:768px}.article .main{min-height:inherit}.article .article-body{padding:20px 0}.article .article-info{font-size:12px;line-height:20px}.article .article-info .article-actions{line-height:60px;font-size:13px}.article h1.article-title{word-break:break-word;font-size:28px;font-weight:normal;padding-top:15px;text-align:center}.article h1.article-title svg{height:28px;width:28px;vertical-align:-4px}.article .article-statement{width:auto;color:#0f8cee;background-color:#e3f9fd;border-radius:12px;padding:4px 8px;margin:5px auto;font-weight:bold}.article .article-content{padding-top:15px}.article #articleRewardContent{padding:15px 15px 41px 15px;background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px;position:relative}.article #articleRewardContent .vditor-reset>p{margin-bottom:0}.article #articleRewardContent>span{position:absolute;bottom:10px;right:10px;cursor:pointer}.article .share{position:absolute;top:100px;left:-60px;width:30px;font-size:22px;color:#616161;text-align:center}.article .share .article-clipboard{position:absolute;top:-100000px}.article .share svg{height:22px;width:22px}.article .share>span{display:block;margin-bottom:10px}.article .share #qrCode{position:absolute;top:87px;left:35px;border:5px solid #eee;z-index:1;height:90px;border-radius:3px;width:90px}.article .share #thankArticle .ft-13{margin-top:-3px;display:block}.article .article-header{position:fixed;top:-60px;display:flex;justify-content:space-between;align-items:center;left:0;right:0;width:100%;max-width:100%;height:58px;z-index:83;line-height:38px;padding:0 10px;background-color:#fff;box-sizing:border-box;box-shadow:0 1px 2px rgba(0,0,0,.2);font-size:16px;transition:.5s}.article .article-header h1 svg{color:#2c2c2c;vertical-align:baseline;height:38px;width:38px}.article .article-header h2{font-size:24px;line-height:48px;font-weight:normal;margin:0 20px;transition:margin 1s cubic-bezier(0, 0, 0.2, 1)}.article .article-header .user-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap}.article .article-header .user-nav>span,.article .article-header .user-nav>a{white-space:nowrap;padding:16px 10px;line-height:16px;height:16px;color:#616161;text-decoration:none}.article .article-header .user-nav>span:hover,.article .article-header .user-nav>a:hover{color:#2c2c2c}.article .article-header .user-nav>span.ft-red{color:#e59230}.article .article-header .user-nav svg{height:16px;width:16px}.article #articleToC{position:fixed;top:80px;width:20%;z-index:0;right:0;height:100%;border-radius:0;background:none}.article #articleToC .module-panel{overflow:auto;border-radius:0}.article #articleToC .article-toc li{list-style-type:none}.article #articleToC .article-toc li a{padding:5px 10px 5px 20px;border-left:2px solid rgba(0,0,0,0);display:block;line-height:20px;color:#767676}.article #articleToC .article-toc li a:last-child{border-bottom-width:0}.article #articleToC .article-toc li a:hover{border-left:1px solid #4285f4;background-color:#f7f7f7;padding-left:21px;color:#4285f4;text-decoration:none}.article #articleToC .article-toc li.current a{border-left:2px solid #4285f4;background-color:#f0f0f0;color:#4285f4}.article #articleToC .article-toc li.toc-h2 a,.article #articleToC .article-toc li.toc-h2.current a:hover{padding-left:34px}.article #articleToC .article-toc li.toc-h3 a,.article #articleToC .article-toc li.toc-h3.current a:hover{padding-left:48px}.article #articleToC .article-toc li.toc-h4 a,.article #articleToC .article-toc li.toc-h4.current a:hover{padding-left:62px}.article #articleToC .article-toc li.toc-h5 a,.article #articleToC .article-toc li.toc-h5.current a:hover{padding-left:86px}.article #articleToC .article-toc li.toc-h2 a:hover{padding-left:35px}.article #articleToC .article-toc li.toc-h3 a:hover{padding-left:49px}.article #articleToC .article-toc li.toc-h4 a:hover{padding-left:63px}.article #articleToC .article-toc li.toc-h5 a:hover{padding-left:87px}@media(min-width: 1025px){.article:not(.long-article-page){--article-layout-gap: 32px;--article-content-width: min(1120px, calc(100vw - 80px))}.article:not(.long-article-page) .article-container{width:var(--article-content-width);max-width:none;margin-right:auto;margin-left:auto}.article:not(.long-article-page) .article-body .wrapper,.article:not(.long-article-page) .main .wrapper,.article:not(.long-article-page) .article-footer{box-sizing:border-box;width:100%;min-width:0;max-width:none;padding-right:28px;padding-left:28px}.article:not(.long-article-page) #articleToC{display:none}.article.article--has-toc{--article-toc-width: clamp(220px, 18vw, 340px)}.article.article--has-toc #articleToC{width:var(--article-toc-width)}}@media(min-width: 1880px){.article.article--has-toc:not(.long-article-page) #articleToC{display:block}}.article #revision .revisions{margin:5px 0 15px;text-align:center}.article #revision .revisions a{color:#616161;vertical-align:middle}.article #revision .revisions a:hover{color:#2c2c2c}.article #revision .revisions a.disabled{color:#878787;cursor:default}.article #revision .revisions span{margin:0 10px 0 10px}.article #revision .revision-picker{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:14px;padding-bottom:12px}.article #revision .revision-picker label{align-items:center;color:#616161;display:flex;gap:6px}.article #revision .revision-picker select{border:1px solid #d9d9d9;border-radius:3px;box-sizing:border-box;height:30px;max-width:220px;padding:0 6px}.article #revision .revision-picker .revision-picker__toggle{white-space:nowrap}.article #revision .revision-picker .revision-picker__compare{height:30px;line-height:28px;padding:0 12px}.article #revision .revision-diff{max-height:60vh;overflow:auto}.article #revision .revision-diff-section{margin-top:14px}.article #revision .revision-diff-section h3{color:#2c2c2c;font-size:14px;line-height:20px;margin:0 0 6px}.article #revision .revision-diff-title,.article #revision .revision-diff-lines{background:#fff;border:1px solid #e6e6e6;border-radius:4px}.article #revision .revision-diff-title{line-height:1.8;padding:10px;white-space:pre-wrap;word-break:break-word}.article #revision .revision-diff-word--add{background:#e9f7ec;color:#569e3d}.article #revision .revision-diff-word--remove{background:#ffeded;color:#d23f31;text-decoration:line-through}.article #revision .revision-diff-line{border-left:3px solid rgba(0,0,0,0);box-sizing:border-box;line-height:1.7;min-height:28px;padding:4px 10px;white-space:pre-wrap;word-break:break-word}.article #revision .revision-diff-line+.revision-diff-line{border-top:1px solid #f0f0f0}.article #revision .revision-diff-line--add{background:#f0fbf2;border-left-color:#569e3d}.article #revision .revision-diff-line--remove{background:#fff1f1;border-left-color:#d23f31}.article .editor-panel{position:fixed;left:0;right:0;width:100vw;max-width:100vw;z-index:120;height:100%;box-sizing:border-box;bottom:-200%}.article .editor-panel .editor-bg{background-color:rgba(0,0,0,.5);height:100%;position:absolute;top:0;width:100%;left:0;right:0}.article .editor-panel .wrapper{background-color:#f1f7fe;bottom:0;z-index:121;position:absolute;padding:15px 10%;box-sizing:border-box;width:100%;max-width:initial;left:0;right:0}.article .editor-panel .wrapper #commentContent{max-height:600px}.article .editor-panel .wrapper .comment-submit{display:flex;align-items:center;margin-top:10px}.article .editor-panel .form{width:100%}.article .editor-panel .editor-hide{color:#616161;margin:-3px 0 6px;font-size:22px}.article .editor-panel .editor-hide:hover{color:#2c2c2c}#heatBar{position:fixed;top:2px;right:0px;width:100%;z-index:84}#thoughtProgress{height:2px;position:relative;margin-bottom:10px;margin-top:20px}#thoughtProgress .bar{position:absolute;background-color:#e0e0e0;height:2px}#thoughtProgress .icon-video{position:absolute;top:-8px;left:0;cursor:pointer;color:#e59230;margin-left:-10px}label.cmt-anonymous{margin:0 9px}label.cmt-anonymous input{margin-left:4px}.comment-action__bar{display:flex;align-items:center;justify-content:flex-start;gap:0 12px;flex-wrap:wrap}.comment-action__bar>.action-btns{margin-left:auto;padding-left:12px}.comment-action__left{display:flex;align-items:center;flex:1 1 240px;flex-wrap:wrap;gap:8px;min-width:0;transform:translateX(-12px)}.comment-action__reply{color:#616161;white-space:nowrap}.comment-action__reply svg{margin-left:4px}.action-btns{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.action-btns>span,.action-btns>a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:0 10px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(255,255,255,.84);box-shadow:0 8px 18px rgba(15,23,42,.06);color:#616161;text-decoration:none;white-space:nowrap;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.action-btns>span:hover,.action-btns>a:hover{background:#fff;border-color:rgba(98,162,240,.28);color:#2c2c2c;transform:translateY(-1px);box-shadow:0 12px 22px rgba(15,23,42,.1)}.action-btns>span.ft-red,.action-btns>a.ft-red,.action-btns>span.ft-red:hover,.action-btns>a.ft-red:hover{color:#e59230;border-color:rgba(226,61,61,.2);background:rgba(255,243,243,.92)}.action-btns>span.icon-reply-btn{color:#616161;font-weight:600}.action-btns>span.icon-reply-btn:hover{color:#2c2c2c}.action-btns svg{vertical-align:middle}.comments.module{margin-bottom:0}.comments .comments-header a{color:#878787;font-size:16px;text-decoration:none}.comments .comments-header__main{display:flex;align-items:center;justify-content:space-between;gap:12px}.comments .comment-filterbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px}.comments .comment-segment{display:inline-flex;overflow:hidden;border:1px solid #e5e7eb;border-radius:6px;background:#fff}.comments .comment-segment__item{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-left:1px solid #e5e7eb;color:#878787;font-size:13px;line-height:1}.comments .comment-segment__item:first-child{border-left-width:0}.comments .comment-segment__item:hover{color:#787777;background:#f9fafb}.comments .comment-segment__item--active,.comments .comment-segment__item--active:hover{color:#fff;background:#616161}.comments .comments-header a:hover{color:#787777}.comments .comments-header a.comment-segment__item{color:#878787;font-size:13px}.comments .comments-header a.comment-segment__item:hover{color:#787777;background:#f9fafb}.comments .comments-header a.comment-segment__item--active,.comments .comments-header a.comment-segment__item--active:hover{color:#fff;background:#616161}.comments .list>ul>li.cmt-shield-shield{background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px}.comments .list>ul>li.cmt-perfect,.comments .list>ul>li.cmt-perfect:hover{background-color:#f9f6f6}.comments .list>ul>li:hover .hover-show,.comments .list>ul>li.focus .fn-hidden{visibility:visible}.comments .list>ul>li:last-child{border-bottom-width:0}.comments .list>ul>li,.comments .comment-thread__reply{transition:transform .18s ease}.comments .comment-focus-highlight{animation:comment-focus-nudge .38s ease-out 1}.comments .comment{margin:5px 0}.comments .comment img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.comments .comment>p:last-child{margin-bottom:0px}.comments .comment>p>img:last-child{margin-bottom:10px}.comments .comment-info .avatar-small{vertical-align:bottom}.comments .comment-origin{display:inline-flex;align-items:center;gap:4px;max-width:180px;color:#878787;font-size:12px;white-space:nowrap}.comments .comment-origin span{overflow:hidden;text-overflow:ellipsis}.comments .comment-origin-inline{margin-left:8px;color:#878787}.comments .comment-thread{--comment-thread-max-indent: 140px;margin:12px 0 8px;padding:1px 0 1px 14px;border-left:1px solid rgba(15,23,42,.14);background:rgba(0,0,0,0)}.comments .comment-thread__list{display:flex;flex-direction:column;gap:10px}.comments .comment-thread__reply{display:flex;align-items:flex-start;gap:8px;min-width:0;margin-left:min(var(--comment-thread-indent, 0px),var(--comment-thread-max-indent));padding:2px 0;position:relative}.comments .comment-thread__reply--nested::before{position:absolute;top:0;bottom:0;left:-14px;border-left:1px solid rgba(15,23,42,.12);content:""}.comments .comment-thread__reply+.comment-thread__reply{padding-top:10px;border-top:1px solid rgba(15,23,42,.08)}.comments .comment-thread__avatar{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background-position:center;background-size:cover}.comments .comment-thread__body{flex:1;min-width:0;border-radius:4px;transition:transform .18s ease}.comments .comment-thread__reply.comment-focus-highlight{animation:none}.comments .comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:comment-focus-nudge .38s ease-out 1}.comments .comment-thread__meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:13px;line-height:1.45}.comments .comment-thread__meta a{color:#2c2c2c;font-weight:600}.comments .comment-thread .comment-origin-inline{margin-left:0}.comments .comment-thread__content{margin-top:2px;color:#2c2c2c;font-size:14px;line-height:1.7}.comments .comment-thread__content img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.comments .comment-thread__content>p:last-child{margin-bottom:0}.comments .comment-thread__actions{align-items:center;gap:4px;margin-top:5px;font-size:13px}.comments .comment-thread__actions .comment-action__left{flex:0 1 auto;gap:4px;transform:none}.comments .comment-thread__actions .action-btns{justify-content:flex-start;gap:2px;margin-left:0;padding-left:0}.comments .comment-thread__actions .action-btns>span,.comments .comment-thread__actions .action-btns>a{min-height:24px;padding:0 7px;border:0;background:rgba(0,0,0,0);box-shadow:none;color:#878787}.comments .comment-thread__actions .action-btns>span:hover,.comments .comment-thread__actions .action-btns>a:hover{background:rgba(98,162,240,.08);box-shadow:none;color:#2c2c2c;transform:none}.comments .comment-thread__actions .reaction-pill,.comments .comment-thread__actions .reaction-trigger{min-height:24px;padding:0 7px;border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);box-shadow:none}.comments .comment-thread__actions .reaction-widget__items{gap:2px;min-height:22px}.comments .comment-thread__more{margin-top:10px;padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:13px}.comments .comment-thread__pager{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:#878787;font-size:12px}.comments .comment-thread__pager button{padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:12px}.comments .comment-thread__pager button:hover{color:#2c2c2c}.comments .comment-thread__page-info{color:#878787}.comments .comment-info a:hover{text-decoration:none}.comments .comment-action>.ft-fade>.fn-pointer:hover{color:#787777}.comment-paragraph-context{display:-webkit-box;margin:0 0 8px;overflow:hidden;color:#718078;font-size:12px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.long-article-orphaned-comments{margin:18px 0 0;border-top:1px solid rgba(65,94,71,.14);padding-top:12px}.long-article-orphaned-comments summary{color:#68776e;cursor:pointer;font-size:13px}.long-article-orphaned-comments>ul{margin-top:8px}.nice .comments>ul>li:last-child{border-bottom-width:0}.comment-get-comment.list>ul{padding:0}.comment-get-comment.list>ul>li{padding-top:0;border-bottom:1px solid #eee;margin-bottom:15px}.comment-get-comment.list>ul>li:last-child{border-bottom:1px solid #eee}.comment-replies.list>ul{margin-top:10px;padding:0}.comment-replies.list>ul>li{border-bottom-width:0;border-top:1px solid #eee}.comment-replies.list>ul>li{background-color:rgba(0,0,0,0)}.article-reaction,.comment-reaction,.chat-reaction{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:100%}.article-reaction-shell{display:flex;justify-content:flex-start;width:100%;margin:18px 0 6px}.article-reaction{align-items:flex-start;margin:18px 0 6px}.article-reaction .reaction-widget__summary,.article-reaction .reaction-widget__items{justify-content:flex-start}.comment-reaction{margin-top:0}.chat-reaction{clear:both;display:flex;margin:7px 0 0;width:100%}.chat-reaction--empty{position:absolute;top:10px;right:-14px;z-index:5;width:auto;margin:0;transform:none}.reaction-widget__summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.reaction-widget__items{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:28px}.reaction-widget__items:empty{display:none}.reaction-pill,.reaction-trigger,.reaction-option{appearance:none;border:0;font:inherit;line-height:1;cursor:pointer}.reaction-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border:1px solid var(--layer-border-color);border-radius:999px;background:rgba(255,255,255,.86);color:var(--text-gray-color);user-select:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.reaction-pill:hover{background:#fff;border-color:rgba(98,162,240,.42);transform:translateY(-1px)}.reaction-pill-wrapper .reaction-pill__tip{bottom:calc(100% - 2px);width:max-content;min-width:0;max-width:calc(100vw - 32px);max-height:176px;margin-bottom:0;padding:10px;border:1px solid rgba(148,163,184,.26);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 14px 32px rgba(15,23,42,.14);display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:8px;overflow-y:auto;text-align:left;z-index:24}.comment-action__left .comment-reaction--summary{flex:0 1 auto;min-width:0}.comment-reaction--summary{gap:0}.action-btns .comment-reaction--trigger{display:inline-flex}.action-btns .comment-reaction--trigger .reaction-popover{left:auto;right:0}.reaction-pill__tip-link{display:inline-flex;width:30px;height:30px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.96);box-shadow:0 6px 14px rgba(15,23,42,.12);transition:transform .18s cubic-bezier(0.22, 1, 0.36, 1),box-shadow .18s ease}.reaction-pill__tip-link:hover{transform:translateY(-1px) scale(1.04);box-shadow:0 10px 20px rgba(37,99,235,.18)}.reaction-pill__tip-avatar{display:block;width:100%;height:100%;object-fit:cover}.reaction-pill.selected{border-color:rgba(98,162,240,.72);background:rgba(98,162,240,.12);color:#2563eb;font-weight:600;box-shadow:0 8px 18px rgba(37,99,235,.12)}.reaction-pill__emoji{line-height:1}.reaction-pill__count{font-size:12px;line-height:1}.reaction-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:30px;min-width:30px;padding:0 9px;border-radius:999px;background:rgba(37,99,235,.08);border:1px solid rgba(37,99,235,.14);color:#2563eb;font-size:12px;font-weight:600;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease}.reaction-trigger:hover{background:rgba(37,99,235,.13);transform:translateY(-1px)}.reaction-trigger.is-open{background:rgba(37,99,235,.16);border-color:rgba(37,99,235,.28);box-shadow:0 10px 24px rgba(37,99,235,.18)}.reaction-trigger__icon{font-size:15px}.reaction-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:70;display:none;grid-template-columns:repeat(5, minmax(0, 1fr));gap:8px;min-width:252px;max-width:min(280px,100vw - 40px);padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 18px 38px rgba(15,23,42,.16);backdrop-filter:blur(16px)}.article-reaction.is-open,.comment-reaction.is-open,.chat-reaction.is-open{z-index:70}.article-reaction.is-open .reaction-popover,.comment-reaction.is-open .reaction-popover,.chat-reaction.is-open .reaction-popover{display:grid;animation:reaction-pop .28s cubic-bezier(0.22, 1.28, 0.36, 1)}.reaction-option{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:14px;background:rgba(241,245,249,.9);border:1px solid rgba(0,0,0,0);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.reaction-option:hover{background:#fff;border-color:rgba(98,162,240,.24);transform:translateY(-1px) scale(1.04)}.reaction-option:active{transform:scale(0.92)}.reaction-option.selected{background:rgba(37,99,235,.12);border-color:rgba(37,99,235,.3);box-shadow:inset 0 0 0 1px rgba(37,99,235,.12)}.reaction-option--wide{grid-column:span 2;width:auto;white-space:nowrap}.reaction-option--wide .reaction-option__emoji{font-size:18px;letter-spacing:.02em}.reaction-option__emoji{font-size:20px;line-height:1}.chat-reaction .reaction-pill{min-height:26px;padding:0 9px;font-size:12px}.chat-reaction .reaction-trigger{min-height:28px;padding:0 11px}.chat-reaction--empty .reaction-trigger{min-width:32px;min-height:32px;padding:0;box-shadow:0 10px 22px rgba(15,23,42,.16)}.chat-reaction .reaction-popover,.chat-reaction--empty .reaction-popover{left:auto;right:0}.chat-reaction .reaction-popover{top:calc(100% + 6px)}.chat-reaction--empty .reaction-popover{top:calc(100% + 10px)}.chats__content>.date-bar{clear:both;display:flex;justify-content:flex-end;align-items:center;gap:4px;float:none;margin-top:6px;width:100%}.reaction-loading{opacity:.68;pointer-events:none}.reaction-flyin{position:fixed;left:0;top:0;z-index:10010;font-size:22px;line-height:1;pointer-events:none;filter:drop-shadow(0 8px 18px rgba(15, 23, 42, 0.18));will-change:transform,opacity}@keyframes comment-focus-nudge{0%,100%{transform:translate3d(0, 0, 0)}45%{transform:translate3d(4px, 0, 0)}}@media(prefers-reduced-motion: reduce){.comments .comment-focus-highlight,.comments .comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:none}}@keyframes reaction-pop{0%{opacity:0;transform:translateY(8px) scale(0.82)}70%{opacity:1;transform:translateY(-2px) scale(1.03)}100%{opacity:1;transform:translateY(0) scale(1)}}#replyUseName{line-height:20px;height:20px}.img-preview{width:100%;height:100%;top:0;z-index:111;overflow:auto;cursor:zoom-out;transition:background-color .2s ease-in-out}.img-preview img{max-width:inherit;transition:transform .3s ease-in-out}.article-footer{margin-top:20px;max-width:768px}.article-footer .module{margin-left:20px}.article-footer .module:first-child{margin-left:0}#reportDialog{display:none}body.revision-modal-open{overflow:hidden}.revision-modal{align-items:center;display:none;inset:0;justify-content:center;position:fixed;z-index:260}.revision-modal.is-open{display:flex}.revision-modal__overlay{background:rgba(15,23,42,.58);inset:0;position:absolute}.revision-modal__panel{background:#fff;border:1px solid rgba(148,163,184,.28);border-radius:8px;box-shadow:0 24px 60px rgba(15,23,42,.28);display:flex;flex-direction:column;height:min(82vh,860px);max-width:calc(100vw - 48px);overflow:hidden;position:relative;width:min(1080px,86vw)}.revision-modal__header{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex:0 0 auto;justify-content:space-between;min-height:56px;padding:0 18px}.revision-modal__title{color:#2c2c2c;font-size:16px;font-weight:600;line-height:24px}.revision-modal__close{align-items:center;background:#f6f8fa;border:1px solid #e6e6e6;border-radius:50%;color:#616161;cursor:pointer;display:inline-flex;font-size:24px;height:34px;justify-content:center;line-height:32px;padding:0;width:34px}.revision-modal__close:hover{background:#fff;color:#2c2c2c}.revision-modal__body{box-sizing:border-box;flex:1 1 auto;min-height:0;padding:16px}.revision-modal #revision{display:flex;flex-direction:column;height:100%;min-height:0}.revision-modal #revisions{display:flex;flex-direction:column;height:100%;min-height:0}.revision-modal #revision .revisions{margin:5px 0 15px;text-align:center}.revision-modal #revision .revisions a{color:#616161;vertical-align:middle}.revision-modal #revision .revisions a:hover{color:#2c2c2c}.revision-modal #revision .revisions a.disabled{color:#878787;cursor:default}.revision-modal #revision .revisions span{margin:0 10px 0 10px}.revision-modal #revision .revision-picker{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:8px 12px;margin-bottom:14px;padding-bottom:12px}.revision-modal #revision .revision-picker label{align-items:center;color:#616161;display:flex;gap:6px}.revision-modal #revision .revision-picker select{border:1px solid #d9d9d9;border-radius:3px;box-sizing:border-box;height:32px;max-width:240px;padding:0 8px}.revision-modal #revision .revision-picker .revision-picker__toggle{white-space:nowrap}.revision-modal #revision .revision-picker .revision-picker__compare{height:32px;line-height:30px;padding:0 14px}.revision-modal #revision .revision-diff{flex:1 1 auto;max-height:none;min-height:0;overflow:auto;padding-right:2px}.revision-modal #revision .revision-diff-section{margin-top:14px}.revision-modal #revision .revision-diff-section h3{color:#2c2c2c;font-size:14px;line-height:20px;margin:0 0 6px}.revision-modal #revision .revision-diff-title,.revision-modal #revision .revision-diff-lines{background:#fff;border:1px solid #e6e6e6;border-radius:4px}.revision-modal #revision .revision-diff-title{line-height:1.8;padding:10px;white-space:pre-wrap;word-break:break-word}.revision-modal #revision .revision-diff-word--add{background:#e9f7ec;color:#569e3d}.revision-modal #revision .revision-diff-word--remove{background:#ffeded;color:#d23f31;text-decoration:line-through}.revision-modal #revision .revision-diff-line{border-left:3px solid rgba(0,0,0,0);box-sizing:border-box;line-height:1.7;min-height:28px;padding:4px 10px;white-space:pre-wrap;word-break:break-word}.revision-modal #revision .revision-diff-line+.revision-diff-line{border-top:1px solid #f0f0f0}.revision-modal #revision .revision-diff-line--add{background:#f0fbf2;border-left-color:#569e3d}.revision-modal #revision .revision-diff-line--remove{background:#fff1f1;border-left-color:#d23f31}.article-list ul>li{padding:15px}.article-list .stick li:last-child{border-bottom-width:0}.article-list ul>li>h2{margin:5px 0}.article-list ul>li>h2>a{font-size:16px;font-weight:700}.article-list ul>li:hover .fn-hidden{visibility:visible}.article-list .abstract{margin-top:5px;color:#616161;display:block;text-decoration:none}.article-list .abstract-img{width:180px;height:135px;border-radius:2px;margin-left:10px;background-size:cover;background-position:center center}.article-list ul>li>h2>a:visited,.article-list .abstract:visited{color:#999}.article-list .author{color:#616161;font-weight:600}.article-list .list-info{line-height:18px}.heat{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0}.point,.point-remove{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0px;width:5px;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:slideInRight;animation-name:slideInRight}.point-remove{animation-name:slideInLeft;-webkit-animation-name:slideInLeft}@keyframes slideInLeft{0%{right:0}100%{right:100%}}@-webkit-keyframes slideInLeft{0%{right:0}100%{right:100%}}@keyframes slideInRight{0%{right:100%}100%{right:0}}@-webkit-keyframes slideInRight{0%{right:100%}100%{right:0}}.article-level0{color:#878787}.article-level1{color:#fc0}.article-level2{color:#ffc1cc}.article-level3{color:#f63}.article-level4{color:#e59230}.recent-rss{color:#f93 !important;float:right;margin:2px 0 0 10px}.recent-rss:hover{color:#4285f4 !important}.domain-rss{color:#f93 !important}.domain-rss svg{vertical-align:sub}.domain-rss:hover{color:#4285f4 !important}.verify{background-color:#fff}.verify .intro{padding:100px 50px;background-color:#f1f7fe;width:40%;color:#616161}.verify .verify-wrap{width:60%}.verify .form{font-size:14px;line-height:1.6;width:250px;margin:100px auto}.verify .form>svg{margin:0 auto;display:block;height:100px;width:100px}.verify .form input[type=text],.verify .form input[type=password]{margin:10px 0;width:100%;padding-left:36px;background-color:#fff}.verify .form button{margin:10px 0;width:100%}.verify .form .input-wrap{position:relative}.verify .form .input-wrap svg{color:#787777;position:absolute;top:19px;left:10px;z-index:1}.verify .form .captcha-img{top:11px;position:absolute;height:31px;left:1px;border-radius:3px 0 0 3px}.verify .form input.captcha-input{padding-left:91px}.verify .openid-info{font-size:14px;line-height:1.6;margin:100px 20px}.verify .openid-info .tip1{font-size:20px;font-weight:bold}.verify .openid-info .tip2{color:#b0a114}.verify .openid-info .info-box{margin-top:20px;margin-bottom:20px;display:flex;flex-direction:row;padding:10px;align-items:center;background:#eee;border-radius:2px}.verify .openid-info .info-detail{font-size:18px}.verify .openid-intro .openid-intro-title{color:#4285f4}.guide .guide-tab,.guide .step-btn{margin:50px}.guide .guide-tab svg{height:100px;width:100px}.guide .form{margin:0;width:auto}.guide #avatarUpload label{margin-top:0}.guide .tag-desc>li{margin:0 20px 20px 0}.guide .tag-desc>li>div{left:-3px;right:inherit;border-radius:0px 3px 3px 3px}.guide .tag-desc li.current>a{background-color:#4285f4;color:#fff;border-color:rgba(0,0,0,.02)}.guide .intro dl{margin-left:50px}.guide .intro dd{margin-bottom:50px}.guide .intro dt{position:relative}.guide .intro dt.current{color:#ffac45}.guide .intro dt .index{position:absolute;left:-38px;font-size:46px;top:-13px;font-family:serif;font-weight:600}.guide .fn-flex>div{padding:10px;width:50%}.guide .md{background-color:#f1f7fe}.guide .md pre{white-space:pre-wrap;word-wrap:break-word}.tag-articles .article-info{padding:15px 15px 0;margin-bottom:15px}.tag-articles .desc,.tag-articles .tag-articles-tag-desc.tag-desc{margin:0 15px}.tag-articles .tag-articles-tag-desc.tag-desc>li{margin:0 15px 15px 0}.tag-articles .tag-articles-tag-desc.tag-desc>li>div{left:-3px;right:auto;border-radius:0 3px 3px 3px}code.prettyprint{display:inline;border:none;background-color:initial;border-radius:initial;padding:initial}code .str{color:initial}code .kwd{color:initial}code .com{color:initial;font-style:italic}code .typ{color:initial}code .lit{color:initial}code .pun{color:initial}code .pln{color:initial}code .tag{color:initial}code .atn{color:initial}code .atv{color:initial}code .dec{color:initial}.activity{min-height:300px}.activity .list .ft-fade{margin-top:6px;display:block}#charCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;background-image:url(../images/m-char.png);background-size:cover;margin:20px auto}#paintCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;background-size:cover;margin:20px auto}#snakeCanvas,#gobangCanvas{margin:20px auto;display:block}.snak-rank{margin:30px 15px 0}.snak-rank .module:last-child{margin-left:20px;margin-bottom:20px}.snak-rank .count{position:absolute;top:10px;right:10px}.sub-head .avatar-small{height:24px;width:24px;vertical-align:-3px}.sub-head .ft-13{font-weight:normal}.chat-room .online-cnt{line-height:33px;margin-right:10px;color:#787777}.chat-room .list{height:200px;overflow:auto}.chat-room .form.fn-content{background-color:#f1f7fe}.chat-room #comments li img{max-height:400px;max-width:600px}.index .index-main{width:60%}.index .index-side{margin-left:2px;width:40%}.index .article-list .heat{display:none}.index .more{display:block;text-align:right}.index .index-tabs>span{flex:1;display:inline-block;vertical-align:middle;line-height:40px;cursor:pointer;transform:translateZ(0);backface-visibility:hidden;position:relative;transition-property:color;transition-duration:.3s;text-align:center;border-bottom:2px solid #4285f4;background-color:#fff;color:#787777;overflow:hidden}.index .index-tabs>span a{color:#2c2c2c;text-decoration:none;display:block}.index .index-tabs>span a svg{vertical-align:text-bottom}.index .index-tabs>span.current,.index .index-tabs>span.current:hover{color:#2c2c2c}.index .index-tabs>span.tags{border-bottom-color:#569e3d;margin:0 2px}.index .index-tabs>span.users{border-bottom-color:#f1e05a}.index .index-tabs>span.perfect{border-bottom-color:#e59230}.index .index-tabs>span.check{border-bottom-color:#563d7c;margin:0 2px}.index .index-tabs>span.post{border-bottom-color:#ffac45}.index .index-tabs>span:hover,.index .index-tabs>span:hover a{color:#fff}.index .index-tabs>span:before{content:"";position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;background-color:#4285f4;transform:scaleY(0);transform-origin:50% 100%;transition:transform .3s ease-out}.index .index-tabs>span.tags:before{background-color:#569e3d}.index .index-tabs>span.users:before{background-color:#f1e05a}.index .index-tabs>span.perfect:before{background-color:#e59230}.index .index-tabs>span.check:before{background-color:#563d7c}.index .index-tabs>span.post:before{background-color:#ffac45}.index .index-tabs>span:hover:before{transform:scaleY(1)}.index .index-tabs>span.current:hover:before{transform:scaleY(0)}.index .index-tabs>span>svg{display:none;vertical-align:text-top}.index .index-tabs>span.current>svg{display:inline-block}.index .perfect-panel{background-color:#f1f7fe}.index .perfect-panel .avatar-small{position:absolute;left:10px}.index .perfect-panel .fn-ellipsis{padding:0 50px 0 30px;display:block;box-sizing:border-box;line-height:20px}.index .perfect-panel .count{position:absolute;right:10px;top:17px}.index .metro-item{flex:1;width:215px;height:215px;text-align:center;overflow:hidden;position:relative;margin-right:2px;margin-bottom:2px}.index .metro-item .calendar-container{height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.index .metro-item .calendar-container .canendar-body{height:75%;width:60%;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:20px 20px 5px 5px;box-shadow:0 2px 4px rgba(0,0,0,.5);transition:all .15s ease-in-out}.index .metro-item .calendar-container .canendar-body .calendar-head{height:33%;font-size:13px;background:#be4145;border-radius:10px 10px 0 0;width:100%;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center}.index .metro-item .calendar-container .canendar-body .calendar-content{height:67%;font-size:80px;font-weight:bold;color:#333;background:#fff;width:100%;border-radius:0 0 5px 5px}.index .metro-item .calendar-container .canendar-body:hover{box-shadow:0 5px 10px rgba(0,0,0,.5)}.index .metro-item .preview{height:100%;width:100%;padding-top:108px;position:relative;box-sizing:border-box;display:block;transition:all .2s ease-out 0s;color:#999;text-decoration:none}.index .metro-item .preview:hover{background-color:rgba(0,0,0,.02);color:#2c2c2c}.index .metro-item .preview img{transition:all .2s ease-out 0s;margin-top:-48px;height:60px;width:60px}.index .metro-item .preview:hover>img{border-radius:30px}.index .metro-item .preview>b{display:block;margin-top:20px;font-weight:normal}.index .tag-metro-item{text-align:center;overflow:hidden;position:relative;margin-right:15px;width:40px;margin-bottom:15px}.index .tag-metro-item .preview{height:100%;width:100%;position:relative;box-sizing:border-box;display:block;transition:all .2s ease-out 0s;color:#999;text-decoration:none}.index .tag-metro-item .preview:hover{background-color:rgba(0,0,0,.02);color:#2c2c2c}.index .tag-metro-item .preview img{transition:all .2s ease-out 0s;margin-top:0px;height:40px;width:40px}.index .tag-metro-item .preview:hover>img{border-radius:30px}.index .tag-metro-item .preview>b{display:block;font-weight:normal;white-space:nowrap}.index__bottom{background-color:rgba(0,0,0,.02);padding-top:20px;margin-top:20px}.index .metro-border>div{height:2px;flex:1;background-color:#4285f4;margin-right:2px;margin-top:-2px}.index .metro-border>div.yellow{background-color:#f1e05a}.index .metro-border>div.green{background-color:#569e3d}.index .metro-border>div.red{background-color:#d23f31}.index .metro-border>div.purple{background-color:#563d7c}.index .ad img{width:100%}@keyframes ripple{to{transform:scale(2);opacity:0}}.ripple{position:absolute;background:rgba(0,0,0,.15);border-radius:100%;transform:scale(0);pointer-events:none;animation:ripple .75s ease-out;content:" ";width:100%;height:100%}.symhub li a{color:#616161;vertical-align:middle;font-size:16px;line-height:20px}.symhub li:last-child{border-bottom:0}.top-ranking{border-top:1px solid #eee;padding-top:15px}.cake{animation:move 3s 0s infinite;-webkit-animation:move 3s 0s infinite;transform-origin:bottom;-webkit-transform-origin:bottom}@keyframes move{0%,65%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}70%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}75%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}80%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}85%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}90%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}95%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes move{0%,65%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}70%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}75%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}80%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}85%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}90%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}95%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}#chatRoomIndex li img{max-width:150px;max-height:150px}.comment__reply{padding:15px}.comment__reply .reply__text{color:#4285f4;cursor:pointer;border:1px solid #eee;line-height:37px;border-radius:3px;padding:0 10px}.article__meta{background-color:#f6f8fa;color:rgba(0,0,0,.38);font-size:12px;transition:all .15s ease-in-out;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:3px;display:flex}.article__meta a{outline:0;text-decoration:none}.article__meta #articleMeta{height:38px;overflow:hidden;margin:15px 0 0 5px}.article__meta .meta__more{float:right;margin:0 15px 0 0;cursor:pointer;height:38px}.article__meta .avatar{height:68px;width:68px;border-radius:3px 0 3px 0}.article__meta .article__titles{text-align:center;width:68px}.article__meta .article__titles span{margin:15px 1px 0;display:inline-block}.ft-a-title{color:#616161 !important;text-decoration:none}.article__stats{font-size:12px;line-height:18px;text-align:center;color:#8b8b8b;margin-right:15px;float:left}.article__view{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px;line-height:16px;color:#8b8b8b;margin:15px 0 15px 5px;text-align:right;border-top:1px solid #eee;padding:15px 15px 0 0}.article__view .tooltipped__n{margin-right:0}.article__view>.tooltipped__n>svg{margin-right:3px}.article__view .tooltipped__n:hover{color:var(--text-gray-color)}.article-visit-source{display:inline-flex;align-items:center;color:#8b8b8b;font-size:12px;line-height:16px}.article-visit-source__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:3px;color:#8b8b8b;flex:0 0 auto}.article-visit-source__icon svg{display:block;width:16px;height:16px;fill:currentColor;margin-right:0}.article-visit-source--google .article-visit-source__icon,.article-visit-source--chrome .article-visit-source__icon{color:#4285f4}.article-visit-source--baidu .article-visit-source__icon{color:#35f}.article-visit-source--bing .article-visit-source__icon,.article-visit-source--edge .article-visit-source__icon{color:#0078d7}.article-visit-source--sogou .article-visit-source__icon{color:#fa4f00}.article-visit-source--yandex .article-visit-source__icon{color:#fc3f1d}.article-visit-source--360 .article-visit-source__icon,.article-visit-source--android .article-visit-source__icon{color:#2fa866}.article-visit-source--duckduckgo .article-visit-source__icon{color:#de5833}.article-visit-source--safari .article-visit-source__icon{color:#0a84ff}.article-visit-source--firefox .article-visit-source__icon{color:#ff7139}.article-visit-source--opera .article-visit-source__icon{color:#ff1b2d}.article-visit-source--samsung .article-visit-source__icon{color:#1428a0}.article-visit-source--iphone .article-visit-source__icon{color:#6e6e73}.article__cnt{font-size:14px;line-height:20px;display:block;color:rgba(0,0,0,.54)}.article-tail .article__cmt-refs,.article-tail .comment__action,.article__meta{margin-top:15px}.article-tail{padding-top:15px}.article-tail .tag-desc>li{margin-bottom:0}.article-tail .tag-desc>li>a{float:left;color:var(--layer-color);padding:2px 5px;border:1px solid rgba(0,0,0,0);position:relative;height:20px;white-space:nowrap;word-wrap:normal;background-color:var(--background-secondary-color);border-radius:3px 3px 3px 3px;line-height:21px}.article-tail .tag-desc>li>a>div{border-radius:2px 2px 2px 2px;height:16px;width:16px;float:left;margin:2px 3px 0 0;background-image:none;background-color:rgba(0,0,0,.02);background-size:cover;background-repeat:no-repeat;background-position:50%}.article-level0{color:var(--text-fade-color) !important}.fn__flex-inline{display:inline-flex;align-items:center}.article__stats--a:hover{text-decoration:none;color:var(--text-color)}.article__meta:hover{box-shadow:0 0 5px rgba(0,0,0,.2)}.article__stats--a:hover .article__cnt{color:var(--text-color) !important}.tag-desc>li:hover>a,.tag-desc>li>a.tag-desc--current{border-bottom-style:dotted;border-radius:3px 3px 0 0;z-index:2;color:var(--text-color);box-shadow:0 1px 2px rgba(0,0,0,.2)}.tag-desc>li>a{float:left;color:var(--layer-color);padding:2px 5px;border:1px solid rgba(0,0,0,0);position:relative;height:20px;white-space:nowrap;word-wrap:normal;background-color:var(--background-secondary-color);border-radius:3px 3px 3px 3px;line-height:21px}.tag-desc>li:hover>div{display:block}.tag-desc>li>div{-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);background-color:var(--background-secondary-color);border-radius:3px 0 3px 3px;display:none;right:0;margin-left:3px;padding:5px 10px;position:absolute;top:26px;z-index:41;width:200px;min-width:150px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.tag-desc--right>li>div{left:-3px !important;right:auto !important;border-radius:0 3px 3px 3px !important}.article-tail .tag-desc>li{margin-bottom:0}.tag-desc>li{float:left;position:relative;list-style:none;margin:0 15px 15px 0;font-size:12px}.ft__smaller{font-size:12px}.chats__content .ft__smaller{font-weight:500;font-size:13px}.article__participant{float:left;cursor:pointer;width:42px;height:38px;padding-top:3px;box-sizing:border-box}.article__participant .avatar-small{border-radius:18px;height:32px;width:32px}.fn__space5{width:5px;display:inline-block}.fn__pointer{cursor:pointer}.article__meta .meta__more{float:right;margin:0 15px 0 0;cursor:pointer;height:38px}.ft-a-title:hover{color:var(--text-color) !important}.ft-a-title{color:var(--layer-color) !important;text-decoration:none}.chats__users{overflow:auto}.chats__users::-webkit-scrollbar{display:none}.chat-room--qq-layout .chat-room__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:8px 10px;border-radius:10px;background:#fff;box-shadow:0 4px 10px rgba(15,23,42,.08);box-sizing:border-box}.chat-room--qq-layout .chat-room__header-title{font-size:16px;font-weight:600;color:#111827}.chat-room--qq-layout .chat-room__header-actions{display:flex;align-items:center;gap:6px}.chat-room--qq-layout .module{padding-top:10px;box-sizing:border-box}.chat-room--qq-layout .chat-room__layout{display:flex;flex-direction:row;align-items:stretch;gap:10px}.chat-room--qq-layout .chat-room__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;max-height:calc(100vh - 160px)}.chat-room--qq-layout .chat-room__messages{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.chat-room--qq-layout #comments{flex:1 1 auto;min-height:0;overflow-y:auto;height:auto !important;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.26) rgba(0,0,0,0)}.chat-room--qq-layout #comments::-webkit-scrollbar{width:6px}.chat-room--qq-layout #comments::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.chat-room--qq-layout #comments::-webkit-scrollbar-thumb{background:rgba(0,0,0,.26);border-radius:3px}.chat-room--qq-layout #comments::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.38)}.chat-room--qq-layout .chat-room__input{flex:0 0 auto;margin-top:10px;border-top:1px solid #eee;padding-top:10px}.chat-room--qq-layout .chat-room__toolbar{padding-bottom:8px}.chat-room--qq-layout .chat-room__actions{margin-top:8px}.chat-room--qq-layout .chat-room__status{margin-top:8px;display:flex;justify-content:space-between;align-items:center}.chat-room--qq-layout .chat-room__status-left{display:flex;align-items:center;gap:8px}.chat-room--qq-layout .chat-room__side{flex:0 0 260px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 160px);overflow:hidden}.chat-room--qq-layout .chat-room__topic{flex:0 0 auto}.chat-room--qq-layout .chat-room__online{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.chat-room--qq-layout .chat-room__top-bar{flex:0 0 auto;width:100%}.chat-room--qq-layout .chat-room__top-bar-inner{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;border-radius:10px;border:1px solid rgba(0,0,0,.06);background:linear-gradient(135deg, #f9fafb 0%, #eef2ff 100%);box-shadow:0 4px 10px rgba(15,23,42,.08)}.chat-room--qq-layout .chat-room__top-bar--compact{background:rgba(0,0,0,0);border:none;box-shadow:none;width:auto}.chat-room--qq-layout .chat-room__top-bar-inner--right{justify-content:flex-end;padding:4px 0;gap:4px;background:rgba(0,0,0,0);box-shadow:none;border-radius:0;border:none}.chat-room--qq-layout .chat-room__top-btn{flex:0 0 auto;min-width:0;white-space:nowrap;padding:4px 10px;border-radius:999px;border:none;background:rgba(255,255,255,.85);font-size:12px;line-height:18px;color:#374151;display:inline-flex;align-items:center;justify-content:center;gap:4px;box-shadow:0 0 0 1px rgba(148,163,184,.5);cursor:pointer;transition:background-color .12s ease-in-out,box-shadow .12s ease-in-out,transform .08s ease-in-out}.chat-room--qq-layout .chat-room__top-btn svg{width:14px;height:14px}.chat-room--qq-layout .chat-room__side-topbar .chat-room__top-btn{font-size:11px;padding:3px 8px}.chat-room--qq-layout .chat-room__top-btn:hover{background:#eff6ff;box-shadow:0 0 0 1px #3b82f6;transform:translateY(-1px)}.chat-room--qq-layout .chat-room__top-btn:active{transform:translateY(0);box-shadow:0 0 0 1px #2563eb}@media(max-width: 960px){.chat-room--qq-layout .chat-room__header{flex-direction:column;align-items:flex-start;gap:6px}.chat-room--qq-layout .chat-room__header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.chat-room--qq-layout .chat-room__top-bar-inner{padding:6px 8px;gap:4px}.chat-room--qq-layout .chat-room__top-btn{flex:1 0 48%;font-size:11px;padding:3px 6px}}.chat-room--qq-layout .chat-room__topic,.chat-room--qq-layout .chat-room__online{background-color:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.08);padding:10px;box-sizing:border-box}.chat-room--qq-layout .chat-room__topic-header{font-weight:600;margin-bottom:6px;font-size:13px;color:#616161}.chat-room--qq-layout .chat-room__topic-body{display:flex;flex-direction:column;gap:4px}.chat-room--qq-layout .chat-room__topic-text{color:#4285f4;font-size:13px;word-break:break-all}.chat-room--qq-layout .chat-room__topic-actions{display:flex;align-items:center;gap:4px}.chat-room--qq-layout .chat-room__online-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#616161;margin-bottom:6px}.chat-room--qq-layout .chat-room__online-toggle svg{vertical-align:-2px}.chat-room--qq-layout .chat-room__online-list{flex:1 1 auto;min-height:0;overflow-y:auto}.chat-room--qq-layout .chat-room__online-list.chats__users{overflow:auto !important}@media(max-width: 960px){.chat-room--qq-layout .chat-room__header{flex-direction:column;align-items:flex-start;gap:6px}.chat-room--qq-layout .chat-room__header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.chat-room--qq-layout .chat-room__layout{flex-direction:column}.chat-room--qq-layout .chat-room__side{flex:0 0 auto;max-height:none;order:-1}.chat-room--qq-layout .chat-room__main{max-height:none}.chat-room--qq-layout #comments{max-height:64vh}}.chat-room--qq-layout .chat-room__topic,.chat-room--qq-layout .chat-room__online{border-radius:10px;border:1px solid rgba(0,0,0,.06);background:linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);box-shadow:0 6px 16px rgba(15,23,42,.08);padding:12px 14px;position:relative;overflow:hidden}.chat-room--qq-layout .chat-room__topic::before,.chat-room--qq-layout .chat-room__online::before{content:"";position:absolute;left:-40%;top:0;width:180%;height:3px;background:linear-gradient(90deg, #4f46e5, #0ea5e9, #10b981);opacity:.75}.chat-room--qq-layout .chat-room__topic-header,.chat-room--qq-layout .chat-room__online-header{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px;font-size:13px;color:#4b5563}.chat-room--qq-layout .chat-room__topic-label{font-weight:600;font-size:13px;color:#111827}.chat-room--qq-layout .chat-room__topic-header svg,.chat-room--qq-layout .chat-room__online-header svg{width:14px;height:14px}.chat-room--qq-layout .chat-room__topic-body{padding:8px 10px;border-radius:8px;background:rgba(37,99,235,.03);border:1px solid rgba(37,99,235,.06);display:flex;flex-direction:column;gap:6px}.chat-room--qq-layout .chat-room__topic-text{display:flex;align-items:center;gap:6px;font-size:13px;color:#111827;font-weight:500;word-break:break-all}.chat-room--qq-layout .chat-room__topic-text::before{content:"公告";font-size:11px;padding:1px 6px;border-radius:999px;background:rgba(37,99,235,.06);color:#1d4ed8;border:1px solid rgba(37,99,235,.15)}.chat-room--qq-layout .chat-room__topic-text #discuss-title{color:#1d4ed8;font-weight:600}.chat-room--qq-layout .chat-room__topic-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:2px}.chat-room--qq-layout .chat-room__topic-actions a{width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(148,163,184,.12);transition:all .15s ease-in-out}.chat-room--qq-layout .chat-room__topic-actions a svg{width:14px;height:14px;color:#6b7280}.chat-room--qq-layout .chat-room__topic-actions a:hover{background:rgba(59,130,246,.1)}.chat-room--qq-layout .chat-room__topic-actions a:hover svg{color:#2563eb}.chat-room--qq-layout .chat-room__online-header{font-size:12px;color:#4b5563;margin-bottom:6px}.chat-room--qq-layout .chat-room__online-header>span:first-child{font-weight:600}.chat-room--qq-layout .chat-room__online-count{font-weight:600;color:#2563eb}.chat-room--qq-layout .chat-room__online-toggle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:rgba(148,163,184,.12);transition:background-color .15s ease-in-out}.chat-room--qq-layout .chat-room__online-toggle:hover{background:rgba(59,130,246,.16)}.chat-room--qq-layout .chat-room__online-toggle svg{width:14px;height:14px;color:#6b7280}.chat-room--qq-layout .chat-room__online-list{margin-top:4px;padding:6px 4px 2px 4px;border-radius:8px;overflow-y:auto;display:flex;flex-wrap:wrap;align-content:flex-start;gap:6px}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar{width:4px}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar-thumb{background:rgba(148,163,184,.6);border-radius:999px}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.9)}.chat-room--qq-layout .chat-room__online-list a{align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:999px;text-decoration:none;transition:transform .12s ease-in-out,box-shadow .12s ease-in-out}.chat-room--qq-layout .chat-room__online-list a:hover{transform:translateY(-1px);box-shadow:0 1px 1px rgba(15,23,42,.18);background:rgba(0,0,0,0)}.chat-room--qq-layout .chat-room__online-list .avatar-small{flex:0 0 auto;width:28px;height:28px;border-radius:999px;box-shadow:0 0 0 1px rgba(148,163,184,.6);background-size:cover;background-position:center}.chat-room--qq-layout .chat-room__online-list a::after{content:none}@media(max-width: 960px){.chat-room--qq-layout .chat-room__header{flex-direction:column;align-items:flex-start;gap:6px}.chat-room--qq-layout .chat-room__header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.chat-room--qq-layout .chat-room__side{gap:8px}.chat-room--qq-layout .chat-room__topic,.chat-room--qq-layout .chat-room__online{padding:10px 12px;box-shadow:0 3px 10px rgba(15,23,42,.08)}}.chats__input{margin-bottom:15px}.chats__editor{min-height:160px}.chats__content{background-color:var(--background-secondary-color);border-radius:5px;padding:8px 15px;margin:0 53px 15px 15px;overflow:initial;max-width:85%;box-sizing:border-box;position:relative}.chats__content--private{padding-top:8px;padding-bottom:6px}.chats__message{margin:0;line-height:18px}.chats__content--private>.chats__meta{margin-top:3px;min-height:15px;line-height:15px}.chats__content--private>.chats__meta .details,.chats__content--private>.chats__meta .details>summary{height:15px;line-height:15px}.chats__content .vditor-reset::-webkit-scrollbar{display:none}.chats__content .language-echarts,.chats__content .language-mermaid,.chats__content .language-mindmap,.chats__content iframe{max-width:510px;border:none !important}.chats__content .vditor-reset img:not(.emoji){max-width:150px;max-height:300px}.chats__arrow{position:relative}.chats__arrow:after{position:absolute;width:0;height:0;content:"";top:5px;left:-25px;border:5px solid rgba(0,0,0,0);border-right:5px solid var(--background-secondary-color)}.chats__item .avatar{position:relative;margin-right:0}.chats__item .avatar::after{content:"";position:absolute;width:38px;height:38px}.Christmas .avatar::after{right:-18px;top:-12px;transform:rotate(15deg);background:url("../images/festival/Christmas.png") no-repeat center center;background-size:cover}.NationalDay .avatar::after{right:0;top:0;background:url("../images/festival/NationalDay.png") no-repeat center center;background-size:cover}.MidAutumnFestival .avatar::after{right:-7px;top:-7px;width:52px;height:52px;background:url("../images/festival/MidAutumnFestival.png") no-repeat center center;background-size:cover}.SpringFestival .avatar::after{right:0;top:0;background:url("../images/festival/SpringFestival.png") no-repeat center center;background-size:cover}.chats__item--me{flex-direction:row-reverse}.chats__item--me .chats__content{margin:0 15px 15px 53px;background-color:rgba(98,162,240,.1)}@media(hover: hover)and (pointer: fine){.chat-reaction--empty{opacity:0;pointer-events:none;transform:scale(0.92);transform-origin:top right;transition:opacity .18s ease,transform .18s ease}.chats__content:hover>.chat-reaction--empty,.chat-reaction--empty.is-open{opacity:1;pointer-events:auto;transform:scale(1)}}.chats__item--me .chats__content .chats__arrow:after{right:-25px;border-left-color:rgba(98,162,240,.1);left:auto;border-right-color:rgba(0,0,0,0)}.ft__fade{color:var(--text-fade-color)}.fn__right{float:right}.action__item{line-height:18px;height:18px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;transition:all .15s ease-in-out;cursor:pointer;display:inline-flex;align-items:center}.action__item,.comment__titles span{font-size:12px;color:var(--layer-color)}.fn__flex-center{-ms-grid-row-align:center;align-self:center}.details{display:inline-block;position:relative}.details>summary{list-style:none}.fn__layer{display:block;padding:5px 0;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);position:absolute;background-color:var(--layer-background-color);line-height:20px;box-shadow:0 1px 2px rgba(0,0,0,.6);border:1px solid var(--layer-border-color);border-radius:3px;min-width:180px;right:0;z-index:100}.action__item details-menu{right:-15px;top:20px}.details>summary{list-style:none}.details>summary::-webkit-details-marker,.details>summary:before{display:none}.details>summary:focus{outline:none}.details:not([open])>:not(summary){display:none}.details details-menu.fn__layer:after,.details details-menu.fn__layer:before{top:-14px;right:12px;left:auto;position:absolute;border:7px solid rgba(0,0,0,0);border-bottom:7px solid var(--layer-background-color);content:" "}.details details-menu.fn__layer:before{border-width:8px;border-bottom-color:var(--layer-border-color);top:-16px;right:11px}.details details-menu.fn__layer.fn__layer--top{top:auto;bottom:24px}.details details-menu.fn__layer.fn__layer--top:after,.details details-menu.fn__layer.fn__layer--top:before{top:auto;bottom:-14px;border:7px solid rgba(0,0,0,0);border-top:7px solid var(--layer-background-color);border-bottom-color:rgba(0,0,0,0)}.details details-menu.fn__layer.fn__layer--top:before{bottom:-16px;border-width:8px;border-top-color:var(--layer-border-color)}.fn__layer .item{display:block;text-shadow:0 1px 0 var(--layer-background-color);position:relative;padding:5px 10px;color:var(--layer-color);font-weight:400;width:100%;box-sizing:border-box;word-break:break-all}.fn__layer .item--current,.fn__layer .item:hover{text-decoration:none;background-color:var(--layer-hover-background-color);color:var(--layer-hover-color) !important;text-shadow:none}.fn__layer a:hover{text-decoration:underline}.chats__item--me{flex-direction:row-reverse}.pd__15{padding:15px}.user-card{-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);width:400px;box-shadow:0 3px 12px rgba(27,31,35,.15);background-color:var(--layer-background-color);min-height:50px;box-sizing:border-box;font-size:14px;border-radius:3px;border-top:1px solid rgba(0,0,0,0)}.user-card>div{padding:15px;border-radius:3px}.user-card--bg{width:460px !important;background-size:cover;background-position:50%}.user-card--bg .avatar-mid{width:120px !important;height:120px !important;top:65px !important}.user-card--bg>div{margin-top:120px;border-radius:0 0 3px 3px}.user-card--bg .user-card__info,.user-card--bg .user-card__name{margin-left:135px !important}.user-card__name{font-size:18px;line-height:22px;margin-left:92px}.user-card__name,.user-card__name:hover{color:var(--text-color)}.user-card__info{margin:8px 0;line-height:18px;font-size:14px;min-height:18px;overflow:hidden}.user-card__icons a,.user-card__icons span{margin-right:10px;float:left;height:20px}.user-card__icons a svg,.user-card__icons span svg{margin-top:2px;height:16px;width:16px;color:var(--text-gray-color);vertical-align:super}.user-card__icons a:hover{text-decoration:none}.user-card__icons a:hover svg{color:#4285f4}.user-card__icons img{float:left;margin-top:2px}.user-card__icon--disabled svg{opacity:.3}.user-card .avatar-mid-card{height:77px;width:77px;position:absolute;top:-39px;background-color:rgba(255,255,255,.8);background-size:100% 100%}.user-card .avatar-mid-card::after{content:"";position:absolute;width:77px;height:77px}.Christmas .avatar-mid-card::after{right:-36px;top:-20px;transform:rotate(22deg);background:url("../images/festival/Christmas.png") no-repeat center center;background-size:cover}.NationalDay .avatar-mid-card::after{right:0;top:0;background:url("../images/festival/NationalDay.png") no-repeat center center;background-size:cover}.NationalDay .user-card.user-card--bg .avatar-mid-card::after{width:105px;height:105px}.MidAutumnFestival .avatar-mid-card::after{right:-14px;top:-14px;width:100px;height:100px;background:url("../images/festival/MidAutumnFestival.png") no-repeat center center;background-size:cover}.MidAutumnFestival .user-card.user-card--bg .avatar-mid-card::after{right:-14px;top:-14px;width:130px;height:130px}.SpringFestival .avatar-mid-card::after{right:0;top:0;background:url("../images/festival/SpringFestival.png") no-repeat center center;background-size:cover}.SpringFestival .user-card.user-card--bg .avatar-mid-card::after{width:105px;height:105px}.progress{background-color:rgba(100,100,100,.2);border-radius:5px;position:relative;margin:0 3px 0 10px;height:10px;width:100%}.progress-done{background:linear-gradient(to left, rgb(34, 199, 102), rgb(23, 154, 76));border-radius:5px;height:10px;width:0;transition:width 1s ease .3s}.percent{color:#333;user-select:none}.review{border:1px solid rgba(0,0,0,0);border-radius:5px;color:#777;display:flex;font-size:12px;align-items:center;padding:0 10px 10px 10px;margin:5px 0}.chats__content .vditor-reset{overflow:visible}.hongbao__item{position:relative;background-color:var(--layer-background-color);color:var(--layer-color);cursor:pointer;padding:7px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:3px 5px 8px 3px}.hongbao__item:hover{box-shadow:0 0 3px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.26)}.hongbao__finger_guessing{position:absolute;z-index:128;top:0;left:0;width:100%;height:100%;padding:5px;opacity:1;transition:.5s;box-sizing:border-box}.opened .hongbao__finger_guessing{display:none}.hongbao__finger_guessing_icon{position:absolute;right:-25px;width:45px;height:45px;border-radius:50%;border:2px solid rgba(0,0,0,0);transition:.2s}.hongbao__finger_guessing_icon:hover{border-color:#5c1151}.hongbao__finger_guessing_icon:nth-child(1){top:-25px;background:url("../images/redpacket/gesture/rock.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(2){top:15px;right:-50px;background:url("../images/redpacket/gesture/scissors.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(3){top:55px;background:url("../images/redpacket/gesture/paper.png") no-repeat center center;background-size:contain}.hongbao__icon{height:50px !important;width:50px !important;margin-right:7px}.hongbao__count{font-size:24px;margin:10px 0}.hide-list{--border-color: #d1d5da;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);--toolbar-background-color: #f6f8fa;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color: rgba(27, 31, 35, 0.05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000;background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px;z-index:3;font-size:14px;display:none;user-select:none;max-width:320px;min-width:80px;animation-duration:.15s;animation-name:scale-in;animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);color:var(--toolbar-icon-color)}.hide-list-emojis{display:inline-block;overflow:auto}.hide-list-emojis button{cursor:pointer;border-radius:3px;float:left;height:72px;width:72px;text-align:center;line-height:26px;padding:3px;box-sizing:border-box;font-size:16px;transition:all .15s ease-in-out;border:0;margin:0;background-color:rgba(0,0,0,0);overflow:hidden}.hide-list-emojis__tail{margin-top:5px;font-size:12px;color:var(--toolbar-icon-color);display:flex}.hide-list-emojis__tail a{text-decoration:none;color:var(--toolbar-icon-color)}.hide-list-emojis__tail a:hover{color:var(--toolbar-icon-hover-color);cursor:pointer;text-decoration:none}.hide-list-emojis__tip{flex:1;min-width:1px;width:200px;margin-right:10px;color:var(--toolbar-icon-color);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hide-list-emojis button:hover{text-decoration:none;border-color:rgba(0,0,0,.38);background-color:#eee}.hide-list-emojis button:active{background-color:rgba(0,0,0,.38);box-shadow:0 2px 4px rgba(0,0,0,.05) inset}.showList{display:block}.showList#emojiList{top:360px}.divX{text-align:right;cursor:pointer;height:15px}.divX>svg:hover{border:dashed red 1px;border-bottom-left-radius:100px}.TGIF__item{background-color:var(--layer-background-color);color:var(--layer-color);cursor:default;padding:10px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:0px 5px 10px 5px;transition:all .15s ease-in-out}.TGIF__item:hover{box-shadow:0 3px 6px rgba(0,0,0,.2)}.index-full-size{height:120px;border-radius:10px;margin-bottom:30px;color:#000;font-family:"Ma Shan Zheng",cursive;cursor:default}.index-full-size-white{background-color:rgba(229,228,228,.7);height:65px;border-radius:10px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin-bottom:18px;color:#303049;font-family:"Ma Shan Zheng",cursive;cursor:default}.hide-me{display:none}.login-qrcode-box{position:relative;margin:10px;text-align:center}.login-qrcode-box.scan-ing::after{content:"处理中...";position:absolute;top:0;left:50%;width:150px;height:150px;background:rgba(0,0,0,.7);line-height:150px;text-align:center;font-size:16px;color:#fff;transform:translateX(-50%)}.rainbow{background:linear-gradient(90deg, #ff0000, #ff8000, #ffff00, #00ff00, #00ffff, #0000ff, #8000ff, #ff00ff);background-size:800% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:rainbow 6s linear infinite}@keyframes rainbow{0%{background-position:0% 50%}100%{background-position:100% 50%}}.neon{background:linear-gradient(90deg, #ff00cc, #ff0066, #ff3333, #ff6600, #ffcc00);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:neon 3s ease infinite;text-shadow:0 0 5px rgba(255,0,204,.5)}@keyframes neon{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.fire{background:linear-gradient(90deg, #ff8a00, #ff0000, #ff8a00, #ff4500);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:fire 2.5s ease-in-out infinite}@keyframes fire{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.ocean{background:linear-gradient(90deg, #00b4db, #0083b0, #00b4db, #00c9ff);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:ocean 5s ease-in-out infinite}@keyframes ocean{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.forest{background:linear-gradient(90deg, #00ff7f, #32cd32, #228b22, #006400);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:forest 7s ease infinite}@keyframes forest{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.sunset{background:linear-gradient(90deg, #ff7e5f, #feb47b, #ff7e5f, #ff512f);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:sunset 6s ease infinite}@keyframes sunset{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.metal{background:linear-gradient(90deg, #bdc3c7, #2c3e50, #bdc3c7, #95a5a6);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:metal 4s linear infinite}@keyframes metal{0%{background-position:0% 50%}100%{background-position:100% 50%}}.galaxy{background:linear-gradient(90deg, #8a2be2, #4b0082, #9400d3, #8a2be2);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:galaxy 8s ease infinite;text-shadow:0 0 8px rgba(138,43,226,.4)}@keyframes galaxy{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.pulse{background:linear-gradient(90deg, #ff0080, #ff8c00, #40e0d0);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:pulse 4s ease infinite}@keyframes pulse{0%,100%{background-position:0% 50%;opacity:1}50%{background-position:100% 50%;opacity:.8}}.index-bottom>.wrapper{padding-left:12px;padding-right:12px;box-sizing:border-box}.activity-hub{display:flex;width:100%;gap:12px;box-sizing:border-box;align-items:stretch;padding:6px 0}.activity-hub__left{flex:1.2 1 0;min-width:0;display:flex;gap:12px;padding-left:10px}.activity-hub__right{flex:1.2 1 0;min-width:0;display:flex;align-items:stretch}.activity-hub__card{position:relative;flex:1 1 0;border-radius:8px;padding:18px 28px 12px 28px;box-sizing:border-box;background:#fff;border:1px solid rgba(148,163,184,.25);box-shadow:0 2px 6px rgba(15,23,42,.05);overflow:hidden}.activity-hub__card--holiday{display:flex;align-items:center;justify-content:space-between;min-height:56px}.activity-hub__card--holiday::before{content:"";position:absolute;left:-20%;top:0;width:140%;height:3px;background:linear-gradient(90deg, #e59230, #f97316, #fde68a);opacity:.85}.activity-hub__card-main{display:flex;flex-direction:column;gap:2px}.activity-hub__card-title{font-size:14px;line-height:1.35;color:#4b5563;font-weight:600}.activity-hub__card-subtitle{display:flex;align-items:baseline;gap:4px}.activity-hub__day{font-size:33px;font-weight:700;color:#111827;line-height:1}.activity-hub__day-unit{font-size:14px;color:#6b7280}.activity-hub__card--liveness{min-height:60px;display:grid}.activity-hub__card--liveness::before{content:"";position:absolute;left:-25%;top:0;width:150%;height:3px;background:linear-gradient(90deg, #22c55e, #0ea5e9);opacity:.8}.activity-hub__card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.activity-hub__status{font-size:13px;font-weight:600;color:#166534}.activity-hub__status:has(span:contains("未签到")),.activity-hub__status:has(:contains("未签到")){color:#b45309}.activity-hub__status-tag{font-size:11px;padding:2px 8px;border-radius:999px;background:rgba(15,118,110,.06);color:#0f766e;border:1px solid rgba(45,212,191,.4)}.activity-hub__progress-row{display:flex;align-items:center;gap:8px}.activity-hub__progress{position:relative;flex:1;height:8px;border-radius:999px;background:rgba(148,163,184,.25);overflow:hidden}.activity-hub__progress-done{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg, #22c55e, #16a34a);transition:width .4s ease-out}.activity-hub__progress-percent{font-size:12px;color:#111827;min-width:32px;text-align:right}.activity-hub__desc{margin:4px 0 0;font-size:11px;line-height:1.4;color:#6b7280}.activity-hub__actions{width:100%;display:flex;gap:10px;align-items:stretch;justify-content:flex-end;padding-right:10px;box-sizing:border-box}.activity-hub__pill{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 10px;min-width:0;flex:0 1 180px;border-radius:10px;border:1px solid rgba(148,163,184,.4);background:#fff;box-shadow:0 3px 10px rgba(15,23,42,.06);text-decoration:none;color:#111827;cursor:pointer;transition:background-color .16s ease-out,box-shadow .16s ease-out,transform .12s ease-out,border-color .16s ease-out;box-sizing:border-box;text-decoration:none !important}.activity-hub__pill:focus{outline:none}.activity-hub__pill:hover{transform:translateY(-1px);background:#f9fafb;border-color:rgba(171,171,171,.65);box-shadow:0 6px 16px rgba(15,23,42,.12)}.activity-hub__pill--primary{border-color:rgba(234,179,8,.75);background:linear-gradient(90deg, #fefce8, #fffbeb)}.activity-hub__pill--primary:hover{background:linear-gradient(90deg, #fef9c3, #fef3c7);border-color:rgba(234,179,8,.75)}.activity-hub__pill-icon{flex:0 0 auto;width:32px;height:32px;border-radius:999px;background:rgba(15,23,42,.02);display:flex;align-items:center;justify-content:center;overflow:hidden}.activity-hub__pill-icon img{width:22px;height:22px;object-fit:cover}.activity-hub__pill-body{flex:0 0 auto;min-width:0;display:flex;flex-direction:column;align-items:center}.activity-hub__pill-title{font-size:12px;font-weight:600;color:#111827;line-height:1.25;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.activity-hub__pill-desc{font-size:11px;color:#6b7280;line-height:1.3;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#yesterdayImg.cake{animation:move 3s 0s infinite;transform-origin:bottom}#yesterday.activity-hub__pill{padding:6px 8px;gap:6px}#yesterday.activity-hub__pill>img{flex:0 0 auto;width:24px !important;height:24px !important;border-radius:4px !important;margin:0;object-fit:cover}#yesterday.activity-hub__pill>b{font-size:12px;font-weight:600;color:#111827;line-height:1.4;text-align:center;white-space:normal}@media(max-width: 960px){.activity-hub{flex-direction:column;gap:10px}.activity-hub__left,.activity-hub__right{flex:1 1 auto}.activity-hub__actions{justify-content:flex-start}.activity-hub__pill{flex:1 1 46%}}@media(max-width: 720px){.activity-hub__pill{flex:1 1 100%}}.long-article-content{min-width:0;max-width:none;margin:36px 0 0;padding:0;overflow:visible !important;color:#25332a;font-size:var(--long-article-font-size, 18px);line-height:1.9;overflow-wrap:anywhere}.long-article-content>p{margin:1.15em 0;text-indent:2em}.long-article-content>p.long-article-paragraph-lines{text-indent:0}.long-article-content .long-article-paragraph-line{display:block;text-indent:2em}.long-article-content>p:has(>img),.long-article-content>p:has(>picture),.long-article-content>p:has(>video),.long-article-content>p:has(>iframe){text-indent:0}.long-article-content>h1,.long-article-content>h2,.long-article-content>h3,.long-article-content>h4,.long-article-content>h5,.long-article-content>h6{margin:1.8em 0 .75em;color:#1f2e24;line-height:1.45;text-indent:0}.long-article-content>ul,.long-article-content>ol,.long-article-content>blockquote,.long-article-content>pre,.long-article-content>table,.long-article-content>figure{margin-top:1.35em;margin-bottom:1.35em;text-indent:0}.long-article-content blockquote{padding:14px 18px;border-left:4px solid #9bb4a0;background:#f0f5ef;color:#526259}.long-article-content img{display:block;max-width:100%;height:auto;margin:1.6em auto}.long-article-content table{display:block;max-width:100%;overflow-x:auto}.long-article-content pre{border-radius:8px}.long-article-content :not(pre)>code{border-radius:4px;background:#edf2ec;color:#35513d}.long-article-commentable-block{position:relative;cursor:pointer}.long-article-paragraph-highlight{display:inline;padding:0 2px;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-color .18s ease,text-decoration-color .18s ease}.long-article-commentable-block:hover>.long-article-paragraph-highlight,.long-article-commentable-block.is-commenting>.long-article-paragraph-highlight{background:rgba(77,111,84,.14);text-decoration:underline;text-decoration-style:dashed;text-decoration-color:rgba(77,111,84,.42);text-decoration-thickness:1px;text-underline-offset:4px}.long-article-paragraph-comment-btn{position:relative;display:none;align-items:center;justify-content:center;width:24px;height:20px;margin-left:6px;padding:0;border:0;border-radius:3px;background:rgba(0,0,0,0);color:#6e8975;cursor:pointer;opacity:0;transform:translateY(-1px);vertical-align:.18em;text-indent:0;transition:opacity .2s ease,transform .2s ease,background .2s ease,color .2s ease}.long-article-paragraph-comment-btn svg{width:14px;height:14px}.long-article-paragraph-comment-btn span{position:static;display:none;min-width:12px;height:18px;padding:0 4px;border:1px solid rgba(77,111,84,.32);border-radius:2px;background:rgba(237,245,237,.78);color:#617068;font-size:10px;line-height:16px;text-align:center}.long-article-paragraph-comment-btn.has-comments{display:inline-flex;width:auto;min-width:18px;height:18px;padding:0;opacity:1}.long-article-paragraph-comment-btn.has-comments svg{display:none}.long-article-paragraph-comment-btn.has-comments span:not([hidden]){display:inline-block}.long-article-commentable-block:hover .long-article-paragraph-comment-btn,.long-article-paragraph-comment-btn.has-comments,.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn{opacity:1;transform:translateY(-1px)}.long-article-paragraph-comment-btn:hover,.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn{background:#3e7250;color:#fff}.long-article-paragraph-comment-btn:hover span,.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn span{border-color:#3e7250;background:rgba(0,0,0,0);color:#fff}.long-article-paragraph-comments{position:absolute;inset:0;z-index:6;display:none;box-sizing:border-box;min-width:0;padding:20px;overflow:auto;background:#dcebdd}.long-article-paragraph-comments .reaction-widget__summary{display:none}.long-article-paragraph-comments .comment-thread{--comment-thread-max-indent: 28px}#longArticleParagraphComments .action-btns{position:relative}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions{position:absolute;top:50%;left:calc(100% + 4px);z-index:3;display:inline-flex;align-items:center;gap:2px;padding:0;background:rgba(0,0,0,0);box-shadow:none;opacity:0;pointer-events:none;transform:translate(-4px, -50%);transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;visibility:hidden;white-space:nowrap}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions.is-actions-visible{opacity:1;pointer-events:auto;transform:translate(0, -50%);transition-delay:0s;visibility:visible}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions>span,#longArticleParagraphComments .long-article-paragraph-comment-more{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none;color:#617068;cursor:pointer}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions>span:hover,#longArticleParagraphComments .long-article-paragraph-comment-more:hover{background:rgba(95,126,104,.14);color:#2f6a43;transform:none}#longArticleParagraphComments .long-article-paragraph-comment-more-menu{position:relative;display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more{width:24px;min-width:24px;padding:0}#longArticleParagraphComments .long-article-paragraph-comment-more svg{width:16px;height:16px;fill:currentColor}#longArticleParagraphComments .long-article-paragraph-comment-more-panel{position:absolute;right:0;bottom:calc(100% + 6px);display:none;align-items:center;gap:2px;padding:4px;border:1px solid rgba(95,126,104,.18);border-radius:6px;background:#f4f8f4;box-shadow:none;white-space:nowrap}#longArticleParagraphComments .long-article-paragraph-comment-more-menu.is-more-open .long-article-paragraph-comment-more-panel{display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more-panel>span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none;color:#617068}#longArticleParagraphComments .long-article-paragraph-comment-more-panel>span:hover{background:rgba(95,126,104,.14);color:#2f6a43;transform:none}.long-article-paragraph-comments.is-active{display:block}#articleCommentsPanel.is-paragraph-view>:not(#comments):not(.long-article-paragraph-comments){display:none}#articleCommentsPanel.is-paragraph-view>#comments>:not(.long-article-paragraph-comments){visibility:hidden}.long-article-paragraph-comments__header{position:sticky;top:-20px;z-index:2;margin:-20px -20px 14px;padding:20px 20px 14px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);backdrop-filter:blur(8px)}.long-article-paragraph-comments__header strong{color:#1f2e24;font-size:20px}.long-article-paragraph-comments__header p{margin:10px 0;color:#526259;font-size:13px;line-height:1.6}.long-article-paragraph-comments__header>button{position:absolute;top:16px;right:18px;border:0;background:rgba(0,0,0,0);color:#77857c;cursor:pointer;font-size:24px}.long-article-paragraph-comments__sort,.long-article-paragraph-comments__pager{display:flex;justify-content:center;gap:8px}.long-article-paragraph-comments__sort button,.long-article-paragraph-comments__reply{min-height:30px;padding:0 10px;border:1px solid rgba(65,94,71,.14);border-radius:5px;background:#edf5ed;color:#6e8975;cursor:pointer;font-size:12px}.long-article-paragraph-comments .list>ul>li{margin:0;padding:16px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}.long-article-paragraph-comments__sort button.is-active{background:#3e7250;color:#fff}.long-article-paragraph-comments__reply{display:block;margin-bottom:12px;padding:10px 12px}.long-article-paragraph-comments__empty{padding:30px 0;color:#77857c;text-align:center}.long-article-paragraph-comments__pager{margin-top:16px;color:#77857c;font-size:12px}.long-article-paragraph-comments__pager button{border:0;background:rgba(0,0,0,0);color:#526c5a;cursor:pointer}body.night .long-article-paragraph-comments{background:#111}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header{background:rgba(17,17,17,.97)}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header strong{color:#eef4ef}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header p,body.night .long-article-paragraph-comments .long-article-paragraph-comments__header>button{color:#858f88}body.night .long-article-paragraph-comments .long-article-paragraph-comments__sort button,body.night .long-article-paragraph-comments .long-article-paragraph-comments__reply{border-color:rgba(255,255,255,.08);background:#191919;color:#989898}.long-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:14px;color:#718078;font-size:14px;line-height:1.6;text-align:left}.long-article-meta a{color:#526c5a;text-decoration:none}.long-article-meta a:hover{color:#2f6a43}.long-article-meta .long-article-author{color:#2f4937;font-weight:600}.long-article-meta__separator{color:#9ba79f}.long-article-home-link{display:inline-flex;align-items:center;gap:5px;min-height:32px;margin:0 0 24px;padding:0 10px 0 8px;border-radius:5px;color:#526c5a;font-size:13px;text-decoration:none;transition:background .2s ease,color .2s ease,transform .2s ease}.long-article-home-link svg{width:17px;height:17px}.long-article-home-link:hover{background:rgba(95,126,104,.12);color:#2f4937;text-decoration:none;transform:translateX(-2px)}.long-article-catalog{position:fixed;top:0;bottom:0;left:50%;z-index:100;display:none;width:min(var(--long-article-width, 800px),100vw - 28px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;background:#dcebdd;scrollbar-gutter:stable;transform:translateX(-50%)}.long-article-catalog__inner{box-sizing:border-box;min-height:100%;padding:64px clamp(32px,6vw,64px)}.long-article-catalog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid rgba(65,94,71,.18)}.long-article-catalog__header h2{margin:0;color:#1d2b21;font-size:28px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}.long-article-catalog__header span{display:block;margin-top:6px;color:#718078;font-size:13px}.long-article-catalog__close{display:inline-flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;background:rgba(0,0,0,0);color:#617068;cursor:pointer}.long-article-catalog__close svg{width:20px;height:20px}.long-article-catalog__close:hover{background:rgba(95,126,104,.12);color:#2f6a43}.long-article-catalog__chapters{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0 12px;margin-top:12px}.long-article-catalog__chapter{display:grid;grid-template-columns:96px minmax(0, 1fr);align-items:center;gap:18px;min-height:58px;padding:8px 12px;border-bottom:1px solid rgba(65,94,71,.12);box-sizing:border-box;color:#25332a;text-decoration:none}.long-article-catalog__chapter:hover{background:rgba(95,126,104,.09);color:#2f6a43;text-decoration:none}.long-article-catalog__chapter--active{background:rgba(95,126,104,.15);box-shadow:inset 3px 0 #3e7250;color:#28593a;font-weight:600}.long-article-catalog__chapter-no{color:#718078;font-size:13px;white-space:nowrap}.long-article-catalog__chapter-title{min-width:0;font-size:16px;line-height:1.55;overflow-wrap:anywhere}.article.long-article-page{--long-article-drawer-width: min(320px, calc(100vw - 72px));min-height:100vh;padding-top:0;overflow-x:hidden;background:#c7dcc8;color:#25332a}.article.long-article-page.long-article-catalog-open{overflow:hidden}.article.long-article-page.long-article-catalog-open .long-article-catalog{display:block}.article.long-article-page.long-article-catalog-open .long-article-settings{z-index:121}.article.long-article-page>.nav,.article.long-article-page>.footer,.article.long-article-page .article-header{display:none !important}.article.long-article-page #share,.article.long-article-page .share,.article.long-article-page .article-nav-scope,.article.long-article-page .article-tail{display:none !important}.article.long-article-page .long-article-reading-stage{display:flex;align-items:flex-start;column-gap:0;box-sizing:border-box;width:min(var(--long-article-width, 800px),100vw - 28px);max-width:calc(100vw - 28px);margin:0 auto;transition:width .32s ease,column-gap .32s ease}.article.long-article-page .article-container{flex:0 0 100%;box-sizing:border-box;width:100%;max-width:none;margin:0;border:0;border-radius:0;background:#dcebdd;box-shadow:none;transition:width .32s ease,flex-basis .32s ease}.article.long-article-page .article-body{padding:0}.article.long-article-page .article-body>.wrapper{box-sizing:border-box;width:100%;min-width:0;max-width:none;padding:80px clamp(32px,6vw,64px) 64px}.article.long-article-page h1.article-title{margin:0;padding:0;color:#1d2b21;font-size:32px;font-weight:650;line-height:1.35;text-align:left}.article.long-article-page h1.article-title svg{width:30px;height:30px;vertical-align:-4px}.article.long-article-page .long-article-reading-stage>.main{flex:0 0 0;box-sizing:border-box;width:0;min-height:0;height:0;margin:0;padding:0;overflow:visible;border-top:0;background:rgba(0,0,0,0);transition:width .32s ease,flex-basis .32s ease}.article.long-article-page #articleCommentsPanel{position:fixed;top:0;right:auto;bottom:0;left:var(--long-article-drawer-left, calc(100vw - var(--long-article-drawer-width)));z-index:115;display:flex;flex-direction:column;box-sizing:border-box;width:var(--long-article-drawer-width);min-width:0;height:100vh;height:100dvh;max-width:none;margin:0;padding:0 20px 86px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:0;border-left:1px solid rgba(61,91,68,.18);border-radius:0;background:#dcebdd;box-shadow:none;opacity:0;pointer-events:none;transform:translateX(24px);transition:left .32s ease,opacity .24s ease,transform .32s ease,visibility 0s linear .32s;visibility:hidden}.article.long-article-page #articleCommentsPanel>.module{flex:0 0 auto;margin:14px 0 0;border:0;background:rgba(0,0,0,0);box-shadow:none}.article.long-article-page #articleCommentsPanel>#comments{margin-top:0}.article.long-article-page #articleCommentsPanel>.pagination{flex:0 0 auto;margin:18px auto 0;float:none}.article.long-article-page.long-article-comments-open .long-article-settings{right:auto;left:var(--long-article-toolbar-open-left, calc(100vw - 78px));z-index:121}.article.long-article-page.long-article-comments-open .editor-panel{right:auto;left:var(--long-article-stage-left, 14px);width:var(--long-article-stage-width, calc(100vw - 28px));max-width:calc(100vw - 28px)}.article.long-article-page.long-article-comments-open #articleCommentsPanel{opacity:1;pointer-events:auto;transform:translateX(0);transition-delay:0s;visibility:visible}.article.long-article-page.long-article-comments-open.long-article-comments-inline .long-article-reading-stage{column-gap:0;width:var(--long-article-stage-width, calc(var(--long-article-width, 800px) + var(--long-article-drawer-width)));max-width:calc(100vw - 28px)}.article.long-article-page.long-article-comments-open.long-article-comments-inline .long-article-settings{left:calc(var(--long-article-drawer-left) + var(--long-article-drawer-width) + 14px)}.article.long-article-page.long-article-comments-open.long-article-comments-inline .article-container{flex-basis:var(--long-article-open-article-width, var(--long-article-width, 800px));width:var(--long-article-open-article-width, var(--long-article-width, 800px))}.article.long-article-page.long-article-comments-open.long-article-comments-inline .long-article-reading-stage>.main{flex-basis:var(--long-article-drawer-width);width:var(--long-article-drawer-width);height:auto}.article.long-article-page.long-article-comments-open:not(.long-article-comments-inline) .long-article-settings{display:none}.article.long-article-page .long-article-settings{right:auto;left:var(--long-article-toolbar-closed-left, min(50% + min(var(--long-article-half-width, 400px), 50vw - 14px) + 14px, 100vw - 78px));transition:left .32s ease}.article.long-article-page #comments{order:-1;margin:0;border:0;background:rgba(0,0,0,0);box-shadow:none}.article.long-article-page #comments .comments-header{position:sticky;top:0;z-index:4;margin:0 -20px 6px;padding:22px 20px 16px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);backdrop-filter:blur(8px)}.article.long-article-page #comments .comments-header__main>.fn-right{display:none}.article.long-article-page #comments .article-cmt-cnt{color:#1f2e24;font-size:22px;font-weight:650}.article.long-article-page #comments .long-article-comments-count{margin-left:4px;color:#77857c;font-size:13px;font-weight:400}.article.long-article-page #comments .comment-filterbar{margin-top:12px}.article.long-article-page #comments .comment-segment{border-color:rgba(65,94,71,.15);background:#edf5ed}.article.long-article-page #comments .comments-header a.comment-segment__item{color:#68776e}.article.long-article-page #comments .comments-header a.comment-segment__item:hover{color:#2f4937;background:rgba(255,255,255,.42)}.article.long-article-page #comments .comments-header a.comment-segment__item--active,.article.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#5f7e68;color:#fff}.article.long-article-page #comments .list{background:rgba(0,0,0,0)}.article.long-article-page #comments .list>ul{margin:0;padding:0 0 12px}.article.long-article-page #comments .list>ul>li,.article.long-article-page #comments .list>ul>li.cmt-perfect,.article.long-article-page #comments .list>ul>li.cmt-perfect:hover{margin:0;padding:18px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}.article.long-article-page #comments .list>ul>li>.fn-flex{align-items:flex-start;gap:2px}.article.long-article-page #comments .list>ul>li .avatar{width:34px;height:34px;border-radius:50%}.article.long-article-page #comments .comment-info{min-height:22px;color:#6f7d74;line-height:1.55}.article.long-article-page #comments .comment-info a,.article.long-article-page #comments .comment-thread__meta a{color:#405647;font-weight:600}.article.long-article-page #comments .comment{margin:7px 0 0;color:#243128;font-size:15px;line-height:1.75}.article.long-article-page #comments .comment-action{margin-top:8px}.article.long-article-page #comments .comment-thread{margin:12px 0 4px;padding:12px;border:0;border-radius:8px;background:#edf5ed}.article.long-article-page #comments .comment-thread__reply--nested::before,.article.long-article-page #comments .comment-thread__reply+.comment-thread__reply{border-color:rgba(65,94,71,.12)}.article.long-article-page #comments .comment-thread__content{color:#34463a}.article.long-article-page #comments .comment__reply{position:fixed;right:0;bottom:0;z-index:5;box-sizing:border-box;width:100%;margin:0;padding:14px 20px;border-top:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);box-shadow:0 -8px 22px rgba(40,66,47,.08);backdrop-filter:blur(8px)}.article.long-article-page #comments .comment__reply .reply__text{min-height:38px;box-sizing:border-box;border-color:rgba(65,94,71,.14);border-radius:8px;background:#edf5ed;color:#65746a;line-height:36px}.article.long-article-page .long-article-comments-close{display:inline-flex;flex:0 0 34px;align-items:center;justify-content:center;width:34px;height:34px;margin-left:auto;padding:0;border:0;border-radius:50%;background:rgba(95,126,104,.12);box-shadow:none;color:#617068}.article.long-article-page .long-article-comments-close:hover{background:rgba(95,126,104,.2);box-shadow:none;color:#2f4937}.article.long-article-page .long-article-comments-close svg{width:18px;height:18px}.article.long-article-page .editor-panel{right:auto;left:var(--long-article-stage-left, 14px);width:var(--long-article-stage-width, min(var(--long-article-width, 800px), 100vw - 28px));max-width:calc(100vw - 28px);transition:left .32s ease,width .32s ease}.article.long-article-page .editor-panel .editor-bg{display:none}.article.long-article-page .editor-panel .wrapper{right:0;left:auto;width:100%;min-width:0;max-width:100%;padding:16px 20px 20px;border-top:1px solid rgba(65,94,71,.16);background:#dcebdd;box-shadow:0 -12px 30px rgba(40,66,47,.16)}.article.long-article-page .article-footer{box-sizing:border-box;width:min(var(--long-article-width, 800px),100vw - 28px);max-width:none;margin-right:auto;margin-left:auto}.article-nav-scope{margin:24px 0 20px}.article-nav-scope__input,.article-nav-sort__input{position:absolute;opacity:0;pointer-events:none}.article-nav-scope__tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-scope__tab{min-width:72px;height:28px;padding:0 12px;border-radius:6px;color:#667085;cursor:pointer;font-size:13px;line-height:28px;text-align:center}.article-nav-sort{margin-top:12px}.article-nav-sort__tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-sort__tab{min-width:56px;height:26px;padding:0 10px;border-radius:6px;color:#667085;cursor:pointer;font-size:12px;line-height:26px;text-align:center}.article-nav-sort__panel--author,.article-nav-sort__panel--hot{display:none}.article-nav-scope--switchable .article-nav-scope__panel--all{display:none}#articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,#articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,#articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,#articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,#articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.12);color:#1f2937;font-weight:600}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--column{display:none}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--all{display:block}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--time,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--time{display:none}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--author,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--hot{display:block}.article-adjacent-nav{display:flex;flex-wrap:wrap;gap:16px;margin:14px 0 0;padding:16px 0;border-top:1px solid #eee;border-bottom:1px solid #eee}.article-adjacent-nav__item{flex:1 1 300px;min-width:0}.article-adjacent-nav__item--right{text-align:right}.article-adjacent-nav__link{display:block;min-height:64px;padding:12px 14px;border:1px solid #f0f0f0;border-radius:8px;background:#fafafa;color:#111;text-decoration:none;transition:background .2s ease,border-color .2s ease}.article-adjacent-nav__link:hover{border-color:#d0d7de;background:#fff;text-decoration:none}.article-adjacent-nav__link--disabled{color:#999;cursor:default}.article-adjacent-nav__label{margin-bottom:6px;color:#888;font-size:12px}.article-adjacent-nav__title{margin-bottom:6px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}.article-adjacent-nav__preview{color:#555;display:-webkit-box;font-size:13px;max-height:4.5em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-height:1.5;overflow-wrap:anywhere;text-overflow:ellipsis}.article-column-card{margin:16px 0;padding:12px;border:1px solid #b7cfba;border-radius:8px;background:#cfe2d0}.article-column-card__title{color:#2d4935;font-weight:600}.article-column-card__title a{color:inherit;text-decoration:none}.article-column-card__meta{margin-top:4px;color:#718078;font-size:12px}.article-column-card__chapters{margin-top:10px;max-height:260px;overflow:auto;padding-top:8px;border-top:1px dashed #b8d0bb}.article-column-card__chapter{display:block;padding:6px 8px;border-radius:8px;color:#3b5743;text-decoration:none}.article-column-card__chapter:hover{background:#c1d9c4;text-decoration:none}.article-column-card__chapter--active{background:#b2d0b5;color:#28593a;font-weight:600}.article-nav-list-card{margin:12px 0 0;padding:12px;border:1px solid #eceff5;border-radius:8px;background:#fbfdff}.article-nav-list-card__title{color:#2b3a55;font-weight:600}.article-nav-list-card__items{margin-top:10px;padding-top:8px;border-top:1px dashed #e6eaf0}.article-nav-list-card__item{display:block;padding:7px 8px;border-radius:8px;color:#3d4a5c;line-height:1.4;overflow-wrap:anywhere;text-decoration:none}.article-nav-list-card__item:hover{background:#f1f6ff;text-decoration:none}.article-nav-list-card__item--active{background:#e8f0ff;color:#1d4ed8;font-weight:600}.long-article-settings{position:fixed;left:min(50% + min(var(--long-article-half-width, 400px),50vw - 14px) + 14px,100vw - 78px);top:min(60vh,100vh - 300px);transform:none;z-index:101;display:flex;flex-direction:column;gap:10px}.long-article-settings-btn{width:64px;height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0;border:0;border-radius:5px;background:#dcebdd;box-shadow:0 4px 14px rgba(48,73,55,.12);color:#52685a;cursor:pointer;font-size:14px;font-weight:400;position:relative;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.long-article-settings-btn:hover{border-color:rgba(55,100,68,.35);background:#fff;color:#2f6a43;transform:translateX(2px)}.long-article-settings-btn.is-active{background:#3e7250;color:#fff}.long-article-settings-btn svg{width:18px;height:18px}.long-article-settings-btn--top{height:0;min-height:0;overflow:hidden;opacity:0;pointer-events:none;transform:translateY(10px) scale(0.94);visibility:hidden;transition:height .24s ease,opacity .2s ease,transform .24s ease,visibility 0s linear .24s}.long-article-settings-btn--top.is-visible{height:64px;opacity:1;pointer-events:auto;transform:translateY(0) scale(1);visibility:visible;transition-delay:0s}.long-article-settings__count{position:absolute;top:-5px;right:-5px;min-width:18px;box-sizing:border-box;padding:1px 5px;border-radius:10px;background:#c94e4e;color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center}.long-article-layout{position:relative}.long-article-layout-panel{position:absolute;right:80px;bottom:0;display:none;width:360px;box-sizing:border-box;padding:24px;border:1px solid rgba(72,101,79,.16);border-radius:10px;background:#ebfaeb;box-shadow:0 12px 32px rgba(38,61,44,.18)}.long-article-layout-panel.is-open{display:block}.long-article-layout-panel__title{margin-bottom:20px;color:#52685a;font-size:18px;font-weight:600}.long-article-layout-panel__row{display:grid;grid-template-columns:48px minmax(0, 1fr);align-items:center;gap:12px;margin-top:16px;color:#52685a;font-size:13px}.long-article-font-options{display:grid;grid-template-columns:44px minmax(64px, 1fr) 44px;align-items:center;gap:7px}.long-article-font-options output{color:#52685a;font-size:13px;text-align:center}.long-article-font-options button,.long-article-layout-panel__options button{height:34px;padding:0 8px;border:1px solid #d9e3da;border-radius:5px;background:#f3f7f1;color:#52685a;cursor:pointer;font-size:12px}.long-article-font-options button:hover,.long-article-font-options button.is-active,.long-article-layout-panel__options button:hover,.long-article-layout-panel__options button.is-active{border-color:#77977e;background:#dfeadf;color:#285a39}.long-article-layout-panel__options{display:grid;grid-template-columns:repeat(3, 1fr);gap:7px}.long-article-layout-panel__options button.is-active{font-weight:600}body.night.long-article-page{background:#0a0a0a;color:#d9e3db}body.night.long-article-page .article-container{background:#111;box-shadow:none}body.night.long-article-page h1.article-title{color:#eef4ef}body.night.long-article-page .long-article-reading-stage>.main{background:#0a0a0a}body.night.long-article-page .long-article-home-link{color:#989898}body.night.long-article-page .long-article-home-link:hover{background:#191919;color:#d9e3db}body.night.long-article-page #articleCommentsPanel{background:#111;border-left-color:rgba(255,255,255,.1);box-shadow:none}body.night.long-article-page #comments .comments-header,body.night.long-article-page #comments .comment__reply{border-color:rgba(255,255,255,.08);background:rgba(17,17,17,.97)}body.night.long-article-page #comments .article-cmt-cnt{color:#eef4ef}body.night.long-article-page #comments .long-article-comments-count,body.night.long-article-page #comments .comment-info{color:#858f88}body.night.long-article-page #comments .comment-segment,body.night.long-article-page #comments .comment-thread,body.night.long-article-page #comments .comment__reply .reply__text{border-color:rgba(255,255,255,.08);background:#191919}body.night.long-article-page #comments .comments-header a.comment-segment__item,body.night.long-article-page #comments .comment-info a,body.night.long-article-page #comments .comment-thread__meta a{color:#aab4ad}body.night.long-article-page #comments .comments-header a.comment-segment__item--active,body.night.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#465c4d;color:#fff}body.night.long-article-page #comments .list>ul>li,body.night.long-article-page #comments .list>ul>li.cmt-perfect,body.night.long-article-page #comments .list>ul>li.cmt-perfect:hover{border-color:rgba(255,255,255,.08);background:rgba(0,0,0,0)}body.night.long-article-page #comments .comment,body.night.long-article-page #comments .comment-thread__content{color:#b9c2bc}body.night.long-article-page .long-article-comments-close{background:#191919;color:#989898}body.night.long-article-page .editor-panel .wrapper{border-color:rgba(255,255,255,.08);background:#191919;box-shadow:0 -12px 30px rgba(0,0,0,.34)}body.night .long-article-content{color:#989898}body.night .long-article-content a{color:#8fc9a0}body.night .long-article-content blockquote{border-color:#587663;background:#223128;color:#b8c7bc}body.night .long-article-content>h1,body.night .long-article-content>h2,body.night .long-article-content>h3,body.night .long-article-content>h4,body.night .long-article-content>h5,body.night .long-article-content>h6{color:#989898}body.night .long-article-content pre{background-color:#111a15}body.night .long-article-content :not(pre)>code{background:#27362c;color:#b9d6c1}body.night .long-article-meta{color:#93a299}body.night .long-article-meta a{color:#a9c7b1}body.night .long-article-meta a:hover{color:#c6e5ce}body.night .article-nav-scope__tabs,body.night .article-nav-sort__tabs{border-color:rgba(255,255,255,.1);background:#1f2937}body.night .article-nav-scope__tab,body.night .article-nav-sort__tab{color:#cbd5e1}body.night #articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,body.night #articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,body.night #articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,body.night #articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,body.night #articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#334155;color:#f8fafc}body.night .article-adjacent-nav{border-color:rgba(255,255,255,.1)}body.night .article-adjacent-nav__link,body.night .article-column-card,body.night .article-nav-list-card{border-color:rgba(255,255,255,.1);background:#1f2937;color:#e5e7eb}body.night .article-adjacent-nav__link:hover{border-color:rgba(148,163,184,.45);background:#273449}body.night .article-adjacent-nav__label,body.night .article-adjacent-nav__preview,body.night .article-column-card__meta{color:#94a3b8}body.night .article-column-card__title,body.night .article-column-card__chapter,body.night .article-nav-list-card__title,body.night .article-nav-list-card__item{color:#e5e7eb}body.night .article-column-card__chapters,body.night .article-nav-list-card__items{border-color:rgba(255,255,255,.1)}body.night .article-column-card__chapter:hover,body.night .article-column-card__chapter--active{background:rgba(95,149,109,.24);color:#c9edcf}body.night .article-nav-list-card__item:hover,body.night .article-nav-list-card__item--active{background:rgba(59,130,246,.18);color:#bfdbfe}body.night .long-article-settings-btn{border:0;background:#191919;color:#989898}body.night .long-article-settings-btn:hover{background:#191919;color:#989898}body.night .long-article-layout-panel{border:0;background:#1f1f1f;box-shadow:0 12px 32px rgba(0,0,0,.32)}body.night .long-article-layout-panel__title{color:#989898}body.night .long-article-layout-panel__row,body.night .long-article-font-options output{color:#989898}body.night .long-article-font-options button,body.night .long-article-layout-panel__options button{border-color:#3a3a3a;background:#191919;color:#989898}body.night .long-article-font-options button:hover,body.night .long-article-font-options button.is-active,body.night .long-article-layout-panel__options button:hover,body.night .long-article-layout-panel__options button.is-active{border-color:#666;background:#292929;color:#fff}body.night .long-article-catalog{background:#111}body.night .long-article-catalog .long-article-catalog__header{border-color:rgba(255,255,255,.1)}body.night .long-article-catalog .long-article-catalog__header h2{color:#eef4ef}body.night .long-article-catalog .long-article-catalog__header span{color:#858f88}body.night .long-article-catalog .long-article-catalog__close{color:#989898}body.night .long-article-catalog .long-article-catalog__close:hover{background:#191919;color:#fff}body.night .long-article-catalog .long-article-catalog__chapter{border-color:rgba(255,255,255,.08);color:#b9c2bc}body.night .long-article-catalog .long-article-catalog__chapter:hover{background:#191919;color:#eef4ef}body.night .long-article-catalog .long-article-catalog__chapter--active{background:rgba(95,149,109,.2);box-shadow:inset 3px 0 #7fb78d;color:#c9edcf}body.night .long-article-catalog .long-article-catalog__chapter-no{color:#858f88}@media(max-width: 768px){.article.long-article-page .article-container{margin-top:0;border-radius:0}.article.long-article-page .article-body>.wrapper{padding:36px 24px}.article.long-article-page h1.article-title{font-size:26px}.article.long-article-page #articleCommentsPanel{padding:0 18px 82px;border-radius:0}.long-article-content{margin-top:28px}.long-article-catalog__inner{padding:36px 24px}.long-article-catalog__header h2{font-size:24px}.long-article-catalog__chapter{grid-template-columns:78px minmax(0, 1fr);gap:10px;padding-right:8px;padding-left:8px}.article-nav-scope__tabs{display:grid;grid-template-columns:1fr 1fr}.article-nav-sort__tabs{display:grid;grid-template-columns:repeat(3, 1fr)}.article-nav-scope__tab,.article-nav-sort__tab{min-width:0}.article-adjacent-nav{flex-direction:column;gap:12px}.article-adjacent-nav__item{flex-basis:auto}.article-adjacent-nav__item--right{text-align:left}.long-article-settings{right:8px;left:auto}.long-article-settings-btn{width:54px;height:54px}.long-article-settings-btn--top.is-visible{height:54px}.long-article-layout-panel{right:64px;width:min(340px,100vw - 90px)}}.long-read-zone{padding:20px 0 24px}.long-read-zone__wrapper{flex-direction:column;gap:16px;background:linear-gradient(180deg, #fafbfc 0%, #fff 100%);border-radius:16px;padding:18px;box-shadow:0 4px 20px rgba(0,0,0,.06)}.long-read-zone__head{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.06)}.long-read-zone__title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:#1a1a2e;letter-spacing:.5px}.long-read-zone__title svg{width:22px;height:22px;color:#e67e22}.long-read-zone__more{font-size:13px;color:#6b7280;border:1px solid rgba(0,0,0,.08);padding:6px 14px;border-radius:20px;text-decoration:none;background:rgba(255,255,255,.8);transition:all .2s ease}.long-read-zone__more:hover{color:#1a1a2e;border-color:rgba(0,0,0,.2);background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08)}.long-read-zone__row{display:flex;flex-direction:column;gap:10px}.long-read-zone__row--hot{margin-top:4px;padding-top:14px;border-top:1px dashed rgba(0,0,0,.08)}.long-read-zone__row-head{display:flex;align-items:center;justify-content:space-between}.long-read-zone__row-title{display:flex;align-items:center;gap:10px;font-size:14px;color:#374151;font-weight:600}.long-read-zone__badge{background:linear-gradient(135deg, #f0f4f8 0%, #e8ecf1 100%);border:1px solid rgba(0,0,0,.06);padding:5px 12px;border-radius:16px;font-size:12px;color:#4b5563;font-weight:500}.long-read-zone__badge--hot{background:linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);border-color:rgba(251,146,60,.3);color:#c2410c}.long-read-zone__row-desc{font-size:12px;color:#9ca3af;font-weight:400;margin-left:4px}.long-read-zone__row-actions{display:flex;gap:8px}.long-read-zone__nav{width:32px;height:32px;border-radius:50%;border:1px solid rgba(0,0,0,.1);background:rgba(255,255,255,.9);color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.long-read-zone__nav svg{width:18px;height:18px}.long-read-zone__nav:hover{border-color:rgba(0,0,0,.2);background:#fff;color:#1a1a2e;box-shadow:0 2px 8px rgba(0,0,0,.1);transform:translateY(-1px)}.long-read-zone__carousel{display:flex;gap:12px;overflow-x:auto;padding:8px 6px;background:rgba(255,255,255,.5);border-radius:12px;scroll-snap-type:x mandatory;scroll-padding-left:4px;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) rgba(0,0,0,0)}.long-read-zone__carousel::-webkit-scrollbar{height:6px}.long-read-zone__carousel::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.long-read-zone__carousel::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:10px}.long-column-card{flex:0 0 212px;min-width:0;padding:14px;border-radius:12px;border:1px solid rgba(0,0,0,.06);background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:8px;scroll-snap-align:start;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.long-column-card:hover{transform:translateY(-2px);border-color:rgba(43,93,185,.16);box-shadow:0 10px 24px rgba(0,0,0,.12)}.long-column-card__head{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:flex-start;gap:8px}.long-column-card__title{min-width:0;flex:1;font-size:14px;font-weight:600;line-height:1.4;color:#1f2937;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere;word-break:break-word;min-height:2.8em}.long-column-card__title:hover{color:#2b5db9;text-decoration:none}.long-column-card__count{flex:0 0 auto;align-self:flex-start;padding:0 8px;height:20px;line-height:20px;border-radius:10px;background:#f3f4f6;color:#6b7280;font-size:11px;white-space:nowrap}.long-column-card__chapters{display:flex;flex-direction:column;gap:4px}.long-column-card__chapter{min-width:0;display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:8px;background:rgba(0,0,0,0);text-decoration:none;transition:background .2s ease}.long-column-card__chapter:hover{background:#f3f7ff;text-decoration:none}.long-column-card__chapter+.long-column-card__chapter{border-top:1px dashed rgba(0,0,0,.06)}.long-column-card__chapter-no{flex:0 0 auto;padding:0 8px;height:18px;line-height:18px;border-radius:9px;background:#eef2ff;color:#475569;font-size:10px;font-weight:500;text-align:center;white-space:nowrap}.long-column-card__chapter-title{min-width:0;flex:1;font-size:12px;line-height:1.3;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.long-column-card--hot .long-column-card__count{background:#fff1e6;color:#c2410c}.long-column-card--hot .long-column-card__chapter-no{background:#fff7ed;color:#c2410c}@media(max-width: 960px){.long-column-card{flex-basis:198px}}@media(max-width: 768px){.long-read-zone__nav{display:none}.long-read-zone__wrapper{padding:16px;border-radius:12px}.long-column-card{flex-basis:182px;padding:12px}.long-read-zone__title{font-size:16px}}body.night .long-read-zone{background:#1a1d24}body.night .long-read-zone__title{color:#f1f5f9}body.night .long-read-zone__wrapper{background:linear-gradient(180deg, #1e2530 0%, #1a1d24 100%);box-shadow:0 4px 20px rgba(0,0,0,.3)}body.night .long-read-zone__head{border-color:rgba(255,255,255,.08)}body.night .long-read-zone__more{background:rgba(30,41,59,.8);border-color:rgba(255,255,255,.1);color:#94a3b8}body.night .long-read-zone__more:hover{background:#1e293b;color:#f1f5f9;border-color:rgba(255,255,255,.2)}body.night .long-read-zone__row--hot{border-color:rgba(255,255,255,.08)}body.night .long-read-zone__badge{background:rgba(51,65,85,.6);border-color:rgba(255,255,255,.1);color:#cbd5e1}body.night .long-read-zone__badge--hot{background:rgba(251,146,60,.15);border-color:rgba(251,146,60,.3);color:#fbbf24}body.night .long-read-zone__nav{background:rgba(30,41,59,.8);border-color:rgba(255,255,255,.1);color:#94a3b8}body.night .long-read-zone__nav:hover{background:#334155;color:#f1f5f9}body.night .long-read-zone__carousel{background:rgba(15,23,42,.4)}body.night .long-read-zone__carousel::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15)}body.night .long-column-card{background:#1e293b;border-color:rgba(255,255,255,.08)}body.night .long-column-card:hover{box-shadow:0 12px 24px rgba(0,0,0,.4)}body.night .long-column-card__title{color:#f1f5f9}body.night .long-column-card__count{background:rgba(51,65,85,.9);color:#cbd5e1}body.night .long-column-card__chapter{background:rgba(255,255,255,.02)}body.night .long-column-card__chapter:hover{background:rgba(43,93,185,.18)}body.night .long-column-card__chapter+.long-column-card__chapter{border-color:rgba(255,255,255,.08)}body.night .long-column-card__chapter-no{background:rgba(51,65,85,.85);color:#e2e8f0}body.night .long-column-card__chapter-title{color:#cbd5e1}body.night .long-column-card--hot .long-column-card__count{background:rgba(194,65,12,.24);color:#fdba74}body.night .long-column-card--hot .long-column-card__chapter-no{background:rgba(194,65,12,.2);color:#fdba74}.home-personalize-toolbar{position:relative;display:flex;justify-content:flex-end;padding:12px 0 0}.home-personalize-toolbar__btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-color:#d7dee8;color:#2f3b52}.home-personalize-toolbar__btn svg{width:14px;height:14px}.home-personalize-panel{position:absolute;top:52px;right:0;z-index:80;display:none;width:280px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.18)}.home-personalize-panel--open{display:block}.home-personalize-panel__head,.home-personalize-panel__actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px}.home-personalize-panel__head{border-bottom:1px solid #eef2f7}.home-personalize-panel__actions{border-top:1px solid #eef2f7}.home-personalize-panel__actions button{flex:1 1 auto}.home-personalize-panel__list{max-height:360px;overflow:auto;padding:6px}.home-personalize-panel__item{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:8px;min-height:38px;padding:0 8px;border-radius:6px;color:#2f3b52;cursor:grab}.home-personalize-panel__check{display:grid;grid-template-columns:22px minmax(0, 1fr);align-items:center;gap:8px;min-width:0;cursor:pointer}.home-personalize-panel__check span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-personalize-panel__sort{display:inline-flex;gap:4px}.home-personalize-panel__sort button{min-height:28px;padding:0 7px;font-size:12px}.home-personalize-panel__sort button:disabled{cursor:default;opacity:.42}.home-personalize-panel__item:hover{background:#f6f8fb}.home-personalize-panel__item--dragging{opacity:.55}.home-module[draggable=true]{cursor:grab}.home-module--dragging{opacity:.55;outline:2px dashed #7da7df;outline-offset:3px}.repeater-station{box-sizing:border-box;padding:14px;border:1px solid #e5ebf3;border-radius:8px;background:#fff}.repeater-station__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.repeater-station__title,.repeater-station__tabs,.repeater-station__actions,.repeater-station__create-actions{display:flex;align-items:center;gap:8px}.repeater-station__title{min-width:0;color:#1f2937;font-weight:700}.repeater-station__title svg{width:16px;height:16px;color:#2b5db9}.repeater-station__tabs,.repeater-station__actions{flex-wrap:wrap}.repeater-station__tab,.repeater-station__btn{min-height:32px;padding:0 10px;border-radius:6px}.repeater-station__tab--active,.repeater-station__btn--liked{border-color:#2b5db9;background:#edf4ff;color:#1d4ed8}.repeater-station__body{min-height:120px;padding:14px;border-radius:8px;background:#f7fafc}.repeater-station__quote{color:#1f2937;font-size:15px;line-height:1.75;overflow-wrap:anywhere}.repeater-station__meta{display:flex;gap:10px;margin-top:10px;color:#738095;font-size:12px}.repeater-station__actions{margin-top:12px}.repeater-station__btn{display:inline-flex;align-items:center;gap:5px;text-decoration:none}.repeater-station__btn svg{width:14px;height:14px}.repeater-station__create{margin-top:12px}.repeater-station__create textarea{box-sizing:border-box;width:100%;min-height:86px;padding:10px;border:1px solid #d7dee8;border-radius:6px;resize:vertical}body.night .home-personalize-panel,body.night .repeater-station{border-color:rgba(255,255,255,.1);background:#1e293b}body.night .repeater-station__body{background:#111827}body.night .repeater-station__title,body.night .repeater-station__quote,body.night .home-personalize-panel__item{color:#e5e7eb}@media(max-width: 768px){.home-personalize-toolbar{margin:0 10px;padding-top:8px}.home-personalize-panel{top:48px;right:0;left:0;width:auto}.repeater-station__head{align-items:flex-start;flex-direction:column}.repeater-station__body{min-height:96px}}.home-personalize-toolbar,.wrapper.home-personalize-toolbar{position:fixed;display:flex;justify-content:flex-end;top:172px;right:24px;left:auto !important;z-index:30;width:auto !important;min-width:0 !important;max-width:none !important;padding:0 !important;margin:0 !important;background:rgba(0,0,0,0) !important;overflow:visible !important;box-sizing:border-box;pointer-events:none}.home-personalize-toolbar__btn{flex-direction:column;justify-content:center;gap:3px;width:86px;min-height:54px;border:1px solid #e0e7ef;border-radius:16px;background:rgba(248,250,252,.76);box-shadow:0 6px 24px rgba(60,80,120,.12),0 1.5px 6px rgba(60,80,120,.08);color:#222;font-weight:700;line-height:1.2;pointer-events:auto;backdrop-filter:blur(8px);transition:box-shadow .3s,transform .2s}.home-personalize-toolbar__btn:hover{box-shadow:0 12px 32px rgba(60,80,120,.16),0 2px 8px rgba(60,80,120,.1);transform:translateY(-2px) scale(1.04)}.home-personalize-toolbar__btn svg{width:16px;height:16px}.home-personalize-toolbar__btn span{font-size:12px}.home-personalize-panel{top:62px;pointer-events:auto}.home-personalize-toolbar--nav,.wrapper.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;display:inline-flex;align-items:center;width:auto;padding:0;margin:0;background:rgba(0,0,0,0);pointer-events:auto}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{flex-direction:row;gap:0;width:auto;min-width:0;min-height:0;border:0;border-radius:6px;background:rgba(0,0,0,0);box-shadow:none;color:#3b3e43;font-size:0;line-height:1;padding:14px 10px;backdrop-filter:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:focus{background:#fff7ec;box-shadow:none;color:#e59230;transform:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{color:currentColor;fill:none;height:18px;stroke:currentColor;width:18px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn span{display:none}.home-personalize-toolbar--nav .home-personalize-panel{top:46px;right:0}.long-read-zone--compact .long-read-zone__wrapper{gap:12px;padding:14px 18px}.long-read-zone__compact-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px}.long-read-zone__compact-group{min-width:0}.long-read-zone__compact-group .module-list{margin-top:8px}.long-read-zone__compact-group li{min-height:30px}.repeater-station--sidebar{margin-bottom:12px;padding:10px}.repeater-station--sidebar .repeater-station__head{align-items:flex-start;flex-direction:column;gap:8px}.repeater-station--sidebar .repeater-station__body{min-height:72px;padding:10px}.repeater-station--sidebar .repeater-station__quote{font-size:13px;line-height:1.65}.repeater-station--sidebar .repeater-station__tab,.repeater-station--sidebar .repeater-station__btn{min-height:28px;padding:0 8px}.repeater-station--mobile-users{margin:0 10px 10px}@media(max-width: 768px){.home-personalize-toolbar{top:150px;right:10px;margin:0}.home-personalize-panel{right:0;left:auto;width:min(280px,100vw - 20px)}.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;flex:0 0 34px;height:34px;margin:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{box-sizing:border-box;border-radius:999px;height:34px;justify-content:center;padding:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:active{background:#eef6ff;color:#2b5db9}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{height:21px;width:21px}.home-personalize-toolbar--nav .home-personalize-panel{position:fixed;top:52px;right:10px;left:auto}.long-read-zone__compact-grid{grid-template-columns:1fr}}.long-read-zone__actions{align-items:center;display:inline-flex;gap:8px}.column-cover,.column-detail-hero__cover,.column-reading-book,.column-book__cover{background-color:#cdd6e3;background-position:center;background-size:cover;display:block;overflow:hidden;position:relative;text-decoration:none}.column-cover::before,.column-detail-hero__cover::before,.column-reading-book::before{background:linear-gradient(180deg, rgba(15, 23, 42, 0.12), rgba(15, 23, 42, 0.78));content:"";inset:0;position:absolute}.column-cover--default,.column-detail-hero--default .column-detail-hero__cover,.column-book--default .column-book__cover{background-blend-mode:multiply;background-color:#8aa0bd}.column-bookstore__panel{padding:16px}.column-bookstore__sections{display:grid;gap:18px;grid-template-columns:repeat(2, minmax(0, 1fr))}.column-bookstore__section{min-width:0}.column-bookstore__section h2,.column-bookstore__section h3{color:#263241;font-size:16px;line-height:1.4;margin:0 0 14px}.column-bookstore__section h3{background:#e8f5d8;border-radius:999px;display:inline-block;padding:4px 14px}.column-bookstore__section--hot h2,.column-bookstore__section--hot h3{background:#ffe2df;color:#c0392b}.column-bookstore__grid{display:grid;gap:18px 14px;grid-template-columns:repeat(auto-fill, minmax(88px, 1fr))}.column-book{color:#263241;display:block;min-width:0;text-align:center;text-decoration:none}.column-book__cover{aspect-ratio:3/4;border-radius:3px 6px 6px 3px;box-shadow:inset 7px 0 0 rgba(0,0,0,.14),0 8px 18px rgba(31,41,55,.18);transition:box-shadow .18s,transform .18s}.column-book:hover .column-book__cover{box-shadow:inset 7px 0 0 rgba(0,0,0,.18),0 12px 24px rgba(31,41,55,.24);transform:translateY(-2px)}.column-book__title{display:-webkit-box;font-size:13px;font-weight:700;line-height:1.35;margin-top:8px;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.column-bookstore__empty{color:#8a94a6;padding:18px 0;text-align:center}.column-detail-hero{border-bottom:1px solid #edf1f6;display:grid;gap:20px;grid-template-columns:160px minmax(0, 1fr);padding:18px}.column-detail-hero__cover{aspect-ratio:3/4;border-radius:8px}.column-cover span,.column-detail-hero__cover span,.column-reading-book span{position:relative;z-index:1}.column-detail-hero__cover span{bottom:14px;color:#fff;font-weight:700;left:14px;line-height:1.35;overflow-wrap:anywhere;position:absolute;right:14px}.column-detail-hero__body h1{color:#111827;font-size:28px;line-height:1.25;margin:6px 0 10px;overflow-wrap:anywhere}.column-detail-hero__label,.column-detail-hero__meta{color:#6b7280}.column-reading-shelf{display:grid;gap:10px;padding:12px}.column-reading-book{border-radius:8px;color:#fff;min-height:148px}.column-reading-book__title,.column-reading-book__bookmark,.column-reading-book__chapter{color:#fff;left:12px;position:absolute;right:12px}.column-reading-book__bookmark{background:#d94848;left:auto;padding:8px 0 10px;text-align:center;top:0;width:58px}.column-reading-book__title{bottom:42px;font-weight:700}.column-reading-book__chapter{bottom:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-manage__list{display:grid;gap:14px;padding:16px}.column-manage__item{align-items:start;display:grid;gap:14px;grid-template-columns:120px minmax(0, 1fr)}.column-manage__item--current{background:#f8fbff;border:1px solid #cfe0fb;border-radius:8px;padding:10px}.column-cover{aspect-ratio:3/4;border-radius:8px}.column-cover span{bottom:10px;color:#fff;font-weight:700;left:10px;line-height:1.35;position:absolute;right:10px}.column-manage__title{color:#1f2937;font-weight:700;line-height:1.4;text-decoration:none}.column-manage__meta{color:#6b7280;font-size:12px;line-height:1.6}.column-manage__form{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.column-manage__input{flex:1 1 260px;min-width:0}body.night .column-bookstore__section h2,body.night .column-book{color:#e5e7eb}body.night .column-bookstore__section h3{background:rgba(74,222,128,.16);color:#bbf7d0}body.night .column-bookstore__section--hot h2,body.night .column-bookstore__section--hot h3{background:rgba(248,113,113,.16);color:#fecaca}@media(max-width: 768px){.column-bookstore__sections{grid-template-columns:1fr}.column-bookstore__grid{gap:16px 12px;grid-template-columns:repeat(3, minmax(0, 1fr));padding:0 10px 12px}.column-bookstore__section{margin-bottom:10px}.column-detail-hero,.column-manage__item{grid-template-columns:104px minmax(0, 1fr);padding:12px}.column-detail-hero__body h1{font-size:20px}}.column-detail-hero__edit{border:1px solid #cfe0fb;border-radius:6px;color:#2b5db9;display:inline-flex;line-height:20px;margin-top:14px;padding:5px 12px;text-decoration:none}.column-detail-hero__edit:hover{background:#f5f9ff;text-decoration:none} \ No newline at end of file +@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Regular-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Regular-J.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Medium-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Medium-J.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Bold-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Bold-J.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:HarmonyOS;src:url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Black-J.woff2) format("woff2"),url(//resource.hellofont.cn/font/HarmonyOS_SansSC_Black-J.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--background-color: #fff;--background-secondary-color: #f6f8fa;--text-color: #000;--text-gray-color: #787777;--text-fade-color: #878787;--layer-color: #616161;--layer-background-color: #fff;--layer-border-color: #eee;--layer-hover-color: #fff;--layer-hover-background-color: #4285f4;--header-background-color: #3b3e43;--toc-hover-color: #4285f4;--tab-current-background-color: var(--header-background-color);--box-shadow: 0 3px 12px rgba(27, 31, 35, 0.15);--dialog-close-color: hsla(0, 0%, 100%, 0.54);--input-border-color: #d1d5da;--logo-hover-color: var(--header-background-color)}.domains-count{padding:10px 18px;font-size:18px;line-height:26px;color:#3b3e43;text-align:center;border:1px solid #eee;background-color:#fff;width:100%;box-sizing:border-box;margin-bottom:20px;box-shadow:0px 0px 2px rgba(98,124,153,.1)}.domains-module{margin:0}.module-list.domain .slogan{text-align:center;margin-top:-8px;width:60px}.module-list.domain .title{margin-left:80px}.module-list.long-column-module-list .title{margin-left:0}.article{padding-top:60px}.article.long-article-page .article-container{width:100%;max-width:100%;margin:20px 0}.article.long-article-page .article-footer{width:100%;max-width:100%;box-sizing:border-box;padding:0 20px}.article .nav{position:fixed;top:0}.article .article-container{position:relative;margin:20px auto 20px;max-width:800px;background:#fff}.article .article-body .wrapper,.article .main .wrapper{display:block;max-width:768px}.article .main{min-height:inherit}.article .article-body{padding:20px 0}.article .article-info{font-size:12px;line-height:20px}.article .article-info .article-actions{line-height:60px;font-size:13px}.article h1.article-title{word-break:break-word;font-size:28px;font-weight:normal;padding-top:15px;text-align:center}.article h1.article-title svg{height:28px;width:28px;vertical-align:-4px}.article .article-statement{width:auto;color:#0f8cee;background-color:#e3f9fd;border-radius:12px;padding:4px 8px;margin:5px auto;font-weight:bold}.article .article-content{padding-top:15px}.article #articleRewardContent{padding:15px 15px 41px 15px;background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px;position:relative}.article #articleRewardContent .vditor-reset>p{margin-bottom:0}.article #articleRewardContent>span{position:absolute;bottom:10px;right:10px;cursor:pointer}.article .share{position:absolute;top:100px;left:-60px;width:30px;font-size:22px;color:#616161;text-align:center}.article .share .article-clipboard{position:absolute;top:-100000px}.article .share svg{height:22px;width:22px}.article .share>span{display:block;margin-bottom:10px}.article .share #qrCode{position:absolute;top:87px;left:35px;border:5px solid #eee;z-index:1;height:90px;border-radius:3px;width:90px}.article .share #thankArticle .ft-13{margin-top:-3px;display:block}.article .article-header{position:fixed;top:-60px;display:flex;justify-content:space-between;align-items:center;left:0;right:0;width:100%;max-width:100%;height:58px;z-index:83;line-height:38px;padding:0 10px;background-color:#fff;box-sizing:border-box;box-shadow:0 1px 2px rgba(0,0,0,.2);font-size:16px;transition:.5s}.article .article-header h1 svg{color:#2c2c2c;vertical-align:baseline;height:38px;width:38px}.article .article-header h2{font-size:24px;line-height:48px;font-weight:normal;margin:0 20px;transition:margin 1s cubic-bezier(0, 0, 0.2, 1)}.article .article-header .user-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap}.article .article-header .user-nav>span,.article .article-header .user-nav>a{white-space:nowrap;padding:16px 10px;line-height:16px;height:16px;color:#616161;text-decoration:none}.article .article-header .user-nav>span:hover,.article .article-header .user-nav>a:hover{color:#2c2c2c}.article .article-header .user-nav>span.ft-red{color:#e59230}.article .article-header .user-nav svg{height:16px;width:16px}.article #articleToC{position:fixed;top:80px;width:20%;z-index:0;right:0;height:100%;border-radius:0;background:none}.article #articleToC .module-panel{overflow:auto;border-radius:0}.article #articleToC .article-toc li{list-style-type:none}.article #articleToC .article-toc li a{padding:5px 10px 5px 20px;border-left:2px solid rgba(0,0,0,0);display:block;line-height:20px;color:#767676}.article #articleToC .article-toc li a:last-child{border-bottom-width:0}.article #articleToC .article-toc li a:hover{border-left:1px solid #4285f4;background-color:#f7f7f7;padding-left:21px;color:#4285f4;text-decoration:none}.article #articleToC .article-toc li.current a{border-left:2px solid #4285f4;background-color:#f0f0f0;color:#4285f4}.article #articleToC .article-toc li.toc-h2 a,.article #articleToC .article-toc li.toc-h2.current a:hover{padding-left:34px}.article #articleToC .article-toc li.toc-h3 a,.article #articleToC .article-toc li.toc-h3.current a:hover{padding-left:48px}.article #articleToC .article-toc li.toc-h4 a,.article #articleToC .article-toc li.toc-h4.current a:hover{padding-left:62px}.article #articleToC .article-toc li.toc-h5 a,.article #articleToC .article-toc li.toc-h5.current a:hover{padding-left:86px}.article #articleToC .article-toc li.toc-h2 a:hover{padding-left:35px}.article #articleToC .article-toc li.toc-h3 a:hover{padding-left:49px}.article #articleToC .article-toc li.toc-h4 a:hover{padding-left:63px}.article #articleToC .article-toc li.toc-h5 a:hover{padding-left:87px}@media(min-width: 1025px){.article:not(.long-article-page){--article-layout-gap: 32px;--article-content-width: min(1120px, calc(100vw - 80px))}.article:not(.long-article-page) .article-container{width:var(--article-content-width);max-width:none;margin-right:auto;margin-left:auto}.article:not(.long-article-page) .article-body .wrapper,.article:not(.long-article-page) .main .wrapper,.article:not(.long-article-page) .article-footer{box-sizing:border-box;width:100%;min-width:0;max-width:none;padding-right:28px;padding-left:28px}.article:not(.long-article-page) #articleToC{display:none}.article.article--has-toc{--article-toc-width: clamp(220px, 18vw, 340px)}.article.article--has-toc #articleToC{width:var(--article-toc-width)}}@media(min-width: 1880px){.article.article--has-toc:not(.long-article-page) #articleToC{display:block}}.article #revision .revisions{margin:5px 0 15px;text-align:center}.article #revision .revisions a{color:#616161;vertical-align:middle}.article #revision .revisions a:hover{color:#2c2c2c}.article #revision .revisions a.disabled{color:#878787;cursor:default}.article #revision .revisions span{margin:0 10px 0 10px}.article #revision .revision-picker{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:14px;padding-bottom:12px}.article #revision .revision-picker label{align-items:center;color:#616161;display:flex;gap:6px}.article #revision .revision-picker select{border:1px solid #d9d9d9;border-radius:3px;box-sizing:border-box;height:30px;max-width:220px;padding:0 6px}.article #revision .revision-picker .revision-picker__toggle{white-space:nowrap}.article #revision .revision-picker .revision-picker__compare{height:30px;line-height:28px;padding:0 12px}.article #revision .revision-diff{max-height:60vh;overflow:auto}.article #revision .revision-diff-section{margin-top:14px}.article #revision .revision-diff-section h3{color:#2c2c2c;font-size:14px;line-height:20px;margin:0 0 6px}.article #revision .revision-diff-title,.article #revision .revision-diff-lines{background:#fff;border:1px solid #e6e6e6;border-radius:4px}.article #revision .revision-diff-title{line-height:1.8;padding:10px;white-space:pre-wrap;word-break:break-word}.article #revision .revision-diff-word--add{background:#e9f7ec;color:#569e3d}.article #revision .revision-diff-word--remove{background:#ffeded;color:#d23f31;text-decoration:line-through}.article #revision .revision-diff-line{border-left:3px solid rgba(0,0,0,0);box-sizing:border-box;line-height:1.7;min-height:28px;padding:4px 10px;white-space:pre-wrap;word-break:break-word}.article #revision .revision-diff-line+.revision-diff-line{border-top:1px solid #f0f0f0}.article #revision .revision-diff-line--add{background:#f0fbf2;border-left-color:#569e3d}.article #revision .revision-diff-line--remove{background:#fff1f1;border-left-color:#d23f31}.article .editor-panel{position:fixed;left:0;right:0;width:100vw;max-width:100vw;z-index:120;height:100%;box-sizing:border-box;bottom:-200%}.article .editor-panel .editor-bg{background-color:rgba(0,0,0,.5);height:100%;position:absolute;top:0;width:100%;left:0;right:0}.article .editor-panel .wrapper{background-color:#f1f7fe;bottom:0;z-index:121;position:absolute;padding:15px 10%;box-sizing:border-box;width:100%;max-width:initial;left:0;right:0}.article .editor-panel .wrapper #commentContent{max-height:600px}.article .editor-panel .wrapper .comment-submit{display:flex;align-items:center;margin-top:10px}.article .editor-panel .form{width:100%}.article .editor-panel .editor-hide{color:#616161;margin:-3px 0 6px;font-size:22px}.article .editor-panel .editor-hide:hover{color:#2c2c2c}#heatBar{position:fixed;top:2px;right:0px;width:100%;z-index:84}#thoughtProgress{height:2px;position:relative;margin-bottom:10px;margin-top:20px}#thoughtProgress .bar{position:absolute;background-color:#e0e0e0;height:2px}#thoughtProgress .icon-video{position:absolute;top:-8px;left:0;cursor:pointer;color:#e59230;margin-left:-10px}label.cmt-anonymous{margin:0 9px}label.cmt-anonymous input{margin-left:4px}.comment-action__bar{display:flex;align-items:center;justify-content:flex-start;gap:0 12px;flex-wrap:wrap}.comment-action__bar>.action-btns{margin-left:auto;padding-left:12px}.comment-action__left{display:flex;align-items:center;flex:1 1 240px;flex-wrap:wrap;gap:8px;min-width:0;transform:translateX(-12px)}.comment-action__reply{color:#616161;white-space:nowrap}.comment-action__reply svg{margin-left:4px}.action-btns{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.action-btns>span,.action-btns>a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:0 10px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(255,255,255,.84);box-shadow:0 8px 18px rgba(15,23,42,.06);color:#616161;text-decoration:none;white-space:nowrap;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.action-btns>span:hover,.action-btns>a:hover{background:#fff;border-color:rgba(98,162,240,.28);color:#2c2c2c;transform:translateY(-1px);box-shadow:0 12px 22px rgba(15,23,42,.1)}.action-btns>span.ft-red,.action-btns>a.ft-red,.action-btns>span.ft-red:hover,.action-btns>a.ft-red:hover{color:#e59230;border-color:rgba(226,61,61,.2);background:rgba(255,243,243,.92)}.action-btns>span.icon-reply-btn{color:#616161;font-weight:600}.action-btns>span.icon-reply-btn:hover{color:#2c2c2c}.action-btns svg{vertical-align:middle}.comments.module{margin-bottom:0}.comments .comments-header a{color:#878787;font-size:16px;text-decoration:none}.comments .comments-header__main{display:flex;align-items:center;justify-content:space-between;gap:12px}.comments .comment-filterbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px}.comments .comment-segment{display:inline-flex;overflow:hidden;border:1px solid #e5e7eb;border-radius:6px;background:#fff}.comments .comment-segment__item{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-left:1px solid #e5e7eb;color:#878787;font-size:13px;line-height:1}.comments .comment-segment__item:first-child{border-left-width:0}.comments .comment-segment__item:hover{color:#787777;background:#f9fafb}.comments .comment-segment__item--active,.comments .comment-segment__item--active:hover{color:#fff;background:#616161}.comments .comments-header a:hover{color:#787777}.comments .comments-header a.comment-segment__item{color:#878787;font-size:13px}.comments .comments-header a.comment-segment__item:hover{color:#787777;background:#f9fafb}.comments .comments-header a.comment-segment__item--active,.comments .comments-header a.comment-segment__item--active:hover{color:#fff;background:#616161}.comments .list>ul>li.cmt-shield-shield{background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px}.comments .list>ul>li.cmt-perfect,.comments .list>ul>li.cmt-perfect:hover{background-color:#f9f6f6}.comments .list>ul>li:hover .hover-show,.comments .list>ul>li.focus .fn-hidden{visibility:visible}.comments .list>ul>li:last-child{border-bottom-width:0}.comments .list>ul>li,.comments .comment-thread__reply{transition:transform .18s ease}.comments .comment-focus-highlight{animation:comment-focus-nudge .38s ease-out 1}.comments .comment{margin:5px 0}.comments .comment img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.comments .comment>p:last-child{margin-bottom:0px}.comments .comment>p>img:last-child{margin-bottom:10px}.comments .comment-info .avatar-small{vertical-align:bottom}.comments .comment-origin{display:inline-flex;align-items:center;gap:4px;max-width:180px;color:#878787;font-size:12px;white-space:nowrap}.comments .comment-origin span{overflow:hidden;text-overflow:ellipsis}.comments .comment-origin-inline{margin-left:8px;color:#878787}.comments .comment-thread{--comment-thread-max-indent: 140px;margin:12px 0 8px;padding:1px 0 1px 14px;border-left:1px solid rgba(15,23,42,.14);background:rgba(0,0,0,0)}.comments .comment-thread__list{display:flex;flex-direction:column;gap:10px}.comments .comment-thread__reply{display:flex;align-items:flex-start;gap:8px;min-width:0;margin-left:min(var(--comment-thread-indent, 0px),var(--comment-thread-max-indent));padding:2px 0;position:relative}.comments .comment-thread__reply--nested::before{position:absolute;top:0;bottom:0;left:-14px;border-left:1px solid rgba(15,23,42,.12);content:""}.comments .comment-thread__reply+.comment-thread__reply{padding-top:10px;border-top:1px solid rgba(15,23,42,.08)}.comments .comment-thread__avatar{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background-position:center;background-size:cover}.comments .comment-thread__body{flex:1;min-width:0;border-radius:4px;transition:transform .18s ease}.comments .comment-thread__reply.comment-focus-highlight{animation:none}.comments .comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:comment-focus-nudge .38s ease-out 1}.comments .comment-thread__meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:13px;line-height:1.45}.comments .comment-thread__meta a{color:#2c2c2c;font-weight:600}.comments .comment-thread .comment-origin-inline{margin-left:0}.comments .comment-thread__content{margin-top:2px;color:#2c2c2c;font-size:14px;line-height:1.7}.comments .comment-thread__content img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.comments .comment-thread__content>p:last-child{margin-bottom:0}.comments .comment-thread__actions{align-items:center;gap:4px;margin-top:5px;font-size:13px}.comments .comment-thread__actions .comment-action__left{flex:0 1 auto;gap:4px;transform:none}.comments .comment-thread__actions .action-btns{justify-content:flex-start;gap:2px;margin-left:0;padding-left:0}.comments .comment-thread__actions .action-btns>span,.comments .comment-thread__actions .action-btns>a{min-height:24px;padding:0 7px;border:0;background:rgba(0,0,0,0);box-shadow:none;color:#878787}.comments .comment-thread__actions .action-btns>span:hover,.comments .comment-thread__actions .action-btns>a:hover{background:rgba(98,162,240,.08);box-shadow:none;color:#2c2c2c;transform:none}.comments .comment-thread__actions .reaction-pill,.comments .comment-thread__actions .reaction-trigger{min-height:24px;padding:0 7px;border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);box-shadow:none}.comments .comment-thread__actions .reaction-widget__items{gap:2px;min-height:22px}.comments .comment-thread__more{margin-top:10px;padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:13px}.comments .comment-thread__pager{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:#878787;font-size:12px}.comments .comment-thread__pager button{padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:12px}.comments .comment-thread__pager button:hover{color:#2c2c2c}.comments .comment-thread__page-info{color:#878787}.comments .comment-info a:hover{text-decoration:none}.comments .comment-action>.ft-fade>.fn-pointer:hover{color:#787777}.comment-paragraph-context{display:-webkit-box;margin:0 0 8px;overflow:hidden;color:#718078;font-size:12px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.long-article-orphaned-comments{margin:18px 0 0;border-top:1px solid rgba(65,94,71,.14);padding-top:12px}.long-article-orphaned-comments summary{color:#68776e;cursor:pointer;font-size:13px}.long-article-orphaned-comments>ul{margin-top:8px}.nice .comments>ul>li:last-child{border-bottom-width:0}.comment-get-comment.list>ul{padding:0}.comment-get-comment.list>ul>li{padding-top:0;border-bottom:1px solid #eee;margin-bottom:15px}.comment-get-comment.list>ul>li:last-child{border-bottom:1px solid #eee}.comment-replies.list>ul{margin-top:10px;padding:0}.comment-replies.list>ul>li{border-bottom-width:0;border-top:1px solid #eee}.comment-replies.list>ul>li{background-color:rgba(0,0,0,0)}.article-reaction,.comment-reaction,.chat-reaction{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:100%}.article-reaction-shell{display:flex;justify-content:flex-start;width:100%;margin:18px 0 6px}.article-reaction{align-items:flex-start;margin:18px 0 6px}.article-reaction .reaction-widget__summary,.article-reaction .reaction-widget__items{justify-content:flex-start}.comment-reaction{margin-top:0}.chat-reaction{clear:both;display:flex;margin:7px 0 0;width:100%}.chat-reaction--empty{position:absolute;top:10px;right:-14px;z-index:5;width:auto;margin:0;transform:none}.reaction-widget__summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.reaction-widget__items{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:28px}.reaction-widget__items:empty{display:none}.reaction-pill,.reaction-trigger,.reaction-option{appearance:none;border:0;font:inherit;line-height:1;cursor:pointer}.reaction-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border:1px solid var(--layer-border-color);border-radius:999px;background:rgba(255,255,255,.86);color:var(--text-gray-color);user-select:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.reaction-pill:hover{background:#fff;border-color:rgba(98,162,240,.42);transform:translateY(-1px)}.reaction-pill-wrapper .reaction-pill__tip{bottom:calc(100% - 2px);width:max-content;min-width:0;max-width:calc(100vw - 32px);max-height:176px;margin-bottom:0;padding:10px;border:1px solid rgba(148,163,184,.26);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 14px 32px rgba(15,23,42,.14);display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:8px;overflow-y:auto;text-align:left;z-index:24}.comment-action__left .comment-reaction--summary{flex:0 1 auto;min-width:0}.comment-reaction--summary{gap:0}.action-btns .comment-reaction--trigger{display:inline-flex}.action-btns .comment-reaction--trigger .reaction-popover{left:auto;right:0}.reaction-pill__tip-link{display:inline-flex;width:30px;height:30px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.96);box-shadow:0 6px 14px rgba(15,23,42,.12);transition:transform .18s cubic-bezier(0.22, 1, 0.36, 1),box-shadow .18s ease}.reaction-pill__tip-link:hover{transform:translateY(-1px) scale(1.04);box-shadow:0 10px 20px rgba(37,99,235,.18)}.reaction-pill__tip-avatar{display:block;width:100%;height:100%;object-fit:cover}.reaction-pill.selected{border-color:rgba(98,162,240,.72);background:rgba(98,162,240,.12);color:#2563eb;font-weight:600;box-shadow:0 8px 18px rgba(37,99,235,.12)}.reaction-pill__emoji{line-height:1}.reaction-pill__count{font-size:12px;line-height:1}.reaction-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:30px;min-width:30px;padding:0 9px;border-radius:999px;background:rgba(37,99,235,.08);border:1px solid rgba(37,99,235,.14);color:#2563eb;font-size:12px;font-weight:600;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease}.reaction-trigger:hover{background:rgba(37,99,235,.13);transform:translateY(-1px)}.reaction-trigger.is-open{background:rgba(37,99,235,.16);border-color:rgba(37,99,235,.28);box-shadow:0 10px 24px rgba(37,99,235,.18)}.reaction-trigger__icon{font-size:15px}.reaction-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:70;display:none;grid-template-columns:repeat(5, minmax(0, 1fr));gap:8px;min-width:252px;max-width:min(280px,100vw - 40px);padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 18px 38px rgba(15,23,42,.16);backdrop-filter:blur(16px)}.article-reaction.is-open,.comment-reaction.is-open,.chat-reaction.is-open{z-index:70}.article-reaction.is-open .reaction-popover,.comment-reaction.is-open .reaction-popover,.chat-reaction.is-open .reaction-popover{display:grid;animation:reaction-pop .28s cubic-bezier(0.22, 1.28, 0.36, 1)}.reaction-option{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:14px;background:rgba(241,245,249,.9);border:1px solid rgba(0,0,0,0);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.reaction-option:hover{background:#fff;border-color:rgba(98,162,240,.24);transform:translateY(-1px) scale(1.04)}.reaction-option:active{transform:scale(0.92)}.reaction-option.selected{background:rgba(37,99,235,.12);border-color:rgba(37,99,235,.3);box-shadow:inset 0 0 0 1px rgba(37,99,235,.12)}.reaction-option--wide{grid-column:span 2;width:auto;white-space:nowrap}.reaction-option--wide .reaction-option__emoji{font-size:18px;letter-spacing:.02em}.reaction-option__emoji{font-size:20px;line-height:1}.chat-reaction .reaction-pill{min-height:26px;padding:0 9px;font-size:12px}.chat-reaction .reaction-trigger{min-height:28px;padding:0 11px}.chat-reaction--empty .reaction-trigger{min-width:32px;min-height:32px;padding:0;box-shadow:0 10px 22px rgba(15,23,42,.16)}.chat-reaction .reaction-popover,.chat-reaction--empty .reaction-popover{left:auto;right:0}.chat-reaction .reaction-popover{top:calc(100% + 6px)}.chat-reaction--empty .reaction-popover{top:calc(100% + 10px)}.chats__content>.date-bar{clear:both;display:flex;justify-content:flex-end;align-items:center;gap:4px;float:none;margin-top:6px;width:100%}.reaction-loading{opacity:.68;pointer-events:none}.reaction-flyin{position:fixed;left:0;top:0;z-index:10010;font-size:22px;line-height:1;pointer-events:none;filter:drop-shadow(0 8px 18px rgba(15, 23, 42, 0.18));will-change:transform,opacity}@keyframes comment-focus-nudge{0%,100%{transform:translate3d(0, 0, 0)}45%{transform:translate3d(4px, 0, 0)}}@media(prefers-reduced-motion: reduce){.comments .comment-focus-highlight,.comments .comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:none}}@keyframes reaction-pop{0%{opacity:0;transform:translateY(8px) scale(0.82)}70%{opacity:1;transform:translateY(-2px) scale(1.03)}100%{opacity:1;transform:translateY(0) scale(1)}}#replyUseName{line-height:20px;height:20px}.img-preview{width:100%;height:100%;top:0;z-index:111;overflow:auto;cursor:zoom-out;transition:background-color .2s ease-in-out}.img-preview img{max-width:inherit;transition:transform .3s ease-in-out}.article-footer{margin-top:20px;max-width:768px}.article-footer .module{margin-left:20px}.article-footer .module:first-child{margin-left:0}#reportDialog{display:none}body.revision-modal-open{overflow:hidden}.revision-modal{align-items:center;display:none;inset:0;justify-content:center;position:fixed;z-index:260}.revision-modal.is-open{display:flex}.revision-modal__overlay{background:rgba(15,23,42,.58);inset:0;position:absolute}.revision-modal__panel{background:#fff;border:1px solid rgba(148,163,184,.28);border-radius:8px;box-shadow:0 24px 60px rgba(15,23,42,.28);display:flex;flex-direction:column;height:min(82vh,860px);max-width:calc(100vw - 48px);overflow:hidden;position:relative;width:min(1080px,86vw)}.revision-modal__header{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex:0 0 auto;justify-content:space-between;min-height:56px;padding:0 18px}.revision-modal__title{color:#2c2c2c;font-size:16px;font-weight:600;line-height:24px}.revision-modal__close{align-items:center;background:#f6f8fa;border:1px solid #e6e6e6;border-radius:50%;color:#616161;cursor:pointer;display:inline-flex;font-size:24px;height:34px;justify-content:center;line-height:32px;padding:0;width:34px}.revision-modal__close:hover{background:#fff;color:#2c2c2c}.revision-modal__body{box-sizing:border-box;flex:1 1 auto;min-height:0;padding:16px}.revision-modal #revision{display:flex;flex-direction:column;height:100%;min-height:0}.revision-modal #revisions{display:flex;flex-direction:column;height:100%;min-height:0}.revision-modal #revision .revisions{margin:5px 0 15px;text-align:center}.revision-modal #revision .revisions a{color:#616161;vertical-align:middle}.revision-modal #revision .revisions a:hover{color:#2c2c2c}.revision-modal #revision .revisions a.disabled{color:#878787;cursor:default}.revision-modal #revision .revisions span{margin:0 10px 0 10px}.revision-modal #revision .revision-picker{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:8px 12px;margin-bottom:14px;padding-bottom:12px}.revision-modal #revision .revision-picker label{align-items:center;color:#616161;display:flex;gap:6px}.revision-modal #revision .revision-picker select{border:1px solid #d9d9d9;border-radius:3px;box-sizing:border-box;height:32px;max-width:240px;padding:0 8px}.revision-modal #revision .revision-picker .revision-picker__toggle{white-space:nowrap}.revision-modal #revision .revision-picker .revision-picker__compare{height:32px;line-height:30px;padding:0 14px}.revision-modal #revision .revision-diff{flex:1 1 auto;max-height:none;min-height:0;overflow:auto;padding-right:2px}.revision-modal #revision .revision-diff-section{margin-top:14px}.revision-modal #revision .revision-diff-section h3{color:#2c2c2c;font-size:14px;line-height:20px;margin:0 0 6px}.revision-modal #revision .revision-diff-title,.revision-modal #revision .revision-diff-lines{background:#fff;border:1px solid #e6e6e6;border-radius:4px}.revision-modal #revision .revision-diff-title{line-height:1.8;padding:10px;white-space:pre-wrap;word-break:break-word}.revision-modal #revision .revision-diff-word--add{background:#e9f7ec;color:#569e3d}.revision-modal #revision .revision-diff-word--remove{background:#ffeded;color:#d23f31;text-decoration:line-through}.revision-modal #revision .revision-diff-line{border-left:3px solid rgba(0,0,0,0);box-sizing:border-box;line-height:1.7;min-height:28px;padding:4px 10px;white-space:pre-wrap;word-break:break-word}.revision-modal #revision .revision-diff-line+.revision-diff-line{border-top:1px solid #f0f0f0}.revision-modal #revision .revision-diff-line--add{background:#f0fbf2;border-left-color:#569e3d}.revision-modal #revision .revision-diff-line--remove{background:#fff1f1;border-left-color:#d23f31}.article-list ul>li{padding:15px}.article-list .stick li:last-child{border-bottom-width:0}.article-list ul>li>h2{margin:5px 0}.article-list ul>li>h2>a{font-size:16px;font-weight:700}.article-list ul>li:hover .fn-hidden{visibility:visible}.article-list .abstract{margin-top:5px;color:#616161;display:block;text-decoration:none}.article-list .abstract-img{width:180px;height:135px;border-radius:2px;margin-left:10px;background-size:cover;background-position:center center}.article-list ul>li>h2>a:visited,.article-list .abstract:visited{color:#999}.article-list .author{color:#616161;font-weight:600}.article-list .list-info{line-height:18px}.heat{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0}.point,.point-remove{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0px;width:5px;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:slideInRight;animation-name:slideInRight}.point-remove{animation-name:slideInLeft;-webkit-animation-name:slideInLeft}@keyframes slideInLeft{0%{right:0}100%{right:100%}}@-webkit-keyframes slideInLeft{0%{right:0}100%{right:100%}}@keyframes slideInRight{0%{right:100%}100%{right:0}}@-webkit-keyframes slideInRight{0%{right:100%}100%{right:0}}.article-level0{color:#878787}.article-level1{color:#fc0}.article-level2{color:#ffc1cc}.article-level3{color:#f63}.article-level4{color:#e59230}.recent-rss{color:#f93 !important;float:right;margin:2px 0 0 10px}.recent-rss:hover{color:#4285f4 !important}.domain-rss{color:#f93 !important}.domain-rss svg{vertical-align:sub}.domain-rss:hover{color:#4285f4 !important}.verify{background-color:#fff}.verify .intro{padding:100px 50px;background-color:#f1f7fe;width:40%;color:#616161}.verify .verify-wrap{width:60%}.verify .form{font-size:14px;line-height:1.6;width:250px;margin:100px auto}.verify .form>svg{margin:0 auto;display:block;height:100px;width:100px}.verify .form input[type=text],.verify .form input[type=password]{margin:10px 0;width:100%;padding-left:36px;background-color:#fff}.verify .form button{margin:10px 0;width:100%}.verify .form .input-wrap{position:relative}.verify .form .input-wrap svg{color:#787777;position:absolute;top:19px;left:10px;z-index:1}.verify .form .captcha-img{top:11px;position:absolute;height:31px;left:1px;border-radius:3px 0 0 3px}.verify .form input.captcha-input{padding-left:91px}.verify .openid-info{font-size:14px;line-height:1.6;margin:100px 20px}.verify .openid-info .tip1{font-size:20px;font-weight:bold}.verify .openid-info .tip2{color:#b0a114}.verify .openid-info .info-box{margin-top:20px;margin-bottom:20px;display:flex;flex-direction:row;padding:10px;align-items:center;background:#eee;border-radius:2px}.verify .openid-info .info-detail{font-size:18px}.verify .openid-intro .openid-intro-title{color:#4285f4}.guide .guide-tab,.guide .step-btn{margin:50px}.guide .guide-tab svg{height:100px;width:100px}.guide .form{margin:0;width:auto}.guide #avatarUpload label{margin-top:0}.guide .tag-desc>li{margin:0 20px 20px 0}.guide .tag-desc>li>div{left:-3px;right:inherit;border-radius:0px 3px 3px 3px}.guide .tag-desc li.current>a{background-color:#4285f4;color:#fff;border-color:rgba(0,0,0,.02)}.guide .intro dl{margin-left:50px}.guide .intro dd{margin-bottom:50px}.guide .intro dt{position:relative}.guide .intro dt.current{color:#ffac45}.guide .intro dt .index{position:absolute;left:-38px;font-size:46px;top:-13px;font-family:serif;font-weight:600}.guide .fn-flex>div{padding:10px;width:50%}.guide .md{background-color:#f1f7fe}.guide .md pre{white-space:pre-wrap;word-wrap:break-word}.tag-articles .article-info{padding:15px 15px 0;margin-bottom:15px}.tag-articles .desc,.tag-articles .tag-articles-tag-desc.tag-desc{margin:0 15px}.tag-articles .tag-articles-tag-desc.tag-desc>li{margin:0 15px 15px 0}.tag-articles .tag-articles-tag-desc.tag-desc>li>div{left:-3px;right:auto;border-radius:0 3px 3px 3px}code.prettyprint{display:inline;border:none;background-color:initial;border-radius:initial;padding:initial}code .str{color:initial}code .kwd{color:initial}code .com{color:initial;font-style:italic}code .typ{color:initial}code .lit{color:initial}code .pun{color:initial}code .pln{color:initial}code .tag{color:initial}code .atn{color:initial}code .atv{color:initial}code .dec{color:initial}.activity{min-height:300px}.activity .list .ft-fade{margin-top:6px;display:block}#charCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;background-image:url(../images/m-char.png);background-size:cover;margin:20px auto}#paintCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;background-size:cover;margin:20px auto}#snakeCanvas,#gobangCanvas{margin:20px auto;display:block}.snak-rank{margin:30px 15px 0}.snak-rank .module:last-child{margin-left:20px;margin-bottom:20px}.snak-rank .count{position:absolute;top:10px;right:10px}.sub-head .avatar-small{height:24px;width:24px;vertical-align:-3px}.sub-head .ft-13{font-weight:normal}.chat-room .online-cnt{line-height:33px;margin-right:10px;color:#787777}.chat-room .list{height:200px;overflow:auto}.chat-room .form.fn-content{background-color:#f1f7fe}.chat-room #comments li img{max-height:400px;max-width:600px}.index .index-main{width:60%}.index .index-side{margin-left:2px;width:40%}.index .article-list .heat{display:none}.index .more{display:block;text-align:right}.index .index-tabs>span{flex:1;display:inline-block;vertical-align:middle;line-height:40px;cursor:pointer;transform:translateZ(0);backface-visibility:hidden;position:relative;transition-property:color;transition-duration:.3s;text-align:center;border-bottom:2px solid #4285f4;background-color:#fff;color:#787777;overflow:hidden}.index .index-tabs>span a{color:#2c2c2c;text-decoration:none;display:block}.index .index-tabs>span a svg{vertical-align:text-bottom}.index .index-tabs>span.current,.index .index-tabs>span.current:hover{color:#2c2c2c}.index .index-tabs>span.tags{border-bottom-color:#569e3d;margin:0 2px}.index .index-tabs>span.users{border-bottom-color:#f1e05a}.index .index-tabs>span.perfect{border-bottom-color:#e59230}.index .index-tabs>span.check{border-bottom-color:#563d7c;margin:0 2px}.index .index-tabs>span.post{border-bottom-color:#ffac45}.index .index-tabs>span:hover,.index .index-tabs>span:hover a{color:#fff}.index .index-tabs>span:before{content:"";position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;background-color:#4285f4;transform:scaleY(0);transform-origin:50% 100%;transition:transform .3s ease-out}.index .index-tabs>span.tags:before{background-color:#569e3d}.index .index-tabs>span.users:before{background-color:#f1e05a}.index .index-tabs>span.perfect:before{background-color:#e59230}.index .index-tabs>span.check:before{background-color:#563d7c}.index .index-tabs>span.post:before{background-color:#ffac45}.index .index-tabs>span:hover:before{transform:scaleY(1)}.index .index-tabs>span.current:hover:before{transform:scaleY(0)}.index .index-tabs>span>svg{display:none;vertical-align:text-top}.index .index-tabs>span.current>svg{display:inline-block}.index .perfect-panel{background-color:#f1f7fe}.index .perfect-panel .avatar-small{position:absolute;left:10px}.index .perfect-panel .fn-ellipsis{padding:0 50px 0 30px;display:block;box-sizing:border-box;line-height:20px}.index .perfect-panel .count{position:absolute;right:10px;top:17px}.index .metro-item{flex:1;width:215px;height:215px;text-align:center;overflow:hidden;position:relative;margin-right:2px;margin-bottom:2px}.index .metro-item .calendar-container{height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.index .metro-item .calendar-container .canendar-body{height:75%;width:60%;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:20px 20px 5px 5px;box-shadow:0 2px 4px rgba(0,0,0,.5);transition:all .15s ease-in-out}.index .metro-item .calendar-container .canendar-body .calendar-head{height:33%;font-size:13px;background:#be4145;border-radius:10px 10px 0 0;width:100%;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center}.index .metro-item .calendar-container .canendar-body .calendar-content{height:67%;font-size:80px;font-weight:bold;color:#333;background:#fff;width:100%;border-radius:0 0 5px 5px}.index .metro-item .calendar-container .canendar-body:hover{box-shadow:0 5px 10px rgba(0,0,0,.5)}.index .metro-item .preview{height:100%;width:100%;padding-top:108px;position:relative;box-sizing:border-box;display:block;transition:all .2s ease-out 0s;color:#999;text-decoration:none}.index .metro-item .preview:hover{background-color:rgba(0,0,0,.02);color:#2c2c2c}.index .metro-item .preview img{transition:all .2s ease-out 0s;margin-top:-48px;height:60px;width:60px}.index .metro-item .preview:hover>img{border-radius:30px}.index .metro-item .preview>b{display:block;margin-top:20px;font-weight:normal}.index .tag-metro-item{text-align:center;overflow:hidden;position:relative;margin-right:15px;width:40px;margin-bottom:15px}.index .tag-metro-item .preview{height:100%;width:100%;position:relative;box-sizing:border-box;display:block;transition:all .2s ease-out 0s;color:#999;text-decoration:none}.index .tag-metro-item .preview:hover{background-color:rgba(0,0,0,.02);color:#2c2c2c}.index .tag-metro-item .preview img{transition:all .2s ease-out 0s;margin-top:0px;height:40px;width:40px}.index .tag-metro-item .preview:hover>img{border-radius:30px}.index .tag-metro-item .preview>b{display:block;font-weight:normal;white-space:nowrap}.index__bottom{background-color:rgba(0,0,0,.02);padding-top:20px;margin-top:20px}.index .metro-border>div{height:2px;flex:1;background-color:#4285f4;margin-right:2px;margin-top:-2px}.index .metro-border>div.yellow{background-color:#f1e05a}.index .metro-border>div.green{background-color:#569e3d}.index .metro-border>div.red{background-color:#d23f31}.index .metro-border>div.purple{background-color:#563d7c}.index .ad img{width:100%}@keyframes ripple{to{transform:scale(2);opacity:0}}.ripple{position:absolute;background:rgba(0,0,0,.15);border-radius:100%;transform:scale(0);pointer-events:none;animation:ripple .75s ease-out;content:" ";width:100%;height:100%}.symhub li a{color:#616161;vertical-align:middle;font-size:16px;line-height:20px}.symhub li:last-child{border-bottom:0}.top-ranking{border-top:1px solid #eee;padding-top:15px}.cake{animation:move 3s 0s infinite;-webkit-animation:move 3s 0s infinite;transform-origin:bottom;-webkit-transform-origin:bottom}@keyframes move{0%,65%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}70%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}75%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}80%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}85%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}90%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}95%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes move{0%,65%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}70%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}75%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}80%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}85%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}90%{-webkit-transform:rotate(6deg);transform:rotate(6deg)}95%{-webkit-transform:rotate(-6deg);transform:rotate(-6deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}#chatRoomIndex li img{max-width:150px;max-height:150px}.comment__reply{padding:15px}.comment__reply .reply__text{color:#4285f4;cursor:pointer;border:1px solid #eee;line-height:37px;border-radius:3px;padding:0 10px}.article__meta{background-color:#f6f8fa;color:rgba(0,0,0,.38);font-size:12px;transition:all .15s ease-in-out;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:3px;display:flex}.article__meta a{outline:0;text-decoration:none}.article__meta #articleMeta{height:38px;overflow:hidden;margin:15px 0 0 5px}.article__meta .meta__more{float:right;margin:0 15px 0 0;cursor:pointer;height:38px}.article__meta .avatar{height:68px;width:68px;border-radius:3px 0 3px 0}.article__meta .article__titles{text-align:center;width:68px}.article__meta .article__titles span{margin:15px 1px 0;display:inline-block}.ft-a-title{color:#616161 !important;text-decoration:none}.article__stats{font-size:12px;line-height:18px;text-align:center;color:#8b8b8b;margin-right:15px;float:left}.article__view{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px;line-height:16px;color:#8b8b8b;margin:15px 0 15px 5px;text-align:right;border-top:1px solid #eee;padding:15px 15px 0 0}.article__view .tooltipped__n{margin-right:0}.article__view>.tooltipped__n>svg{margin-right:3px}.article__view .tooltipped__n:hover{color:var(--text-gray-color)}.article-visit-source{display:inline-flex;align-items:center;color:#8b8b8b;font-size:12px;line-height:16px}.article-visit-source__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:3px;color:#8b8b8b;flex:0 0 auto}.article-visit-source__icon svg{display:block;width:16px;height:16px;fill:currentColor;margin-right:0}.article-visit-source--google .article-visit-source__icon,.article-visit-source--chrome .article-visit-source__icon{color:#4285f4}.article-visit-source--baidu .article-visit-source__icon{color:#35f}.article-visit-source--bing .article-visit-source__icon,.article-visit-source--edge .article-visit-source__icon{color:#0078d7}.article-visit-source--sogou .article-visit-source__icon{color:#fa4f00}.article-visit-source--yandex .article-visit-source__icon{color:#fc3f1d}.article-visit-source--360 .article-visit-source__icon,.article-visit-source--android .article-visit-source__icon{color:#2fa866}.article-visit-source--duckduckgo .article-visit-source__icon{color:#de5833}.article-visit-source--safari .article-visit-source__icon{color:#0a84ff}.article-visit-source--firefox .article-visit-source__icon{color:#ff7139}.article-visit-source--opera .article-visit-source__icon{color:#ff1b2d}.article-visit-source--samsung .article-visit-source__icon{color:#1428a0}.article-visit-source--iphone .article-visit-source__icon{color:#6e6e73}.article__cnt{font-size:14px;line-height:20px;display:block;color:rgba(0,0,0,.54)}.article-tail .article__cmt-refs,.article-tail .comment__action,.article__meta{margin-top:15px}.article-tail{padding-top:15px}.article-tail .tag-desc>li{margin-bottom:0}.article-tail .tag-desc>li>a{float:left;color:var(--layer-color);padding:2px 5px;border:1px solid rgba(0,0,0,0);position:relative;height:20px;white-space:nowrap;word-wrap:normal;background-color:var(--background-secondary-color);border-radius:3px 3px 3px 3px;line-height:21px}.article-tail .tag-desc>li>a>div{border-radius:2px 2px 2px 2px;height:16px;width:16px;float:left;margin:2px 3px 0 0;background-image:none;background-color:rgba(0,0,0,.02);background-size:cover;background-repeat:no-repeat;background-position:50%}.article-level0{color:var(--text-fade-color) !important}.fn__flex-inline{display:inline-flex;align-items:center}.article__stats--a:hover{text-decoration:none;color:var(--text-color)}.article__meta:hover{box-shadow:0 0 5px rgba(0,0,0,.2)}.article__stats--a:hover .article__cnt{color:var(--text-color) !important}.tag-desc>li:hover>a,.tag-desc>li>a.tag-desc--current{border-bottom-style:dotted;border-radius:3px 3px 0 0;z-index:2;color:var(--text-color);box-shadow:0 1px 2px rgba(0,0,0,.2)}.tag-desc>li>a{float:left;color:var(--layer-color);padding:2px 5px;border:1px solid rgba(0,0,0,0);position:relative;height:20px;white-space:nowrap;word-wrap:normal;background-color:var(--background-secondary-color);border-radius:3px 3px 3px 3px;line-height:21px}.tag-desc>li:hover>div{display:block}.tag-desc>li>div{-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);background-color:var(--background-secondary-color);border-radius:3px 0 3px 3px;display:none;right:0;margin-left:3px;padding:5px 10px;position:absolute;top:26px;z-index:41;width:200px;min-width:150px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.tag-desc--right>li>div{left:-3px !important;right:auto !important;border-radius:0 3px 3px 3px !important}.article-tail .tag-desc>li{margin-bottom:0}.tag-desc>li{float:left;position:relative;list-style:none;margin:0 15px 15px 0;font-size:12px}.ft__smaller{font-size:12px}.chats__content .ft__smaller{font-weight:500;font-size:13px}.article__participant{float:left;cursor:pointer;width:42px;height:38px;padding-top:3px;box-sizing:border-box}.article__participant .avatar-small{border-radius:18px;height:32px;width:32px}.fn__space5{width:5px;display:inline-block}.fn__pointer{cursor:pointer}.article__meta .meta__more{float:right;margin:0 15px 0 0;cursor:pointer;height:38px}.ft-a-title:hover{color:var(--text-color) !important}.ft-a-title{color:var(--layer-color) !important;text-decoration:none}.chats__users{overflow:auto}.chats__users::-webkit-scrollbar{display:none}.chat-room--qq-layout .chat-room__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:8px 10px;border-radius:10px;background:#fff;box-shadow:0 4px 10px rgba(15,23,42,.08);box-sizing:border-box}.chat-room--qq-layout .chat-room__header-title{font-size:16px;font-weight:600;color:#111827}.chat-room--qq-layout .chat-room__header-actions{display:flex;align-items:center;gap:6px}.chat-room--qq-layout .module{padding-top:10px;box-sizing:border-box}.chat-room--qq-layout .chat-room__layout{display:flex;flex-direction:row;align-items:stretch;gap:10px}.chat-room--qq-layout .chat-room__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;max-height:calc(100vh - 160px)}.chat-room--qq-layout .chat-room__messages{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.chat-room--qq-layout #comments{flex:1 1 auto;min-height:0;overflow-y:auto;height:auto !important;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.26) rgba(0,0,0,0)}.chat-room--qq-layout #comments::-webkit-scrollbar{width:6px}.chat-room--qq-layout #comments::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.chat-room--qq-layout #comments::-webkit-scrollbar-thumb{background:rgba(0,0,0,.26);border-radius:3px}.chat-room--qq-layout #comments::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.38)}.chat-room--qq-layout .chat-room__input{flex:0 0 auto;margin-top:10px;border-top:1px solid #eee;padding-top:10px}.chat-room--qq-layout .chat-room__toolbar{padding-bottom:8px}.chat-room--qq-layout .chat-room__actions{margin-top:8px}.chat-room--qq-layout .chat-room__status{margin-top:8px;display:flex;justify-content:space-between;align-items:center}.chat-room--qq-layout .chat-room__status-left{display:flex;align-items:center;gap:8px}.chat-room--qq-layout .chat-room__side{flex:0 0 260px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 160px);overflow:hidden}.chat-room--qq-layout .chat-room__topic{flex:0 0 auto}.chat-room--qq-layout .chat-room__online{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.chat-room--qq-layout .chat-room__top-bar{flex:0 0 auto;width:100%}.chat-room--qq-layout .chat-room__top-bar-inner{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;border-radius:10px;border:1px solid rgba(0,0,0,.06);background:linear-gradient(135deg, #f9fafb 0%, #eef2ff 100%);box-shadow:0 4px 10px rgba(15,23,42,.08)}.chat-room--qq-layout .chat-room__top-bar--compact{background:rgba(0,0,0,0);border:none;box-shadow:none;width:auto}.chat-room--qq-layout .chat-room__top-bar-inner--right{justify-content:flex-end;padding:4px 0;gap:4px;background:rgba(0,0,0,0);box-shadow:none;border-radius:0;border:none}.chat-room--qq-layout .chat-room__top-btn{flex:0 0 auto;min-width:0;white-space:nowrap;padding:4px 10px;border-radius:999px;border:none;background:rgba(255,255,255,.85);font-size:12px;line-height:18px;color:#374151;display:inline-flex;align-items:center;justify-content:center;gap:4px;box-shadow:0 0 0 1px rgba(148,163,184,.5);cursor:pointer;transition:background-color .12s ease-in-out,box-shadow .12s ease-in-out,transform .08s ease-in-out}.chat-room--qq-layout .chat-room__top-btn svg{width:14px;height:14px}.chat-room--qq-layout .chat-room__side-topbar .chat-room__top-btn{font-size:11px;padding:3px 8px}.chat-room--qq-layout .chat-room__top-btn:hover{background:#eff6ff;box-shadow:0 0 0 1px #3b82f6;transform:translateY(-1px)}.chat-room--qq-layout .chat-room__top-btn:active{transform:translateY(0);box-shadow:0 0 0 1px #2563eb}@media(max-width: 960px){.chat-room--qq-layout .chat-room__header{flex-direction:column;align-items:flex-start;gap:6px}.chat-room--qq-layout .chat-room__header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.chat-room--qq-layout .chat-room__top-bar-inner{padding:6px 8px;gap:4px}.chat-room--qq-layout .chat-room__top-btn{flex:1 0 48%;font-size:11px;padding:3px 6px}}.chat-room--qq-layout .chat-room__topic,.chat-room--qq-layout .chat-room__online{background-color:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.08);padding:10px;box-sizing:border-box}.chat-room--qq-layout .chat-room__topic-header{font-weight:600;margin-bottom:6px;font-size:13px;color:#616161}.chat-room--qq-layout .chat-room__topic-body{display:flex;flex-direction:column;gap:4px}.chat-room--qq-layout .chat-room__topic-text{color:#4285f4;font-size:13px;word-break:break-all}.chat-room--qq-layout .chat-room__topic-actions{display:flex;align-items:center;gap:4px}.chat-room--qq-layout .chat-room__online-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#616161;margin-bottom:6px}.chat-room--qq-layout .chat-room__online-toggle svg{vertical-align:-2px}.chat-room--qq-layout .chat-room__online-list{flex:1 1 auto;min-height:0;overflow-y:auto}.chat-room--qq-layout .chat-room__online-list.chats__users{overflow:auto !important}@media(max-width: 960px){.chat-room--qq-layout .chat-room__header{flex-direction:column;align-items:flex-start;gap:6px}.chat-room--qq-layout .chat-room__header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.chat-room--qq-layout .chat-room__layout{flex-direction:column}.chat-room--qq-layout .chat-room__side{flex:0 0 auto;max-height:none;order:-1}.chat-room--qq-layout .chat-room__main{max-height:none}.chat-room--qq-layout #comments{max-height:64vh}}.chat-room--qq-layout .chat-room__topic,.chat-room--qq-layout .chat-room__online{border-radius:10px;border:1px solid rgba(0,0,0,.06);background:linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);box-shadow:0 6px 16px rgba(15,23,42,.08);padding:12px 14px;position:relative;overflow:hidden}.chat-room--qq-layout .chat-room__topic::before,.chat-room--qq-layout .chat-room__online::before{content:"";position:absolute;left:-40%;top:0;width:180%;height:3px;background:linear-gradient(90deg, #4f46e5, #0ea5e9, #10b981);opacity:.75}.chat-room--qq-layout .chat-room__topic-header,.chat-room--qq-layout .chat-room__online-header{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px;font-size:13px;color:#4b5563}.chat-room--qq-layout .chat-room__topic-label{font-weight:600;font-size:13px;color:#111827}.chat-room--qq-layout .chat-room__topic-header svg,.chat-room--qq-layout .chat-room__online-header svg{width:14px;height:14px}.chat-room--qq-layout .chat-room__topic-body{padding:8px 10px;border-radius:8px;background:rgba(37,99,235,.03);border:1px solid rgba(37,99,235,.06);display:flex;flex-direction:column;gap:6px}.chat-room--qq-layout .chat-room__topic-text{display:flex;align-items:center;gap:6px;font-size:13px;color:#111827;font-weight:500;word-break:break-all}.chat-room--qq-layout .chat-room__topic-text::before{content:"公告";font-size:11px;padding:1px 6px;border-radius:999px;background:rgba(37,99,235,.06);color:#1d4ed8;border:1px solid rgba(37,99,235,.15)}.chat-room--qq-layout .chat-room__topic-text #discuss-title{color:#1d4ed8;font-weight:600}.chat-room--qq-layout .chat-room__topic-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:2px}.chat-room--qq-layout .chat-room__topic-actions a{width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(148,163,184,.12);transition:all .15s ease-in-out}.chat-room--qq-layout .chat-room__topic-actions a svg{width:14px;height:14px;color:#6b7280}.chat-room--qq-layout .chat-room__topic-actions a:hover{background:rgba(59,130,246,.1)}.chat-room--qq-layout .chat-room__topic-actions a:hover svg{color:#2563eb}.chat-room--qq-layout .chat-room__online-header{font-size:12px;color:#4b5563;margin-bottom:6px}.chat-room--qq-layout .chat-room__online-header>span:first-child{font-weight:600}.chat-room--qq-layout .chat-room__online-count{font-weight:600;color:#2563eb}.chat-room--qq-layout .chat-room__online-toggle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:rgba(148,163,184,.12);transition:background-color .15s ease-in-out}.chat-room--qq-layout .chat-room__online-toggle:hover{background:rgba(59,130,246,.16)}.chat-room--qq-layout .chat-room__online-toggle svg{width:14px;height:14px;color:#6b7280}.chat-room--qq-layout .chat-room__online-list{margin-top:4px;padding:6px 4px 2px 4px;border-radius:8px;overflow-y:auto;display:flex;flex-wrap:wrap;align-content:flex-start;gap:6px}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar{width:4px}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar-thumb{background:rgba(148,163,184,.6);border-radius:999px}.chat-room--qq-layout .chat-room__online-list.chats__users::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.9)}.chat-room--qq-layout .chat-room__online-list a{align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:999px;text-decoration:none;transition:transform .12s ease-in-out,box-shadow .12s ease-in-out}.chat-room--qq-layout .chat-room__online-list a:hover{transform:translateY(-1px);box-shadow:0 1px 1px rgba(15,23,42,.18);background:rgba(0,0,0,0)}.chat-room--qq-layout .chat-room__online-list .avatar-small{flex:0 0 auto;width:28px;height:28px;border-radius:999px;box-shadow:0 0 0 1px rgba(148,163,184,.6);background-size:cover;background-position:center}.chat-room--qq-layout .chat-room__online-list a::after{content:none}@media(max-width: 960px){.chat-room--qq-layout .chat-room__header{flex-direction:column;align-items:flex-start;gap:6px}.chat-room--qq-layout .chat-room__header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.chat-room--qq-layout .chat-room__side{gap:8px}.chat-room--qq-layout .chat-room__topic,.chat-room--qq-layout .chat-room__online{padding:10px 12px;box-shadow:0 3px 10px rgba(15,23,42,.08)}}.chats__input{margin-bottom:15px}.chats__editor{min-height:160px}.chats__content{background-color:var(--background-secondary-color);border-radius:5px;padding:8px 15px;margin:0 53px 15px 15px;overflow:initial;max-width:85%;box-sizing:border-box;position:relative}.chats__content--private{padding-top:8px;padding-bottom:6px}.chats__message{margin:0;line-height:18px}.chats__content--private>.chats__meta{margin-top:3px;min-height:15px;line-height:15px}.chats__content--private>.chats__meta .details,.chats__content--private>.chats__meta .details>summary{height:15px;line-height:15px}.chats__content .vditor-reset::-webkit-scrollbar{display:none}.chats__content .language-echarts,.chats__content .language-mermaid,.chats__content .language-mindmap,.chats__content iframe{max-width:510px;border:none !important}.chats__content .vditor-reset img:not(.emoji){max-width:150px;max-height:300px}.chats__arrow{position:relative}.chats__arrow:after{position:absolute;width:0;height:0;content:"";top:5px;left:-25px;border:5px solid rgba(0,0,0,0);border-right:5px solid var(--background-secondary-color)}.chats__item .avatar{position:relative;margin-right:0}.chats__item .avatar::after{content:"";position:absolute;width:38px;height:38px}.Christmas .avatar::after{right:-18px;top:-12px;transform:rotate(15deg);background:url("../images/festival/Christmas.png") no-repeat center center;background-size:cover}.NationalDay .avatar::after{right:0;top:0;background:url("../images/festival/NationalDay.png") no-repeat center center;background-size:cover}.MidAutumnFestival .avatar::after{right:-7px;top:-7px;width:52px;height:52px;background:url("../images/festival/MidAutumnFestival.png") no-repeat center center;background-size:cover}.SpringFestival .avatar::after{right:0;top:0;background:url("../images/festival/SpringFestival.png") no-repeat center center;background-size:cover}.chats__item--me{flex-direction:row-reverse}.chats__item--me .chats__content{margin:0 15px 15px 53px;background-color:rgba(98,162,240,.1)}@media(hover: hover)and (pointer: fine){.chat-reaction--empty{opacity:0;pointer-events:none;transform:scale(0.92);transform-origin:top right;transition:opacity .18s ease,transform .18s ease}.chats__content:hover>.chat-reaction--empty,.chat-reaction--empty.is-open{opacity:1;pointer-events:auto;transform:scale(1)}}.chats__item--me .chats__content .chats__arrow:after{right:-25px;border-left-color:rgba(98,162,240,.1);left:auto;border-right-color:rgba(0,0,0,0)}.ft__fade{color:var(--text-fade-color)}.fn__right{float:right}.action__item{line-height:18px;height:18px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;transition:all .15s ease-in-out;cursor:pointer;display:inline-flex;align-items:center}.action__item,.comment__titles span{font-size:12px;color:var(--layer-color)}.fn__flex-center{-ms-grid-row-align:center;align-self:center}.details{display:inline-block;position:relative}.details>summary{list-style:none}.fn__layer{display:block;padding:5px 0;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);position:absolute;background-color:var(--layer-background-color);line-height:20px;box-shadow:0 1px 2px rgba(0,0,0,.6);border:1px solid var(--layer-border-color);border-radius:3px;min-width:180px;right:0;z-index:100}.action__item details-menu{right:-15px;top:20px}.details>summary{list-style:none}.details>summary::-webkit-details-marker,.details>summary:before{display:none}.details>summary:focus{outline:none}.details:not([open])>:not(summary){display:none}.details details-menu.fn__layer:after,.details details-menu.fn__layer:before{top:-14px;right:12px;left:auto;position:absolute;border:7px solid rgba(0,0,0,0);border-bottom:7px solid var(--layer-background-color);content:" "}.details details-menu.fn__layer:before{border-width:8px;border-bottom-color:var(--layer-border-color);top:-16px;right:11px}.details details-menu.fn__layer.fn__layer--top{top:auto;bottom:24px}.details details-menu.fn__layer.fn__layer--top:after,.details details-menu.fn__layer.fn__layer--top:before{top:auto;bottom:-14px;border:7px solid rgba(0,0,0,0);border-top:7px solid var(--layer-background-color);border-bottom-color:rgba(0,0,0,0)}.details details-menu.fn__layer.fn__layer--top:before{bottom:-16px;border-width:8px;border-top-color:var(--layer-border-color)}.fn__layer .item{display:block;text-shadow:0 1px 0 var(--layer-background-color);position:relative;padding:5px 10px;color:var(--layer-color);font-weight:400;width:100%;box-sizing:border-box;word-break:break-all}.fn__layer .item--current,.fn__layer .item:hover{text-decoration:none;background-color:var(--layer-hover-background-color);color:var(--layer-hover-color) !important;text-shadow:none}.fn__layer a:hover{text-decoration:underline}.chats__item--me{flex-direction:row-reverse}.pd__15{padding:15px}.user-card{-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);width:400px;box-shadow:0 3px 12px rgba(27,31,35,.15);background-color:var(--layer-background-color);min-height:50px;box-sizing:border-box;font-size:14px;border-radius:3px;border-top:1px solid rgba(0,0,0,0)}.user-card>div{padding:15px;border-radius:3px}.user-card--bg{width:460px !important;background-size:cover;background-position:50%}.user-card--bg .avatar-mid{width:120px !important;height:120px !important;top:65px !important}.user-card--bg>div{margin-top:120px;border-radius:0 0 3px 3px}.user-card--bg .user-card__info,.user-card--bg .user-card__name{margin-left:135px !important}.user-card__name{font-size:18px;line-height:22px;margin-left:92px}.user-card__name,.user-card__name:hover{color:var(--text-color)}.user-card__info{margin:8px 0;line-height:18px;font-size:14px;min-height:18px;overflow:hidden}.user-card__icons a,.user-card__icons span{margin-right:10px;float:left;height:20px}.user-card__icons a svg,.user-card__icons span svg{margin-top:2px;height:16px;width:16px;color:var(--text-gray-color);vertical-align:super}.user-card__icons a:hover{text-decoration:none}.user-card__icons a:hover svg{color:#4285f4}.user-card__icons img{float:left;margin-top:2px}.user-card__icon--disabled svg{opacity:.3}.user-card .avatar-mid-card{height:77px;width:77px;position:absolute;top:-39px;background-color:rgba(255,255,255,.8);background-size:100% 100%}.user-card .avatar-mid-card::after{content:"";position:absolute;width:77px;height:77px}.Christmas .avatar-mid-card::after{right:-36px;top:-20px;transform:rotate(22deg);background:url("../images/festival/Christmas.png") no-repeat center center;background-size:cover}.NationalDay .avatar-mid-card::after{right:0;top:0;background:url("../images/festival/NationalDay.png") no-repeat center center;background-size:cover}.NationalDay .user-card.user-card--bg .avatar-mid-card::after{width:105px;height:105px}.MidAutumnFestival .avatar-mid-card::after{right:-14px;top:-14px;width:100px;height:100px;background:url("../images/festival/MidAutumnFestival.png") no-repeat center center;background-size:cover}.MidAutumnFestival .user-card.user-card--bg .avatar-mid-card::after{right:-14px;top:-14px;width:130px;height:130px}.SpringFestival .avatar-mid-card::after{right:0;top:0;background:url("../images/festival/SpringFestival.png") no-repeat center center;background-size:cover}.SpringFestival .user-card.user-card--bg .avatar-mid-card::after{width:105px;height:105px}.progress{background-color:rgba(100,100,100,.2);border-radius:5px;position:relative;margin:0 3px 0 10px;height:10px;width:100%}.progress-done{background:linear-gradient(to left, rgb(34, 199, 102), rgb(23, 154, 76));border-radius:5px;height:10px;width:0;transition:width 1s ease .3s}.percent{color:#333;user-select:none}.review{border:1px solid rgba(0,0,0,0);border-radius:5px;color:#777;display:flex;font-size:12px;align-items:center;padding:0 10px 10px 10px;margin:5px 0}.chats__content .vditor-reset{overflow:visible}.hongbao__item{position:relative;background-color:var(--layer-background-color);color:var(--layer-color);cursor:pointer;padding:7px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:3px 5px 8px 3px}.hongbao__item:hover{box-shadow:0 0 3px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.26)}.hongbao__finger_guessing{position:absolute;z-index:128;top:0;left:0;width:100%;height:100%;padding:5px;opacity:1;transition:.5s;box-sizing:border-box}.opened .hongbao__finger_guessing{display:none}.hongbao__finger_guessing_icon{position:absolute;right:-25px;width:45px;height:45px;border-radius:50%;border:2px solid rgba(0,0,0,0);transition:.2s}.hongbao__finger_guessing_icon:hover{border-color:#5c1151}.hongbao__finger_guessing_icon:nth-child(1){top:-25px;background:url("../images/redpacket/gesture/rock.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(2){top:15px;right:-50px;background:url("../images/redpacket/gesture/scissors.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(3){top:55px;background:url("../images/redpacket/gesture/paper.png") no-repeat center center;background-size:contain}.hongbao__icon{height:50px !important;width:50px !important;margin-right:7px}.hongbao__count{font-size:24px;margin:10px 0}.hide-list{--border-color: #d1d5da;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);--toolbar-background-color: #f6f8fa;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color: rgba(27, 31, 35, 0.05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000;background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px;z-index:3;font-size:14px;display:none;user-select:none;max-width:320px;min-width:80px;animation-duration:.15s;animation-name:scale-in;animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);color:var(--toolbar-icon-color)}.hide-list-emojis{display:inline-block;overflow:auto}.hide-list-emojis button{cursor:pointer;border-radius:3px;float:left;height:72px;width:72px;text-align:center;line-height:26px;padding:3px;box-sizing:border-box;font-size:16px;transition:all .15s ease-in-out;border:0;margin:0;background-color:rgba(0,0,0,0);overflow:hidden}.hide-list-emojis__tail{margin-top:5px;font-size:12px;color:var(--toolbar-icon-color);display:flex}.hide-list-emojis__tail a{text-decoration:none;color:var(--toolbar-icon-color)}.hide-list-emojis__tail a:hover{color:var(--toolbar-icon-hover-color);cursor:pointer;text-decoration:none}.hide-list-emojis__tip{flex:1;min-width:1px;width:200px;margin-right:10px;color:var(--toolbar-icon-color);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hide-list-emojis button:hover{text-decoration:none;border-color:rgba(0,0,0,.38);background-color:#eee}.hide-list-emojis button:active{background-color:rgba(0,0,0,.38);box-shadow:0 2px 4px rgba(0,0,0,.05) inset}.showList{display:block}.showList#emojiList{top:360px}.divX{text-align:right;cursor:pointer;height:15px}.divX>svg:hover{border:dashed red 1px;border-bottom-left-radius:100px}.TGIF__item{background-color:var(--layer-background-color);color:var(--layer-color);cursor:default;padding:10px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:0px 5px 10px 5px;transition:all .15s ease-in-out}.TGIF__item:hover{box-shadow:0 3px 6px rgba(0,0,0,.2)}.index-full-size{height:120px;border-radius:10px;margin-bottom:30px;color:#000;font-family:"Ma Shan Zheng",cursive;cursor:default}.index-full-size-white{background-color:rgba(229,228,228,.7);height:65px;border-radius:10px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin-bottom:18px;color:#303049;font-family:"Ma Shan Zheng",cursive;cursor:default}.hide-me{display:none}.login-qrcode-box{position:relative;margin:10px;text-align:center}.login-qrcode-box.scan-ing::after{content:"处理中...";position:absolute;top:0;left:50%;width:150px;height:150px;background:rgba(0,0,0,.7);line-height:150px;text-align:center;font-size:16px;color:#fff;transform:translateX(-50%)}.rainbow{background:linear-gradient(90deg, #ff0000, #ff8000, #ffff00, #00ff00, #00ffff, #0000ff, #8000ff, #ff00ff);background-size:800% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:rainbow 6s linear infinite}@keyframes rainbow{0%{background-position:0% 50%}100%{background-position:100% 50%}}.neon{background:linear-gradient(90deg, #ff00cc, #ff0066, #ff3333, #ff6600, #ffcc00);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:neon 3s ease infinite;text-shadow:0 0 5px rgba(255,0,204,.5)}@keyframes neon{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.fire{background:linear-gradient(90deg, #ff8a00, #ff0000, #ff8a00, #ff4500);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:fire 2.5s ease-in-out infinite}@keyframes fire{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.ocean{background:linear-gradient(90deg, #00b4db, #0083b0, #00b4db, #00c9ff);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:ocean 5s ease-in-out infinite}@keyframes ocean{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.forest{background:linear-gradient(90deg, #00ff7f, #32cd32, #228b22, #006400);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:forest 7s ease infinite}@keyframes forest{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.sunset{background:linear-gradient(90deg, #ff7e5f, #feb47b, #ff7e5f, #ff512f);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:sunset 6s ease infinite}@keyframes sunset{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.metal{background:linear-gradient(90deg, #bdc3c7, #2c3e50, #bdc3c7, #95a5a6);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:metal 4s linear infinite}@keyframes metal{0%{background-position:0% 50%}100%{background-position:100% 50%}}.galaxy{background:linear-gradient(90deg, #8a2be2, #4b0082, #9400d3, #8a2be2);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:galaxy 8s ease infinite;text-shadow:0 0 8px rgba(138,43,226,.4)}@keyframes galaxy{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.pulse{background:linear-gradient(90deg, #ff0080, #ff8c00, #40e0d0);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:pulse 4s ease infinite}@keyframes pulse{0%,100%{background-position:0% 50%;opacity:1}50%{background-position:100% 50%;opacity:.8}}.index-bottom>.wrapper{padding-left:12px;padding-right:12px;box-sizing:border-box}.activity-hub{display:flex;width:100%;gap:12px;box-sizing:border-box;align-items:stretch;padding:6px 0}.activity-hub__left{flex:1.2 1 0;min-width:0;display:flex;gap:12px;padding-left:10px}.activity-hub__right{flex:1.2 1 0;min-width:0;display:flex;align-items:stretch}.activity-hub__card{position:relative;flex:1 1 0;border-radius:8px;padding:18px 28px 12px 28px;box-sizing:border-box;background:#fff;border:1px solid rgba(148,163,184,.25);box-shadow:0 2px 6px rgba(15,23,42,.05);overflow:hidden}.activity-hub__card--holiday{display:flex;align-items:center;justify-content:space-between;min-height:56px}.activity-hub__card--holiday::before{content:"";position:absolute;left:-20%;top:0;width:140%;height:3px;background:linear-gradient(90deg, #e59230, #f97316, #fde68a);opacity:.85}.activity-hub__card-main{display:flex;flex-direction:column;gap:2px}.activity-hub__card-title{font-size:14px;line-height:1.35;color:#4b5563;font-weight:600}.activity-hub__card-subtitle{display:flex;align-items:baseline;gap:4px}.activity-hub__day{font-size:33px;font-weight:700;color:#111827;line-height:1}.activity-hub__day-unit{font-size:14px;color:#6b7280}.activity-hub__card--liveness{min-height:60px;display:grid}.activity-hub__card--liveness::before{content:"";position:absolute;left:-25%;top:0;width:150%;height:3px;background:linear-gradient(90deg, #22c55e, #0ea5e9);opacity:.8}.activity-hub__card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.activity-hub__status{font-size:13px;font-weight:600;color:#166534}.activity-hub__status:has(span:contains("未签到")),.activity-hub__status:has(:contains("未签到")){color:#b45309}.activity-hub__status-tag{font-size:11px;padding:2px 8px;border-radius:999px;background:rgba(15,118,110,.06);color:#0f766e;border:1px solid rgba(45,212,191,.4)}.activity-hub__progress-row{display:flex;align-items:center;gap:8px}.activity-hub__progress{position:relative;flex:1;height:8px;border-radius:999px;background:rgba(148,163,184,.25);overflow:hidden}.activity-hub__progress-done{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg, #22c55e, #16a34a);transition:width .4s ease-out}.activity-hub__progress-percent{font-size:12px;color:#111827;min-width:32px;text-align:right}.activity-hub__desc{margin:4px 0 0;font-size:11px;line-height:1.4;color:#6b7280}.activity-hub__actions{width:100%;display:flex;gap:10px;align-items:stretch;justify-content:flex-end;padding-right:10px;box-sizing:border-box}.activity-hub__pill{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 10px;min-width:0;flex:0 1 180px;border-radius:10px;border:1px solid rgba(148,163,184,.4);background:#fff;box-shadow:0 3px 10px rgba(15,23,42,.06);text-decoration:none;color:#111827;cursor:pointer;transition:background-color .16s ease-out,box-shadow .16s ease-out,transform .12s ease-out,border-color .16s ease-out;box-sizing:border-box;text-decoration:none !important}.activity-hub__pill:focus{outline:none}.activity-hub__pill:hover{transform:translateY(-1px);background:#f9fafb;border-color:rgba(171,171,171,.65);box-shadow:0 6px 16px rgba(15,23,42,.12)}.activity-hub__pill--primary{border-color:rgba(234,179,8,.75);background:linear-gradient(90deg, #fefce8, #fffbeb)}.activity-hub__pill--primary:hover{background:linear-gradient(90deg, #fef9c3, #fef3c7);border-color:rgba(234,179,8,.75)}.activity-hub__pill-icon{flex:0 0 auto;width:32px;height:32px;border-radius:999px;background:rgba(15,23,42,.02);display:flex;align-items:center;justify-content:center;overflow:hidden}.activity-hub__pill-icon img{width:22px;height:22px;object-fit:cover}.activity-hub__pill-body{flex:0 0 auto;min-width:0;display:flex;flex-direction:column;align-items:center}.activity-hub__pill-title{font-size:12px;font-weight:600;color:#111827;line-height:1.25;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.activity-hub__pill-desc{font-size:11px;color:#6b7280;line-height:1.3;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#yesterdayImg.cake{animation:move 3s 0s infinite;transform-origin:bottom}#yesterday.activity-hub__pill{padding:6px 8px;gap:6px}#yesterday.activity-hub__pill>img{flex:0 0 auto;width:24px !important;height:24px !important;border-radius:4px !important;margin:0;object-fit:cover}#yesterday.activity-hub__pill>b{font-size:12px;font-weight:600;color:#111827;line-height:1.4;text-align:center;white-space:normal}@media(max-width: 960px){.activity-hub{flex-direction:column;gap:10px}.activity-hub__left,.activity-hub__right{flex:1 1 auto}.activity-hub__actions{justify-content:flex-start}.activity-hub__pill{flex:1 1 46%}}@media(max-width: 720px){.activity-hub__pill{flex:1 1 100%}}.long-article-content{min-width:0;max-width:none;margin:36px 0 0;padding:0;overflow:visible !important;color:#25332a;font-size:var(--long-article-font-size, 18px);line-height:1.9;overflow-wrap:anywhere}.long-article-content>p{margin:1.15em 0;text-indent:2em}.long-article-content>p.long-article-paragraph-lines{text-indent:0}.long-article-content .long-article-paragraph-line{display:block;text-indent:2em}.long-article-content>p:has(>img),.long-article-content>p:has(>picture),.long-article-content>p:has(>video),.long-article-content>p:has(>iframe){text-indent:0}.long-article-content>h1,.long-article-content>h2,.long-article-content>h3,.long-article-content>h4,.long-article-content>h5,.long-article-content>h6{margin:1.8em 0 .75em;color:#1f2e24;line-height:1.45;text-indent:0}.long-article-content>ul,.long-article-content>ol,.long-article-content>blockquote,.long-article-content>pre,.long-article-content>table,.long-article-content>figure{margin-top:1.35em;margin-bottom:1.35em;text-indent:0}.long-article-content blockquote{padding:14px 18px;border-left:4px solid #9bb4a0;background:#f0f5ef;color:#526259}.long-article-content img{display:block;max-width:100%;height:auto;margin:1.6em auto}.long-article-content table{display:block;max-width:100%;overflow-x:auto}.long-article-content pre{border-radius:8px}.long-article-content :not(pre)>code{border-radius:4px;background:#edf2ec;color:#35513d}.long-article-commentable-block{position:relative;cursor:pointer}.long-article-paragraph-highlight{display:inline;padding:0 2px;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-color .18s ease,text-decoration-color .18s ease}.long-article-commentable-block:hover>.long-article-paragraph-highlight,.long-article-commentable-block.is-commenting>.long-article-paragraph-highlight{background:rgba(77,111,84,.14);text-decoration:underline;text-decoration-style:dashed;text-decoration-color:rgba(77,111,84,.42);text-decoration-thickness:1px;text-underline-offset:4px}.long-article-paragraph-comment-btn{position:relative;display:none;align-items:center;justify-content:center;width:24px;height:20px;margin-left:6px;padding:0;border:0;border-radius:3px;background:rgba(0,0,0,0);color:#6e8975;cursor:pointer;opacity:0;transform:translateY(-1px);vertical-align:.18em;text-indent:0;transition:opacity .2s ease,transform .2s ease,background .2s ease,color .2s ease}.long-article-paragraph-comment-btn svg{width:14px;height:14px}.long-article-paragraph-comment-btn span{position:static;display:none;min-width:12px;height:18px;padding:0 4px;border:1px solid rgba(77,111,84,.32);border-radius:2px;background:rgba(237,245,237,.78);color:#617068;font-size:10px;line-height:16px;text-align:center}.long-article-paragraph-comment-btn.has-comments{display:inline-flex;width:auto;min-width:18px;height:18px;padding:0;opacity:1}.long-article-paragraph-comment-btn.has-comments svg{display:none}.long-article-paragraph-comment-btn.has-comments span:not([hidden]){display:inline-block}.long-article-commentable-block:hover .long-article-paragraph-comment-btn,.long-article-paragraph-comment-btn.has-comments,.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn{opacity:1;transform:translateY(-1px)}.long-article-paragraph-comment-btn:hover,.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn{background:#3e7250;color:#fff}.long-article-paragraph-comment-btn:hover span,.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn span{border-color:#3e7250;background:rgba(0,0,0,0);color:#fff}.long-article-paragraph-comments{position:absolute;inset:0;z-index:6;display:none;box-sizing:border-box;min-width:0;padding:20px;overflow:auto;background:#dcebdd}.long-article-paragraph-comments .reaction-widget__summary{display:none}.long-article-paragraph-comments .comment-thread{--comment-thread-max-indent: 28px}#longArticleParagraphComments .action-btns{position:relative}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions{position:absolute;top:50%;left:calc(100% + 4px);z-index:3;display:inline-flex;align-items:center;gap:2px;padding:0;background:rgba(0,0,0,0);box-shadow:none;opacity:0;pointer-events:none;transform:translate(-4px, -50%);transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;visibility:hidden;white-space:nowrap}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions.is-actions-visible{opacity:1;pointer-events:auto;transform:translate(0, -50%);transition-delay:0s;visibility:visible}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions>span,#longArticleParagraphComments .long-article-paragraph-comment-more{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none;color:#617068;cursor:pointer}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions>span:hover,#longArticleParagraphComments .long-article-paragraph-comment-more:hover{background:rgba(95,126,104,.14);color:#2f6a43;transform:none}#longArticleParagraphComments .long-article-paragraph-comment-more-menu{position:relative;display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more{width:24px;min-width:24px;padding:0}#longArticleParagraphComments .long-article-paragraph-comment-more svg{width:16px;height:16px;fill:currentColor}#longArticleParagraphComments .long-article-paragraph-comment-more-panel{position:absolute;right:0;bottom:calc(100% + 6px);display:none;align-items:center;gap:2px;padding:4px;border:1px solid rgba(95,126,104,.18);border-radius:6px;background:#f4f8f4;box-shadow:none;white-space:nowrap}#longArticleParagraphComments .long-article-paragraph-comment-more-menu.is-more-open .long-article-paragraph-comment-more-panel{display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more-panel>span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none;color:#617068}#longArticleParagraphComments .long-article-paragraph-comment-more-panel>span:hover{background:rgba(95,126,104,.14);color:#2f6a43;transform:none}.long-article-paragraph-comments.is-active{display:block}#articleCommentsPanel.is-paragraph-view>:not(#comments):not(.long-article-paragraph-comments){display:none}#articleCommentsPanel.is-paragraph-view>#comments>:not(.long-article-paragraph-comments){visibility:hidden}.long-article-paragraph-comments__header{position:sticky;top:-20px;z-index:2;margin:-20px -20px 14px;padding:20px 20px 14px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);backdrop-filter:blur(8px)}.long-article-paragraph-comments__header strong{color:#1f2e24;font-size:20px}.long-article-paragraph-comments__header p{margin:10px 0;color:#526259;font-size:13px;line-height:1.6}.long-article-paragraph-comments__header>button{position:absolute;top:16px;right:18px;border:0;background:rgba(0,0,0,0);color:#77857c;cursor:pointer;font-size:24px}.long-article-paragraph-comments__sort,.long-article-paragraph-comments__pager{display:flex;justify-content:center;gap:8px}.long-article-paragraph-comments__sort button,.long-article-paragraph-comments__reply{min-height:30px;padding:0 10px;border:1px solid rgba(65,94,71,.14);border-radius:5px;background:#edf5ed;color:#6e8975;cursor:pointer;font-size:12px}.long-article-paragraph-comments .list>ul>li{margin:0;padding:16px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}.long-article-paragraph-comments__sort button.is-active{background:#3e7250;color:#fff}.long-article-paragraph-comments__reply{display:block;margin-bottom:12px;padding:10px 12px}.long-article-paragraph-comments__empty{padding:30px 0;color:#77857c;text-align:center}.long-article-paragraph-comments__pager{margin-top:16px;color:#77857c;font-size:12px}.long-article-paragraph-comments__pager button{border:0;background:rgba(0,0,0,0);color:#526c5a;cursor:pointer}body.night .long-article-paragraph-comments{background:#111}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header{background:rgba(17,17,17,.97)}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header strong{color:#eef4ef}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header p,body.night .long-article-paragraph-comments .long-article-paragraph-comments__header>button{color:#858f88}body.night .long-article-paragraph-comments .long-article-paragraph-comments__sort button,body.night .long-article-paragraph-comments .long-article-paragraph-comments__reply{border-color:rgba(255,255,255,.08);background:#191919;color:#989898}.long-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:14px;color:#718078;font-size:14px;line-height:1.6;text-align:left}.long-article-meta a{color:#526c5a;text-decoration:none}.long-article-meta a:hover{color:#2f6a43}.long-article-meta .long-article-author{color:#2f4937;font-weight:600}.long-article-meta__separator{color:#9ba79f}.long-article-home-link{display:inline-flex;align-items:center;gap:5px;min-height:32px;margin:0 0 24px;padding:0 10px 0 8px;border-radius:5px;color:#526c5a;font-size:13px;text-decoration:none;transition:background .2s ease,color .2s ease,transform .2s ease}.long-article-home-link svg{width:17px;height:17px}.long-article-home-link:hover{background:rgba(95,126,104,.12);color:#2f4937;text-decoration:none;transform:translateX(-2px)}.long-article-catalog{position:fixed;top:0;bottom:0;left:50%;z-index:100;display:none;width:min(var(--long-article-width, 800px),100vw - 28px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;background:#dcebdd;scrollbar-gutter:stable;transform:translateX(-50%)}.long-article-catalog__inner{box-sizing:border-box;min-height:100%;padding:64px clamp(32px,6vw,64px)}.long-article-catalog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid rgba(65,94,71,.18)}.long-article-catalog__header h2{margin:0;color:#1d2b21;font-size:28px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}.long-article-catalog__header span{display:block;margin-top:6px;color:#718078;font-size:13px}.long-article-catalog__close{display:inline-flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;background:rgba(0,0,0,0);color:#617068;cursor:pointer}.long-article-catalog__close svg{width:20px;height:20px}.long-article-catalog__close:hover{background:rgba(95,126,104,.12);color:#2f6a43}.long-article-catalog__chapters{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0 12px;margin-top:12px}.long-article-catalog__chapter{display:grid;grid-template-columns:96px minmax(0, 1fr);align-items:center;gap:18px;min-height:58px;padding:8px 12px;border-bottom:1px solid rgba(65,94,71,.12);box-sizing:border-box;color:#25332a;text-decoration:none}.long-article-catalog__chapter:hover{background:rgba(95,126,104,.09);color:#2f6a43;text-decoration:none}.long-article-catalog__chapter--active{background:rgba(95,126,104,.15);box-shadow:inset 3px 0 #3e7250;color:#28593a;font-weight:600}.long-article-catalog__chapter-no{color:#718078;font-size:13px;white-space:nowrap}.long-article-catalog__chapter-title{min-width:0;font-size:16px;line-height:1.55;overflow-wrap:anywhere}.article.long-article-page{--long-article-drawer-width: min(320px, calc(100vw - 72px));min-height:100vh;padding-top:0;overflow-x:hidden;background:#c7dcc8;color:#25332a}.article.long-article-page.long-article-catalog-open{overflow:hidden}.article.long-article-page.long-article-catalog-open .long-article-catalog{display:block}.article.long-article-page.long-article-catalog-open .long-article-settings{z-index:121}.article.long-article-page>.nav,.article.long-article-page>.footer,.article.long-article-page .article-header{display:none !important}.article.long-article-page #share,.article.long-article-page .share,.article.long-article-page .article-nav-scope,.article.long-article-page .article-tail{display:none !important}.article.long-article-page .long-article-reading-stage{display:flex;align-items:flex-start;column-gap:0;box-sizing:border-box;width:min(var(--long-article-width, 800px),100vw - 28px);max-width:calc(100vw - 28px);margin:0 auto;transition:width .32s ease,column-gap .32s ease}.article.long-article-page .article-container{flex:0 0 100%;box-sizing:border-box;width:100%;max-width:none;margin:0;border:0;border-radius:0;background:#dcebdd;box-shadow:none;transition:width .32s ease,flex-basis .32s ease}.article.long-article-page .article-body{padding:0}.article.long-article-page .article-body>.wrapper{box-sizing:border-box;width:100%;min-width:0;max-width:none;padding:80px clamp(32px,6vw,64px) 64px}.article.long-article-page h1.article-title{margin:0;padding:0;color:#1d2b21;font-size:32px;font-weight:650;line-height:1.35;text-align:left}.article.long-article-page h1.article-title svg{width:30px;height:30px;vertical-align:-4px}.article.long-article-page .long-article-reading-stage>.main{flex:0 0 0;box-sizing:border-box;width:0;min-height:0;height:0;margin:0;padding:0;overflow:visible;border-top:0;background:rgba(0,0,0,0);transition:width .32s ease,flex-basis .32s ease}.article.long-article-page #articleCommentsPanel{position:fixed;top:0;right:auto;bottom:0;left:var(--long-article-drawer-left, calc(100vw - var(--long-article-drawer-width)));z-index:115;display:flex;flex-direction:column;box-sizing:border-box;width:var(--long-article-drawer-width);min-width:0;height:100vh;height:100dvh;max-width:none;margin:0;padding:0 20px 86px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:0;border-left:1px solid rgba(61,91,68,.18);border-radius:0;background:#dcebdd;box-shadow:none;opacity:0;pointer-events:none;transform:translateX(24px);transition:left .32s ease,opacity .24s ease,transform .32s ease,visibility 0s linear .32s;visibility:hidden}.article.long-article-page #articleCommentsPanel>.module{flex:0 0 auto;margin:14px 0 0;border:0;background:rgba(0,0,0,0);box-shadow:none}.article.long-article-page #articleCommentsPanel>#comments{margin-top:0}.article.long-article-page #articleCommentsPanel>.pagination{flex:0 0 auto;margin:18px auto 0;float:none}.article.long-article-page.long-article-comments-open .long-article-settings{right:auto;left:var(--long-article-toolbar-open-left, calc(100vw - 78px));z-index:121}.article.long-article-page.long-article-comments-open .editor-panel{right:auto;left:var(--long-article-stage-left, 14px);width:var(--long-article-stage-width, calc(100vw - 28px));max-width:calc(100vw - 28px)}.article.long-article-page.long-article-comments-open #articleCommentsPanel{opacity:1;pointer-events:auto;transform:translateX(0);transition-delay:0s;visibility:visible}.article.long-article-page.long-article-comments-open.long-article-comments-inline .long-article-reading-stage{column-gap:0;width:var(--long-article-stage-width, calc(var(--long-article-width, 800px) + var(--long-article-drawer-width)));max-width:calc(100vw - 28px)}.article.long-article-page.long-article-comments-open.long-article-comments-inline .long-article-settings{left:calc(var(--long-article-drawer-left) + var(--long-article-drawer-width) + 14px)}.article.long-article-page.long-article-comments-open.long-article-comments-inline .article-container{flex-basis:var(--long-article-open-article-width, var(--long-article-width, 800px));width:var(--long-article-open-article-width, var(--long-article-width, 800px))}.article.long-article-page.long-article-comments-open.long-article-comments-inline .long-article-reading-stage>.main{flex-basis:var(--long-article-drawer-width);width:var(--long-article-drawer-width);height:auto}.article.long-article-page.long-article-comments-open:not(.long-article-comments-inline) .long-article-settings{display:none}.article.long-article-page .long-article-settings{right:auto;left:var(--long-article-toolbar-closed-left, min(50% + min(var(--long-article-half-width, 400px), 50vw - 14px) + 14px, 100vw - 78px));transition:left .32s ease}.article.long-article-page #comments{order:-1;margin:0;border:0;background:rgba(0,0,0,0);box-shadow:none}.article.long-article-page #comments .comments-header{position:sticky;top:0;z-index:4;margin:0 -20px 6px;padding:22px 20px 16px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);backdrop-filter:blur(8px)}.article.long-article-page #comments .comments-header__main>.fn-right{display:none}.article.long-article-page #comments .article-cmt-cnt{color:#1f2e24;font-size:22px;font-weight:650}.article.long-article-page #comments .long-article-comments-count{margin-left:4px;color:#77857c;font-size:13px;font-weight:400}.article.long-article-page #comments .comment-filterbar{margin-top:12px}.article.long-article-page #comments .comment-segment{border-color:rgba(65,94,71,.15);background:#edf5ed}.article.long-article-page #comments .comments-header a.comment-segment__item{color:#68776e}.article.long-article-page #comments .comments-header a.comment-segment__item:hover{color:#2f4937;background:rgba(255,255,255,.42)}.article.long-article-page #comments .comments-header a.comment-segment__item--active,.article.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#5f7e68;color:#fff}.article.long-article-page #comments .list{background:rgba(0,0,0,0)}.article.long-article-page #comments .list>ul{margin:0;padding:0 0 12px}.article.long-article-page #comments .list>ul>li,.article.long-article-page #comments .list>ul>li.cmt-perfect,.article.long-article-page #comments .list>ul>li.cmt-perfect:hover{margin:0;padding:18px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}.article.long-article-page #comments .list>ul>li>.fn-flex{align-items:flex-start;gap:2px}.article.long-article-page #comments .list>ul>li .avatar{width:34px;height:34px;border-radius:50%}.article.long-article-page #comments .comment-info{min-height:22px;color:#6f7d74;line-height:1.55}.article.long-article-page #comments .comment-info a,.article.long-article-page #comments .comment-thread__meta a{color:#405647;font-weight:600}.article.long-article-page #comments .comment{margin:7px 0 0;color:#243128;font-size:15px;line-height:1.75}.article.long-article-page #comments .comment-action{margin-top:8px}.article.long-article-page #comments .comment-thread{margin:12px 0 4px;padding:12px;border:0;border-radius:8px;background:#edf5ed}.article.long-article-page #comments .comment-thread__reply--nested::before,.article.long-article-page #comments .comment-thread__reply+.comment-thread__reply{border-color:rgba(65,94,71,.12)}.article.long-article-page #comments .comment-thread__content{color:#34463a}.article.long-article-page #comments .comment__reply{position:fixed;right:0;bottom:0;z-index:5;box-sizing:border-box;width:100%;margin:0;padding:14px 20px;border-top:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);box-shadow:0 -8px 22px rgba(40,66,47,.08);backdrop-filter:blur(8px)}.article.long-article-page #comments .comment__reply .reply__text{min-height:38px;box-sizing:border-box;border-color:rgba(65,94,71,.14);border-radius:8px;background:#edf5ed;color:#65746a;line-height:36px}.article.long-article-page .long-article-comments-close{display:inline-flex;flex:0 0 34px;align-items:center;justify-content:center;width:34px;height:34px;margin-left:auto;padding:0;border:0;border-radius:50%;background:rgba(95,126,104,.12);box-shadow:none;color:#617068}.article.long-article-page .long-article-comments-close:hover{background:rgba(95,126,104,.2);box-shadow:none;color:#2f4937}.article.long-article-page .long-article-comments-close svg{width:18px;height:18px}.article.long-article-page .editor-panel{right:auto;left:var(--long-article-stage-left, 14px);width:var(--long-article-stage-width, min(var(--long-article-width, 800px), 100vw - 28px));max-width:calc(100vw - 28px);transition:left .32s ease,width .32s ease}.article.long-article-page .editor-panel .editor-bg{display:none}.article.long-article-page .editor-panel .wrapper{right:0;left:auto;width:100%;min-width:0;max-width:100%;padding:16px 20px 20px;border-top:1px solid rgba(65,94,71,.16);background:#dcebdd;box-shadow:0 -12px 30px rgba(40,66,47,.16)}.article.long-article-page .article-footer{box-sizing:border-box;width:min(var(--long-article-width, 800px),100vw - 28px);max-width:none;margin-right:auto;margin-left:auto}.article-nav-scope{margin:24px 0 20px}.article-nav-scope__input,.article-nav-sort__input{position:absolute;opacity:0;pointer-events:none}.article-nav-scope__tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-scope__tab{min-width:72px;height:28px;padding:0 12px;border-radius:6px;color:#667085;cursor:pointer;font-size:13px;line-height:28px;text-align:center}.article-nav-sort{margin-top:12px}.article-nav-sort__tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-sort__tab{min-width:56px;height:26px;padding:0 10px;border-radius:6px;color:#667085;cursor:pointer;font-size:12px;line-height:26px;text-align:center}.article-nav-sort__panel--author,.article-nav-sort__panel--hot{display:none}.article-nav-scope--switchable .article-nav-scope__panel--all{display:none}#articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,#articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,#articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,#articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,#articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.12);color:#1f2937;font-weight:600}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--column{display:none}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--all{display:block}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--time,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--time{display:none}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--author,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--hot{display:block}.article-adjacent-nav{display:flex;flex-wrap:wrap;gap:16px;margin:14px 0 0;padding:16px 0;border-top:1px solid #eee;border-bottom:1px solid #eee}.article-adjacent-nav__item{flex:1 1 300px;min-width:0}.article-adjacent-nav__item--right{text-align:right}.article-adjacent-nav__link{display:block;min-height:64px;padding:12px 14px;border:1px solid #f0f0f0;border-radius:8px;background:#fafafa;color:#111;text-decoration:none;transition:background .2s ease,border-color .2s ease}.article-adjacent-nav__link:hover{border-color:#d0d7de;background:#fff;text-decoration:none}.article-adjacent-nav__link--disabled{color:#999;cursor:default}.article-adjacent-nav__label{margin-bottom:6px;color:#888;font-size:12px}.article-adjacent-nav__title{margin-bottom:6px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}.article-adjacent-nav__preview{color:#555;display:-webkit-box;font-size:13px;max-height:4.5em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-height:1.5;overflow-wrap:anywhere;text-overflow:ellipsis}.article-nav-list-card{margin:12px 0 0;padding:12px;border:1px solid #eceff5;border-radius:8px;background:#fbfdff}.article-nav-list-card__title{color:#2b3a55;font-weight:600}.article-nav-list-card__items{margin-top:10px;padding-top:8px;border-top:1px dashed #e6eaf0}.article-nav-list-card__item{display:block;padding:7px 8px;border-radius:8px;color:#3d4a5c;line-height:1.4;overflow-wrap:anywhere;text-decoration:none}.article-nav-list-card__item:hover{background:#f1f6ff;text-decoration:none}.article-nav-list-card__item--active{background:#e8f0ff;color:#1d4ed8;font-weight:600}.long-article-settings{position:fixed;left:min(50% + min(var(--long-article-half-width, 400px),50vw - 14px) + 14px,100vw - 78px);top:min(60vh,100vh - 300px);transform:none;z-index:101;display:flex;flex-direction:column;gap:10px}.long-article-settings-btn{width:64px;height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0;border:0;border-radius:5px;background:#dcebdd;box-shadow:0 4px 14px rgba(48,73,55,.12);color:#52685a;cursor:pointer;font-size:14px;font-weight:400;position:relative;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.long-article-settings-btn:hover{border-color:rgba(55,100,68,.35);background:#fff;color:#2f6a43;transform:translateX(2px)}.long-article-settings-btn.is-active{background:#3e7250;color:#fff}.long-article-settings-btn svg{width:18px;height:18px}.long-article-settings-btn--top{height:0;min-height:0;overflow:hidden;opacity:0;pointer-events:none;transform:translateY(10px) scale(0.94);visibility:hidden;transition:height .24s ease,opacity .2s ease,transform .24s ease,visibility 0s linear .24s}.long-article-settings-btn--top.is-visible{height:64px;opacity:1;pointer-events:auto;transform:translateY(0) scale(1);visibility:visible;transition-delay:0s}.long-article-settings__count{position:absolute;top:-5px;right:-5px;min-width:18px;box-sizing:border-box;padding:1px 5px;border-radius:10px;background:#c94e4e;color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center}.long-article-layout{position:relative}.long-article-layout-panel{position:absolute;right:80px;bottom:0;display:none;width:360px;box-sizing:border-box;padding:24px;border:1px solid rgba(72,101,79,.16);border-radius:10px;background:#ebfaeb;box-shadow:0 12px 32px rgba(38,61,44,.18)}.long-article-layout-panel.is-open{display:block}.long-article-layout-panel__title{margin-bottom:20px;color:#52685a;font-size:18px;font-weight:600}.long-article-layout-panel__row{display:grid;grid-template-columns:48px minmax(0, 1fr);align-items:center;gap:12px;margin-top:16px;color:#52685a;font-size:13px}.long-article-font-options{display:grid;grid-template-columns:44px minmax(64px, 1fr) 44px;align-items:center;gap:7px}.long-article-font-options output{color:#52685a;font-size:13px;text-align:center}.long-article-font-options button,.long-article-layout-panel__options button{height:34px;padding:0 8px;border:1px solid #d9e3da;border-radius:5px;background:#f3f7f1;color:#52685a;cursor:pointer;font-size:12px}.long-article-font-options button:hover,.long-article-font-options button.is-active,.long-article-layout-panel__options button:hover,.long-article-layout-panel__options button.is-active{border-color:#77977e;background:#dfeadf;color:#285a39}.long-article-layout-panel__options{display:grid;grid-template-columns:repeat(3, 1fr);gap:7px}.long-article-layout-panel__options button.is-active{font-weight:600}body.night.long-article-page{background:#0a0a0a;color:#d9e3db}body.night.long-article-page .article-container{background:#111;box-shadow:none}body.night.long-article-page h1.article-title{color:#eef4ef}body.night.long-article-page .long-article-reading-stage>.main{background:#0a0a0a}body.night.long-article-page .long-article-home-link{color:#989898}body.night.long-article-page .long-article-home-link:hover{background:#191919;color:#d9e3db}body.night.long-article-page #articleCommentsPanel{background:#111;border-left-color:rgba(255,255,255,.1);box-shadow:none}body.night.long-article-page #comments .comments-header,body.night.long-article-page #comments .comment__reply{border-color:rgba(255,255,255,.08);background:rgba(17,17,17,.97)}body.night.long-article-page #comments .article-cmt-cnt{color:#eef4ef}body.night.long-article-page #comments .long-article-comments-count,body.night.long-article-page #comments .comment-info{color:#858f88}body.night.long-article-page #comments .comment-segment,body.night.long-article-page #comments .comment-thread,body.night.long-article-page #comments .comment__reply .reply__text{border-color:rgba(255,255,255,.08);background:#191919}body.night.long-article-page #comments .comments-header a.comment-segment__item,body.night.long-article-page #comments .comment-info a,body.night.long-article-page #comments .comment-thread__meta a{color:#aab4ad}body.night.long-article-page #comments .comments-header a.comment-segment__item--active,body.night.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#465c4d;color:#fff}body.night.long-article-page #comments .list>ul>li,body.night.long-article-page #comments .list>ul>li.cmt-perfect,body.night.long-article-page #comments .list>ul>li.cmt-perfect:hover{border-color:rgba(255,255,255,.08);background:rgba(0,0,0,0)}body.night.long-article-page #comments .comment,body.night.long-article-page #comments .comment-thread__content{color:#b9c2bc}body.night.long-article-page .long-article-comments-close{background:#191919;color:#989898}body.night.long-article-page .editor-panel .wrapper{border-color:rgba(255,255,255,.08);background:#191919;box-shadow:0 -12px 30px rgba(0,0,0,.34)}body.night .long-article-content{color:#989898}body.night .long-article-content a{color:#8fc9a0}body.night .long-article-content blockquote{border-color:#587663;background:#223128;color:#b8c7bc}body.night .long-article-content>h1,body.night .long-article-content>h2,body.night .long-article-content>h3,body.night .long-article-content>h4,body.night .long-article-content>h5,body.night .long-article-content>h6{color:#989898}body.night .long-article-content pre{background-color:#111a15}body.night .long-article-content :not(pre)>code{background:#27362c;color:#b9d6c1}body.night .long-article-meta{color:#93a299}body.night .long-article-meta a{color:#a9c7b1}body.night .long-article-meta a:hover{color:#c6e5ce}body.night .article-nav-scope__tabs,body.night .article-nav-sort__tabs{border-color:rgba(255,255,255,.1);background:#1f2937}body.night .article-nav-scope__tab,body.night .article-nav-sort__tab{color:#cbd5e1}body.night #articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,body.night #articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,body.night #articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,body.night #articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,body.night #articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#334155;color:#f8fafc}body.night .article-adjacent-nav{border-color:rgba(255,255,255,.1)}body.night .article-adjacent-nav__link,body.night .article-nav-list-card{border-color:rgba(255,255,255,.1);background:#1f2937;color:#e5e7eb}body.night .article-adjacent-nav__link:hover{border-color:rgba(148,163,184,.45);background:#273449}body.night .article-adjacent-nav__label,body.night .article-adjacent-nav__preview{color:#94a3b8}body.night .article-nav-list-card__title,body.night .article-nav-list-card__item{color:#e5e7eb}body.night .article-nav-list-card__items{border-color:rgba(255,255,255,.1)}body.night .article-nav-list-card__item:hover,body.night .article-nav-list-card__item--active{background:rgba(59,130,246,.18);color:#bfdbfe}body.night .long-article-settings-btn{border:0;background:#191919;color:#989898}body.night .long-article-settings-btn:hover{background:#191919;color:#989898}body.night .long-article-layout-panel{border:0;background:#1f1f1f;box-shadow:0 12px 32px rgba(0,0,0,.32)}body.night .long-article-layout-panel__title{color:#989898}body.night .long-article-layout-panel__row,body.night .long-article-font-options output{color:#989898}body.night .long-article-font-options button,body.night .long-article-layout-panel__options button{border-color:#3a3a3a;background:#191919;color:#989898}body.night .long-article-font-options button:hover,body.night .long-article-font-options button.is-active,body.night .long-article-layout-panel__options button:hover,body.night .long-article-layout-panel__options button.is-active{border-color:#666;background:#292929;color:#fff}body.night .long-article-catalog{background:#111}body.night .long-article-catalog .long-article-catalog__header{border-color:rgba(255,255,255,.1)}body.night .long-article-catalog .long-article-catalog__header h2{color:#eef4ef}body.night .long-article-catalog .long-article-catalog__header span{color:#858f88}body.night .long-article-catalog .long-article-catalog__close{color:#989898}body.night .long-article-catalog .long-article-catalog__close:hover{background:#191919;color:#fff}body.night .long-article-catalog .long-article-catalog__chapter{border-color:rgba(255,255,255,.08);color:#b9c2bc}body.night .long-article-catalog .long-article-catalog__chapter:hover{background:#191919;color:#eef4ef}body.night .long-article-catalog .long-article-catalog__chapter--active{background:rgba(95,149,109,.2);box-shadow:inset 3px 0 #7fb78d;color:#c9edcf}body.night .long-article-catalog .long-article-catalog__chapter-no{color:#858f88}@media(max-width: 768px){.article.long-article-page .article-container{margin-top:0;border-radius:0}.article.long-article-page .article-body>.wrapper{padding:36px 24px}.article.long-article-page h1.article-title{font-size:26px}.article.long-article-page #articleCommentsPanel{padding:0 18px 82px;border-radius:0}.long-article-content{margin-top:28px}.long-article-catalog__inner{padding:36px 24px}.long-article-catalog__header h2{font-size:24px}.long-article-catalog__chapter{grid-template-columns:78px minmax(0, 1fr);gap:10px;padding-right:8px;padding-left:8px}.article-nav-scope__tabs{display:grid;grid-template-columns:1fr 1fr}.article-nav-sort__tabs{display:grid;grid-template-columns:repeat(3, 1fr)}.article-nav-scope__tab,.article-nav-sort__tab{min-width:0}.article-adjacent-nav{flex-direction:column;gap:12px}.article-adjacent-nav__item{flex-basis:auto}.article-adjacent-nav__item--right{text-align:left}.long-article-settings{right:8px;left:auto}.long-article-settings-btn{width:54px;height:54px}.long-article-settings-btn--top.is-visible{height:54px}.long-article-layout-panel{right:64px;width:min(340px,100vw - 90px)}}.long-read-zone{padding:20px 0 24px}.long-read-zone__wrapper{flex-direction:column;gap:16px;background:linear-gradient(180deg, #fafbfc 0%, #fff 100%);border-radius:16px;padding:18px;box-shadow:0 4px 20px rgba(0,0,0,.06)}.long-read-zone__head{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.06)}.long-read-zone__title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:#1a1a2e;letter-spacing:.5px}.long-read-zone__title svg{width:22px;height:22px;color:#e67e22}.long-read-zone__more{font-size:13px;color:#6b7280;border:1px solid rgba(0,0,0,.08);padding:6px 14px;border-radius:20px;text-decoration:none;background:rgba(255,255,255,.8);transition:all .2s ease}.long-read-zone__more:hover{color:#1a1a2e;border-color:rgba(0,0,0,.2);background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08)}.long-read-zone__row{display:flex;flex-direction:column;gap:10px}.long-read-zone__row--hot{margin-top:4px;padding-top:14px;border-top:1px dashed rgba(0,0,0,.08)}.long-read-zone__row-head{display:flex;align-items:center;justify-content:space-between}.long-read-zone__row-title{display:flex;align-items:center;gap:10px;font-size:14px;color:#374151;font-weight:600}.long-read-zone__badge{background:linear-gradient(135deg, #f0f4f8 0%, #e8ecf1 100%);border:1px solid rgba(0,0,0,.06);padding:5px 12px;border-radius:16px;font-size:12px;color:#4b5563;font-weight:500}.long-read-zone__badge--hot{background:linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);border-color:rgba(251,146,60,.3);color:#c2410c}.long-read-zone__row-desc{font-size:12px;color:#9ca3af;font-weight:400;margin-left:4px}.long-read-zone__row-actions{display:flex;gap:8px}.long-read-zone__nav{width:32px;height:32px;border-radius:50%;border:1px solid rgba(0,0,0,.1);background:rgba(255,255,255,.9);color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.long-read-zone__nav svg{width:18px;height:18px}.long-read-zone__nav:hover{border-color:rgba(0,0,0,.2);background:#fff;color:#1a1a2e;box-shadow:0 2px 8px rgba(0,0,0,.1);transform:translateY(-1px)}.long-read-zone__carousel{display:flex;gap:12px;overflow-x:auto;padding:8px 6px;background:rgba(255,255,255,.5);border-radius:12px;scroll-snap-type:x mandatory;scroll-padding-left:4px;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) rgba(0,0,0,0)}.long-read-zone__carousel::-webkit-scrollbar{height:6px}.long-read-zone__carousel::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.long-read-zone__carousel::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:10px}.long-column-card{flex:0 0 212px;min-width:0;padding:14px;border-radius:12px;border:1px solid rgba(0,0,0,.06);background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:8px;scroll-snap-align:start;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.long-column-card:hover{transform:translateY(-2px);border-color:rgba(43,93,185,.16);box-shadow:0 10px 24px rgba(0,0,0,.12)}.long-column-card__head{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:flex-start;gap:8px}.long-column-card__title{min-width:0;flex:1;font-size:14px;font-weight:600;line-height:1.4;color:#1f2937;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere;word-break:break-word;min-height:2.8em}.long-column-card__title:hover{color:#2b5db9;text-decoration:none}.long-column-card__count{flex:0 0 auto;align-self:flex-start;padding:0 8px;height:20px;line-height:20px;border-radius:10px;background:#f3f4f6;color:#6b7280;font-size:11px;white-space:nowrap}.long-column-card__chapters{display:flex;flex-direction:column;gap:4px}.long-column-card__chapter{min-width:0;display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:8px;background:rgba(0,0,0,0);text-decoration:none;transition:background .2s ease}.long-column-card__chapter:hover{background:#f3f7ff;text-decoration:none}.long-column-card__chapter+.long-column-card__chapter{border-top:1px dashed rgba(0,0,0,.06)}.long-column-card__chapter-no{flex:0 0 auto;padding:0 8px;height:18px;line-height:18px;border-radius:9px;background:#eef2ff;color:#475569;font-size:10px;font-weight:500;text-align:center;white-space:nowrap}.long-column-card__chapter-title{min-width:0;flex:1;font-size:12px;line-height:1.3;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.long-column-card--hot .long-column-card__count{background:#fff1e6;color:#c2410c}.long-column-card--hot .long-column-card__chapter-no{background:#fff7ed;color:#c2410c}@media(max-width: 960px){.long-column-card{flex-basis:198px}}@media(max-width: 768px){.long-read-zone__nav{display:none}.long-read-zone__wrapper{padding:16px;border-radius:12px}.long-column-card{flex-basis:182px;padding:12px}.long-read-zone__title{font-size:16px}}body.night .long-read-zone{background:#1a1d24}body.night .long-read-zone__title{color:#f1f5f9}body.night .long-read-zone__wrapper{background:linear-gradient(180deg, #1e2530 0%, #1a1d24 100%);box-shadow:0 4px 20px rgba(0,0,0,.3)}body.night .long-read-zone__head{border-color:rgba(255,255,255,.08)}body.night .long-read-zone__more{background:rgba(30,41,59,.8);border-color:rgba(255,255,255,.1);color:#94a3b8}body.night .long-read-zone__more:hover{background:#1e293b;color:#f1f5f9;border-color:rgba(255,255,255,.2)}body.night .long-read-zone__row--hot{border-color:rgba(255,255,255,.08)}body.night .long-read-zone__badge{background:rgba(51,65,85,.6);border-color:rgba(255,255,255,.1);color:#cbd5e1}body.night .long-read-zone__badge--hot{background:rgba(251,146,60,.15);border-color:rgba(251,146,60,.3);color:#fbbf24}body.night .long-read-zone__nav{background:rgba(30,41,59,.8);border-color:rgba(255,255,255,.1);color:#94a3b8}body.night .long-read-zone__nav:hover{background:#334155;color:#f1f5f9}body.night .long-read-zone__carousel{background:rgba(15,23,42,.4)}body.night .long-read-zone__carousel::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15)}body.night .long-column-card{background:#1e293b;border-color:rgba(255,255,255,.08)}body.night .long-column-card:hover{box-shadow:0 12px 24px rgba(0,0,0,.4)}body.night .long-column-card__title{color:#f1f5f9}body.night .long-column-card__count{background:rgba(51,65,85,.9);color:#cbd5e1}body.night .long-column-card__chapter{background:rgba(255,255,255,.02)}body.night .long-column-card__chapter:hover{background:rgba(43,93,185,.18)}body.night .long-column-card__chapter+.long-column-card__chapter{border-color:rgba(255,255,255,.08)}body.night .long-column-card__chapter-no{background:rgba(51,65,85,.85);color:#e2e8f0}body.night .long-column-card__chapter-title{color:#cbd5e1}body.night .long-column-card--hot .long-column-card__count{background:rgba(194,65,12,.24);color:#fdba74}body.night .long-column-card--hot .long-column-card__chapter-no{background:rgba(194,65,12,.2);color:#fdba74}.home-personalize-toolbar{position:relative;display:flex;justify-content:flex-end;padding:12px 0 0}.home-personalize-toolbar__btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-color:#d7dee8;color:#2f3b52}.home-personalize-toolbar__btn svg{width:14px;height:14px}.home-personalize-panel{position:absolute;top:52px;right:0;z-index:80;display:none;width:280px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.18)}.home-personalize-panel--open{display:block}.home-personalize-panel__head,.home-personalize-panel__actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px}.home-personalize-panel__head{border-bottom:1px solid #eef2f7}.home-personalize-panel__actions{border-top:1px solid #eef2f7}.home-personalize-panel__actions button{flex:1 1 auto}.home-personalize-panel__list{max-height:360px;overflow:auto;padding:6px}.home-personalize-panel__item{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:8px;min-height:38px;padding:0 8px;border-radius:6px;color:#2f3b52;cursor:grab}.home-personalize-panel__check{display:grid;grid-template-columns:22px minmax(0, 1fr);align-items:center;gap:8px;min-width:0;cursor:pointer}.home-personalize-panel__check span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-personalize-panel__sort{display:inline-flex;gap:4px}.home-personalize-panel__sort button{min-height:28px;padding:0 7px;font-size:12px}.home-personalize-panel__sort button:disabled{cursor:default;opacity:.42}.home-personalize-panel__item:hover{background:#f6f8fb}.home-personalize-panel__item--dragging{opacity:.55}.home-module[draggable=true]{cursor:grab}.home-module--dragging{opacity:.55;outline:2px dashed #7da7df;outline-offset:3px}.repeater-station{box-sizing:border-box;padding:14px;border:1px solid #e5ebf3;border-radius:8px;background:#fff}.repeater-station__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.repeater-station__title,.repeater-station__tabs,.repeater-station__actions,.repeater-station__create-actions{display:flex;align-items:center;gap:8px}.repeater-station__title{min-width:0;color:#1f2937;font-weight:700}.repeater-station__title svg{width:16px;height:16px;color:#2b5db9}.repeater-station__tabs,.repeater-station__actions{flex-wrap:wrap}.repeater-station__tab,.repeater-station__btn{min-height:32px;padding:0 10px;border-radius:6px}.repeater-station__tab--active,.repeater-station__btn--liked{border-color:#2b5db9;background:#edf4ff;color:#1d4ed8}.repeater-station__body{min-height:120px;padding:14px;border-radius:8px;background:#f7fafc}.repeater-station__quote{color:#1f2937;font-size:15px;line-height:1.75;overflow-wrap:anywhere}.repeater-station__meta{display:flex;gap:10px;margin-top:10px;color:#738095;font-size:12px}.repeater-station__actions{margin-top:12px}.repeater-station__btn{display:inline-flex;align-items:center;gap:5px;text-decoration:none}.repeater-station__btn svg{width:14px;height:14px}.repeater-station__create{margin-top:12px}.repeater-station__create textarea{box-sizing:border-box;width:100%;min-height:86px;padding:10px;border:1px solid #d7dee8;border-radius:6px;resize:vertical}body.night .home-personalize-panel,body.night .repeater-station{border-color:rgba(255,255,255,.1);background:#1e293b}body.night .repeater-station__body{background:#111827}body.night .repeater-station__title,body.night .repeater-station__quote,body.night .home-personalize-panel__item{color:#e5e7eb}@media(max-width: 768px){.home-personalize-toolbar{margin:0 10px;padding-top:8px}.home-personalize-panel{top:48px;right:0;left:0;width:auto}.repeater-station__head{align-items:flex-start;flex-direction:column}.repeater-station__body{min-height:96px}}.home-personalize-toolbar,.wrapper.home-personalize-toolbar{position:fixed;display:flex;justify-content:flex-end;top:172px;right:24px;left:auto !important;z-index:30;width:auto !important;min-width:0 !important;max-width:none !important;padding:0 !important;margin:0 !important;background:rgba(0,0,0,0) !important;overflow:visible !important;box-sizing:border-box;pointer-events:none}.home-personalize-toolbar__btn{flex-direction:column;justify-content:center;gap:3px;width:86px;min-height:54px;border:1px solid #e0e7ef;border-radius:16px;background:rgba(248,250,252,.76);box-shadow:0 6px 24px rgba(60,80,120,.12),0 1.5px 6px rgba(60,80,120,.08);color:#222;font-weight:700;line-height:1.2;pointer-events:auto;backdrop-filter:blur(8px);transition:box-shadow .3s,transform .2s}.home-personalize-toolbar__btn:hover{box-shadow:0 12px 32px rgba(60,80,120,.16),0 2px 8px rgba(60,80,120,.1);transform:translateY(-2px) scale(1.04)}.home-personalize-toolbar__btn svg{width:16px;height:16px}.home-personalize-toolbar__btn span{font-size:12px}.home-personalize-panel{top:62px;pointer-events:auto}.home-personalize-toolbar--nav,.wrapper.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;display:inline-flex;align-items:center;width:auto;padding:0;margin:0;background:rgba(0,0,0,0);pointer-events:auto}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{flex-direction:row;gap:0;width:auto;min-width:0;min-height:0;border:0;border-radius:6px;background:rgba(0,0,0,0);box-shadow:none;color:#3b3e43;font-size:0;line-height:1;padding:14px 10px;backdrop-filter:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:focus{background:#fff7ec;box-shadow:none;color:#e59230;transform:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{color:currentColor;fill:none;height:18px;stroke:currentColor;width:18px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn span{display:none}.home-personalize-toolbar--nav .home-personalize-panel{top:46px;right:0}.long-read-zone--compact .long-read-zone__wrapper{gap:12px;padding:14px 18px}.long-read-zone__compact-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px}.long-read-zone__compact-group{min-width:0}.long-read-zone__compact-group .module-list{margin-top:8px}.long-read-zone__compact-group li{min-height:30px}.repeater-station--sidebar{margin-bottom:12px;padding:10px}.repeater-station--sidebar .repeater-station__head{align-items:flex-start;flex-direction:column;gap:8px}.repeater-station--sidebar .repeater-station__body{min-height:72px;padding:10px}.repeater-station--sidebar .repeater-station__quote{font-size:13px;line-height:1.65}.repeater-station--sidebar .repeater-station__tab,.repeater-station--sidebar .repeater-station__btn{min-height:28px;padding:0 8px}.repeater-station--mobile-users{margin:0 10px 10px}@media(max-width: 768px){.home-personalize-toolbar{top:150px;right:10px;margin:0}.home-personalize-panel{right:0;left:auto;width:min(280px,100vw - 20px)}.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;flex:0 0 34px;height:34px;margin:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{box-sizing:border-box;border-radius:999px;height:34px;justify-content:center;padding:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:active{background:#eef6ff;color:#2b5db9}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{height:21px;width:21px}.home-personalize-toolbar--nav .home-personalize-panel{position:fixed;top:52px;right:10px;left:auto}.long-read-zone__compact-grid{grid-template-columns:1fr}}.long-read-zone__actions{align-items:center;display:inline-flex;gap:8px}.column-cover,.column-detail-hero__cover,.column-reading-book,.column-book__cover{background-color:#cdd6e3;background-position:center;background-size:cover;display:block;overflow:hidden;position:relative;text-decoration:none}.column-cover::before,.column-detail-hero__cover::before,.column-reading-book::before{background:linear-gradient(180deg, rgba(15, 23, 42, 0.12), rgba(15, 23, 42, 0.78));content:"";inset:0;position:absolute}.column-cover--default,.column-detail-hero--default .column-detail-hero__cover,.column-book--default .column-book__cover{background-blend-mode:multiply;background-color:#8aa0bd}.column-bookstore__panel{padding:16px}.column-bookstore__sections{display:grid;gap:18px;grid-template-columns:repeat(2, minmax(0, 1fr))}.column-bookstore__section{min-width:0}.column-bookstore__section h2,.column-bookstore__section h3{color:#263241;font-size:16px;line-height:1.4;margin:0 0 14px}.column-bookstore__section h3{background:#e8f5d8;border-radius:999px;display:inline-block;padding:4px 14px}.column-bookstore__section--hot h2,.column-bookstore__section--hot h3{background:#ffe2df;color:#c0392b}.column-bookstore__grid{display:grid;gap:18px 14px;grid-template-columns:repeat(auto-fill, minmax(88px, 1fr))}.column-book{color:#263241;display:block;min-width:0;text-align:center;text-decoration:none}.column-book__cover{aspect-ratio:3/4;border-radius:3px 6px 6px 3px;box-shadow:inset 7px 0 0 rgba(0,0,0,.14),0 8px 18px rgba(31,41,55,.18);transition:box-shadow .18s,transform .18s}.column-book:hover .column-book__cover{box-shadow:inset 7px 0 0 rgba(0,0,0,.18),0 12px 24px rgba(31,41,55,.24);transform:translateY(-2px)}.column-book__title{display:-webkit-box;font-size:13px;font-weight:700;line-height:1.35;margin-top:8px;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.column-bookstore__empty{color:#8a94a6;padding:18px 0;text-align:center}.column-detail-hero{border-bottom:1px solid #edf1f6;display:grid;gap:20px;grid-template-columns:160px minmax(0, 1fr);padding:18px}.column-detail-hero__cover{aspect-ratio:3/4;border-radius:8px}.column-cover span,.column-detail-hero__cover span,.column-reading-book span{position:relative;z-index:1}.column-detail-hero__cover span{bottom:14px;color:#fff;font-weight:700;left:14px;line-height:1.35;overflow-wrap:anywhere;position:absolute;right:14px}.column-detail-hero__body h1{color:#111827;font-size:28px;line-height:1.25;margin:6px 0 10px;overflow-wrap:anywhere}.column-detail-hero__label,.column-detail-hero__meta{color:#6b7280}.column-reading-shelf{display:grid;gap:10px;padding:12px}.column-reading-book{border-radius:8px;color:#fff;min-height:148px}.column-reading-book__title,.column-reading-book__bookmark,.column-reading-book__chapter{color:#fff;left:12px;position:absolute;right:12px}.column-reading-book__bookmark{background:#d94848;left:auto;padding:8px 0 10px;text-align:center;top:0;width:58px}.column-reading-book__title{bottom:42px;font-weight:700}.column-reading-book__chapter{bottom:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-manage__list{display:grid;gap:14px;padding:16px}.column-manage__item{align-items:start;display:grid;gap:14px;grid-template-columns:120px minmax(0, 1fr)}.column-manage__item--current{background:#f8fbff;border:1px solid #cfe0fb;border-radius:8px;padding:10px}.column-cover{aspect-ratio:3/4;border-radius:8px}.column-cover span{bottom:10px;color:#fff;font-weight:700;left:10px;line-height:1.35;position:absolute;right:10px}.column-manage__title{color:#1f2937;font-weight:700;line-height:1.4;text-decoration:none}.column-manage__meta{color:#6b7280;font-size:12px;line-height:1.6}.column-manage__form{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.column-manage__input{flex:1 1 260px;min-width:0}body.night .column-bookstore__section h2,body.night .column-book{color:#e5e7eb}body.night .column-bookstore__section h3{background:rgba(74,222,128,.16);color:#bbf7d0}body.night .column-bookstore__section--hot h2,body.night .column-bookstore__section--hot h3{background:rgba(248,113,113,.16);color:#fecaca}@media(max-width: 768px){.column-bookstore__sections{grid-template-columns:1fr}.column-bookstore__grid{gap:16px 12px;grid-template-columns:repeat(3, minmax(0, 1fr));padding:0 10px 12px}.column-bookstore__section{margin-bottom:10px}.column-detail-hero,.column-manage__item{grid-template-columns:104px minmax(0, 1fr);padding:12px}.column-detail-hero__body h1{font-size:20px}}.column-detail-hero__edit{border:1px solid #cfe0fb;border-radius:6px;color:#2b5db9;display:inline-flex;line-height:20px;margin-top:14px;padding:5px 12px;text-decoration:none}.column-detail-hero__edit:hover{background:#f5f9ff;text-decoration:none} \ No newline at end of file diff --git a/src/main/resources/css/mobile-base.css b/src/main/resources/css/mobile-base.css index edbd7142..aafbe1e6 100644 --- a/src/main/resources/css/mobile-base.css +++ b/src/main/resources/css/mobile-base.css @@ -23,4 +23,4 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. * - */.vditor{--border-color: #d1d5da;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, .2);--toolbar-background-color: #f6f8fa;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color:rgba(27, 31, 35, .05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000}.vditor--dark{--border-color: #141414;--second-color: rgba(185, 185, 185, .36);--panel-background-color: #24292e;--panel-shadow: 0 1px 2px rgba(255, 255, 255, .2);--toolbar-background-color: #1d2125;--toolbar-icon-color: #b9b9b9;--toolbar-icon-hover-color: #fff;--textarea-background-color: #2f363d;--textarea-text-color: #d1d5da;--resize-icon-color: var(--border-color);--resize-background-color: var(--second-color);--resize-hover-icon-color: var(--toolbar-icon-hover-color);--resize-hover-background-color: rgba(185, 185, 185, .86);--count-background-color: rgba(66,133,244,0.36);--heading-border-color: var(--textarea-text-color);--blockquote-color: var(--toolbar-icon-color);--ir-heading-color: #9876aa;--ir-title-color: #808080;--ir-bi-color: #cc7832;--ir-link-color: #ffc66d;--ir-bracket-color: #287bde;--ir-paren-color: #6a8759}@-webkit-keyframes tooltip-appear{from{opacity:0}to{opacity:1}}@keyframes tooltip-appear{from{opacity:0}to{opacity:1}}.vditor-tooltipped{position:relative;cursor:pointer}.vditor-tooltipped::after{position:absolute;z-index:1000000;display:none;padding:5px 8px;font-size:11px;font-weight:normal;-webkit-font-smoothing:subpixel-antialiased;color:#fff;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);background:#3b3e43;border-radius:3px;line-height:16px;opacity:0}.vditor-tooltipped::before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:#3b3e43;pointer-events:none;content:"";border:5px solid transparent;opacity:0}.vditor-tooltipped--hover::before,.vditor-tooltipped--hover::after,.vditor-tooltipped:hover::before,.vditor-tooltipped:hover::after,.vditor-tooltipped:active::before,.vditor-tooltipped:active::after,.vditor-tooltipped:focus::before,.vditor-tooltipped:focus::after{display:inline-block;text-decoration:none;-webkit-animation-name:tooltip-appear;animation-name:tooltip-appear;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}.vditor-tooltipped__s::after,.vditor-tooltipped__se::after,.vditor-tooltipped__sw::after{top:100%;right:50%;margin-top:5px}.vditor-tooltipped__s::before,.vditor-tooltipped__se::before,.vditor-tooltipped__sw::before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:#3b3e43}.vditor-tooltipped__se::after{right:auto;left:50%;margin-left:-15px}.vditor-tooltipped__sw::after{margin-right:-15px}.vditor-tooltipped__n::after,.vditor-tooltipped__ne::after,.vditor-tooltipped__nw::after{right:50%;bottom:100%;margin-bottom:5px}.vditor-tooltipped__n::before,.vditor-tooltipped__ne::before,.vditor-tooltipped__nw::before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:#3b3e43}.vditor-tooltipped__ne::after{right:auto;left:50%;margin-left:-15px}.vditor-tooltipped__nw::after{margin-right:-15px}.vditor-tooltipped__s::after,.vditor-tooltipped__n::after{transform:translateX(50%)}.vditor-tooltipped__w::after{right:100%;bottom:50%;margin-right:5px;transform:translateY(50%)}.vditor-tooltipped__w::before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:#3b3e43}.vditor-tooltipped__e::after{bottom:50%;left:100%;margin-left:5px;transform:translateY(50%)}.vditor-tooltipped__e::before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:#3b3e43}@media screen and (max-width: 520px){.vditor-tooltipped:before,.vditor-tooltipped:after{content:none}}@-webkit-keyframes scale-in{0%{opacity:0;transform:scale(0.5)}100%{opacity:1;transform:scale(1)}}@keyframes scale-in{0%{opacity:0;transform:scale(0.5)}100%{opacity:1;transform:scale(1)}}.vditor-panel{background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px;z-index:3;font-size:14px;display:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:320px;min-width:80px;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);color:var(--toolbar-icon-color)}.vditor-panel--none{padding:0;-webkit-animation:none;animation:none;min-width:auto;max-width:none;white-space:nowrap;opacity:.86}.vditor-panel--arrow:before{position:absolute;width:0;height:0;pointer-events:none;content:" ";border:7px solid transparent;top:-14px;left:5px;border-bottom-color:var(--panel-background-color)}.vditor-panel--left{right:0}.vditor-panel--left.vditor-panel--arrow:before{right:5px;left:auto}.vditor-input{border:0;padding:3px 5px;background-color:var(--panel-background-color);font-size:12px;color:var(--textarea-text-color)}.vditor-input:focus{background-color:var(--toolbar-background-color);outline:none}.vditor-icon{color:var(--toolbar-icon-color);cursor:pointer;float:left;padding:4px 5px;height:21px;width:23px;background-color:transparent;border:0;box-sizing:border-box}.vditor-icon:hover,.vditor-icon--current{color:var(--toolbar-icon-hover-color);background-color:transparent}.vditor-icon:focus{outline:none}.vditor-icon svg{height:13px !important;width:13px !important;float:left;fill:currentColor;pointer-events:none}.vditor-toolbar{background-color:var(--toolbar-background-color);border-bottom:1px solid var(--border-color);padding:0 5px;line-height:1}.vditor-toolbar--pin{position:-webkit-sticky;position:sticky;top:0;z-index:1}.vditor-toolbar--hide{transition:all .15s ease-in-out;height:5px;overflow:hidden}.vditor-toolbar--hide:hover{background-color:var(--toolbar-background-color);height:auto;overflow:visible}.vditor-toolbar__item{float:left;position:relative}.vditor-toolbar__item .vditor-tooltipped{color:var(--toolbar-icon-color);border:0;padding:10px 5px;background-color:transparent;height:var(--toolbar-height);width:25px;box-sizing:border-box;font-size:0}.vditor-toolbar__item .vditor-tooltipped:focus{outline:none}.vditor-toolbar__item .vditor-tooltipped:focus{cursor:pointer;color:var(--toolbar-icon-hover-color)}.vditor-toolbar__item svg{fill:currentColor;display:inline-block;stroke-width:0;stroke:currentColor;width:15px;height:15px}.vditor-toolbar__item input{position:absolute;width:25px;height:var(--toolbar-height);top:0;left:0;cursor:pointer;opacity:.001;overflow:hidden}.vditor-toolbar__divider{float:left;height:calc(var(--toolbar-height) - var(--toolbar-divider-margin-top)*2);border-left:1px solid var(--second-color);margin:var(--toolbar-divider-margin-top) 8px}.vditor-toolbar__br{width:100%;padding:0 !important;height:0 !important}.vditor-menu--current{color:var(--toolbar-icon-hover-color) !important}.vditor-menu--disabled{color:var(--second-color) !important;cursor:not-allowed !important}.vditor-emojis{display:inline-block;overflow:auto}.vditor-emojis::-webkit-scrollbar{display:none}.vditor-emojis__tip{flex:1;min-width:1px;width:200px;margin-right:10px;color:var(--toolbar-icon-color);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vditor-emojis__tail{margin-top:5px;font-size:12px;color:var(--toolbar-icon-color);display:flex}.vditor-emojis__tail a{text-decoration:none;color:var(--toolbar-icon-color)}.vditor-emojis__tail a:hover{color:var(--toolbar-icon-hover-color)}.vditor-emojis button{cursor:pointer;border-radius:3px;float:left;height:30px;width:30px;text-align:center;line-height:26px;padding:3px;box-sizing:border-box;font-size:16px;transition:all .15s ease-in-out;border:0;margin:0;background-color:transparent;overflow:hidden}.vditor-emojis button:focus{outline:none}.vditor-emojis button:hover .vditor-emojis__icon{display:inline-block;transform:scale(1.2)}.vditor-emojis img{height:20px;width:20px;float:left;margin:3px 0 0 3px}@media screen and (max-width: 520px){.vditor-toolbar__item{padding:0 12px}.vditor-panel--left.vditor-panel--arrow:before{right:17px}}@media(hover: hover)and (pointer: fine){.vditor-toolbar__item .vditor-tooltipped:hover{color:var(--toolbar-icon-hover-color)}}@-webkit-keyframes slideInDown{from{transform:translate3d(0, -100%, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}@keyframes slideInDown{from{transform:translate3d(0, -100%, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}.vditor{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:3px;box-sizing:border-box;font-family:"Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols"}.vditor .vditor-copy{z-index:auto}.vditor--fullscreen{position:fixed;top:0;width:100% !important;left:0;height:100vh !important;z-index:90;border-radius:0}.vditor-content{display:flex;min-height:60px;flex:1;min-width:1px;position:relative}.vditor-preview{flex:1;min-width:1px;overflow:auto;margin-left:-1px;border-left:1px solid var(--border-color);box-sizing:border-box;border-radius:0 0 3px 0;background-color:var(--textarea-background-color)}.vditor-preview::-webkit-scrollbar{display:none}.vditor-preview__action{text-align:center;padding:10px;background-color:var(--toolbar-background-color)}.vditor-preview__action button{background-color:var(--toolbar-background-color);color:var(--toolbar-icon-color);line-height:20px;border:0;margin:0 10px;cursor:pointer;padding:0 7px;font-size:12px}.vditor-preview__action button.vditor-preview__action--current,.vditor-preview__action button:hover{color:var(--toolbar-icon-hover-color);background-color:var(--toolbar-background-color)}.vditor-preview__action button:focus{outline:none}.vditor-preview__action button svg{fill:currentColor;height:15px;width:15px;vertical-align:middle}.vditor-preview>.vditor-reset{padding:10px;margin:0 auto}.vditor-preview img:not(.emoji){cursor:pointer}.vditor-devtools{display:none;background-color:var(--textarea-background-color);overflow:auto;flex:1;min-width:1px;box-shadow:inset 1px 0 var(--border-color);box-sizing:border-box;border-radius:0 0 3px 0;padding:10px}.vditor-counter{padding:3px;color:var(--toolbar-icon-color);background-color:var(--count-background-color);border-radius:3px;font-size:12px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;float:right;margin:8px 3px 0 0}.vditor-counter--error{color:#d23f31;background-color:rgba(210, 63, 49, 0.1)}.vditor-resize{padding:3px 0;cursor:row-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;width:100%}.vditor-resize--top{top:-3px}.vditor-resize--bottom{bottom:-3px}.vditor-resize>div{height:3px;background-color:var(--resize-background-color);transition:all .15s ease-in-out}.vditor-resize:hover>div,.vditor-resize--selected>div{background-color:var(--resize-hover-background-color)}.vditor-resize:hover svg,.vditor-resize--selected svg{color:var(--resize-hover-icon-color)}.vditor-resize svg{fill:currentColor;stroke-width:0;stroke:currentColor;width:13px;height:3px;display:block;margin:0 auto;color:var(--resize-icon-color)}.vditor-upload{position:absolute;height:3px;left:0;top:-2px;transition:all .15s ease-in-out;background-color:#4285f4}.vditor-tip{position:absolute;font-size:12px;top:10px;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-fill-mode:both;animation-fill-mode:both;left:50%;z-index:5}.vditor-tip--show{display:block;-webkit-animation-name:slideInDown;animation-name:slideInDown}.vditor-tip__content{text-align:left;display:inline-block;line-height:16px;padding:3px 10px;border-radius:3px;background:var(--toolbar-background-color);position:relative;margin-left:-50%;color:var(--toolbar-icon-color);max-width:100%;box-shadow:var(--panel-shadow)}.vditor-tip__content ul{margin:2px 0;padding:0 0 0 18px}.vditor-tip__content a{color:#4285f4}.vditor-tip__close{position:absolute;color:var(--toolbar-icon-color);top:-7px;right:-15px;font-weight:bold;cursor:pointer}.vditor-tip__close:hover{color:var(--toolbar-icon-hover-color)}.vditor-img{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;z-index:3}.vditor-img__bar{border-bottom:1px solid var(--border-color);background-color:var(--toolbar-background-color);text-align:center;height:36px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.vditor-img__btn{display:flex;align-items:center;cursor:pointer;margin-left:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--toolbar-icon-color)}.vditor-img__btn:hover{color:var(--toolbar-icon-hover-color)}.vditor-img__btn svg{height:14px;width:14px;margin-right:8px;fill:currentColor}.vditor-img__img{flex:1;background-color:var(--textarea-background-color);overflow:auto;cursor:zoom-out}.vditor-img__img img{max-width:none}.vditor-hint{background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px 0;z-index:4;line-height:20px;list-style:none;font-size:12px;margin:0;max-width:250px;min-width:80px;display:none}.vditor-hint .vditor-hint{margin-top:-31px;left:100%;right:auto}.vditor-hint .vditor-hint.vditor-panel--left{right:100%;left:auto}.vditor-hint button{color:var(--toolbar-icon-color);display:block;padding:3px 10px;border:0;border-radius:0;line-height:20px;width:100%;box-sizing:border-box;text-align:left;margin:0;background-color:transparent;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vditor-hint button:focus{outline:none}.vditor-hint--current,.vditor-hint button:not(.vditor-menu--disabled):hover{background-color:var(--toolbar-background-color) !important;color:var(--toolbar-icon-hover-color) !important}.vditor-hint__emoji{font-size:16px;float:left;margin-right:3px}.vditor-hint img{height:20px;width:20px;float:left;margin-right:3px}.vditor-reset{color:#24292e;font-variant-ligatures:no-common-ligatures;font-family:"Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";word-wrap:break-word;overflow:auto;line-height:1.5;font-size:16px;word-break:break-word}.vditor-reset--anchor{padding-left:20px}.vditor-reset--error{color:#d23f31;font-size:12px;display:block;line-height:16px}.vditor-reset ul ul ul{list-style-type:square}.vditor-reset ul ul{list-style-type:circle}.vditor-reset ul{list-style-type:disc}.vditor-reset ul,.vditor-reset ol{padding-left:2em;margin-top:0;margin-bottom:16px}.vditor-reset li+li{margin-top:.25em}.vditor-reset audio{max-width:100%}.vditor-reset audio:focus{outline:none}.vditor-reset video{max-height:90vh;max-width:100%}.vditor-reset img{max-width:100%}.vditor-reset img.emoji{cursor:auto;max-width:20px;vertical-align:sub}.vditor-reset h1,.vditor-reset h2,.vditor-reset h3,.vditor-reset h4,.vditor-reset h5,.vditor-reset h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.vditor-reset h1:hover .vditor-anchor svg,.vditor-reset h2:hover .vditor-anchor svg,.vditor-reset h3:hover .vditor-anchor svg,.vditor-reset h4:hover .vditor-anchor svg,.vditor-reset h5:hover .vditor-anchor svg,.vditor-reset h6:hover .vditor-anchor svg{visibility:visible}.vditor-reset h1{font-size:1.75em}.vditor-reset h2{font-size:1.55em}.vditor-reset h3{font-size:1.38em}.vditor-reset h4{font-size:1.25em}.vditor-reset h5{font-size:1.13em}.vditor-reset h6{font-size:1em}.vditor-reset hr{height:2px;padding:0;margin:24px 0;background-color:#eaecef;border:0}.vditor-reset p{margin-top:0;margin-bottom:16px}.vditor-reset blockquote{padding:0 1em;color:#6a737d;border-left:.25em solid #eaecef;margin:0 0 16px 0}.vditor-reset blockquote>:first-child{margin-top:0}.vditor-reset blockquote>:last-child{margin-bottom:0}.vditor-reset ins>iframe{border:0}.vditor-reset iframe{border:1px solid #d1d5da;max-width:100%;box-sizing:border-box}.vditor-reset iframe.iframe__video{min-width:80%;min-height:36vh}.vditor-reset table{border-collapse:collapse;empty-cells:show;margin-bottom:16px;overflow:auto;border-spacing:0;display:block;word-break:keep-all;width:100%}.vditor-reset table tr{background-color:#fafbfc;border-top:1px solid #c6cbd1}.vditor-reset table td,.vditor-reset table th{padding:6px 13px;border:1px solid #dfe2e5;word-break:normal;white-space:nowrap}.vditor-reset table td:first-child::after,.vditor-reset table th:first-child::after{content:"";display:inline-block;vertical-align:top;min-height:24px}.vditor-reset table th{font-weight:600}.vditor-reset table tbody tr:nth-child(2n){background-color:#fff}.vditor-reset code:not(.hljs):not(.highlight-chroma){padding:.2em .4em;margin:0;font-size:85%;border-radius:3px;font-family:mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";word-break:break-word;background-size:20px 20px;white-space:pre-wrap}.vditor-reset pre{margin:1em 0}.vditor-reset pre>code{margin:0;font-size:85%;padding:.5em;border-radius:5px;display:block;overflow:auto;white-space:pre;font-family:mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";background-size:20px 20px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8AgMAAABHkjHhAAAACVBMVEWAgIBaWlo+Pj7rTFvWAAAAA3RSTlMHCAw+VhR4AAAA+klEQVQoz4WSMW7EQAhFPxKWNh2FCx+HkaZI6RRb5DYbyVfIJXLKDCFoMbaTKSw/8ZnPAPjaH2xgZcUNUDADD7D9LtDBCLZ45fbkvo/30K8yeI64pPwl6znd/3n/Oe93P3ho9qeh72btTFzqkz0rsJle8Zr81OLEwZ1dv/713uWqvu2pl+k0fy7MWtj9r/tN5q/02z89qa/L4Dc2LvM93kezPfXlME/O86EbY/V9GB9ePX8G1/6W+/9h1dq/HGfTfzT3j/xNo7522Bfnqe5jO/fvhVthlfk434v3iO9zG/UOphyPeinPl1J8Gtaa7xPTa/Dk+RIs4deMvwGvcGsmsCvJ0AAAAABJRU5ErkJggg==);word-break:initial;word-wrap:normal}.vditor-reset pre:hover div.vditor-copy{display:block}.vditor-reset .language-math,.vditor-reset .language-echarts,.vditor-reset .language-mindmap,.vditor-reset .language-plantuml,.vditor-reset .language-mermaid,.vditor-reset .language-abc,.vditor-reset .language-flowchart,.vditor-reset .language-graphviz{margin-bottom:16px}.vditor-reset .language-math mjx-container:focus{outline:none;cursor:context-menu}.vditor-reset .language-echarts,.vditor-reset .language-mindmap{overflow:hidden;height:420px}.vditor-reset .language-mermaid,.vditor-reset .language-flowchart,.vditor-reset .language-graphviz{text-align:center}.vditor-reset .language-graphviz parsererror{overflow:auto}.vditor-reset kbd{display:inline-block;padding:3px 5px;font:11px Consolas,"Liberation Mono",Menlo,Courier,monospace;line-height:10px;color:#24292e;vertical-align:middle;background-color:#fafbfc;border:solid 1px #d1d5da;border-radius:3px;box-shadow:inset 0 -1px 0 #d1d5da}.vditor-reset summary{cursor:pointer}.vditor-reset summary:focus{outline:none}.vditor-reset svg{height:auto;width:auto;stroke-width:initial}.vditor-reset p:last-child,.vditor-reset blockquote:last-child,.vditor-reset pre:last-child,.vditor-reset ul:last-child,.vditor-reset ol:last-child,.vditor-reset hr:last-child{margin-bottom:0}.vditor-comment{border-bottom:2px solid #f8e6ab}.vditor-comment--focus,.vditor-comment--hover{background-color:#faf1d1;border-bottom:2px solid #ffc60a}.vditor-comment--focus .vditor-comment,.vditor-comment--hover .vditor-comment{border-bottom:2px solid #ffc60a}.vditor-task{list-style:none !important;word-break:break-all}.vditor-task input{margin:0 .2em .25em -1.6em;font-size:12px;vertical-align:middle}.vditor-copy{position:relative;display:none;z-index:1}.vditor-copy textarea{position:absolute;left:-100000px;height:10px}.vditor-copy span{cursor:pointer;position:absolute;right:15px;top:.5em}.vditor-copy svg{color:#586069;height:14px;width:14px !important;display:block;fill:currentColor}.vditor-linenumber{padding-left:4em !important;position:relative}.vditor-linenumber__rows{position:absolute;pointer-events:none;top:.5em;left:0;width:3em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;counter-reset:linenumber}.vditor-linenumber__rows>span{pointer-events:none;display:block}.vditor-linenumber__rows>span::before{counter-increment:linenumber;content:counter(linenumber);color:rgba(158, 150, 150, 0.38);display:block;padding-right:1em;text-align:right}.vditor-speech{position:absolute;display:none;background-color:#f6f8fa;border:1px solid #d1d5da;border-radius:3px;padding:3px;cursor:pointer;color:#586069}.vditor-speech:hover,.vditor-speech--current{color:#4285f4}.vditor-speech svg{height:14px;width:14px;fill:currentColor;display:block;stroke-width:0;stroke:currentColor}.vditor-anchor{margin-left:5px}.vditor-anchor--left{float:left;padding-right:4px;margin-left:-20px}.vditor-anchor svg{visibility:hidden}.vditor-anchor:hover svg{visibility:visible}.vditor-anchor:focus{outline:none}.vditor-linkcard{margin:31px auto 16px;transition:all .15s ease-in-out;cursor:pointer;max-width:768px;padding:0 10px}.vditor-linkcard a{border-radius:3px;background-color:#f6f8fa;overflow:hidden;max-height:250px;display:flex;text-decoration:none;flex-wrap:wrap-reverse;box-shadow:0 1px 2px rgba(0, 0, 0, 0.2)}.vditor-linkcard a:hover{box-shadow:0 0 3px rgba(0, 0, 0, 0.13),0 3px 6px rgba(0, 0, 0, 0.26);text-decoration:none}.vditor-linkcard a:visited .vditor-linkcard__abstract{color:rgba(88, 96, 105, 0.36)}.vditor-linkcard__info{padding:10px;min-width:200px;box-sizing:border-box;flex:1}.vditor-linkcard__title{font-size:14px;font-weight:400;color:#24292e;display:flex;align-items:center}.vditor-linkcard__title img{cursor:pointer;height:20px;width:20px;border-radius:3px;flex-shrink:0;margin-right:5px}.vditor-linkcard__abstract{word-wrap:break-word;word-break:break-all;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;font-size:13px;color:#586069;margin:5px 0}.vditor-linkcard__site{font-size:12px;color:#4285f4}.vditor-linkcard__image{background-size:cover;background-repeat:no-repeat;background-position:center center;max-width:250px;min-width:126px;cursor:pointer;background-color:rgba(88, 96, 105, 0.36)}.vditor-footnotes__goto-ref{text-decoration:none}.vditor-toc{margin-bottom:16px;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;color:#4285f4}.vditor-toc .vditor-outline__action{display:none}.vditor-toc ul{list-style:none !important;padding-left:1em}.vditor-toc>ul{padding-left:0}.vditor-toc span{cursor:pointer}.vditor-toc li>span>svg{width:0;height:0}.vditor-outline{width:250px;border-right:1px solid var(--border-color);background-color:var(--panel-background-color);display:none;overflow:auto}.vditor-outline--right{border-right:0;border-left:1px solid var(--border-color)}.vditor-outline::-webkit-scrollbar{display:none}.vditor-outline ul{list-style:none !important;padding-left:1em;margin:0}.vditor-outline__content>ul{padding-left:0}.vditor-outline li>span{display:flex;align-items:center;padding:5px 10px;cursor:pointer;color:var(--textarea-text-color)}.vditor-outline li>span>svg{height:10px;width:10px}.vditor-outline li>span:hover{color:var(--toolbar-icon-hover-color)}.vditor-outline li>span>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vditor-outline__title{border-bottom:1px dashed var(--border-color);padding:5px 10px;color:var(--toolbar-icon-color);font-size:12px}.vditor-outline__action{transition:all .15s ease-in-out;fill:currentColor;margin-right:5px;flex-shrink:0}.vditor-outline__action--close{transform:rotate(-90deg)}.vditor-wysiwyg{box-sizing:border-box;flex:1;position:relative;width:100%;min-width:1px}.vditor-wysiwyg pre.vditor-reset{background-color:var(--panel-background-color);margin:0;white-space:pre-wrap;height:100%;box-sizing:border-box}.vditor-wysiwyg pre.vditor-reset[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-wysiwyg pre.vditor-reset:empty::before{content:attr(placeholder);color:var(--second-color)}.vditor-wysiwyg pre.vditor-reset:focus{outline:none;background-color:var(--textarea-background-color)}.vditor-wysiwyg pre.vditor-reset:after{content:"";height:var(--editor-bottom);display:block}.vditor-wysiwyg blockquote:empty::before,.vditor-wysiwyg pre>code:empty::before,.vditor-wysiwyg p:empty::before,.vditor-wysiwyg h1:empty::after,.vditor-wysiwyg h2:empty::after,.vditor-wysiwyg h3:empty::after,.vditor-wysiwyg h4:empty::after,.vditor-wysiwyg h5:empty::after,.vditor-wysiwyg h6:empty::after{content:" "}.vditor-wysiwyg code[data-marker="`"]{padding-left:0 !important;padding-right:0 !important}.vditor-wysiwyg__block pre:first-child{margin-bottom:-1em}.vditor-wysiwyg__block pre:first-child code{height:auto;color:var(--textarea-text-color);height:auto;text-align:left}.vditor-wysiwyg__block pre:last-child{margin-bottom:1em}.vditor-wysiwyg__preview{cursor:pointer;white-space:initial;min-height:27px}.vditor-wysiwyg>.vditor-reset>h1:before,.vditor-wysiwyg>.vditor-reset>h2:before,.vditor-wysiwyg>.vditor-reset>h3:before,.vditor-wysiwyg>.vditor-reset>h4:before,.vditor-wysiwyg>.vditor-reset>h5:before,.vditor-wysiwyg>.vditor-reset>h6:before,.vditor-wysiwyg div.vditor-wysiwyg__block:before,.vditor-wysiwyg div[data-type=link-ref-defs-block]:before,.vditor-wysiwyg div[data-type=footnotes-block]:before,.vditor-wysiwyg .vditor-toc:before{float:left;padding-right:4px;margin-left:-29px;content:"H1";font-size:.85rem;font-weight:normal;color:var(--second-color)}.vditor-wysiwyg>.vditor-reset>h2:before{content:"H2"}.vditor-wysiwyg>.vditor-reset>h3:before{content:"H3"}.vditor-wysiwyg>.vditor-reset>h4:before{content:"H4"}.vditor-wysiwyg>.vditor-reset>h5:before{content:"H5"}.vditor-wysiwyg>.vditor-reset>h6:before{content:"H6"}.vditor-wysiwyg div[data-type=link-ref-defs-block]:before{content:'"A"'}.vditor-wysiwyg div[data-type=footnotes-block]:before{content:"^F"}.vditor-wysiwyg div.vditor-wysiwyg__block:before{content:""}.vditor-wysiwyg div.vditor-wysiwyg__block[data-type=yaml-front-matter]:before{content:"F"}.vditor-wysiwyg div.vditor-wysiwyg__block[data-type=math-block]:before{content:"$$"}.vditor-wysiwyg .vditor-toc:before{content:"ToC"}.vditor-wysiwyg hr{display:inline-block;margin:12px 0;width:100%}.vditor-wysiwyg details{white-space:initial}.vditor-wysiwyg a{cursor:pointer}.vditor-wysiwyg span[data-type=backslash]>span{display:none;color:var(--second-color)}.vditor-wysiwyg span[data-type=link-ref],.vditor-wysiwyg sup[data-type=footnotes-ref]{color:#4285f4}.vditor-wysiwyg span[data-type=toc-h]{color:#4285f4;text-decoration:underline}.vditor-wysiwyg div[data-type=footnotes-block]{border-top:2px solid var(--heading-border-color);padding-top:24px;margin-top:24px}.vditor-wysiwyg div[data-type=link-ref-defs-block]{color:var(--blockquote-color)}@media screen and (max-width: 520px){.vditor-wysiwyg h1:before,.vditor-wysiwyg h2:before,.vditor-wysiwyg h3:before,.vditor-wysiwyg h4:before,.vditor-wysiwyg h5:before,.vditor-wysiwyg h6:before,.vditor-wysiwyg div.vditor-wysiwyg__block:before,.vditor-wysiwyg div[data-type=link-ref-defs-block]:before,.vditor-wysiwyg div[data-type=footnotes-block]:before,.vditor-wysiwyg .vditor-toc:before{content:none}}.vditor-ir{box-sizing:border-box;flex:1;min-width:1px;position:relative;width:100%}.vditor-ir__node[data-type=code-block]:before,.vditor-ir__node[data-type=code-block]:after,.vditor-ir__node[data-type=yaml-front-matter]:before,.vditor-ir__node[data-type=yaml-front-matter]:after,.vditor-ir__node[data-type=math-block]:before,.vditor-ir__node[data-type=math-block]:after{content:" ";color:var(--second-color)}.vditor-ir__node:not(.vditor-ir__node--expand) .vditor-ir__marker{padding:0 !important}.vditor-ir__node:not(.vditor-ir__node--expand)[data-type=a]{cursor:pointer}.vditor-ir__node[data-type=link-ref],.vditor-ir__node[data-type=footnotes-ref]{color:#4285f4}.vditor-ir__node[data-type=html-block]{margin-bottom:1em}.vditor-ir__node .vditor-ir__marker{width:0;overflow:hidden;display:inline-block;height:0;transition:all .15s ease-in-out}.vditor-ir__node--hidden .vditor-ir__marker{visibility:hidden}.vditor-ir__node--expand .vditor-ir__marker{color:var(--second-color);display:inline;height:auto;width:auto}.vditor-ir__node--expand .vditor-ir__marker--hide{display:none}.vditor-ir__node--expand .vditor-ir__marker--heading{color:var(--ir-heading-color)}.vditor-ir__node--expand .vditor-ir__marker--bi{color:var(--ir-bi-color)}.vditor-ir__node--expand .vditor-ir__marker--link{color:var(--ir-link-color)}.vditor-ir__node--expand .vditor-ir__marker--title{color:var(--ir-title-color)}.vditor-ir__node--expand .vditor-ir__marker--bracket{color:var(--ir-bracket-color);text-decoration:underline}.vditor-ir__node--expand .vditor-ir__marker--paren{color:var(--ir-paren-color)}.vditor-ir__node--expand .vditor-ir__marker--info{color:var(--ir-heading-color)}.vditor-ir__node--expand .vditor-ir__marker--pre code{color:var(--textarea-text-color);height:auto;text-align:left}.vditor-ir__node--expand[data-type=code-block]:before,.vditor-ir__node--expand[data-type=code-block]:after{content:"```"}.vditor-ir__node--expand[data-type=yaml-front-matter]:before,.vditor-ir__node--expand[data-type=yaml-front-matter]:after{content:"---"}.vditor-ir__node--expand[data-type=math-block]:before,.vditor-ir__node--expand[data-type=math-block]:after{content:"$$"}.vditor-ir__node span[data-type=code-block-open-marker],.vditor-ir__node span[data-type=code-block-close-marker],.vditor-ir__node span[data-type=yaml-front-matter-open-marker],.vditor-ir__node span[data-type=yaml-front-matter-close-marker],.vditor-ir__node span[data-type=math-block-open-marker],.vditor-ir__node span[data-type=math-block-close-marker]{display:none}.vditor-ir__preview{cursor:pointer;white-space:initial;min-height:27px}.vditor-ir__link{color:var(--ir-bracket-color);text-decoration:underline}.vditor-ir pre.vditor-reset{background-color:var(--panel-background-color);margin:0;white-space:pre-wrap;height:100%;box-sizing:border-box}.vditor-ir pre.vditor-reset[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-ir pre.vditor-reset:empty::before{content:attr(placeholder);color:var(--second-color)}.vditor-ir pre.vditor-reset:focus{outline:none;background-color:var(--textarea-background-color)}.vditor-ir pre.vditor-reset:after{content:"";height:var(--editor-bottom);display:block}.vditor-ir pre.vditor-reset pre{margin:0}.vditor-ir hr{display:inline-block;margin:12px 0;width:100%}.vditor-ir blockquote:empty::before,.vditor-ir pre>code:empty::before,.vditor-ir p:empty::before,.vditor-ir h1:empty::after,.vditor-ir h2:empty::after,.vditor-ir h3:empty::after,.vditor-ir h4:empty::after,.vditor-ir h5:empty::after,.vditor-ir h6:empty::after{content:" "}.vditor-ir .vditor-reset>h1:before,.vditor-ir .vditor-reset>h2:before,.vditor-ir .vditor-reset>h3:before,.vditor-ir .vditor-reset>h4:before,.vditor-ir .vditor-reset>h5:before,.vditor-ir .vditor-reset>h6:before,.vditor-ir div[data-type=link-ref-defs-block]:before,.vditor-ir div[data-type=footnotes-block]:before,.vditor-ir .vditor-toc:before{float:left;padding-right:4px;margin-left:-29px;content:"H1";font-size:.85rem;font-weight:normal;color:var(--second-color)}.vditor-ir .vditor-reset>h2:before{content:"H2"}.vditor-ir .vditor-reset>h3:before{content:"H3"}.vditor-ir .vditor-reset>h4:before{content:"H4"}.vditor-ir .vditor-reset>h5:before{content:"H5"}.vditor-ir .vditor-reset>h6:before{content:"H6"}.vditor-ir div[data-type=link-ref-defs-block]{color:var(--blockquote-color)}.vditor-ir div[data-type=link-ref-defs-block]:before{content:'"A"'}.vditor-ir div[data-type=footnotes-block]{border-top:2px solid var(--heading-border-color);padding-top:24px;margin-top:24px}.vditor-ir div[data-type=footnotes-block]:before{content:"^F"}.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>ul,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>ol,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>p,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>blockquote,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>pre,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>table,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>hr{margin-left:8px}.vditor-ir .vditor-toc:before{content:"ToC"}.vditor-ir .vditor-toc span[data-type=toc-h]{color:#4285f4;text-decoration:underline}@media screen and (max-width: 520px){.vditor-ir h1:before,.vditor-ir h2:before,.vditor-ir h3:before,.vditor-ir h4:before,.vditor-ir h5:before,.vditor-ir h6:before,.vditor-ir div[data-type=link-ref-defs-block]:before,.vditor-ir div[data-type=footnotes-block]:before,.vditor-ir .vditor-toc:before{content:none}}.vditor-sv{font-family:"Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";margin:0 1px 0 0;overflow:auto;width:100%;flex:1;min-width:1px;border:0;resize:none;padding:10px 9px 10px 10px;box-sizing:border-box;background-color:var(--panel-background-color);outline:0 none;font-size:16px;line-height:22px;color:var(--textarea-text-color);border-radius:0 0 3px 3px;font-variant-ligatures:no-common-ligatures;white-space:pre-wrap;word-break:break-word;word-wrap:break-word}.vditor-sv[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-sv:empty::before{content:attr(placeholder);color:var(--second-color)}.vditor-sv:focus{background-color:var(--textarea-background-color)}.vditor-sv:after{content:"";height:var(--editor-bottom);display:block}.vditor-sv span[data-type=newline]+span[data-type=text]:empty{display:inherit}.vditor-sv .sup{vertical-align:super;font-size:smaller}.vditor-sv .strong{font-weight:bold}.vditor-sv .em{font-style:italic}.vditor-sv .s{text-decoration:line-through}.vditor-sv .mark:not(.vditor-sv__marker){background-color:yellow;color:black}.vditor-sv .h1{font-size:1.75em;line-height:44px}.vditor-sv .h2{font-size:1.55em;line-height:38px}.vditor-sv .h3{font-size:1.38em;line-height:27px}.vditor-sv .h4{font-size:1.25em;line-height:25px}.vditor-sv .h5{font-size:1.13em}.vditor-sv .h6{font-size:1em}.vditor-sv__marker{color:var(--second-color)}.vditor-sv__marker--heading{color:var(--ir-heading-color)}.vditor-sv__marker--bi{color:var(--ir-bi-color)}.vditor-sv__marker--link{color:var(--ir-link-color)}.vditor-sv__marker--title{color:var(--ir-title-color)}.vditor-sv__marker--bracket{color:var(--ir-bracket-color)}.vditor-sv__marker--paren{color:var(--ir-paren-color)}.vditor-sv__marker--info{color:var(--ir-heading-color)}.vditor-sv__marker--strong{font-weight:bold}.vditor-reset code:not(.hljs):not(.highlight-chroma){font-family:"HarmonyOS",mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols" !important}.vditor-reset pre>code{font-family:"HarmonyOS",mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols" !important}.vditor-reset{font-family:"HarmonyOS","Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols" !important}.vditor{--border-color: #f1f1f1;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, .2);--toolbar-background-color: #fdfdfd;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color:rgba(27, 31, 35, .05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;height:100%;background-color:#fff}body{margin:0;font-family:"HarmonyOS","Helvetica Neue","Luxi Sans","DejaVu Sans",Tahoma,"Hiragino Sans GB","Microsoft Yahei",sans-serif;font-size:14px;color:#2c2c2c;background-color:#f6f6f6}::-moz-selection{text-shadow:none;background:rgba(65,131,196,.4)}::selection{text-shadow:none;background:rgba(66,133,244,.4)}ul,ol{margin:0;padding:0}h1,h2,h3,h4,h5,h6,dl,dd,p{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none}a{outline:0;text-decoration:none;color:#4285f4}a:hover{text-decoration:underline}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{max-width:100%;vertical-align:middle;border:0;height:auto;-ms-interpolation-mode:bicubic}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle;font-family:"HarmonyOS","Helvetica Neue","Luxi Sans","DejaVu Sans",Tahoma,"Hiragino Sans GB","Microsoft Yahei",sans-serif;outline:none}button,input{line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}svg{fill:currentColor;display:inline-block;stroke-width:0;stroke:currentColor;width:14px;height:14px}blockquote{margin:0}@-webkit-keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}@-o-keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}@-ms-keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}@keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}.fn-flex,.fn__flex{display:flex}.fn__flex-column{min-height:100%;display:flex;flex-direction:column}.fn__flex-column.select-center{flex-direction:column;align-items:center}.fn__flex-column.select-center label.gestureRadio{padding:0 10px}.fn-flex-1,.fn__flex-1{flex:1;min-width:1px}.fn-pointer{cursor:pointer}.fn-sub{vertical-align:sub}.fn-clear:before,.fn-clear:after{display:table;content:""}.fn-clear:after{clear:both}.fn-left{float:left}.fn-right{float:right}.fn-none{display:none}.fn-hidden{visibility:hidden}.fn-oh{overflow:hidden}.fn-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:normal}.fn-hr5{display:block;height:5px}.fn-content{padding:15px}.fn-inline{display:inline-block}.fn-text-top{vertical-align:text-top}.ft-13{font-size:13px}.ft-smaller{font-size:12px}.ft-gray{color:#787777}.ft-fade{color:#878787}.ft-red{color:#e59230}.ft-blue{color:#4285f4}.ft-green{color:#569e3d}.ft-a-title{color:#616161;text-decoration:none}.ft-a-title:hover{color:#2c2c2c}.ft-center{text-align:center}.ft-nowrap{white-space:nowrap}.discuss_title{vertical-align:10px;padding-left:20px;text-decoration:none;font-size:13px;font-weight:600;line-height:1;color:#616161;display:inline-block}.count{text-decoration:none;padding:2px 5px;font-size:12px;font-weight:600;line-height:1;color:#616161;background-color:#eee;border-radius:20px;display:inline-block}.count:hover{text-decoration:none}.sub-head{padding:15px;border-bottom:1px solid #eee;line-height:18px;font-size:18px}.wrapper .aplayer{margin:0;box-shadow:0 1px 2px rgba(0,0,0,.2)}.wrapper .aplayer .aplayer-pic{background-size:cover}.wrapper .aplayer svg{height:16px;width:16px;float:left;margin:0px 0 0 2px}#breezemoonList button.absolute{right:0;top:0}.breezemoon__input{padding-right:61px !important}.index-user{display:flex;flex-direction:row;flex-wrap:wrap;padding:13px 15px}.tag-item{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-right:15px;margin-bottom:15px}.percent-container{width:50px;height:50px;padding:2px;border:2px solid #76daff;border-radius:50%;overflow:hidden}.percent-wave{position:relative;width:50px;height:50px;color:#000;background-color:#76daff;border-radius:50%}.percent-wave-before,.percent-wave-after{content:"";position:absolute;width:100px;height:100px;top:20px;left:50%;background-color:rgba(255,255,255,.4);border-radius:35%;transform:translate(-50%, -70%) rotate(0);animation:rotate 6s linear infinite;transition:1s;z-index:10}.percent-wave-after{border-radius:45%;background-color:rgba(255,255,255,.9);transform:translate(-50%, -70%) rotate(0);animation:rotate 10s linear -5s infinite;z-index:20}.percent-wave .percent{position:relative;width:50px;height:50px;display:flex;justify-content:center;align-items:center;color:#76daff;font-size:16px;text-shadow:0 1px #fff,1px 0 #fff,-1px 0 #fff,0 -1px #fff;z-index:30}@keyframes rotate{50%{transform:translate(-50%, -73%) rotate(180deg)}100%{transform:translate(-50%, -70%) rotate(360deg)}}:root{--background-color: #fff;--background-secondary-color: #f6f8fa;--text-color: #000;--text-gray-color: rgba(0,0,0,0.54);--text-fade-color: rgba(0,0,0,0.38);--layer-color: #616161;--layer-background-color: #fff;--layer-border-color: #eee;--layer-hover-color: #fff;--layer-hover-background-color: #4285f4;--header-background-color: #3b3e43;--toc-hover-color: #4285f4;--tab-current-background-color: var(--header-background-color);--box-shadow: 0 3px 12px rgba(27,31,35,0.15);--dialog-close-color: hsla(0,0%,100%,0.54);--input-border-color: #d1d5da;--logo-hover-color: var(--header-background-color)}.fn-hr10{height:10px;display:block}.tag{padding:2px 3px;font-size:12px;border-radius:2px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.12);background-color:#f0f0f0;color:#999;white-space:nowrap;display:inline-block;margin:5px 0;line-height:16px}.tag:hover{text-decoration:none;color:#2c2c2c;background-color:#ccc}button,.btn{cursor:pointer;color:#2c2c2c;border-radius:3px;padding:6px 12px;background-color:#fff;border:1px solid #d5d5d5;border-bottom-color:#e1e1e1;box-sizing:border-box;line-height:19px;white-space:nowrap;transition:all 100ms linear;font-weight:500}button:focus,.btn:focus{box-shadow:0 0 0 .3rem rgba(25,140,255,.2)}button:hover,.btn:hover{text-decoration:none;color:#198cff;box-shadow:.2rem .2rem 1rem 0 rgba(25,140,255,.2);background-color:#fff}button:active,.btn:active{color:rgba(25,140,255,.6);background-color:#fafcff}button.green,.btn.green{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.15);background-color:#60b044;border-color:#5ca941}button.green:hover,.btn.green:hover{background-color:#569e3d}button.green:active{background-color:#569e3d;border-color:#418737;box-shadow:0 2px 4px rgba(0,0,0,.25) inset}button.red,.btn.red{color:#e59230}button.red:hover,.btn.red:hover,.btn.red-hover{color:#fff;background-color:#e59230;border-color:#c0372a}button.red:active,.btn.red:active{background-color:#e59230;border-color:#c9320c;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.25) inset}button.small,.btn.small{padding:0 5px;font-size:12px;font-weight:normal;display:inline-block;line-height:19px;height:20px;text-shadow:initial}button.absolute{position:absolute;right:10px;top:10px}a[class^=icon-],a[class*=" icon-"]{color:#2c2c2c}a[class^=icon-]:hover,a[class*=" icon-"]:hover{text-decoration:none;color:#4285f4}.tip.error{color:#b22c39;border:1px solid #f0dddf;background-color:#fff0f1;border-radius:.3rem}.tip ul{margin:5px 30px;text-align:left;list-style-type:none}.tip.succ{border:1px solid #e1f0e5;color:#3b7649;background-color:#edfaf0;border-radius:.3rem}#registerTip,#loginTip,#addArticleTip,#profilesTip,#passwordTip{white-space:normal;word-wrap:break-word}.avatar,.avatar-small,.avatar-mid,.avatar-big{border-radius:3px 3px 3px 3px;background-size:cover;background-repeat:no-repeat;background-position:center center;display:inline-block;vertical-align:middle}.avatar{height:30px;width:30px;margin-right:10px}.avatar-small{height:20px;width:20px}.avatar-big{border:1px solid #eee;height:210px;width:210px;border-radius:6px}.avatar-mid{border:1px solid #eee;height:118px;width:118px;border-radius:4px}.status{border-top:1px dotted #ccc;list-style:none;padding:10px 0}.status>li{overflow:hidden;flex:1;-webkit-box-flex:1;text-align:center}.status>li>strong{font-size:20px}.form{position:relative}.form table{width:100%}.form input[type=text],.form input[type=date],.form input[type=datetime],.form input[type=datetime-local],.form input[type=password],.form input[type=number],.form select,.form textarea{line-height:17px;padding:7px 8px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:.3rem;width:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.form input[type=text]:not([readonly]):not([disabled]):hover,.form input[type=date]:not([readonly]):not([disabled]):hover,.form input[type=datetime]:not([readonly]):not([disabled]):hover,.form input[type=datetime-local]:not([readonly]):not([disabled]):hover,.form input[type=password]:not([readonly]):not([disabled]):hover,.form input[type=number]:not([readonly]):not([disabled]):hover,.form select:not([readonly]):not([disabled]):hover,.form textarea:not([readonly]):not([disabled]):hover{border-color:rgba(25,140,255,.5)}.form label{color:#616161;font-size:15px;margin:10px 0 5px;float:left}.form label.ft-red{color:#e59230}.form label>a{font-weight:normal}.form label input[type=checkbox],.form label input[type=radio]{vertical-align:middle}.form input[type=file]{width:1px;opacity:.001;height:16px}.pagination{background-color:#fff;background:linear-gradient(#FFFFFF, #EFEFEF);background:-ms-linear-gradient(#FFFFFF, #EFEFEF);background:-o-linear-gradient(#FFFFFF, #EFEFEF);background:-webkit-linear-gradient(#FFFFFF, #EFEFEF);border:1px solid #eaeaea;border-bottom:0;display:inline-block;margin:10px;border-radius:3px;font-size:12px;float:right}.pagination a,.pagination span{border-bottom:1px solid #dadada;border-left:1px solid rgba(255,255,255,.7);border-right:1px solid rgba(0,0,0,.04);color:#777;float:left;padding:5px 8px;text-decoration:none;text-shadow:0 1px 0 #fff}.pagination a{cursor:pointer}.pagination a:hover{color:#4285f4;border-bottom-color:#cfdce8;background-color:#fafbfd;background:linear-gradient(#fafbfd, #dce6ef);background:-ms-linear-gradient(#fafbfd, #dce6ef);background:-o-linear-gradient(#fafbfd, #dce6ef);background:-webkit-linear-gradient(#fafbfd, #dce6ef)}.pagination span.current{background-color:#fcfcfc;background:linear-gradient(#FCFCFC, #EBEBEB);background:-ms-linear-gradient(#FCFCFC, #EBEBEB);background:-o-linear-gradient(#FCFCFC, #EBEBEB);background:-webkit-linear-gradient(#FCFCFC, #EBEBEB);border-bottom-color:#d26911;color:#000}.pagination span.gap{color:#bbb}.pagination select{border:0;color:#777;padding:4px 5px;white-space:nowrap;float:left;border-bottom:1px solid #dadada;border-radius:0;background:linear-gradient(#fff, #EFEFEF)}.dialog-background{background-color:#000;display:none;height:100%;left:0;opacity:.5;position:absolute;top:0;width:100%;z-index:200}.dialog-panel{display:none;position:fixed;z-index:201;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.25);border-radius:5px;box-shadow:0 0 18px rgba(0,0,0,.4)}.dialog-header-bg{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 12px;font-size:16px;font-weight:600;border-bottom:1px solid #eee;cursor:move;user-select:none}.dialog-title{flex:1;display:flex;align-items:center;min-height:48px;line-height:1.4}.dialog-header-bg .icon-close{color:rgba(0,0,0,.25);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;margin-left:10px;font-weight:bold;-webkit-user-drag:none}.dialog-header-bg .icon-close:hover{color:#2c2c2c}.dialog-main{min-width:300px;padding:12px;box-sizing:border-box}.emoji-dialog{padding:4px 2px 8px}.emoji-dialog__desc{margin-bottom:14px;color:#616161;line-height:1.7}.emoji-dialog__field+.emoji-dialog__field{margin-top:12px}.emoji-dialog__label{display:block;margin-bottom:8px;color:#616161;font-size:14px;line-height:1.5}.emoji-dialog__row{display:flex;align-items:center;gap:8px}.emoji-dialog__input{width:100%;padding:10px 12px;border:1px solid #d8e1eb;border-radius:10px;box-sizing:border-box;background:#fff;color:#222;box-shadow:inset 0 1px 2px rgba(15,23,42,.04)}.emoji-dialog__input[readonly]{background:#f6f8fb;color:#2c3e50}.emoji-dialog__input--code{letter-spacing:.08em;font-weight:600}.emoji-dialog__actions{margin-top:16px;display:flex;justify-content:flex-end;gap:8px}.completed-panel{padding:0;overflow:auto;left:0;display:none;position:absolute;background-color:#fff;border:1px solid #eee;z-index:72;border-radius:0 0 3px 3px;width:50%;top:32px;box-sizing:border-box}.completed-panel a{display:block;padding:3px;text-decoration:none;line-height:18px;height:18px}.completed-panel a.selected,.completed-panel a:hover{background-color:#f7f7f7}.wrapper{margin:0 10px}.nav{height:28px;width:100%;padding:5px 0;z-index:99;background-color:rgba(217,240,255,.75)}.nav .wrapper{display:flex;justify-content:space-between;align-items:center}.nav .head-fn form{position:relative}.nav .head-fn h1 a svg{color:#fff;height:28px;width:28px;margin-top:-5px;float:left}.nav .user-nav{position:relative;display:flex;justify-content:center;align-items:center;padding-bottom:5px}.nav .user-nav a.unlogin{font-size:14px}.nav div>a{color:#3b3e43;text-decoration:none;margin:0 3px;padding:4px 5px;float:right;font-size:20px;line-height:20px;height:20px}.nav div>a:hover{color:#4285f4}.nav div>a.last{margin-right:0}.nav .avatar-small{height:20px;width:20px;vertical-align:super}.nav .user-nav .no-msg,.nav .user-nav .msg{background-color:rgba(203,202,202,.29);border-radius:3px;color:#3b3e43;font-size:14px;padding:0px 6px;margin:5px 4px;line-height:20px;transition:.5s}.nav .user-nav .msg{-webkit-animation:spaceboots 1s infinite;-moz-animation:spaceboots 1s infinite;-o-animation:spaceboots 1s infinite;-ms-animation:spaceboots 1s infinite;animation:spaceboots 1s infinite;background-color:#e59230;color:#fff}.nav .user-nav svg{color:#3b3e43;height:20px;width:20px}.nav .user-nav a.selected.no-msg,.nav .user-nav a.selected.msg{animation:none;background-color:#e59230;border-bottom:0}.nav .form{background-color:#fff;border:1px solid #cacaca;box-shadow:0 1px 0 rgba(255,255,255,.4),0 0 10px rgba(0,0,0,.1);padding:14px;position:absolute;right:0;top:33px;z-index:2;width:250px}.nav .form input[type=text],.nav .form input[type=password]{margin:10px 0}.nav input.search{background-color:#fff;border:1px solid #ddd;border-radius:3px 3px 3px 3px;padding:5px 8px;width:230px;margin:1px 0 0 20px;float:left;box-shadow:inset 0 1px 2px rgba(0,0,0,.075)}.nav input.search:focus{border-color:#51a7e8;box-shadow:0 0 3px rgba(81,167,232,.5),0 1px 1px rgba(0,0,0,.2) inset}.footer{color:#434444;padding:10px 0;text-align:center;font-size:12px;background-color:#fff}.footer a{color:#7e7e7e}.list h2{font-size:14px;font-weight:normal}.list h2>a{color:#595959}.list h2>a:hover{color:#2c2c2c}.list>ul{list-style:none}.list>ul>li{border-bottom:1px solid #eee;padding:10px 5px 10px 5px;white-space:normal;word-wrap:break-word;position:relative}.list li.last{border-bottom-width:0}.list .comment>p{margin:0}.comment img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.list>ul>li.cmt-perfect,.list>ul>li.cmt-perfect:hover{background-color:#f9f6f6}.has-view{margin-right:40px}#articltVia{white-space:nowrap}label.anonymous-check{margin:0 9px}label.anonymous-check input{margin-left:4px}.cmts{position:absolute;right:10px;top:40%}.cmts a.count:visited{background-color:#f6f6f6;color:#999}#revision .revisions{margin:5px 0 15px;text-align:center}#revision .revisions a{color:#616161;vertical-align:middle}#revision .revisions a:hover{color:#2c2c2c}#revision .revisions a.disabled{color:#878787;cursor:default}#revision .revisions span{margin:0 10px 0 10px}#revision .revision-picker{border-bottom:1px solid #e6e6e6;display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding-bottom:12px}#revision .revision-picker label{color:#616161;display:flex;flex-direction:column;gap:4px}#revision .revision-picker select{border:1px solid #d9d9d9;border-radius:3px;box-sizing:border-box;height:32px;max-width:100%;padding:0 6px;width:100%}#revision .revision-picker .revision-picker__toggle{align-items:center;flex-direction:row;white-space:nowrap}#revision .revision-picker .revision-picker__compare{height:32px;line-height:30px;padding:0 12px;width:72px}#revision .revision-diff{max-height:58vh;overflow:auto}#revision .revision-diff-section{margin-top:12px}#revision .revision-diff-section h3{color:#2c2c2c;font-size:14px;line-height:20px;margin:0 0 6px}#revision .revision-diff-title,#revision .revision-diff-lines{background:#fff;border:1px solid #e6e6e6;border-radius:4px}#revision .revision-diff-title{line-height:1.8;padding:10px;white-space:pre-wrap;word-break:break-word}#revision .revision-diff-word--add{background:#e9f7ec;color:#569e3d}#revision .revision-diff-word--remove{background:#ffeded;color:#d23f31;text-decoration:line-through}#revision .revision-diff-line{border-left:3px solid rgba(0,0,0,0);box-sizing:border-box;line-height:1.7;min-height:28px;padding:4px 8px;white-space:pre-wrap;word-break:break-word}#revision .revision-diff-line+.revision-diff-line{border-top:1px solid #f0f0f0}#revision .revision-diff-line--add{background:#f0fbf2;border-left-color:#569e3d}#revision .revision-diff-line--remove{background:#fff1f1;border-left-color:#d23f31}body.revision-modal-open{overflow:hidden}.revision-modal{align-items:flex-end;display:none;inset:0;justify-content:center;position:fixed;z-index:260}.revision-modal.is-open{display:flex}.revision-modal__overlay{background:rgba(15,23,42,.58);inset:0;position:absolute}.revision-modal__panel{background:#fff;border-radius:8px 8px 0 0;box-shadow:0 -18px 50px rgba(15,23,42,.28);display:flex;flex-direction:column;height:min(88vh,760px);max-width:100vw;overflow:hidden;position:relative;width:100%}.revision-modal__header{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex:0 0 auto;justify-content:space-between;min-height:52px;padding:0 14px}.revision-modal__title{color:#2c2c2c;font-size:16px;font-weight:600;line-height:24px}.revision-modal__close{align-items:center;background:#f6f8fa;border:1px solid #e6e6e6;border-radius:50%;color:#616161;cursor:pointer;display:inline-flex;font-size:24px;height:34px;justify-content:center;line-height:32px;padding:0;width:34px}.revision-modal__body{box-sizing:border-box;flex:1 1 auto;min-height:0;padding:12px}.revision-modal #revision,.revision-modal #revisions{display:flex;flex-direction:column;height:100%;min-height:0}.revision-modal #revision .revision-picker{flex:0 0 auto}.revision-modal #revision .revision-diff{flex:1 1 auto;max-height:none;min-height:0}.module{margin-bottom:10px;background-color:#fff;border-radius:3px;width:100%;word-wrap:break-word;box-sizing:border-box}.module-header{border-radius:3px 3px 0 0;background-color:#f7f7f7;border-bottom:1px solid #eee;padding:9px 10px 10px;text-shadow:0 1px 0 #fff;font-size:14px;line-height:17px}.module-header h2{display:inline;font-size:15px;font-weight:normal}.module-panel{border-radius:0 0 5px 5px}.module-panel strong{display:inline-block;margin-top:14px}.module-panel .module-list li{border-bottom:1px dotted #ccc;list-style:none outside none;padding:5px 10px;position:relative}.module-panel .module-list li.last,.module-panel .module-list li:last-child{border-bottom-width:0}.module .comment-content{color:#999;float:left;margin-left:5px;width:210px}.module-panel.form{padding:0 10px 10px}#killBrowser .module{height:235px;width:520px}#killBrowser p{margin:10px 0}#killBrowser ul{margin-left:30px}#killBrowser img{position:absolute;right:36px;top:58px}.emoji{width:1.3em;height:1.3em;display:inline-block;margin-bottom:.25em;background-size:contain;vertical-align:text-top;-webkit-filter:none !important;filter:none !important;transition:none !important}.person-info{position:relative}.person-info .info{position:relative;left:-1px;top:-1px;overflow:hidden;height:35px}.person-info .info button.red{position:absolute;border-radius:3px 0 0 0;min-width:35%;color:#fff;padding:5px 0;background-color:#b33630;background-image:linear-gradient(#dc5f59, #b33630);border-color:#cd504a;letter-spacing:1px}.person-info .info button.red:hover{letter-spacing:2px}.person-info .info .fn-right{margin:9px 10px 0 0}.person-info .status{border-bottom:1px dotted #ccc;border-top-width:0;margin-top:-20px;margin-bottom:15px}.person-info .status .fn-pointer:hover span{color:#2c2c2c}.person-info .module-panel{padding:0 10px 10px 10px}.person-info .activity-board{position:absolute;height:2px;background-color:#b33630;top:-1px}.person-info .right{width:2px;right:-1px;left:auto}.person-info .left{width:2px;right:0;left:-1px}.person-info .bottom{top:auto;bottom:-1px}.painter-point{background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-size:8px 8px;height:17px;width:38px;display:inline-block;vertical-align:sub}.top .has-view{line-height:21px}.responsive-show{display:none}.algolia-autocomplete .aa-dropdown-menu{background-color:#fff;border:1px solid #eee;margin:0 0 5px 19px}.algolia-autocomplete .aa-dropdown-menu img{height:20px}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion{cursor:pointer;padding:5px 4px;border-bottom:1px solid #eee}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion.aa-cursor{background-color:#f7f7f7}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion em{font-weight:bold;color:#e59230;font-style:normal}.algolia-autocomplete .aa-dropdown-menu .fn-right{margin:5px}.ranking{text-align:center;margin:10px}.ranking-title{font-size:18px;text-align:center}.more-article{display:block;text-align:center;padding:5px;background-color:#f6f6f6;margin-bottom:10px;border-bottom:1px solid #eee}.module-list .slogan{position:absolute;top:50%;margin-top:-12px}.module-list .title{color:#767676;margin:5px 0 5px 30px;display:block;line-height:20px}.module-list.open-source .title{margin-left:60px}.module-list.open-source .slogan{margin-top:-11px}.module-list.domain .slogan{text-align:center;margin-top:-10px;width:30px}.module-list.domain .title{margin-left:50px}.module-list.domain .tag{margin-right:10px}.module-panel.ad{padding:10px;text-align:center}.module-panel.ad .header{color:#2c2c2c}.module-panel.ad img{margin-bottom:5px}.article-actions .fn-right>a,.article-actions .fn-right>span{padding:4px 8px;border-radius:2px;display:inline-block;line-height:16px;float:left;text-decoration:none;margin-top:10px}.article-info{position:relative;display:grid;grid-template-columns:30px minmax(0, 1fr);column-gap:10px;row-gap:8px;align-items:start}.article-info>a[rel=author]{grid-column:1;grid-row:1/3;display:block;width:24px;height:24px;margin-top:2px}.article-info>div.article-params{position:static;grid-column:2;grid-row:1;min-width:0;min-height:0;font-size:12px;line-height:18px}.article-info>.article-reaction,.article-info>.article-reaction-shell{grid-column:2;grid-row:2;justify-self:start;margin:0}.article-info>.article-actions{grid-column:2;grid-row:2;justify-self:end;width:auto;margin-top:0 !important}.article-info>.article-actions .fn-right{float:none;display:inline-flex;align-items:center;gap:6px}.article-info>.article-actions .fn-right>a,.article-info>.article-actions .fn-right>span{float:none;margin-top:0}#heatBar{position:fixed;top:2px;right:0px;width:100%}h1.article-title{word-break:break-all;font-size:16px;font-weight:normal;margin:4px 0 20px 0}h1.article-title>a{color:#595959}h1.article-title>a:hover{color:#2c2c2c}.editor-panel{position:fixed;left:0;right:0;bottom:-200%;z-index:120;display:none;width:100%;height:100%;box-sizing:border-box;overflow-x:hidden}.editor-panel .editor-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.48)}.editor-panel .wrapper{position:absolute;right:10px;bottom:0;left:10px;z-index:121;display:flex;flex-direction:column;box-sizing:border-box;width:auto;max-width:calc(100vw - 20px);height:min(86vh,520px);height:min(86dvh,520px);max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px);overflow:hidden;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));border-radius:10px 10px 0 0;background:#fff}.editor-panel .editor-panel__head{flex:0 0 auto;align-items:center;min-height:28px;margin-bottom:8px}.editor-panel .article-comment-content{display:flex;flex:1;flex-direction:column;min-height:0}.editor-panel #commentContent{display:flex;flex:1;min-height:0}.editor-panel #commentContent .vditor{display:flex;flex:1;width:100% !important;height:100% !important;max-width:100%;min-height:0;box-sizing:border-box;overflow:hidden}.editor-panel #commentContent .vditor-content{flex:1;min-height:0;overflow:hidden}.editor-panel #commentContent .vditor-toolbar{overflow:visible;white-space:nowrap}.editor-panel #commentContent .vditor-ir,.editor-panel #commentContent .vditor-sv,.editor-panel #commentContent .vditor-wysiwyg{min-height:0 !important}.editor-panel .comment-submit{flex:0 0 auto;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:2px}.editor-panel .comment-submit>div:first-child{flex:0 0 auto;position:relative}.editor-panel .comment-submit .fn-flex-1{display:none}.editor-panel #emojiList{position:fixed;right:12px;bottom:calc(52px + env(safe-area-inset-bottom));left:12px;width:auto !important;max-width:none !important;box-sizing:border-box;overflow:hidden}.editor-panel #emojiList>div{width:100% !important;min-width:0}.editor-panel #emojiGroupBoxNew{flex:0 0 90px;width:90px !important;min-width:0}.editor-panel #emojisNew{min-width:0;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;max-height:min(250px,38vh);max-height:min(250px,38dvh)}.editor-panel .comment-submit label.anonymous-check{margin:0;white-space:nowrap}.editor-panel #articleCommentBtn{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:76px;min-height:38px;padding:0 16px;border:1px solid #e59230;border-radius:4px;background:#e59230;color:#fff;line-height:36px;white-space:nowrap}.editor-panel .editor-hide{color:#616161;font-size:22px}.comment__reply{padding:0 10px 12px}.comment__reply .avatar{margin-right:8px}.comment__reply .reply__text{min-height:36px;padding:0 10px;border:1px solid #eee;border-radius:4px;color:#4285f4;cursor:pointer;line-height:36px}#thoughtProgress{height:2px;position:relative;margin-bottom:10px;margin-top:20px}#thoughtProgress .bar{position:absolute;background-color:#e0e0e0;height:2px}#thoughtProgress .icon-video{position:absolute;top:-8px;left:0;cursor:pointer;color:#e59230;margin-left:-10px}.comment-submit{display:flex;align-items:center;margin-top:10px}label.cmt-anonymous{margin:7px 15px 0 0}#shareClipboard.tooltipped-hover{color:#4285f4}.comments>.comments-header{border-bottom:1px solid #dbdbdb;margin:20px 0 20px 0;padding:10px 5px 11px 10px}.comments-header__main{display:flex;align-items:center;justify-content:space-between;gap:10px}.comment-filterbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px}.comment-segment{display:inline-flex;overflow:hidden;border:1px solid #e5e7eb;border-radius:6px;background:#fff}.comment-segment__item{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border-left:1px solid #e5e7eb;color:var(--text-gray-color);font-size:13px;line-height:1}.comment-segment__item:first-child{border-left-width:0}.comment-segment__item--active,.comment-segment__item--active:hover{color:#fff;background:#616161}.comment-action__bar{display:flex;align-items:center;justify-content:flex-start;gap:0 10px;flex-wrap:wrap}.comment-action__bar>.action-btns{margin-left:auto;padding-left:10px}.comment-action__left{display:flex;align-items:center;flex:1 1 180px;flex-wrap:wrap;gap:8px;min-width:0;transform:translateX(-10px)}.comment-action__reply{color:var(--text-gray-color);white-space:nowrap}.comment-action__reply svg{margin-left:4px}.action-btns{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.comments>div.comments-header svg{margin:3px 10px 0 0}.comments>div.comments-header a{text-decoration:none;color:#817e7e}.comments>div.comments-header a.comment-segment__item{color:var(--text-gray-color);font-size:13px}.comments>div.comments-header a.comment-segment__item--active,.comments>div.comments-header a.comment-segment__item--active:hover{color:#fff;background:#616161}.comments>ul>li,.comment-thread__reply{transition:transform .18s ease}.comment-focus-highlight{animation:comment-focus-nudge .38s ease-out 1}.comment-origin{display:inline-flex;align-items:center;gap:4px;max-width:130px;color:var(--text-gray-color);font-size:12px;white-space:nowrap}.comment-origin span{overflow:hidden;text-overflow:ellipsis}.comment-origin-inline{display:block;margin-top:2px;color:var(--text-gray-color)}.comment-thread{--comment-thread-max-indent: 80px;margin:10px 0 8px;padding:1px 0 1px 10px;border-left:1px solid rgba(15,23,42,.14);background:rgba(0,0,0,0)}.comment-thread__list{display:flex;flex-direction:column;gap:10px}.comment-thread__reply{display:flex;align-items:flex-start;gap:8px;min-width:0;margin-left:min(var(--comment-thread-indent, 0px),var(--comment-thread-max-indent));padding:2px 0;position:relative}.comment-thread__reply--nested::before{position:absolute;top:0;bottom:0;left:-8px;border-left:1px solid rgba(15,23,42,.12);content:""}.comment-thread__reply+.comment-thread__reply{padding-top:10px;border-top:1px solid rgba(15,23,42,.08)}.comment-thread__avatar{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background-position:center;background-size:cover}.comment-thread__body{flex:1;min-width:0;border-radius:4px;transition:transform .18s ease}.comment-thread__reply.comment-focus-highlight{animation:none}.comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:comment-focus-nudge .38s ease-out 1}.comment-thread__meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:13px;line-height:1.45}.comment-thread__meta a{color:var(--text-color);font-weight:600}.comment-thread .comment-origin-inline{display:inline;margin-top:0}.comment-thread__content{margin-top:2px;color:var(--text-color);font-size:14px;line-height:1.7}.comment-thread__content img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.comment-thread__content>p:last-child{margin-bottom:0}.comment-thread__actions{align-items:center;gap:4px;margin-top:5px;font-size:13px}.comment-thread__actions .comment-action__left{flex:0 1 auto;gap:4px;transform:none}.comment-thread__actions .action-btns{justify-content:flex-start;gap:2px;margin-left:0;padding-left:0}.comment-thread__actions .action-btns>span,.comment-thread__actions .action-btns>a{min-height:28px;padding:0 7px;border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);box-shadow:none}.comment-thread__actions .action-btns>span:active,.comment-thread__actions .action-btns>a:active{background:rgba(98,162,240,.1)}.comment-thread__actions .reaction-pill,.comment-thread__actions .reaction-trigger{min-height:28px;padding:0 7px;border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);box-shadow:none}.comment-thread__actions .reaction-widget__items{gap:2px;min-height:28px}.comment-thread__more{margin-top:10px;padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:13px}.comment-thread__pager{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:var(--text-gray-color);font-size:12px}.comment-thread__pager button{min-height:28px;padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:12px}.comment-thread__page-info{color:var(--text-gray-color)}.comments li.shield{background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px}.comments.list>ul>li.perfect,.comments.list>ul>li.perfect:hover{background-color:#f9f6f6}.comments>ul>li:hover .hover-show{visibility:visible}.comments>ul>li:hover .comment-action,.comments>ul>li.selected .comment-action{display:block}.comment-get-comment.list>ul>li{margin-bottom:10px;padding-top:0}.comment-replies.list>ul{margin-top:10px}.comment-replies.list>ul>li{border-bottom-width:0;border-top:1px solid #eee}.comment-replies.list>ul>li{background-color:rgba(0,0,0,0)}.article-reaction,.comment-reaction,.chat-reaction{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:100%}.article-reaction-shell{display:flex;justify-content:flex-start;width:100%;margin:12px 0 8px}.article-reaction{margin:12px 0 8px}.comment-reaction{margin-top:0}.article-reaction .reaction-popover{left:0;right:auto}.chat-reaction{clear:both;display:flex;margin:7px 0 0;width:100%}.chat-reaction--empty{position:absolute;top:10px;right:-14px;z-index:5;width:auto;margin:0;transform:none}.reaction-widget__summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.reaction-widget__items{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:28px}.reaction-widget__items:empty{display:none}.reaction-pill,.reaction-trigger,.reaction-option{appearance:none;border:0;font:inherit;line-height:1;cursor:pointer}.reaction-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border:1px solid var(--layer-border-color);border-radius:999px;background:rgba(255,255,255,.86);color:var(--text-gray-color);user-select:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.reaction-pill:hover{background:#fff;border-color:rgba(98,162,240,.42);transform:translateY(-1px)}.reaction-pill-wrapper .reaction-pill__tip{bottom:calc(100% - 2px);width:max-content;min-width:0;max-width:calc(100vw - 24px);max-height:168px;margin-bottom:0;padding:10px;border:1px solid rgba(148,163,184,.26);border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 14px 32px rgba(15,23,42,.14);display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:8px;overflow-y:auto;text-align:left;z-index:24}.comment-action__left .comment-reaction--summary{flex:0 1 auto;min-width:0}.comment-reaction--summary{gap:0}.action-btns .comment-reaction--trigger{display:inline-flex}.action-btns .comment-reaction--trigger .reaction-popover{left:auto;right:0}.reaction-pill__tip-link{display:inline-flex;width:28px;height:28px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.96);box-shadow:0 6px 14px rgba(15,23,42,.12);transition:transform .18s cubic-bezier(0.22, 1, 0.36, 1),box-shadow .18s ease}.reaction-pill__tip-link:hover{transform:translateY(-1px) scale(1.04);box-shadow:0 10px 20px rgba(37,99,235,.18)}.reaction-pill__tip-avatar{display:block;width:100%;height:100%;object-fit:cover}.reaction-pill.selected{border-color:rgba(98,162,240,.72);background:rgba(98,162,240,.12);color:#2563eb;font-weight:600;box-shadow:0 8px 18px rgba(37,99,235,.12)}.reaction-pill__emoji{line-height:1}.reaction-pill__count{font-size:12px;line-height:1}.reaction-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:30px;min-width:30px;padding:0 9px;border-radius:999px;background:rgba(37,99,235,.08);border:1px solid rgba(37,99,235,.14);color:#2563eb;font-size:12px;font-weight:600;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease}.reaction-trigger:active{transform:scale(0.96)}.reaction-trigger.is-open{background:rgba(37,99,235,.16);border-color:rgba(37,99,235,.28);box-shadow:0 10px 24px rgba(37,99,235,.18)}.reaction-trigger__icon{font-size:15px}.action-btns>span,.action-btns>a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;padding:0 10px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(255,255,255,.84);box-shadow:0 8px 18px rgba(15,23,42,.06);color:var(--text-gray-color);text-decoration:none;white-space:nowrap;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.action-btns>span.ft-red,.action-btns>a.ft-red,.action-btns>span.ft-red:hover,.action-btns>a.ft-red:hover{color:var(--point-hover-color);border-color:rgba(226,61,61,.2);background:rgba(255,243,243,.92)}.action-btns>span.icon-reply-btn{font-weight:600}.action-btns>span:active,.action-btns>a:active{transform:scale(0.97)}.action-btns svg{vertical-align:middle}.reaction-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:70;display:none;grid-template-columns:repeat(5, minmax(0, 1fr));gap:8px;min-width:240px;max-width:min(272px,100vw - 32px);padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 18px 38px rgba(15,23,42,.16);backdrop-filter:blur(16px)}.article-reaction.is-open,.comment-reaction.is-open,.chat-reaction.is-open{z-index:70}.article-reaction.is-open .reaction-popover,.comment-reaction.is-open .reaction-popover,.chat-reaction.is-open .reaction-popover{display:grid;animation:reaction-pop .28s cubic-bezier(0.22, 1.28, 0.36, 1)}.reaction-option{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;background:rgba(241,245,249,.9);border:1px solid rgba(0,0,0,0);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.reaction-option:active{transform:scale(0.9)}.reaction-option.selected{background:rgba(37,99,235,.12);border-color:rgba(37,99,235,.3);box-shadow:inset 0 0 0 1px rgba(37,99,235,.12)}.reaction-option--wide{grid-column:span 2;width:auto;white-space:nowrap}.reaction-option--wide .reaction-option__emoji{font-size:18px;letter-spacing:.02em}.reaction-option__emoji{font-size:20px;line-height:1}.chat-reaction .reaction-pill{min-height:26px;padding:0 9px;font-size:12px}.chat-reaction .reaction-trigger{min-height:28px;padding:0 11px}.chat-reaction--empty .reaction-trigger{min-width:32px;min-height:32px;padding:0}.chat-reaction .reaction-popover,.chat-reaction--empty .reaction-popover{left:auto;right:0}.chat-reaction .reaction-popover{top:calc(100% + 6px)}.chat-reaction--empty .reaction-popover{top:calc(100% + 10px)}.chats__content>.date-bar{clear:both;display:flex;justify-content:flex-end;align-items:center;gap:4px;float:none;margin-top:6px;width:100%}.reaction-loading{opacity:.68;pointer-events:none}.reaction-flyin{position:fixed;left:0;top:0;z-index:10010;font-size:20px;line-height:1;pointer-events:none;filter:drop-shadow(0 8px 18px rgba(15, 23, 42, 0.18));will-change:transform,opacity}@keyframes comment-focus-nudge{0%,100%{transform:translate3d(0, 0, 0)}45%{transform:translate3d(4px, 0, 0)}}@media(prefers-reduced-motion: reduce){.comment-focus-highlight,.comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:none}}@keyframes reaction-pop{0%{opacity:0;transform:translateY(8px) scale(0.82)}70%{opacity:1;transform:translateY(-2px) scale(1.03)}100%{opacity:1;transform:translateY(0) scale(1)}}.comments li .fn-pointer:hover{color:#999}.comments .comment>p{margin-top:10px;margin-bottom:0}.comments.nice ul{margin-top:5px;border:1px solid #eee;border-radius:3px}.comments.nice>ul>li:last-child{border-bottom-width:0}.comment-paragraph-context{display:-webkit-box;margin:0 0 7px;overflow:hidden;color:#718078;font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.long-article-orphaned-comments{margin:14px 0 0;border-top:1px solid rgba(65,94,71,.14);padding-top:10px}.long-article-orphaned-comments summary{color:#68776e;cursor:pointer;font-size:12px}.long-article-orphaned-comments>ul{margin-top:8px}.comment-login{box-sizing:border-box;margin:10px;background-color:#fafafa}.comment-login>a{text-align:center;display:block;padding:21px 0px 21px}#articleRewardContent{margin-top:20px;padding:10px;background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px}#articleRewardContent>p{margin:0}#articleRewardContent.reward{text-align:center}#articleRewardContent.reward>span{margin:20px;display:inline-block}.article-tags .tag{margin:0;padding:0 3px}.article-visit-sources{display:flex;align-items:center;flex-wrap:wrap;gap:3px 7px;max-width:100%;line-height:18px;margin:3px 0 0}.article-visit-source{display:inline-flex;align-items:center;color:#8b8b8b;font-size:12px;line-height:18px}.article-visit-source__icon{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;margin-right:2px;color:#8b8b8b;flex:0 0 auto}.article-visit-source__icon svg{display:block;width:13px;height:13px;fill:currentColor}.article-visit-source--google .article-visit-source__icon,.article-visit-source--chrome .article-visit-source__icon{color:#4285f4}.article-visit-source--baidu .article-visit-source__icon{color:#35f}.article-visit-source--bing .article-visit-source__icon,.article-visit-source--edge .article-visit-source__icon{color:#0078d7}.article-visit-source--sogou .article-visit-source__icon{color:#fa4f00}.article-visit-source--yandex .article-visit-source__icon{color:#fc3f1d}.article-visit-source--360 .article-visit-source__icon,.article-visit-source--android .article-visit-source__icon{color:#2fa866}.article-visit-source--duckduckgo .article-visit-source__icon{color:#de5833}.article-visit-source--safari .article-visit-source__icon{color:#0a84ff}.article-visit-source--firefox .article-visit-source__icon{color:#ff7139}.article-visit-source--opera .article-visit-source__icon{color:#ff1b2d}.article-visit-source--samsung .article-visit-source__icon{color:#1428a0}.article-visit-source--iphone .article-visit-source__icon{color:#6e6e73}.share{margin:10px 0;position:relative}.share svg{height:16px;width:16px}.share #qrCode{position:absolute;bottom:30px;right:0;border:5px solid #eee;z-index:1;height:90px;border-radius:3px;width:90px}.share [class^=icon-]{cursor:pointer;transition:all .2s ease-out 0s;-webkit-transition:all .2s ease-out 0s;display:inline-block;font-size:16px}.share [class^=icon-]:hover{color:#4285f4}#replyUseName{visibility:hidden;line-height:18px;height:18px;margin:5px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#replyUseName.reply-use-name--active{visibility:visible}#replyUseName .reply-use-name__target{display:inline-flex;align-items:center;max-width:calc(100% - 26px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#replyUseName .reply-use-name__target svg{margin-right:2px}#replyUseName .reply-use-name__cancel{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:6px;border-radius:50%;border:1px solid #ddd;line-height:14px}#articleToC{top:21px;z-index:10}.article-toc li{list-style-type:none}.article-toc li a{padding:5px 10px 5px 20px;border-left:2px solid rgba(0,0,0,0);display:block;line-height:20px;color:#767676}.article-toc li a:last-child{border-bottom-width:0}.article-toc li a:hover{border-left:1px solid #4285f4;background-color:#f7f7f7;padding-left:21px;color:#4285f4;text-decoration:none}.article-toc li.current a{border-left:2px solid #4285f4;background-color:#f0f0f0;color:#4285f4}.article-toc li.toc-h2 a,.article-toc li.toc-h2.current a:hover{padding-left:34px}.article-toc li.toc-h3 a,.article-toc li.toc-h3.current a:hover{padding-left:48px}.article-toc li.toc-h4 a,.article-toc li.toc-h4.current a:hover{padding-left:62px}.article-toc li.toc-h5 a,.article-toc li.toc-h5.current a:hover{padding-left:86px}.article-toc li.toc-h2 a:hover{padding-left:35px}.article-toc li.toc-h3 a:hover{padding-left:49px}.article-toc li.toc-h4 a:hover{padding-left:63px}.article-toc li.toc-h5 a:hover{padding-left:87px}.domains{border-bottom:2px solid #e59230}.domains svg{vertical-align:sub}.domains a{height:17px;text-align:center;padding:10px 2px;color:#999;text-decoration:none;line-height:16px;display:block;flex:1;font-size:12px}.domains a.selected{color:#4285f4}.domains-count{padding:10px 18px;font-size:18px;line-height:26px;color:#1b3650;text-align:center;background-image:linear-gradient(#f5fbff, #e4f0ff);border:1px solid #cee0e7;border-radius:3px;width:100%;box-sizing:border-box;margin:10px 0 10px}.article-list li.stick{background-color:#f9f6f6}.article-list li.stick .stick-remains{vertical-align:top}.article-list li.stick:hover .stick-remains{display:inline}.article-list li .commenters{display:none;top:32%;position:absolute;right:10px}.article-list li .commenters>a{float:left;margin-left:4px;width:25px;text-decoration:none;color:#999}.article-list li .commenters>a:hover{color:#4285f4}.article-list li:hover .commenters{display:block}.article-list .preview{position:absolute;left:65px;z-index:1;top:40px;background-color:#fff;border:1px solid #ddd;border-radius:3px 3px 3px 3px;padding:5px 10px;opacity:.9;width:70%;min-width:130px;min-height:36px}.article-list .preview .ico-arrow{width:0px;height:0px;border-left:10px solid rgba(0,0,0,0);border-right:10px solid rgba(0,0,0,0);border-bottom:10px solid rgba(255,255,255,.9);position:absolute;top:-10px;z-index:1;left:11px}.article-list .preview .ico-arrowborder{width:0px;height:0px;border-left:11px solid rgba(0,0,0,0);border-right:11px solid rgba(0,0,0,0);border-bottom:11px solid #ddd;position:absolute;top:-11px;left:10px}.heat{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0}.point,.point-remove{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0px;width:5px;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:slideInRight;animation-name:slideInRight}.point-remove{animation-name:slideInLeft;-webkit-animation-name:slideInLeft}@keyframes slideInLeft{0%{right:0}100%{right:100%}}@-webkit-keyframes slideInLeft{0%{right:0}100%{right:100%}}@keyframes slideInRight{0%{right:100%}100%{right:0}}@-webkit-keyframes slideInRight{0%{right:100%}100%{right:0}}.article-level0{color:#878787}.article-level1{color:#fc0}.article-level2{color:#ffc1cc}.article-level3{color:#f63}.article-level4{color:#e59230}.guide .intro.vditor-reset{padding:10px;line-height:24px}.guide .guide-tab,.guide .step-btn{margin:10px}.guide .form{margin:0;width:auto}.guide #avatarUpload label{margin-top:0}.guide .tag-desc>li:hover>a{border-bottom-style:solid;border-radius:3px}.guide .tag-desc li.current>a{background-color:#878787;color:#fff;border-color:#bbb}.guide .intro dt.current{color:#ffac45}.guide .fn-flex>div{padding:10px;box-sizing:border-content;width:50%}.guide .md{background-color:#f1f7fe}.guide .md pre{white-space:pre-wrap;word-wrap:break-word}.verify .intro{padding:30px;background-color:#f1f7fe;color:#616161}.verify .form{font-size:14px;line-height:1.6;margin:20px 0}.verify .form>svg{margin:0 auto;height:50px;width:50px;display:block}.verify .form input[type=text],.verify .form input[type=password]{margin:10px 0;width:100%;padding-left:36px;background-color:#fff}.verify .form button{margin:10px 0;width:100%}.verify .form .input-wrap{position:relative}.verify .form .input-wrap svg{color:#999;position:absolute;top:19px;left:10px}.verify .form .captcha-img{top:11px;position:absolute;height:31px;left:1px;border-radius:3px 0 0 3px}.verify .form input.captcha-input{padding-left:91px}.verify .openid-info{font-size:14px;line-height:1.6;margin:20px 0}.verify .openid-info .avatar-openid{width:50px !important;height:50px !important}.verify .openid-info .tip1{font-size:20px;font-weight:bold}.verify .openid-info .tip2{color:#b0a114}.verify .openid-info .info-box{margin-top:10px;margin-bottom:10px;display:flex;flex-direction:row;padding:10px;align-items:center;background:#eee;border-radius:2px}.verify .openid-info .info-detail{font-size:18px;margin-left:10px;line-height:24px}.verify .openid-intro .openid-intro-title{color:#4285f4}.module-panel .tags li{float:left;list-style:none;line-height:19px;margin:10px 10px 0 0}.module-panel .tags{margin:0 0 10px 10px}.tag-desc.fn-clear{margin:10px 0 0px 10px}.tag-desc>li{float:left;position:relative;list-style:none;margin:0 10px 10px 0;font-size:12px}.tag-desc>li:hover>div{display:block}.tag-desc>li>a{float:left;color:#999;padding:2px 5px;border:1px solid #ddd;position:relative;height:20px;white-space:nowrap;word-wrap:normal;background-color:#f7f7f7;border-radius:3px 3px 3px 3px;line-height:21px}.tag-desc>li>a:hover{text-decoration:none}.tag-desc>li:hover>a{border-bottom-style:dotted;border-radius:3px 3px 0 0;opacity:.7;z-index:3}.tag-desc>li>a>span{text-decoration:none;color:#999}.tag-desc>li>a>img{border-radius:2px 2px 2px 2px;height:16px;width:16px;margin:-2px 2px 0 0}.tag-desc>li>div{background-color:#f7f7f7;border:1px solid #ddd;border-radius:3px 0 3px 3px;display:none;right:0;margin-left:3px;padding:5px 10px;position:absolute;top:25px;z-index:2;opacity:.9;width:200px;min-width:150px}.tag-articles-tag-desc.tag-desc>li>div{left:-3px;right:auto;border-radius:0 3px 3px 3px}.tag-articles .content{padding-top:10px}.tag-articles h1.fn-inline{line-height:28px;font-size:20px}.tag-articles .btn.red{vertical-align:super}.tag-articles .article-actions .fn-right{margin-top:-8px}.tags-cold li h2,.tags-trend li h2{display:inline-block}.list>ul.tags-trend>li,.list>ul.tags-cold>li{padding:5px}.tag-artile-user{border-bottom:1px dotted #ccc;padding:0 0px 10px 10px}code.prettyprint{display:inline;border:none;background-color:initial;border-radius:initial;padding:initial}code .str{color:initial}code .kwd{color:initial}code .com{color:initial;font-style:italic}code .typ{color:initial}code .lit{color:initial}code .pun{color:initial}code .pln{color:initial}code .tag{color:initial}code .atn{color:initial}code .atv{color:initial}code .dec{color:initial}.activity{min-height:300px}.activity-char-btns{margin-top:10px}#charCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;margin:20px auto;background-image:url(../images/m-char.png);background-size:cover}#paintCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;margin:20px auto;background-size:cover}.chat-room{background:#fff;padding:0 10px}.chat-room .online-cnt{line-height:33px;margin-right:10px;color:#787777}.chat-room .list{height:200px;overflow:auto}.index .index-wrap{background-color:#fafafa;border-bottom:1px solid #eee;border-top:1px solid #eee}.index>.slogan{padding:10px;color:#767676;border-top:1px solid #eee;background-color:#fafafa}.index>.slogan a:hover svg{color:#4285f4}.index .tag-desc>li:hover>span{border-bottom-style:solid;border-radius:3px;opacity:.7;z-index:3}.index a.count{position:absolute;right:10px;top:50%;margin-top:-8px}.index a.count:visited{background-color:#f6f6f6;color:#999}.index .module-list .title{margin-right:30px}.index .module-header{margin:-1px;text-align:right;text-shadow:0 0 0}.index .module-header a{color:#fff}.user-name{font-size:20px;font-weight:300;line-height:26px;border-bottom:1px dotted #ccc;margin-bottom:20px;padding:20px 10px 25px 10px}.user-name #userNicknameDom{font-size:26px;line-height:30px}.user-name .mbti{background-color:#b2b1ff;color:#fff;font-size:12px;line-height:20px;border-radius:3px;height:20px;display:inline-block;padding:0 5px;vertical-align:middle;box-sizing:border-box}.user-name .mbti svg{margin-top:2px}.user-name .online,.user-name .offline,.user-name .color_admin,.user-name .color_op,.user-name .color_police,.user-name .color_svip,.user-name .color_vip{background-color:#e59230;color:#fff;font-size:12px;line-height:20px;border-radius:3px;height:20px;display:inline-block;padding:0 5px 0 3px;vertical-align:middle}.user-name .online svg,.user-name .offline svg,.user-name .color_admin svg,.user-name .color_op svg,.user-name .color_police svg,.user-name .color_svip svg,.user-name .color_vip svg{margin-top:2px}.user-name .offline{background-color:#787777}.user-name .color_admin{background-color:#d70274}.user-name .color_op{background-color:#7702d7}.user-name .color_police{background-color:#026dd7}.user-name .color_svip{background-color:#d7b502}.user-name .color_vip{background-color:#d74202}.user-name button.follow{font-size:14px;width:100%;margin:10px 0}.user-info{line-height:26px;font-size:12px;color:#616161}.user-intro{line-height:26px}.pre-post>div{font-size:30px;border-bottom:1px solid #eee;padding:20px 10px;text-align:center}.pre-post>div:last-child{border-bottom-width:0}.pre-post>div>a{color:#404040;display:block;margin-bottom:20px}.pre-post a:hover{text-decoration:none;color:#4285f4}.pre-post a svg{height:30px;width:30px;vertical-align:middle;margin-right:20px}.pre-post div.ft-fade{font-size:15px}#articleContent{height:332px;margin:10px 0}#articleRewardContent{margin-top:10px;padding:0}#tip{position:inherit;white-space:pre-wrap}.tip-add-article{color:#777;list-style:circle outside none;margin-left:20px;line-height:22px}.article-content{width:100%;position:relative}.article-content#articleAudio{width:auto;margin-bottom:10px}#showReward{color:#999;width:100%;display:block}.post .tags-wrap{position:relative}.post .tags-input{border:1px solid #ccc;background-color:#fafafa;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.075) inset;padding:5px 5px 3px 5px;width:100%;line-height:17px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;height:33px}.post .tags-input span.tag{margin:2px 5px 0 0px;color:#4285f4}.post .tags-input .tag>span.close{cursor:pointer;margin-left:5px;color:#999}.post .tags-input span.tag.haved{color:#2c2c2c;background-color:#ccc;transition:background .5s ease-in,color .3s ease-out}.post .tags-input input{border:0;outline:none;border-radius:0;padding:2px;box-shadow:0 0 0;background-color:rgba(0,0,0,0)}.post .tags-input input:focus{border:0;background-color:rgba(0,0,0,0);box-shadow:0 0 0}.post .domains-tags,.post .completed-panel{display:none;position:absolute;background-color:#fff;border:1px solid #eee;z-index:10;padding:10px;border-radius:0 0 3px 3px;width:100%;box-sizing:border-box;top:32px}.post .domains-tags .tag{cursor:pointer;color:#4285f4}.post .domains-tags>span.current{color:#fff;background-color:#2c5d8d;background-image:linear-gradient(#7ba9d6, #2c5d8d);border-color:#689cd0}.post .completed-panel{padding:0;overflow:auto;left:0}.post .completed-panel a{display:block;padding:3px;text-decoration:none;line-height:18px;height:18px}.post .completed-panel a.selected,.post .completed-panel a:hover{background-color:#f7f7f7}.article-draft-action{min-width:68px;color:#31526f;background:#f5f8fb;border:1px solid #c9d7e5;border-radius:4px}.article-draft-box{position:fixed;inset:0;z-index:1000;background:rgba(15,23,42,.38);display:flex;align-items:center;justify-content:center;padding:12px;box-sizing:border-box;backdrop-filter:blur(2px)}.article-draft-box.fn-none{display:none}.article-draft-box__panel{width:100%;max-height:82vh;display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:8px;border:1px solid rgba(201,215,229,.9);box-shadow:0 16px 36px rgba(15,23,42,.24)}.article-draft-box__head{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 14px;border-bottom:1px solid #e8eef5}.article-draft-box__head strong{color:#1f2937;font-size:16px;line-height:24px}.article-draft-box__close{width:44px;height:44px;padding:0;color:#64748b;background:rgba(0,0,0,0);border:0;border-radius:4px;font-size:24px;line-height:42px}.article-draft-box__body{overflow:auto}.article-draft-box__list{padding:12px;color:#5d6b7a}.article-draft-box__item{padding:12px;border:1px solid #e3eaf2;border-radius:6px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.05)}.article-draft-box__item+.article-draft-box__item{margin-top:10px}.article-draft-box__title{color:#1f2937;font-weight:600;line-height:22px;overflow-wrap:anywhere}.article-draft-box__summary{margin-top:4px;color:#6b7280;line-height:20px;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.article-draft-box__meta{margin-top:8px;color:#8a97a8;font-size:12px;line-height:18px}.article-draft-box__actions{margin-top:10px;display:flex;gap:8px}.article-draft-box__restore,.article-draft-box__remove{flex:1;min-height:44px;padding:0 12px;border-radius:4px}.article-draft-box__restore{color:#fff;background:#23835b;border:1px solid #23835b}.article-draft-box__remove{color:#a33a3a;background:#fff6f6;border:1px solid #f0c5c5}.article-draft-box__state,.article-draft-box__empty{padding:34px 10px;color:#8a97a8;text-align:center;border:1px dashed #d7e0ea;border-radius:6px;background:#fafcff}.tab-current{background-color:#fafafa;border-bottom:1px solid #eee;padding:5px 10px;font-size:14px;font-weight:bold}.tab-current>span{color:#767676}.tab{list-style:none}.tab>li a{padding:5px 0;display:block}.home-invisible{margin:10px 0;border-bottom:1px dotted #ccc;padding-bottom:10px}.home-account__captch{position:relative}.home-account__captch img{position:absolute;height:31px;top:39px;right:1px;border-radius:0 3px 3px 0}.notification-tab a:hover{text-decoration:none}.notification-tab a{display:inline-block !important}.notification .read{background-color:#fafafa;opacity:.5}.notification li{background-color:#f8f8ff;line-height:21px}.notification li:last-child{border-bottom-width:0}.follow li{position:relative;border-bottom:1px solid #eee;padding:10px;list-style:none;box-sizing:border-box}.follow .user-online{position:absolute;left:45px;top:45px}.admin .avatar{height:17px;width:17px}.admin .tags{display:inline-block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;vertical-align:bottom}.admin .form input[type=text],.admin .form input[type=number]{width:30%;margin-right:10px}.points{border-collapse:collapse;border-spacing:0;width:100%}.points td{border-bottom:1px solid #ccc}.points .even{background-color:#f7f7f7}.points .date{width:75px;padding:10px}.points .name{word-break:break-all}.points .type{width:60px;padding:0 10px}.points .sum{text-align:center;width:35px;padding:0 10px;color:#f37800;font-weight:700}.points .sum.plus{color:#53a000}.points .balance{width:40px;padding:0 10px}#avatarUpload{overflow:hidden}.settings-avatar .btn{margin-top:0}.settings-avatar .avatar-big{display:block;margin-bottom:10px}.settings-avatar li{margin-left:20px}.error-403>.slogan{padding-top:20px;background-color:#fafafa;border-bottom:1px solid #eee}.error-403 .slogan-border{margin:20px 0 20px;color:#767676;background-color:#fff;border:1px solid #eee;border-radius:3px;border-bottom:1px solid #eee;width:100%}.error-403 .slogan-register{padding-top:20px;text-align:center}.error-403 .slogan-text{margin:20px 10px}.module.editor-toolbar-emoji{position:absolute;bottom:14px;height:111px;overflow:auto;z-index:124;background-color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);width:50%}.module.editor-toolbar-emoji .emoji{cursor:pointer;padding:5px;border-radius:2px;margin-bottom:0}.module.editor-toolbar-emoji .emoji:hover{background-color:#878787}.wrapper .editor-toolbar{border:1px solid #ccc}.wrapper .editor-toolbar>a:last-child{display:none}.link-forge .link-forge-upload{margin:10px 0}.link-forge .link-forge-upload input[type=text]{width:74%;margin-right:20px}.link-forge .module-panel{max-height:409px;overflow:hidden}.breezemoon__btn{position:absolute;top:9px;right:10px;border-radius:0 3px 3px 0 !important}@media only screen and (device-width: 414px)and (device-height: 896px)and (-webkit-device-pixel-ratio: 2),only screen and (device-width: 375px)and (device-height: 812px)and (-webkit-device-pixel-ratio: 3),only screen and (device-width: 414px)and (device-height: 896px)and (-webkit-device-pixel-ratio: 3){.footer{padding-bottom:22px}}.blur img{-webkit-filter:blur(20px) saturate(1.4);filter:blur(20px) saturate(1.4);transition:all .15s ease-in-out}.blur img:hover{filter:none;-webkit-filter:none}#chatRoomIndex li img{max-width:150px;max-height:150px}.chat-room li img{max-height:400px;max-width:600px}.tag_selection{margin:20px 0 0 0}.chats__users{overflow:auto}.chats__users::-webkit-scrollbar{display:none}.chats__input{margin-bottom:15px}.chats__editor{min-height:160px}.chats__content{background-color:var(--background-secondary-color);border-radius:5px;padding:8px 15px;margin:0 53px 15px 15px;overflow:initial;max-width:85%;box-sizing:border-box;position:relative}.chats__content--private{padding-top:8px;padding-bottom:6px}.chats__message{margin:0;line-height:18px}.chats__content--private>.chats__meta{margin-top:3px;min-height:15px;line-height:15px}.chats__content--private>.chats__meta .details,.chats__content--private>.chats__meta .details>summary{height:15px;line-height:15px}.chats__content .vditor-reset::-webkit-scrollbar{display:none}.chats__content .language-echarts,.chats__content .language-mermaid,.chats__content .language-mindmap,.chats__content iframe{width:510px}.chats__content .vditor-reset img:not(.emoji){max-width:150px;max-height:300px}.chats__arrow{position:relative}.chats__arrow:after{position:absolute;width:0;height:0;content:"";top:5px;left:-25px;border:5px solid rgba(0,0,0,0);border-right:5px solid var(--background-secondary-color)}.chats__item .avatar{margin-right:0}.chats__item--me{flex-direction:row-reverse}.chats__item--me .chats__content{margin:0 15px 15px 53px;background-color:rgba(98,162,240,.1)}.chats__item--me .chats__content .chats__arrow:after{right:-25px;border-left-color:rgba(98,162,240,.1);left:auto;border-right-color:rgba(0,0,0,0)}.ft__fade{color:var(--text-fade-color)}.ft__smaller{font-size:12px}.chats__content .ft__smaller{font-weight:500;font-size:13px}.fn__right{float:right}.action__item{line-height:18px;height:18px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;transition:all .15s ease-in-out;cursor:pointer;display:inline-flex;align-items:center}.action__item,.comment__titles span{font-size:12px;color:var(--layer-color)}.fn__flex-center{-ms-grid-row-align:center;align-self:center}.details{display:inline-block;position:relative}.details>summary{list-style:none}.fn__layer{display:block;padding:5px 0;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);position:absolute;background-color:var(--layer-background-color);line-height:20px;box-shadow:0 1px 2px rgba(0,0,0,.6);border:1px solid var(--layer-border-color);border-radius:3px;min-width:180px;right:0;z-index:100}.action__item details-menu{right:-15px;top:20px}.details>summary{list-style:none}.details>summary::-webkit-details-marker,.details>summary:before{display:none}.details>summary:focus{outline:none}.details:not([open])>:not(summary){display:none}.details details-menu:after,.details details-menu:before{top:-14px;right:12px;left:auto;position:absolute;border:7px solid rgba(0,0,0,0);border-bottom:7px solid var(--layer-background-color);content:" "}.details details-menu:before{border-width:8px;border-bottom-color:var(--layer-border-color);top:-16px;right:11px}.fn__layer .item{display:block;text-shadow:0 1px 0 var(--layer-background-color);position:relative;padding:5px 10px;color:var(--layer-color);font-weight:400;width:100%;box-sizing:border-box;word-break:break-all}.fn__layer .item--current,.fn__layer .item:hover{text-decoration:none;background-color:var(--layer-hover-background-color);color:var(--layer-hover-color) !important;text-shadow:none}.fn__layer a:hover{text-decoration:underline}.chats__item--me{flex-direction:row-reverse}.chats__content .vditor-reset{overflow:visible}.hongbao__item{position:relative;background-color:var(--layer-background-color);color:var(--layer-color);cursor:pointer;padding:7px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:3px 5px 8px 3px}.hongbao__item:hover{box-shadow:0 0 3px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.26)}.hongbao__icon{height:50px !important;width:50px !important;margin-right:7px}.hongbao__count{font-size:24px;margin:10px 0}.opened .hongbao__finger_guessing{display:none}.hongbao__finger_guessing_icon{position:absolute;right:-25px;width:45px;height:45px;border-radius:50%;border:2px solid rgba(0,0,0,0);transition:.2s}.hongbao__finger_guessing_icon:hover{border-color:#5c1151}.hongbao__finger_guessing_icon:nth-child(1){top:-25px;background:url("../images/redpacket/gesture/rock.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(2){top:15px;right:-50px;background:url("../images/redpacket/gesture/scissors.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(3){top:55px;background:url("../images/redpacket/gesture/paper.png") no-repeat center center;background-size:contain}.hide-list{--border-color: #d1d5da;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, .2);--toolbar-background-color: #f6f8fa;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color: rgba(27, 31, 35, .05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000;background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px;z-index:3;font-size:14px;display:none;user-select:none;max-width:320px;min-width:80px;animation-duration:.15s;animation-name:scale-in;animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);color:var(--toolbar-icon-color)}.hide-list-emojis{display:inline-block;overflow:auto}.hide-list-emojis button{cursor:pointer;border-radius:3px;float:left;height:72px;width:72px;text-align:center;line-height:26px;padding:3px;box-sizing:border-box;font-size:16px;transition:all .15s ease-in-out;border:0;margin:0;background-color:rgba(0,0,0,0);overflow:hidden}.hide-list-emojis__tail{margin-top:5px;font-size:12px;color:var(--toolbar-icon-color);display:flex}.hide-list-emojis__tail a{text-decoration:none;color:var(--toolbar-icon-color)}.hide-list-emojis__tail a:hover{color:var(--toolbar-icon-hover-color);cursor:pointer;text-decoration:none}.hide-list-emojis__tip{flex:1;min-width:1px;width:200px;margin-right:10px;color:var(--toolbar-icon-color);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hide-list-emojis button:hover{text-decoration:none;border-color:rgba(0,0,0,.38);background-color:#eee}.hide-list-emojis button:active{background-color:rgba(0,0,0,.38);box-shadow:0 2px 4px rgba(0,0,0,.05) inset}.showList{display:block}.divX{text-align:right;cursor:pointer;height:15px}.mobile-head{box-shadow:0 1px 2px #e2e2e2;box-sizing:border-box;position:fixed;top:0;width:100%;z-index:20}.index-top__nav{color:#000;display:flex;background-color:#f6f8fa}.index-top__nav .item--current{border-bottom-color:#000;color:#000}.index-top__nav a{border-bottom:2px solid rgba(0,0,0,0);flex:1;line-height:34px;text-align:center;color:#616161}.list__item{list-style:none;margin-bottom:10px;padding:3px 5px 9px 5px;font-family:"HarmonyOS",Helvetica Neue,Luxi Sans,DejaVu Sans,Hiragino Sans GB,Microsoft Yahei,sans-serif,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Android Emoji,EmojiSymbols;border-bottom:1px solid #eee}.list__item :last-child{margin-bottom:0}.list__item--stick{background-color:rgba(98,162,240,.1) !important}.list__title{display:flex;overflow:hidden;text-overflow:ellipsis}.list__title a{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-color);display:-webkit-box}.list__title a[disabled]{color:var(--text-fade-color)}.list__title .list__title a{font-size:16px;line-height:20px;max-height:40px}.list__title svg{-ms-grid-row-align:center;align-self:center;flex-shrink:0;height:18px;margin-right:5px;width:18px}.list__title--compact{margin-top:4px}.list__title--compact a:visited{color:#999}.list__meta{color:var(--text-fade-color);font-size:12px;line-height:18px}.fn__flex-inline{align-items:center;display:inline-flex}.ft__gray{color:var(--text-gray-color)}.ft__level1{color:#fc0}.list-avatar{background-color:rgba(0,0,0,.02);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:12px;height:24px;overflow:hidden;width:24px}.fn__5{height:5px}.list__img{margin-left:5px;max-height:95px;overflow:hidden;width:30%}.list__img img{border-radius:3px;width:100%}.list__img--space{margin-bottom:5px}.list__content{word-wrap:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-color);display:-webkit-box;line-height:20px;max-height:40px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.list__content :visited{color:#999}.list__tag{color:var(--layer-color);display:inline-block;font-size:12px;line-height:20px;margin-top:5px}.module__title{font-size:14px;font-weight:400;line-height:24px}.fn__clear:after,.fn__clear:before{content:"";display:table}.fn__clear:after{clear:both}.module_new{line-height:16px;padding:0px 10px 8px 10px}.tags{background-color:var(--layer-background-color);box-shadow:0 1px 2px var(--layer-border-color);padding:10px 0 0 10px}.tags .tag{background-color:var(--background-secondary-color);border-radius:3px;color:var(--layer-color);float:left;line-height:14px;margin:0 10px 10px 0;padding:5px;word-break:keep-all}.tags .tag img,.tags .tag svg{float:left;height:14px;margin-right:5px;width:14px}.menu{background-color:var(--layer-background-color);box-shadow:0 1px 2px var(--layer-border-color);padding:0 10px}.menu__item{word-wrap:break-word;border-bottom:1px solid var(--layer-border-color);list-style:none;padding:10px 0;word-break:break-all}.menu__item .title{color:#767676}.menu__item--last,.menu__item:last-child{border-bottom-width:0}.module__body{background-color:var(--layer-background-color) !important;box-shadow:0 1px 2px var(--layer-border-color);box-sizing:border-box;padding:10px;width:100%}.avatar{background-color:rgba(0,0,0,.02);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:12px;height:24px;overflow:hidden;width:24px}.avatar--index{margin-bottom:5px}.recent__nav{line-height:16px;padding:5px 10px;overflow:auto;background-color:#f6f6f6;white-space:nowrap}.recent__nav .recent__nav-item{background-color:var(--background-secondary-color);border:0;border-radius:3px;display:inline-block;line-height:14px;padding:5px 10px;text-align:center;font-size:12px;flex:1;min-width:1px;color:#4285f4}.recent__nav .recent__nav-check{color:var(--text-gray-color) !important}.TGIF__item{background-color:var(--layer-background-color);color:var(--layer-color);cursor:default;padding:10px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:0px 5px 10px 5px}#liveliness{height:1px;background:red;width:0}.main{margin:10px 5px 5px 5px;background-color:var(--layer-background-color);box-shadow:0 1px 2px var(--layer-border-color);padding:5px 5px 20px 5px}#musicBox{position:fixed;bottom:-106px;left:0;width:100%;height:106px;background:#fff;box-shadow:-1px -1px 4px 1px rgba(0,0,0,.3);z-index:9990;transition:.3s}#musicBox .music-box{position:relative;margin:0 auto;width:90%;height:106px;min-width:430px;max-width:1300px;display:flex;padding:5px 0}#musicBox .music-box .music-img{margin:0 10px}#musicBox .music-box .music-img .music-img-item{width:40px;height:40px;cursor:pointer;border-radius:50%}#musicBox .music-box.playing .music-img-item{animation:spin 2s linear infinite}#musicBox .music-box .music-detail{width:100px;height:106px;background:#fff;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-around}#musicBox .music-box .music-detail .music-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:bold}#musicBox .music-box .music-close-btn{position:absolute;top:-20px;right:0;width:50px;height:20px;background:#fff;border-top-left-radius:5px;border-top-right-radius:5px;cursor:pointer;text-align:center;box-shadow:0 -1px 0 1px rgba(0,0,0,.3);padding-top:2px;box-sizing:border-box}#musicBox .music-box .music-close-btn img{width:20px;height:20px}#musicBox .music-box .music-controller{display:flex;justify-content:space-between;align-items:center;width:120px;height:40px}#musicBox .music-box .music-controller img{cursor:pointer}#musicBox .music-box .music-controller .music-prev,#musicBox .music-box .music-controller .music-next,#musicBox .music-box .music-controller .music-list,#musicBox .music-box .music-controller .music-voice,#musicBox .music-box .music-controller .music-mode{width:30px;height:30px}#musicBox .music-box .music-controller .music-play{width:40px;height:40px}#musicBox .music-box .music-controller .music-voice-box{position:fixed;bottom:40px;display:none;padding:10px;background:#fff;z-index:9991}#musicBox .music-box .music-controller .music-voice:hover .music-voice-box{display:block}#musicBox.show{bottom:0}#musicBox .music-core{position:fixed;bottom:-100px;left:0;z-index:-1}.music-list-box{position:fixed;bottom:-200px;left:0;transition:.3s;width:80%;height:200px;min-width:430px;max-width:800px;padding:20px;background:#fff;box-shadow:-1px -1px 4px 1px rgba(0,0,0,.3);z-index:9980;border-top-right-radius:5px;border-top-left-radius:5px;box-sizing:border-box;overflow-y:scroll}.music-list-box::-webkit-scrollbar{width:0}.music-list-box.show{bottom:50px}.music-list-box .music-list-item{display:flex;align-items:center;border-bottom:1px solid rgba(0,0,0,.3);padding:5px;background:#fff;transition:.3s}.music-list-box .music-list-item:hover{background:rgba(0,0,0,.1)}.music-list-box .music-list-item img{width:20px;height:20px;margin-right:10px}.music-list-box .music-list-item .music-list-title{flex:1}.music-list-box .music-list-item .music-list-controller span{cursor:pointer}.music-list-box .music-list-item .music-list-controller span:hover{text-decoration:underline}.music-player{margin:10px;padding:10px;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;box-shadow:0 0 10px #ccc;background:#fff}.music-player .music-player-img{width:50px;height:50px;margin-right:10px}.music-player .music-player-box .music-player-title{width:200px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:bold;font-size:18px}.music-player .music-player-box .music-player-controller span{cursor:pointer}.music-player .music-player-box .music-player-controller span:hover{text-decoration:underline}.file__items{margin-bottom:8px}.file__items .item{border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.2);box-sizing:border-box;color:var(--text-gray-color);float:left;height:222px;margin:8px 0 0 8px;overflow:hidden;position:relative;width:259px}.file__items .item__img{background-position:50%;background-size:contain;background-repeat:no-repeat;height:100%;width:100%}.file__items .item--selected,.file__items .item:hover{box-shadow:var(--shadow-layer)}.file__items .item--selected .item__info,.file__items .item:hover .item__info{top:0}.file__items .item--selected .item__info{background-color:var(--layer-hover-background-color)}.file__items .item--file{align-items:center;padding:8px}.file__items .item--file svg{color:var(--text-fade-color);height:100px;width:100px}.file__items .item__info{background-color:rgba(0,0,0,.86);box-sizing:border-box;color:#fff;height:100%;overflow:hidden;padding:10px;position:absolute;top:100%;transition:all .15s ease-in-out;width:100%;word-break:break-all}.file__items .item__info .red{margin-top:8px;width:100%}.ft-admin-user{color:red;font-weight:bold}.article-statement{width:auto;color:#0f8cee;background-color:#e3f9fd;border-radius:12px;padding:4px 8px;margin:5px auto;font-weight:bold}.rainbow{background:linear-gradient(90deg, #ff0000, #ff8000, #ffff00, #00ff00, #00ffff, #0000ff, #8000ff, #ff00ff);background-size:800% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:rainbow 6s linear infinite}@keyframes rainbow{0%{background-position:0% 50%}100%{background-position:100% 50%}}.neon{background:linear-gradient(90deg, #ff00cc, #ff0066, #ff3333, #ff6600, #ffcc00);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:neon 3s ease infinite;text-shadow:0 0 5px rgba(255,0,204,.5)}@keyframes neon{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.fire{background:linear-gradient(90deg, #ff8a00, #ff0000, #ff8a00, #ff4500);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:fire 2.5s ease-in-out infinite}@keyframes fire{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.ocean{background:linear-gradient(90deg, #00b4db, #0083b0, #00b4db, #00c9ff);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:ocean 5s ease-in-out infinite}@keyframes ocean{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.forest{background:linear-gradient(90deg, #00ff7f, #32cd32, #228b22, #006400);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:forest 7s ease infinite}@keyframes forest{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.sunset{background:linear-gradient(90deg, #ff7e5f, #feb47b, #ff7e5f, #ff512f);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:sunset 6s ease infinite}@keyframes sunset{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.metal{background:linear-gradient(90deg, #bdc3c7, #2c3e50, #bdc3c7, #95a5a6);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:metal 4s linear infinite}@keyframes metal{0%{background-position:0% 50%}100%{background-position:100% 50%}}.galaxy{background:linear-gradient(90deg, #8a2be2, #4b0082, #9400d3, #8a2be2);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:galaxy 8s ease infinite;text-shadow:0 0 8px rgba(138,43,226,.4)}@keyframes galaxy{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.pulse{background:linear-gradient(90deg, #ff0080, #ff8c00, #40e0d0);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:pulse 4s ease infinite}@keyframes pulse{0%,100%{background-position:0% 50%;opacity:1}50%{background-position:100% 50%;opacity:.8}}.game-badge .badge{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;background:#f5f5f7;border:1px solid #e0e0e4;text-decoration:none;color:#333;font-size:13px;line-height:1.2;cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .1s ease;margin:10px 0 0 0}.game-badge .badge:hover{background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.12);transform:translateY(-1px)}.game-badge .badge-logo{width:24px;height:24px;border-radius:6px;object-fit:cover;margin-right:8px}.game-badge .badge-text{display:flex;flex-direction:column}.game-badge .badge-room-name{font-weight:600;margin-bottom:2px}.game-badge .badge-status{display:inline-flex;align-items:center;font-size:12px;color:#666}.game-badge .badge-status-text{margin-right:4px}.game-badge .badge-status-icon{font-size:14px}.tip-wrapper{position:relative;display:inline-block;cursor:pointer}.tip-wrapper .tip-text{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:rgba(236,236,236,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#000;padding:6px 10px;border-radius:4px;white-space:normal;word-break:break-all;width:230px;text-align:center;font-size:14px;margin-bottom:6px;transition:opacity .2s;z-index:10}.tip-wrapper:hover .tip-text{visibility:visible;opacity:1}.long-article-content{min-width:0;overflow:visible !important;padding:0;color:#25332a;font-size:var(--long-article-font-size, 16px);line-height:1.9;overflow-wrap:anywhere}.long-article-content>p{margin:1.1em 0;text-indent:2em}.long-article-content>p:has(>img),.long-article-content>p:has(>picture),.long-article-content>p:has(>video),.long-article-content>p:has(>iframe){text-indent:0}.long-article-content>h1,.long-article-content>h2,.long-article-content>h3,.long-article-content>h4,.long-article-content>h5,.long-article-content>h6{margin:1.65em 0 .7em;color:#1f2e24;line-height:1.45;text-indent:0}.long-article-content>ul,.long-article-content>ol,.long-article-content>blockquote,.long-article-content>pre,.long-article-content>table,.long-article-content>figure{margin-top:1.25em;margin-bottom:1.25em;text-indent:0}.long-article-content blockquote{padding:12px 14px;border-left:4px solid #9bb4a0;background:#f0f5ef;color:#526259}.long-article-content img{display:block;max-width:100%;height:auto;margin:1.4em auto}.long-article-content table{display:block;max-width:100%;overflow-x:auto}.long-article-content pre{border-radius:7px}.long-article-content :not(pre)>code{border-radius:4px;background:#edf2ec;color:#35513d}.long-article-commentable-block{position:relative}.long-article-paragraph-highlight{display:inline;padding:0 2px;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-color .18s ease,text-decoration-color .18s ease}.long-article-commentable-block.is-commenting>.long-article-paragraph-highlight{background:rgba(77,111,84,.14);text-decoration:underline;text-decoration-style:dashed;text-decoration-color:rgba(77,111,84,.42);text-decoration-thickness:1px;text-underline-offset:4px}.long-article-paragraph-comment-btn{position:relative;display:none;align-items:center;justify-content:center;width:24px;height:20px;margin-left:6px;padding:0;border:0;border-radius:3px;background:rgba(0,0,0,0);color:#6e8975;opacity:.76;transform:translateY(-1px);vertical-align:.18em;text-indent:0}.long-article-paragraph-comment-btn svg{width:14px;height:14px}.long-article-paragraph-comment-btn span{position:static;display:none;min-width:12px;height:18px;padding:0 4px;border:1px solid rgba(77,111,84,.32);border-radius:2px;background:rgba(237,245,237,.78);color:#617068;font-size:10px;line-height:16px;text-align:center}.long-article-paragraph-comment-btn.has-comments{display:inline-flex;width:auto;min-width:18px;height:18px;padding:0;opacity:1}.long-article-paragraph-comment-btn.has-comments svg{display:none}.long-article-paragraph-comment-btn.has-comments span:not([hidden]){display:inline-block}.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn{background:#3e7250;color:#fff;opacity:1}.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn span{border-color:#3e7250;background:rgba(0,0,0,0);color:#fff}.long-article-paragraph-comments{position:absolute;inset:0;z-index:6;display:none;box-sizing:border-box;padding:14px;overflow:auto;background:#dcebdd}.long-article-paragraph-comments .reaction-widget__summary{display:none}.long-article-paragraph-comments .comment-thread{--comment-thread-max-indent: 16px}#longArticleParagraphComments .action-btns{position:relative}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions{display:inline-flex;align-items:center;gap:2px;margin-left:4px}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions>span,#longArticleParagraphComments .long-article-paragraph-comment-more{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none}#longArticleParagraphComments .long-article-paragraph-comment-more-menu{position:relative;display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more{color:var(--text-gray-color);width:24px;min-width:24px;padding:0}#longArticleParagraphComments .long-article-paragraph-comment-more svg{width:16px;height:16px;fill:currentColor}#longArticleParagraphComments .long-article-paragraph-comment-more-panel{position:absolute;right:0;bottom:calc(100% + 6px);z-index:3;display:none;align-items:center;gap:2px;padding:4px;border:1px solid rgba(95,126,104,.18);border-radius:6px;background:#f4f8f4;box-shadow:none;white-space:nowrap}#longArticleParagraphComments .long-article-paragraph-comment-more-menu.is-more-open .long-article-paragraph-comment-more-panel{display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more-panel>span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none}.long-article-paragraph-comments.is-active{display:block}#comments.is-paragraph-view>:not(.long-article-paragraph-comments){visibility:hidden}.long-article-paragraph-comments__header{position:sticky;top:-14px;z-index:2;margin:-14px -14px 12px;padding:16px 14px 12px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97)}.long-article-paragraph-comments__header strong{color:#1f2e24;font-size:18px}.long-article-paragraph-comments__header p{margin:8px 0;color:#526259;font-size:12px;line-height:1.6}.long-article-paragraph-comments__header>button{position:absolute;top:12px;right:12px;border:0;background:rgba(0,0,0,0);color:#77857c;font-size:24px}.long-article-paragraph-comments__sort,.long-article-paragraph-comments__pager{display:flex;justify-content:center;gap:6px}.long-article-paragraph-comments__sort button,.long-article-paragraph-comments__reply{min-height:28px;padding:0 10px;border:1px solid rgba(65,94,71,.14);border-radius:5px;background:#edf5ed;color:#6e8975;font-size:12px}.long-article-paragraph-comments .list>ul>li{margin:0;padding:14px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}.long-article-paragraph-comments__sort button.is-active{background:#3e7250;color:#fff}.long-article-paragraph-comments__reply{display:block;margin-bottom:10px;padding:10px;cursor:pointer}body.night .long-article-paragraph-comments{background:#111}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header{background:rgba(17,17,17,.97)}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header strong{color:#eef4ef}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header p,body.night .long-article-paragraph-comments .long-article-paragraph-comments__header>button{color:#858f88}body.night .long-article-paragraph-comments .long-article-paragraph-comments__sort button,body.night .long-article-paragraph-comments .long-article-paragraph-comments__reply{border-color:rgba(255,255,255,.08);background:#191919;color:#989898}.long-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:10px 0 0;padding:0;color:#718078;font-size:13px;line-height:1.55;text-align:left}.long-article-meta a{color:#526c5a;text-decoration:none}.long-article-meta a:hover{color:#2f6a43}.long-article-meta .long-article-author{color:#2f4937;font-weight:600}.long-article-meta__separator{color:#9ba79f}.long-article-home-link{display:inline-flex;align-items:center;gap:5px;min-height:32px;margin:0 0 20px;padding:0 9px 0 7px;border-radius:5px;color:#526c5a;font-size:13px;text-decoration:none}.long-article-home-link svg{width:17px;height:17px}.long-article-catalog{position:fixed;inset:0;z-index:98;display:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;background:#dcebdd}.long-article-catalog__inner{box-sizing:border-box;min-height:100%;padding:calc(28px + env(safe-area-inset-top)) 20px calc(80px + env(safe-area-inset-bottom))}.long-article-catalog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid rgba(65,94,71,.18)}.long-article-catalog__header h2{margin:0;color:#1d2b21;font-size:24px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}.long-article-catalog__header span{display:block;margin-top:5px;color:#718078;font-size:12px}.long-article-catalog__close{display:inline-flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;background:rgba(0,0,0,0);color:#617068}.long-article-catalog__close svg{width:20px;height:20px}.long-article-catalog__chapters{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0 8px;margin-top:10px}.long-article-catalog__chapter{display:grid;grid-template-columns:72px minmax(0, 1fr);align-items:center;gap:10px;min-height:54px;padding:8px;border-bottom:1px solid rgba(65,94,71,.12);box-sizing:border-box;color:#25332a;text-decoration:none}.long-article-catalog__chapter--active{background:rgba(95,126,104,.15);box-shadow:inset 3px 0 #3e7250;color:#28593a;font-weight:600}.long-article-catalog__chapter-no{color:#718078;font-size:12px;white-space:nowrap}.long-article-catalog__chapter-title{min-width:0;font-size:15px;line-height:1.5;overflow-wrap:anywhere}body.long-article-page{--long-article-comments-width: min(430px, 100vw);min-height:100vh;width:100%;margin:0;padding:0;overflow-x:hidden;box-sizing:border-box;background:#c7dcc8;color:#25332a}body.long-article-page.long-article-catalog-open{overflow:hidden}body.long-article-page.long-article-catalog-open .long-article-catalog{display:block}body.long-article-page.long-article-catalog-open .long-article-settings{z-index:121}body.long-article-page>.nav,body.long-article-page>.footer,body.long-article-page .article-header{display:none !important}body.long-article-page #share,body.long-article-page .share,body.long-article-page .article-nav-scope,body.long-article-page .article-tail{display:none !important}body.long-article-page>.main{box-sizing:border-box;margin:0;padding:0 14px 30px;background:#c7dcc8;box-shadow:none}body.long-article-page>.main>.article-actions{display:none}body.long-article-page .article-main{overflow:hidden;padding:0;border:0;border-radius:0;background:#dcebdd;box-shadow:none}body.long-article-page .article-main>.wrapper{width:auto;max-width:none;margin:0;padding:34px 20px 30px;overflow-x:hidden;box-sizing:border-box}body.long-article-page .article-title{margin:0;padding:0;box-sizing:border-box;color:#1d2b21;font-size:26px;font-weight:650;line-height:1.35;text-align:left}body.long-article-page .article-title>a{color:inherit}body.long-article-page .long-article-content{width:100%;max-width:100%;margin-top:28px;padding:0;box-sizing:border-box;color:#25332a;font-size:var(--long-article-font-size, 16px);line-height:1.9}body.long-article-page .long-article-content>p{margin:1.1em 0}body.long-article-page #comments{position:fixed;top:0;right:0;bottom:0;z-index:115;box-sizing:border-box;width:var(--long-article-comments-width);height:100vh;height:100dvh;margin:0;padding:0 14px calc(78px + env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:0;border-left:1px solid rgba(61,91,68,.14);border-radius:0;background:#dcebdd;box-shadow:-12px 0 30px rgba(40,66,47,.16);transform:translateX(100%);transition:transform .28s ease,visibility 0s linear .28s;visibility:hidden}body.long-article-page #comments .list.comments{border:0;background:rgba(0,0,0,0);box-shadow:none}body.long-article-page #comments .comments-header{position:sticky;top:0;z-index:4;margin:0 -14px 6px;padding:18px 14px 14px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);backdrop-filter:blur(8px)}body.long-article-page #comments .comments-header__main>.fn-right{display:none}body.long-article-page #comments .article-cmt-cnt{color:#1f2e24;font-size:20px;font-weight:650}body.long-article-page #comments .long-article-comments-count{margin-left:4px;color:#77857c;font-size:12px;font-weight:400}body.long-article-page #comments .comment-filterbar{margin-top:10px}body.long-article-page #comments .comment-segment{border-color:rgba(65,94,71,.15);background:#edf5ed}body.long-article-page #comments .comments-header a.comment-segment__item{color:#68776e}body.long-article-page #comments .comments-header a.comment-segment__item--active,body.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#5f7e68;color:#fff}body.long-article-page #comments .list.comments>ul{margin:0;padding:0 0 10px}body.long-article-page #comments .list.comments>ul>li,body.long-article-page #comments .list.comments>ul>li.cmt-perfect,body.long-article-page #comments .list.comments>ul>li.cmt-perfect:hover{margin:0;padding:16px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}body.long-article-page #comments .list.comments>ul>li .avatar{width:32px;height:32px;border-radius:50%}body.long-article-page #comments .comment-info{color:#6f7d74;line-height:1.5}body.long-article-page #comments .comment-info a,body.long-article-page #comments .comment-thread__meta a{color:#405647;font-weight:600}body.long-article-page #comments .comment{margin-top:6px;color:#243128;font-size:15px;line-height:1.7}body.long-article-page #comments .comment-thread{margin:10px 0 4px;padding:10px;border:0;border-radius:8px;background:#edf5ed}body.long-article-page #comments .comment-thread__content{color:#34463a}body.long-article-page #comments .comment__reply{position:fixed;right:0;bottom:0;z-index:5;box-sizing:border-box;width:100%;margin:0;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);box-shadow:0 -8px 22px rgba(40,66,47,.08);backdrop-filter:blur(8px)}body.long-article-page #comments .comment__reply .reply__text{min-height:38px;border-color:rgba(65,94,71,.14);border-radius:8px;background:#edf5ed;color:#65746a;line-height:36px}body.long-article-page.long-article-comments-open #comments{transform:translateX(0);transition-delay:0s;visibility:visible}body.long-article-page.long-article-comments-open .long-article-settings{z-index:121}body.long-article-page.long-article-comments-open .long-article-settings__actions{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}body.long-article-page.long-article-comments-open .long-article-settings__actions>:not([data-long-article-action=comments]),body.long-article-page.long-article-comments-open .long-article-toggle-btn{display:none}body.long-article-page .long-article-comments-close{display:inline-flex;flex:0 0 32px;align-items:center;justify-content:center;width:32px;height:32px;margin-left:auto;padding:0;border:0;border-radius:50%;background:rgba(95,126,104,.12);box-shadow:none;color:#617068}body.long-article-page .long-article-comments-close svg{width:17px;height:17px}body.long-article-page .editor-panel{right:0;left:auto;width:var(--long-article-comments-width);max-width:var(--long-article-comments-width)}body.long-article-page .editor-panel .editor-bg{display:none}body.long-article-page .editor-panel .wrapper{right:0;left:auto;width:100%;max-width:100%;border-radius:10px 0 0;border-top:1px solid rgba(65,94,71,.16);background:#dcebdd;box-shadow:0 -12px 30px rgba(40,66,47,.16)}body.long-article-page .side{display:none}.article-nav-scope{margin:16px 0}.long-article-column-manage{display:inline-flex;align-items:center;justify-content:center;min-height:30px;margin-top:8px;padding:0 12px;border:1px solid #d9e5f5;border-radius:15px;background:#fff;color:#2b5db9;text-decoration:none}.article-nav-scope__input,.article-nav-sort__input{position:absolute;opacity:0;pointer-events:none}.article-nav-scope__tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-scope__tab{height:28px;padding:0 10px;border-radius:6px;color:#667085;cursor:pointer;font-size:13px;line-height:28px;text-align:center}.article-nav-sort{margin-top:10px}.article-nav-sort__tabs{display:grid;grid-template-columns:repeat(3, 1fr);gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-sort__tab{height:26px;padding:0 8px;border-radius:6px;color:#667085;cursor:pointer;font-size:12px;line-height:26px;text-align:center}.article-nav-sort__panel--author,.article-nav-sort__panel--hot{display:none}.article-nav-scope--switchable .article-nav-scope__panel--all{display:none}#articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,#articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,#articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,#articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,#articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.12);color:#1f2937;font-weight:600}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--column{display:none}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--all{display:block}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--time,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--time{display:none}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--author,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--hot{display:block}.article-adjacent-nav{display:flex;flex-direction:column;gap:12px;margin:12px 0 0}.article-adjacent-nav__link{display:block;min-height:60px;padding:10px 12px;border:1px solid #eee;border-radius:8px;background:#fafafa;color:#111;line-height:1.5;text-decoration:none}.article-adjacent-nav__link:hover{text-decoration:none}.article-adjacent-nav__link--disabled{color:#999}.article-adjacent-nav__label{margin-bottom:4px;color:#888;font-size:12px}.article-adjacent-nav__title{margin-bottom:4px;font-weight:700;overflow-wrap:anywhere}.article-adjacent-nav__preview{max-height:4.5em;overflow:hidden;color:#555;font-size:13px}.article-column-card{margin:12px 0;padding:10px;border:1px solid #b7cfba;border-radius:8px;background:#cfe2d0}.article-column-card__title{color:#2d4935;font-weight:600}.article-column-card__title a{color:inherit;text-decoration:none}.article-column-card__meta{margin-top:4px;color:#718078;font-size:12px}.article-column-card__chapters{margin-top:8px;max-height:220px;overflow:auto;padding-top:6px;border-top:1px dashed #b8d0bb}.article-column-card__chapter{display:block;padding:6px 8px;border-radius:8px;color:#3b5743;text-decoration:none}.article-column-card__chapter--active{background:#b2d0b5;color:#28593a;font-weight:600}.article-nav-list-card{margin:10px 0 0;padding:10px;border:1px solid #e8edf5;border-radius:8px;background:#fbfdff}.article-nav-list-card__title{color:#2b3a55;font-weight:600}.article-nav-list-card__items{margin-top:8px;padding-top:6px;border-top:1px dashed #e6eaf0}.article-nav-list-card__item{display:block;padding:6px 8px;border-radius:8px;color:#3d4a5c;line-height:1.45;overflow-wrap:anywhere;text-decoration:none}.article-nav-list-card__item--active{background:#e8f0ff;color:#1d4ed8;font-weight:600}.long-article-page .article-actions .fn-right{display:none !important}.long-article-settings{position:fixed;right:12px;bottom:calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px;align-items:flex-end;z-index:99}.long-article-settings__actions{display:flex;max-height:calc(100vh - 92px);max-height:calc(100dvh - 92px);flex-direction:column;gap:7px;overflow-y:auto;opacity:0;pointer-events:none;scrollbar-width:none;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease;visibility:hidden}.long-article-settings__actions::-webkit-scrollbar{display:none}.long-article-settings.is-open .long-article-settings__actions{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.long-article-settings-btn{width:40px;height:40px;border:0;border-radius:8px;background:#dcebdd;box-shadow:0 4px 12px rgba(48,73,55,.15);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#52685a;font-size:14px;font-weight:600;transition:background .2s ease,color .2s ease,transform .2s ease;gap:1px;position:relative}.long-article-settings-btn svg{width:18px;height:18px;fill:currentColor;flex-shrink:0}.long-article-settings-btn span{font-size:13px;font-weight:600}.long-article-settings-btn.has-cnt svg{width:16px;height:16px}.long-article-settings-btn.has-cnt .count{font-size:10px;line-height:1;font-weight:600}.long-article-settings-btn.ft-red{color:#f44336}.long-article-settings-btn.is-active{background:#3e7250;color:#fff}.long-article-toggle-btn{width:40px;height:40px;border-radius:8px;background:#dcebdd;border:0;box-shadow:0 4px 12px rgba(48,73,55,.15);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#52685a;font-size:18px;font-weight:600;transition:background .2s ease,color .2s ease}.long-article-toggle-btn.active{background:#3e7250;color:#fff}body.night .long-article-catalog{background:#111}body.night .long-article-catalog .long-article-catalog__header{border-color:rgba(255,255,255,.1)}body.night .long-article-catalog .long-article-catalog__header h2{color:#eef4ef}body.night .long-article-catalog .long-article-catalog__header span{color:#858f88}body.night .long-article-catalog .long-article-catalog__close{color:#989898}body.night .long-article-catalog .long-article-catalog__chapter{border-color:rgba(255,255,255,.08);color:#b9c2bc}body.night .long-article-catalog .long-article-catalog__chapter--active{background:rgba(95,149,109,.2);box-shadow:inset 3px 0 #7fb78d;color:#c9edcf}body.night .long-article-catalog .long-article-catalog__chapter-no{color:#858f88}body.night.long-article-page{background:#0a0a0a;color:#d9e3db}body.night.long-article-page>.main{background:#0a0a0a}body.night.long-article-page .article-main{background:#111;box-shadow:none}body.night.long-article-page .article-title,body.night.long-article-page .article-title>a{color:#eef4ef}body.night.long-article-page .long-article-home-link{color:#989898}body.night.long-article-page #comments{background:#111;border-left-color:rgba(255,255,255,.08);box-shadow:-12px 0 30px rgba(0,0,0,.34)}body.night.long-article-page #comments .comments-header,body.night.long-article-page #comments .comment__reply{border-color:rgba(255,255,255,.08);background:rgba(17,17,17,.97)}body.night.long-article-page #comments .article-cmt-cnt{color:#eef4ef}body.night.long-article-page #comments .long-article-comments-count,body.night.long-article-page #comments .comment-info{color:#858f88}body.night.long-article-page #comments .comment-segment,body.night.long-article-page #comments .comment-thread,body.night.long-article-page #comments .comment__reply .reply__text{border-color:rgba(255,255,255,.08);background:#191919}body.night.long-article-page #comments .comments-header a.comment-segment__item,body.night.long-article-page #comments .comment-info a,body.night.long-article-page #comments .comment-thread__meta a{color:#aab4ad}body.night.long-article-page #comments .comments-header a.comment-segment__item--active,body.night.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#465c4d;color:#fff}body.night.long-article-page #comments .list.comments>ul>li,body.night.long-article-page #comments .list.comments>ul>li.cmt-perfect,body.night.long-article-page #comments .list.comments>ul>li.cmt-perfect:hover{border-color:rgba(255,255,255,.08);background:rgba(0,0,0,0)}body.night.long-article-page #comments .comment,body.night.long-article-page #comments .comment-thread__content{color:#b9c2bc}body.night.long-article-page .long-article-comments-close{background:#191919;color:#989898}body.night.long-article-page .editor-panel .wrapper{border-color:rgba(255,255,255,.08);background:#191919;box-shadow:0 -12px 30px rgba(0,0,0,.34)}body.night .long-article-content{color:#989898}body.night .long-article-content a{color:#8fc9a0}body.night .long-article-content blockquote{border-color:#587663;background:#223128;color:#b8c7bc}body.night .long-article-content>h1,body.night .long-article-content>h2,body.night .long-article-content>h3,body.night .long-article-content>h4,body.night .long-article-content>h5,body.night .long-article-content>h6{color:#989898}body.night .long-article-content pre{background-color:#111a15}body.night .long-article-content :not(pre)>code{background:#27362c;color:#b9d6c1}body.night .long-article-meta{color:#93a299}body.night .long-article-meta a{color:#a9c7b1}body.night .long-article-meta a:hover{color:#c6e5ce}body.night .article-nav-scope__tabs,body.night .article-nav-sort__tabs{border-color:rgba(255,255,255,.1);background:#1f2937}body.night .article-nav-scope__tab,body.night .article-nav-sort__tab{color:#cbd5e1}body.night #articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,body.night #articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,body.night #articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,body.night #articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,body.night #articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#334155;color:#f8fafc}body.night .article-adjacent-nav__link,body.night .article-column-card,body.night .article-nav-list-card{border-color:rgba(255,255,255,.1);background:#1f2937;color:#e5e7eb}body.night .article-adjacent-nav__label,body.night .article-adjacent-nav__preview,body.night .article-column-card__meta{color:#94a3b8}body.night .article-column-card__title,body.night .article-column-card__chapter,body.night .article-nav-list-card__title,body.night .article-nav-list-card__item{color:#e5e7eb}body.night .article-column-card__chapters,body.night .article-nav-list-card__items{border-color:rgba(255,255,255,.1)}body.night .article-column-card__chapter--active{background:rgba(95,149,109,.24);color:#c9edcf}body.night .article-nav-list-card__item--active{background:rgba(59,130,246,.18);color:#bfdbfe}body.night .long-article-settings-btn,body.night .long-article-toggle-btn{border:0;background:#191919;color:#989898}body.night .long-article-settings-btn:hover,body.night .long-article-toggle-btn:hover{background:#191919;color:#989898}body.night .long-article-toggle-btn.active{background:#191919;color:#fff}.mobile-long-column__chapters{display:flex;flex-direction:column;gap:4px;margin-top:8px}.mobile-long-column__chapter{display:flex;align-items:center;gap:6px;padding:5px 0;border-radius:6px;background:rgba(0,0,0,0);text-decoration:none}.mobile-long-column__chapter+.mobile-long-column__chapter{border-top:1px dashed rgba(0,0,0,.06)}.mobile-long-column__chapter-no{flex:0 0 auto;padding:0 6px;height:18px;line-height:18px;border-radius:9px;background:#eef2ff;color:#475569;font-size:10px;white-space:nowrap}.mobile-long-column__chapter-title{min-width:0;flex:1;font-size:12px;line-height:1.3;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.night .mobile-long-column__chapter{background:rgba(0,0,0,0)}body.night .mobile-long-column__chapter+.mobile-long-column__chapter{border-color:rgba(255,255,255,.08)}body.night .mobile-long-column__chapter-no{background:#3a3a3a;color:#ddd}body.night .mobile-long-column__chapter-title{color:#ddd}.emoji_group{display:inline-block;padding:2px 4px;cursor:pointer}.emoji_group_select{border-bottom:2px solid #aaa}.emoji_item{position:relative;display:inline-block;width:100px;height:100px;margin:6px 6px 16px}.emoji_img_wrap{width:100px;height:100px;display:flex;justify-content:center}.emoji_img_wrap img{width:100%;border-radius:6px}.emoji_name_wrap{display:flex;align-items:center}.emoji_name{flex:1}.emoji_overlay{position:absolute;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;gap:6px;opacity:0;pointer-events:none;transition:opacity .15s ease}.emoji_item:hover .emoji_overlay{opacity:1;pointer-events:auto}.emoji_btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:rgba(255,255,255,.9);border-radius:4px;cursor:pointer;font-size:14px;line-height:1}.home-personalize-toolbar{position:relative;display:flex;justify-content:flex-end;padding:12px 0 0}.home-personalize-toolbar__btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-color:#d7dee8;color:#2f3b52}.home-personalize-toolbar__btn svg{width:14px;height:14px}.home-personalize-panel{position:absolute;top:52px;right:0;z-index:80;display:none;width:280px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.18)}.home-personalize-panel--open{display:block}.home-personalize-panel__head,.home-personalize-panel__actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px}.home-personalize-panel__head{border-bottom:1px solid #eef2f7}.home-personalize-panel__actions{border-top:1px solid #eef2f7}.home-personalize-panel__actions button{flex:1 1 auto}.home-personalize-panel__list{max-height:360px;overflow:auto;padding:6px}.home-personalize-panel__item{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:8px;min-height:38px;padding:0 8px;border-radius:6px;color:#2f3b52;cursor:grab}.home-personalize-panel__check{display:grid;grid-template-columns:22px minmax(0, 1fr);align-items:center;gap:8px;min-width:0;cursor:pointer}.home-personalize-panel__check span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-personalize-panel__sort{display:inline-flex;gap:4px}.home-personalize-panel__sort button{min-height:28px;padding:0 7px;font-size:12px}.home-personalize-panel__sort button:disabled{cursor:default;opacity:.42}.home-personalize-panel__item:hover{background:#f6f8fb}.home-personalize-panel__item--dragging{opacity:.55}.home-module[draggable=true]{cursor:grab}.home-module--dragging{opacity:.55;outline:2px dashed #7da7df;outline-offset:3px}.repeater-station{box-sizing:border-box;padding:14px;border:1px solid #e5ebf3;border-radius:8px;background:#fff}.repeater-station__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.repeater-station__title,.repeater-station__tabs,.repeater-station__actions,.repeater-station__create-actions{display:flex;align-items:center;gap:8px}.repeater-station__title{min-width:0;color:#1f2937;font-weight:700}.repeater-station__title svg{width:16px;height:16px;color:#2b5db9}.repeater-station__tabs,.repeater-station__actions{flex-wrap:wrap}.repeater-station__tab,.repeater-station__btn{min-height:32px;padding:0 10px;border-radius:6px}.repeater-station__tab--active,.repeater-station__btn--liked{border-color:#2b5db9;background:#edf4ff;color:#1d4ed8}.repeater-station__body{min-height:120px;padding:14px;border-radius:8px;background:#f7fafc}.repeater-station__quote{color:#1f2937;font-size:15px;line-height:1.75;overflow-wrap:anywhere}.repeater-station__meta{display:flex;gap:10px;margin-top:10px;color:#738095;font-size:12px}.repeater-station__actions{margin-top:12px}.repeater-station__btn{display:inline-flex;align-items:center;gap:5px;text-decoration:none}.repeater-station__btn svg{width:14px;height:14px}.repeater-station__create{margin-top:12px}.repeater-station__create textarea{box-sizing:border-box;width:100%;min-height:86px;padding:10px;border:1px solid #d7dee8;border-radius:6px;resize:vertical}body.night .home-personalize-panel,body.night .repeater-station{border-color:rgba(255,255,255,.1);background:#1e293b}body.night .repeater-station__body{background:#111827}body.night .repeater-station__title,body.night .repeater-station__quote,body.night .home-personalize-panel__item{color:#e5e7eb}@media(max-width: 768px){.home-personalize-toolbar{margin:0 10px;padding-top:8px}.home-personalize-panel{top:48px;right:0;left:0;width:auto}.repeater-station__head{align-items:flex-start;flex-direction:column}.repeater-station__body{min-height:96px}}.home-personalize-toolbar,.wrapper.home-personalize-toolbar{position:fixed;display:flex;justify-content:flex-end;top:172px;right:24px;left:auto !important;z-index:30;width:auto !important;min-width:0 !important;max-width:none !important;padding:0 !important;margin:0 !important;background:rgba(0,0,0,0) !important;overflow:visible !important;box-sizing:border-box;pointer-events:none}.home-personalize-toolbar__btn{flex-direction:column;justify-content:center;gap:3px;width:86px;min-height:54px;border:1px solid #e0e7ef;border-radius:16px;background:rgba(248,250,252,.76);box-shadow:0 6px 24px rgba(60,80,120,.12),0 1.5px 6px rgba(60,80,120,.08);color:#222;font-weight:700;line-height:1.2;pointer-events:auto;backdrop-filter:blur(8px);transition:box-shadow .3s,transform .2s}.home-personalize-toolbar__btn:hover{box-shadow:0 12px 32px rgba(60,80,120,.16),0 2px 8px rgba(60,80,120,.1);transform:translateY(-2px) scale(1.04)}.home-personalize-toolbar__btn svg{width:16px;height:16px}.home-personalize-toolbar__btn span{font-size:12px}.home-personalize-panel{top:62px;pointer-events:auto}.home-personalize-toolbar--nav,.wrapper.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;display:inline-flex;align-items:center;width:auto;padding:0;margin:0;background:rgba(0,0,0,0);pointer-events:auto}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{flex-direction:row;gap:0;width:auto;min-width:0;min-height:0;border:0;border-radius:6px;background:rgba(0,0,0,0);box-shadow:none;color:#3b3e43;font-size:0;line-height:1;padding:14px 10px;backdrop-filter:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:focus{background:#fff7ec;box-shadow:none;color:#e59230;transform:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{color:currentColor;fill:none;height:18px;stroke:currentColor;width:18px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn span{display:none}.home-personalize-toolbar--nav .home-personalize-panel{top:46px;right:0}.long-read-zone--compact .long-read-zone__wrapper{gap:12px;padding:14px 18px}.long-read-zone__compact-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px}.long-read-zone__compact-group{min-width:0}.long-read-zone__compact-group .module-list{margin-top:8px}.long-read-zone__compact-group li{min-height:30px}.repeater-station--sidebar{margin-bottom:12px;padding:10px}.repeater-station--sidebar .repeater-station__head{align-items:flex-start;flex-direction:column;gap:8px}.repeater-station--sidebar .repeater-station__body{min-height:72px;padding:10px}.repeater-station--sidebar .repeater-station__quote{font-size:13px;line-height:1.65}.repeater-station--sidebar .repeater-station__tab,.repeater-station--sidebar .repeater-station__btn{min-height:28px;padding:0 8px}.repeater-station--mobile-users{margin:0 10px 10px}@media(max-width: 768px){.home-personalize-toolbar{top:150px;right:10px;margin:0}.home-personalize-panel{right:0;left:auto;width:min(280px,100vw - 20px)}.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;flex:0 0 34px;height:34px;margin:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{box-sizing:border-box;border-radius:999px;height:34px;justify-content:center;padding:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:active{background:#eef6ff;color:#2b5db9}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{height:21px;width:21px}.home-personalize-toolbar--nav .home-personalize-panel{position:fixed;top:52px;right:10px;left:auto}.long-read-zone__compact-grid{grid-template-columns:1fr}}.long-read-zone__actions{align-items:center;display:inline-flex;gap:8px}.column-cover,.column-detail-hero__cover,.column-reading-book,.column-book__cover{background-color:#cdd6e3;background-position:center;background-size:cover;display:block;overflow:hidden;position:relative;text-decoration:none}.column-cover::before,.column-detail-hero__cover::before,.column-reading-book::before{background:linear-gradient(180deg, rgba(15, 23, 42, 0.12), rgba(15, 23, 42, 0.78));content:"";inset:0;position:absolute}.column-cover--default,.column-detail-hero--default .column-detail-hero__cover,.column-book--default .column-book__cover{background-blend-mode:multiply;background-color:#8aa0bd}.column-bookstore__panel{padding:16px}.column-bookstore__sections{display:grid;gap:18px;grid-template-columns:repeat(2, minmax(0, 1fr))}.column-bookstore__section{min-width:0}.column-bookstore__section h2,.column-bookstore__section h3{color:#263241;font-size:16px;line-height:1.4;margin:0 0 14px}.column-bookstore__section h3{background:#e8f5d8;border-radius:999px;display:inline-block;padding:4px 14px}.column-bookstore__section--hot h2,.column-bookstore__section--hot h3{background:#ffe2df;color:#c0392b}.column-bookstore__grid{display:grid;gap:18px 14px;grid-template-columns:repeat(auto-fill, minmax(88px, 1fr))}.column-book{color:#263241;display:block;min-width:0;text-align:center;text-decoration:none}.column-book__cover{aspect-ratio:3/4;border-radius:3px 6px 6px 3px;box-shadow:inset 7px 0 0 rgba(0,0,0,.14),0 8px 18px rgba(31,41,55,.18);transition:box-shadow .18s,transform .18s}.column-book:hover .column-book__cover{box-shadow:inset 7px 0 0 rgba(0,0,0,.18),0 12px 24px rgba(31,41,55,.24);transform:translateY(-2px)}.column-book__title{display:-webkit-box;font-size:13px;font-weight:700;line-height:1.35;margin-top:8px;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.column-bookstore__empty{color:#8a94a6;padding:18px 0;text-align:center}.column-detail-hero{border-bottom:1px solid #edf1f6;display:grid;gap:20px;grid-template-columns:160px minmax(0, 1fr);padding:18px}.column-detail-hero__cover{aspect-ratio:3/4;border-radius:8px}.column-cover span,.column-detail-hero__cover span,.column-reading-book span{position:relative;z-index:1}.column-detail-hero__cover span{bottom:14px;color:#fff;font-weight:700;left:14px;line-height:1.35;overflow-wrap:anywhere;position:absolute;right:14px}.column-detail-hero__body h1{color:#111827;font-size:28px;line-height:1.25;margin:6px 0 10px;overflow-wrap:anywhere}.column-detail-hero__label,.column-detail-hero__meta{color:#6b7280}.column-reading-shelf{display:grid;gap:10px;padding:12px}.column-reading-book{border-radius:8px;color:#fff;min-height:148px}.column-reading-book__title,.column-reading-book__bookmark,.column-reading-book__chapter{color:#fff;left:12px;position:absolute;right:12px}.column-reading-book__bookmark{background:#d94848;left:auto;padding:8px 0 10px;text-align:center;top:0;width:58px}.column-reading-book__title{bottom:42px;font-weight:700}.column-reading-book__chapter{bottom:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-manage__list{display:grid;gap:14px;padding:16px}.column-manage__item{align-items:start;display:grid;gap:14px;grid-template-columns:120px minmax(0, 1fr)}.column-manage__item--current{background:#f8fbff;border:1px solid #cfe0fb;border-radius:8px;padding:10px}.column-cover{aspect-ratio:3/4;border-radius:8px}.column-cover span{bottom:10px;color:#fff;font-weight:700;left:10px;line-height:1.35;position:absolute;right:10px}.column-manage__title{color:#1f2937;font-weight:700;line-height:1.4;text-decoration:none}.column-manage__meta{color:#6b7280;font-size:12px;line-height:1.6}.column-manage__form{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.column-manage__input{flex:1 1 260px;min-width:0}body.night .column-bookstore__section h2,body.night .column-book{color:#e5e7eb}body.night .column-bookstore__section h3{background:rgba(74,222,128,.16);color:#bbf7d0}body.night .column-bookstore__section--hot h2,body.night .column-bookstore__section--hot h3{background:rgba(248,113,113,.16);color:#fecaca}@media(max-width: 768px){.column-bookstore__sections{grid-template-columns:1fr}.column-bookstore__grid{gap:16px 12px;grid-template-columns:repeat(3, minmax(0, 1fr));padding:0 10px 12px}.column-bookstore__section{margin-bottom:10px}.column-detail-hero,.column-manage__item{grid-template-columns:104px minmax(0, 1fr);padding:12px}.column-detail-hero__body h1{font-size:20px}}.column-detail-hero__edit{border:1px solid #cfe0fb;border-radius:6px;color:#2b5db9;display:inline-flex;line-height:20px;margin-top:14px;padding:5px 12px;text-decoration:none}.column-detail-hero__edit:hover{background:#f5f9ff;text-decoration:none}.long-article-cover-dialog{align-items:center;display:flex;inset:0;justify-content:center;position:fixed;z-index:190}.long-article-cover-dialog.fn-none{display:none}.long-article-cover-dialog__mask{background:rgba(15,23,42,.48);inset:0;position:absolute}.long-article-cover-dialog__panel{background:#fff;border-radius:8px;box-shadow:0 18px 54px rgba(15,23,42,.24);max-width:calc(100vw - 32px);padding:16px;position:relative;width:420px}.long-article-cover-dialog__head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.long-article-cover-dialog__head strong{color:#1f2937;font-size:16px;line-height:1.4}.long-article-cover-dialog__close{align-items:center;background:rgba(0,0,0,0);border:0;color:#64748b;cursor:pointer;display:inline-flex;font-size:24px;height:36px;justify-content:center;line-height:1;padding:0;width:36px}.long-article-cover-dialog__body{align-items:center;display:flex;justify-content:center}.long-article-cover-dialog__preview{aspect-ratio:3/4;background-color:#cdd6e3;background-position:center;background-size:cover;border-radius:8px;box-shadow:inset 7px 0 0 rgba(0,0,0,.14);overflow:hidden;position:relative;width:154px}.long-article-cover-dialog__preview::before{background:linear-gradient(180deg, rgba(15, 23, 42, 0.08), rgba(15, 23, 42, 0.72));content:"";inset:0;position:absolute}.long-article-cover-dialog__preview.column-cover--default{background:linear-gradient(135deg, #8aa0bd, #637792)}.long-article-cover-dialog__preview span{bottom:10px;color:#fff;font-weight:700;left:10px;line-height:1.35;overflow-wrap:anywhere;position:absolute;right:10px;z-index:1}.long-article-cover-dialog__status{color:#2f7d4f;font-size:13px;line-height:20px;margin-top:12px;min-height:20px;text-align:center}.long-article-cover-dialog__status--error{color:#b42318}.long-article-cover-dialog__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:14px}.long-article-cover-dialog__actions button{min-height:36px}.long-article-cover-dialog__actions button:disabled{cursor:default;opacity:.58}body.night .long-article-cover-dialog__panel{background:#1f2937}body.night .long-article-cover-dialog__head strong{color:#e5e7eb}body.night .long-article-cover-dialog__close{color:#cbd5e1}body.night .long-article-cover-dialog__status{color:#86efac}body.night .long-article-cover-dialog__status--error{color:#fca5a5}@media(max-width: 768px){.long-article-cover-dialog__panel{max-height:calc(100vh - 28px);overflow:auto;width:calc(100vw - 28px)}.long-article-cover-dialog__preview{width:132px}.long-article-cover-dialog__actions{justify-content:stretch}.long-article-cover-dialog__actions button{flex:1 1 0;min-height:44px}}.mobile-head+div[style*="height: 74px"]{height:84px !important}.nav{background:rgba(255,255,255,.98);border-bottom:1px solid #e5ebf2;box-shadow:0 4px 16px rgba(15,23,42,.06);box-sizing:border-box;height:48px;padding:0}.nav .wrapper{align-items:center;box-sizing:border-box;height:48px;margin:0;padding:0 10px;width:100%}.nav .head-fn{flex:0 0 auto}.nav .head-fn h1{line-height:0;margin:0}.nav .head-fn h1 a{align-items:center;display:flex;height:40px;justify-content:center;width:44px}#logo-animate{height:34px !important;width:34px !important}#logo-animate svg{display:block;float:none;margin:0}.nav .user-nav{display:flex;flex:1 1 auto;gap:4px;justify-content:flex-end;min-width:0;overflow:hidden;padding-bottom:0}.nav div>a,.nav .user-nav .no-msg,.nav .user-nav .msg{align-items:center;background:rgba(0,0,0,0);border-radius:999px;box-sizing:border-box;color:#667085;display:inline-flex;flex:0 0 34px;height:34px;justify-content:center;line-height:1;margin:0;padding:0;text-decoration:none;width:34px}.nav div>a:hover,.nav div>a:active{background:#eef4ff;color:#2f6fed}.nav .user-nav .no-msg,.nav .user-nav .msg{font-size:15px}.nav .user-nav .msg{background:#fff1f0;color:#d92d20}.nav .user-nav svg{color:currentColor;height:21px;width:21px}.nav .user-nav #aChat svg{height:19px !important;vertical-align:0 !important;width:19px}.nav .avatar-small{border-radius:8px;height:28px;width:28px}.recent__nav{background:#f8fafc;box-sizing:border-box;display:flex;gap:4px;min-height:38px;overflow-x:auto;overflow-y:hidden;padding:6px 10px;scrollbar-width:none;white-space:nowrap;-webkit-overflow-scrolling:touch}.recent__nav::-webkit-scrollbar{display:none}.recent__nav .recent__nav-item{align-items:center;border-radius:999px;box-sizing:border-box;display:inline-flex;flex:0 0 auto;line-height:26px;min-height:28px;padding:0 10px}.recent__nav .recent__nav-check{background:#fff;box-shadow:inset 0 0 0 1px #e5ebf2}body.index{background-color:#f4f6f8 !important}.mobile-head{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(226,232,240,.86);box-shadow:0 6px 18px rgba(15,23,42,.08)}.index-top__nav{box-sizing:border-box;flex-wrap:nowrap;height:36px;overflow-x:auto;overflow-y:hidden;padding:0 8px;scrollbar-width:none;white-space:nowrap}.index-top__nav::-webkit-scrollbar{display:none}.index-top__nav a{box-sizing:border-box;flex:1 1 0;line-height:34px;min-width:0;overflow:hidden;padding:0 4px;text-overflow:ellipsis}.index-top__nav .item--current{border-bottom-color:#2f6fed;color:#2f6fed;font-weight:600}body.index .main{background:rgba(0,0,0,0);box-shadow:none;margin:10px 10px 12px;padding:0}body.index .main>ul{list-style:none;margin:0;padding:0}body.index .home-personalize-zone>.home-module{list-style:none}body.index .main>ul>.module__title{border:0;color:#667085 !important;font-size:13px !important;font-weight:600 !important;letter-spacing:0;margin:14px 0 8px;padding:0 2px !important}body.index .list__item{background:#fff;border:1px solid #e5ebf2;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.06);box-sizing:border-box;margin-bottom:10px;padding:12px !important}body.index .list__item.fn__flex:not(.mobile-long-column){background:rgba(0,0,0,0);border:0;box-shadow:none;color:#667085;margin:12px 0 4px;padding:0 2px !important}body.index .list__meta{align-items:center;color:#667085;display:flex;flex-wrap:wrap;gap:4px;line-height:20px;min-height:28px}body.index .list-avatar{border-radius:8px;height:28px;margin-right:4px;width:28px}body.index .list__title{display:block}body.index .list__title a[rel=bookmark]{color:#1f2933;font-size:17px;font-weight:650;line-height:23px;max-height:46px;word-break:break-word}body.index .list__content{color:#4b5563;line-height:22px;max-height:44px;word-break:break-word}body.index .list__img{border-radius:8px;margin-left:10px;max-height:none;overflow:hidden;width:30%}body.index .list__img img{aspect-ratio:1;display:block;height:100%;object-fit:cover}body.index .list__tag,body.index .mobile-long-column__chapter-no{background:#eef4ff;border-radius:999px;color:#315fbd;line-height:20px;padding:0 8px}.module_new{margin:14px 10px 8px;padding:0}.module__title{color:#667085;font-weight:600}.tags{background:rgba(0,0,0,0);box-shadow:none;display:flex;flex-wrap:wrap;gap:8px;padding:0 10px 10px}.tags .tag{align-items:center;background:#fff;border:1px solid #e5ebf2;border-radius:999px;box-shadow:0 4px 14px rgba(15,23,42,.04);color:#1f2933;display:inline-flex;float:none;line-height:20px;margin:0;min-height:36px;padding:0 12px}.menu,.module__body,.TGIF__item{border:1px solid #e5ebf2;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.06);margin-left:10px;margin-right:10px}.module__body{width:auto}.menu__item{padding:0}.menu__item .title{align-items:center;color:#1f2933;display:flex;min-height:44px;text-decoration:none}.main>.article-actions{margin-bottom:10px !important;padding:0 2px}.article-actions .fn-right{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.article-actions .fn-right>a,.article-actions .fn-right>span{align-items:center;background:#f8fafc;border:1px solid #e5ebf2;border-radius:999px;box-sizing:border-box;color:#667085;display:inline-flex;float:none;justify-content:center;line-height:20px;margin-top:0;min-height:44px;min-width:44px;padding:0 12px}.article-actions .fn-right>a.ft-red,.article-actions .fn-right>span.ft-red,.article-actions .fn-right>a.ft-red:hover,.article-actions .fn-right>span.ft-red:hover{background:#fff7ed;border-color:rgba(180,83,9,.34);box-shadow:0 8px 20px rgba(180,83,9,.12);color:#b45309}.article-actions .fn-right>a.ft-blue,.article-actions .fn-right>span.ft-blue,.article-actions .fn-right>a.ft-blue:hover,.article-actions .fn-right>span.ft-blue:hover{background:#eef4ff;border-color:rgba(47,111,237,.28);color:#2f6fed}.article-actions .fn-right>a.ft-green,.article-actions .fn-right>span.ft-green,.article-actions .fn-right>a.ft-green:hover,.article-actions .fn-right>span.ft-green:hover{background:#f0fdf4;border-color:rgba(22,101,52,.26);color:#166534}.main>.article-main{background:#fff;border:1px solid #e5ebf2;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.06);box-sizing:border-box;padding:16px 12px 18px;width:100%}.main>.article-main>.wrapper{margin:0}h1.article-title{color:#1f2933;font-size:22px;font-weight:700;line-height:1.35;margin:0 0 14px;word-break:break-word}h1.article-title>a{color:#1f2933}.article-title+div{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px !important}.article-title+div img{color:rgba(0,0,0,0);display:block;flex:0 0 auto;font-size:0;height:22px;line-height:0;max-width:calc(100vw - 48px);width:auto}.article-info{grid-template-columns:34px minmax(0, 1fr);margin-bottom:18px;row-gap:10px}.article-info>a[rel=author]{height:32px;width:32px}.article-info>a[rel=author] .avatar{border-radius:10px;height:32px;margin:0;width:32px}.article-info>div.article-params{color:#667085;line-height:20px}.article-info>div.article-params strong{color:#1f2933;font-size:14px}.article-info>.article-reaction,.article-info>.article-reaction-shell{grid-column:1/-1;grid-row:2;margin:2px 0 0}.article-info>.article-actions{grid-column:1/-1;grid-row:3;justify-self:start;margin-top:0 !important}.article-info>.article-actions .fn-right{justify-content:flex-start}.article-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.article-tags .tag{background:#fff7ed;border-radius:999px;color:#9a4f00;line-height:22px;padding:0 9px}.article-visit-sources{gap:5px;margin-top:6px}.article-visit-source{background:#f8fafc;border-radius:999px;line-height:22px;padding:0 7px}.article-content{color:#24292f;font-size:16px;line-height:1.75;overflow-wrap:anywhere}.article-content p{margin:0 0 14px}.article-content img{border-radius:8px}#comments{margin-top:14px}.comments>ul>li{background:rgba(0,0,0,0);border:0;border-bottom:1px solid #e5ebf2;border-radius:0;box-shadow:none;box-sizing:border-box;margin-bottom:0;padding:16px 0 !important}.comments .comment-info img[src*="/gen"]{color:rgba(0,0,0,0);display:inline-block;font-size:0;height:18px;line-height:0;max-width:calc(100vw - 120px);object-fit:contain;vertical-align:-4px;width:auto}.comment-action>.comment-action__bar{flex-wrap:nowrap;gap:4px;max-width:100%}.comment-action>.comment-action__bar>.comment-action__left{flex:0 1 auto;flex-wrap:nowrap;min-width:0;transform:none}.comment-action>.comment-action__bar>.action-btns{display:none;flex:1 1 auto;flex-wrap:nowrap;justify-content:flex-start;margin-left:0;min-width:0;overflow-x:auto;overflow-y:hidden;padding-left:0;scrollbar-width:none;-webkit-overflow-scrolling:touch}#comments .list.comments>ul>li.comment-actions-open>.fn-flex .comment-action>.comment-action__bar>.action-btns,#comments .list.comments>ul>li:hover>.fn-flex .comment-action>.comment-action__bar>.action-btns{display:inline-flex;visibility:visible}.comment-action>.comment-action__bar>.action-btns::-webkit-scrollbar{display:none}.comment-action>.comment-action__bar>.action-btns>a,.comment-action>.comment-action__bar>.action-btns>span{flex:0 0 auto;padding-right:8px;padding-left:8px}.comment-thread__actions .action-btns{display:none;flex-wrap:nowrap;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.comment-thread__reply.comment-actions-open>.comment-thread__body>.comment-thread__actions .action-btns,.comment-thread__reply:hover>.comment-thread__body>.comment-thread__actions .action-btns{display:inline-flex;visibility:visible}.comment-thread__actions .action-btns::-webkit-scrollbar{display:none}.comment-thread__actions .action-btns>a,.comment-thread__actions .action-btns>span{padding-right:6px;padding-left:6px}.action-btns .comment-reaction--trigger .reaction-popover{position:fixed;right:auto;bottom:auto;width:min(272px,100vw - 24px);max-width:calc(100vw - 24px);min-width:240px;z-index:10020}.comment-collect-emoji-btn{cursor:pointer} \ No newline at end of file + */.vditor{--border-color: #d1d5da;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, .2);--toolbar-background-color: #f6f8fa;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color:rgba(27, 31, 35, .05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000}.vditor--dark{--border-color: #141414;--second-color: rgba(185, 185, 185, .36);--panel-background-color: #24292e;--panel-shadow: 0 1px 2px rgba(255, 255, 255, .2);--toolbar-background-color: #1d2125;--toolbar-icon-color: #b9b9b9;--toolbar-icon-hover-color: #fff;--textarea-background-color: #2f363d;--textarea-text-color: #d1d5da;--resize-icon-color: var(--border-color);--resize-background-color: var(--second-color);--resize-hover-icon-color: var(--toolbar-icon-hover-color);--resize-hover-background-color: rgba(185, 185, 185, .86);--count-background-color: rgba(66,133,244,0.36);--heading-border-color: var(--textarea-text-color);--blockquote-color: var(--toolbar-icon-color);--ir-heading-color: #9876aa;--ir-title-color: #808080;--ir-bi-color: #cc7832;--ir-link-color: #ffc66d;--ir-bracket-color: #287bde;--ir-paren-color: #6a8759}@-webkit-keyframes tooltip-appear{from{opacity:0}to{opacity:1}}@keyframes tooltip-appear{from{opacity:0}to{opacity:1}}.vditor-tooltipped{position:relative;cursor:pointer}.vditor-tooltipped::after{position:absolute;z-index:1000000;display:none;padding:5px 8px;font-size:11px;font-weight:normal;-webkit-font-smoothing:subpixel-antialiased;color:#fff;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);background:#3b3e43;border-radius:3px;line-height:16px;opacity:0}.vditor-tooltipped::before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:#3b3e43;pointer-events:none;content:"";border:5px solid transparent;opacity:0}.vditor-tooltipped--hover::before,.vditor-tooltipped--hover::after,.vditor-tooltipped:hover::before,.vditor-tooltipped:hover::after,.vditor-tooltipped:active::before,.vditor-tooltipped:active::after,.vditor-tooltipped:focus::before,.vditor-tooltipped:focus::after{display:inline-block;text-decoration:none;-webkit-animation-name:tooltip-appear;animation-name:tooltip-appear;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}.vditor-tooltipped__s::after,.vditor-tooltipped__se::after,.vditor-tooltipped__sw::after{top:100%;right:50%;margin-top:5px}.vditor-tooltipped__s::before,.vditor-tooltipped__se::before,.vditor-tooltipped__sw::before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:#3b3e43}.vditor-tooltipped__se::after{right:auto;left:50%;margin-left:-15px}.vditor-tooltipped__sw::after{margin-right:-15px}.vditor-tooltipped__n::after,.vditor-tooltipped__ne::after,.vditor-tooltipped__nw::after{right:50%;bottom:100%;margin-bottom:5px}.vditor-tooltipped__n::before,.vditor-tooltipped__ne::before,.vditor-tooltipped__nw::before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:#3b3e43}.vditor-tooltipped__ne::after{right:auto;left:50%;margin-left:-15px}.vditor-tooltipped__nw::after{margin-right:-15px}.vditor-tooltipped__s::after,.vditor-tooltipped__n::after{transform:translateX(50%)}.vditor-tooltipped__w::after{right:100%;bottom:50%;margin-right:5px;transform:translateY(50%)}.vditor-tooltipped__w::before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:#3b3e43}.vditor-tooltipped__e::after{bottom:50%;left:100%;margin-left:5px;transform:translateY(50%)}.vditor-tooltipped__e::before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:#3b3e43}@media screen and (max-width: 520px){.vditor-tooltipped:before,.vditor-tooltipped:after{content:none}}@-webkit-keyframes scale-in{0%{opacity:0;transform:scale(0.5)}100%{opacity:1;transform:scale(1)}}@keyframes scale-in{0%{opacity:0;transform:scale(0.5)}100%{opacity:1;transform:scale(1)}}.vditor-panel{background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px;z-index:3;font-size:14px;display:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:320px;min-width:80px;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);color:var(--toolbar-icon-color)}.vditor-panel--none{padding:0;-webkit-animation:none;animation:none;min-width:auto;max-width:none;white-space:nowrap;opacity:.86}.vditor-panel--arrow:before{position:absolute;width:0;height:0;pointer-events:none;content:" ";border:7px solid transparent;top:-14px;left:5px;border-bottom-color:var(--panel-background-color)}.vditor-panel--left{right:0}.vditor-panel--left.vditor-panel--arrow:before{right:5px;left:auto}.vditor-input{border:0;padding:3px 5px;background-color:var(--panel-background-color);font-size:12px;color:var(--textarea-text-color)}.vditor-input:focus{background-color:var(--toolbar-background-color);outline:none}.vditor-icon{color:var(--toolbar-icon-color);cursor:pointer;float:left;padding:4px 5px;height:21px;width:23px;background-color:transparent;border:0;box-sizing:border-box}.vditor-icon:hover,.vditor-icon--current{color:var(--toolbar-icon-hover-color);background-color:transparent}.vditor-icon:focus{outline:none}.vditor-icon svg{height:13px !important;width:13px !important;float:left;fill:currentColor;pointer-events:none}.vditor-toolbar{background-color:var(--toolbar-background-color);border-bottom:1px solid var(--border-color);padding:0 5px;line-height:1}.vditor-toolbar--pin{position:-webkit-sticky;position:sticky;top:0;z-index:1}.vditor-toolbar--hide{transition:all .15s ease-in-out;height:5px;overflow:hidden}.vditor-toolbar--hide:hover{background-color:var(--toolbar-background-color);height:auto;overflow:visible}.vditor-toolbar__item{float:left;position:relative}.vditor-toolbar__item .vditor-tooltipped{color:var(--toolbar-icon-color);border:0;padding:10px 5px;background-color:transparent;height:var(--toolbar-height);width:25px;box-sizing:border-box;font-size:0}.vditor-toolbar__item .vditor-tooltipped:focus{outline:none}.vditor-toolbar__item .vditor-tooltipped:focus{cursor:pointer;color:var(--toolbar-icon-hover-color)}.vditor-toolbar__item svg{fill:currentColor;display:inline-block;stroke-width:0;stroke:currentColor;width:15px;height:15px}.vditor-toolbar__item input{position:absolute;width:25px;height:var(--toolbar-height);top:0;left:0;cursor:pointer;opacity:.001;overflow:hidden}.vditor-toolbar__divider{float:left;height:calc(var(--toolbar-height) - var(--toolbar-divider-margin-top)*2);border-left:1px solid var(--second-color);margin:var(--toolbar-divider-margin-top) 8px}.vditor-toolbar__br{width:100%;padding:0 !important;height:0 !important}.vditor-menu--current{color:var(--toolbar-icon-hover-color) !important}.vditor-menu--disabled{color:var(--second-color) !important;cursor:not-allowed !important}.vditor-emojis{display:inline-block;overflow:auto}.vditor-emojis::-webkit-scrollbar{display:none}.vditor-emojis__tip{flex:1;min-width:1px;width:200px;margin-right:10px;color:var(--toolbar-icon-color);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vditor-emojis__tail{margin-top:5px;font-size:12px;color:var(--toolbar-icon-color);display:flex}.vditor-emojis__tail a{text-decoration:none;color:var(--toolbar-icon-color)}.vditor-emojis__tail a:hover{color:var(--toolbar-icon-hover-color)}.vditor-emojis button{cursor:pointer;border-radius:3px;float:left;height:30px;width:30px;text-align:center;line-height:26px;padding:3px;box-sizing:border-box;font-size:16px;transition:all .15s ease-in-out;border:0;margin:0;background-color:transparent;overflow:hidden}.vditor-emojis button:focus{outline:none}.vditor-emojis button:hover .vditor-emojis__icon{display:inline-block;transform:scale(1.2)}.vditor-emojis img{height:20px;width:20px;float:left;margin:3px 0 0 3px}@media screen and (max-width: 520px){.vditor-toolbar__item{padding:0 12px}.vditor-panel--left.vditor-panel--arrow:before{right:17px}}@media(hover: hover)and (pointer: fine){.vditor-toolbar__item .vditor-tooltipped:hover{color:var(--toolbar-icon-hover-color)}}@-webkit-keyframes slideInDown{from{transform:translate3d(0, -100%, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}@keyframes slideInDown{from{transform:translate3d(0, -100%, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}.vditor{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:3px;box-sizing:border-box;font-family:"Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols"}.vditor .vditor-copy{z-index:auto}.vditor--fullscreen{position:fixed;top:0;width:100% !important;left:0;height:100vh !important;z-index:90;border-radius:0}.vditor-content{display:flex;min-height:60px;flex:1;min-width:1px;position:relative}.vditor-preview{flex:1;min-width:1px;overflow:auto;margin-left:-1px;border-left:1px solid var(--border-color);box-sizing:border-box;border-radius:0 0 3px 0;background-color:var(--textarea-background-color)}.vditor-preview::-webkit-scrollbar{display:none}.vditor-preview__action{text-align:center;padding:10px;background-color:var(--toolbar-background-color)}.vditor-preview__action button{background-color:var(--toolbar-background-color);color:var(--toolbar-icon-color);line-height:20px;border:0;margin:0 10px;cursor:pointer;padding:0 7px;font-size:12px}.vditor-preview__action button.vditor-preview__action--current,.vditor-preview__action button:hover{color:var(--toolbar-icon-hover-color);background-color:var(--toolbar-background-color)}.vditor-preview__action button:focus{outline:none}.vditor-preview__action button svg{fill:currentColor;height:15px;width:15px;vertical-align:middle}.vditor-preview>.vditor-reset{padding:10px;margin:0 auto}.vditor-preview img:not(.emoji){cursor:pointer}.vditor-devtools{display:none;background-color:var(--textarea-background-color);overflow:auto;flex:1;min-width:1px;box-shadow:inset 1px 0 var(--border-color);box-sizing:border-box;border-radius:0 0 3px 0;padding:10px}.vditor-counter{padding:3px;color:var(--toolbar-icon-color);background-color:var(--count-background-color);border-radius:3px;font-size:12px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;float:right;margin:8px 3px 0 0}.vditor-counter--error{color:#d23f31;background-color:rgba(210, 63, 49, 0.1)}.vditor-resize{padding:3px 0;cursor:row-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;width:100%}.vditor-resize--top{top:-3px}.vditor-resize--bottom{bottom:-3px}.vditor-resize>div{height:3px;background-color:var(--resize-background-color);transition:all .15s ease-in-out}.vditor-resize:hover>div,.vditor-resize--selected>div{background-color:var(--resize-hover-background-color)}.vditor-resize:hover svg,.vditor-resize--selected svg{color:var(--resize-hover-icon-color)}.vditor-resize svg{fill:currentColor;stroke-width:0;stroke:currentColor;width:13px;height:3px;display:block;margin:0 auto;color:var(--resize-icon-color)}.vditor-upload{position:absolute;height:3px;left:0;top:-2px;transition:all .15s ease-in-out;background-color:#4285f4}.vditor-tip{position:absolute;font-size:12px;top:10px;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-fill-mode:both;animation-fill-mode:both;left:50%;z-index:5}.vditor-tip--show{display:block;-webkit-animation-name:slideInDown;animation-name:slideInDown}.vditor-tip__content{text-align:left;display:inline-block;line-height:16px;padding:3px 10px;border-radius:3px;background:var(--toolbar-background-color);position:relative;margin-left:-50%;color:var(--toolbar-icon-color);max-width:100%;box-shadow:var(--panel-shadow)}.vditor-tip__content ul{margin:2px 0;padding:0 0 0 18px}.vditor-tip__content a{color:#4285f4}.vditor-tip__close{position:absolute;color:var(--toolbar-icon-color);top:-7px;right:-15px;font-weight:bold;cursor:pointer}.vditor-tip__close:hover{color:var(--toolbar-icon-hover-color)}.vditor-img{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;z-index:3}.vditor-img__bar{border-bottom:1px solid var(--border-color);background-color:var(--toolbar-background-color);text-align:center;height:36px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.vditor-img__btn{display:flex;align-items:center;cursor:pointer;margin-left:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--toolbar-icon-color)}.vditor-img__btn:hover{color:var(--toolbar-icon-hover-color)}.vditor-img__btn svg{height:14px;width:14px;margin-right:8px;fill:currentColor}.vditor-img__img{flex:1;background-color:var(--textarea-background-color);overflow:auto;cursor:zoom-out}.vditor-img__img img{max-width:none}.vditor-hint{background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px 0;z-index:4;line-height:20px;list-style:none;font-size:12px;margin:0;max-width:250px;min-width:80px;display:none}.vditor-hint .vditor-hint{margin-top:-31px;left:100%;right:auto}.vditor-hint .vditor-hint.vditor-panel--left{right:100%;left:auto}.vditor-hint button{color:var(--toolbar-icon-color);display:block;padding:3px 10px;border:0;border-radius:0;line-height:20px;width:100%;box-sizing:border-box;text-align:left;margin:0;background-color:transparent;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vditor-hint button:focus{outline:none}.vditor-hint--current,.vditor-hint button:not(.vditor-menu--disabled):hover{background-color:var(--toolbar-background-color) !important;color:var(--toolbar-icon-hover-color) !important}.vditor-hint__emoji{font-size:16px;float:left;margin-right:3px}.vditor-hint img{height:20px;width:20px;float:left;margin-right:3px}.vditor-reset{color:#24292e;font-variant-ligatures:no-common-ligatures;font-family:"Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";word-wrap:break-word;overflow:auto;line-height:1.5;font-size:16px;word-break:break-word}.vditor-reset--anchor{padding-left:20px}.vditor-reset--error{color:#d23f31;font-size:12px;display:block;line-height:16px}.vditor-reset ul ul ul{list-style-type:square}.vditor-reset ul ul{list-style-type:circle}.vditor-reset ul{list-style-type:disc}.vditor-reset ul,.vditor-reset ol{padding-left:2em;margin-top:0;margin-bottom:16px}.vditor-reset li+li{margin-top:.25em}.vditor-reset audio{max-width:100%}.vditor-reset audio:focus{outline:none}.vditor-reset video{max-height:90vh;max-width:100%}.vditor-reset img{max-width:100%}.vditor-reset img.emoji{cursor:auto;max-width:20px;vertical-align:sub}.vditor-reset h1,.vditor-reset h2,.vditor-reset h3,.vditor-reset h4,.vditor-reset h5,.vditor-reset h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.vditor-reset h1:hover .vditor-anchor svg,.vditor-reset h2:hover .vditor-anchor svg,.vditor-reset h3:hover .vditor-anchor svg,.vditor-reset h4:hover .vditor-anchor svg,.vditor-reset h5:hover .vditor-anchor svg,.vditor-reset h6:hover .vditor-anchor svg{visibility:visible}.vditor-reset h1{font-size:1.75em}.vditor-reset h2{font-size:1.55em}.vditor-reset h3{font-size:1.38em}.vditor-reset h4{font-size:1.25em}.vditor-reset h5{font-size:1.13em}.vditor-reset h6{font-size:1em}.vditor-reset hr{height:2px;padding:0;margin:24px 0;background-color:#eaecef;border:0}.vditor-reset p{margin-top:0;margin-bottom:16px}.vditor-reset blockquote{padding:0 1em;color:#6a737d;border-left:.25em solid #eaecef;margin:0 0 16px 0}.vditor-reset blockquote>:first-child{margin-top:0}.vditor-reset blockquote>:last-child{margin-bottom:0}.vditor-reset ins>iframe{border:0}.vditor-reset iframe{border:1px solid #d1d5da;max-width:100%;box-sizing:border-box}.vditor-reset iframe.iframe__video{min-width:80%;min-height:36vh}.vditor-reset table{border-collapse:collapse;empty-cells:show;margin-bottom:16px;overflow:auto;border-spacing:0;display:block;word-break:keep-all;width:100%}.vditor-reset table tr{background-color:#fafbfc;border-top:1px solid #c6cbd1}.vditor-reset table td,.vditor-reset table th{padding:6px 13px;border:1px solid #dfe2e5;word-break:normal;white-space:nowrap}.vditor-reset table td:first-child::after,.vditor-reset table th:first-child::after{content:"";display:inline-block;vertical-align:top;min-height:24px}.vditor-reset table th{font-weight:600}.vditor-reset table tbody tr:nth-child(2n){background-color:#fff}.vditor-reset code:not(.hljs):not(.highlight-chroma){padding:.2em .4em;margin:0;font-size:85%;border-radius:3px;font-family:mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";word-break:break-word;background-size:20px 20px;white-space:pre-wrap}.vditor-reset pre{margin:1em 0}.vditor-reset pre>code{margin:0;font-size:85%;padding:.5em;border-radius:5px;display:block;overflow:auto;white-space:pre;font-family:mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";background-size:20px 20px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8AgMAAABHkjHhAAAACVBMVEWAgIBaWlo+Pj7rTFvWAAAAA3RSTlMHCAw+VhR4AAAA+klEQVQoz4WSMW7EQAhFPxKWNh2FCx+HkaZI6RRb5DYbyVfIJXLKDCFoMbaTKSw/8ZnPAPjaH2xgZcUNUDADD7D9LtDBCLZ45fbkvo/30K8yeI64pPwl6znd/3n/Oe93P3ho9qeh72btTFzqkz0rsJle8Zr81OLEwZ1dv/713uWqvu2pl+k0fy7MWtj9r/tN5q/02z89qa/L4Dc2LvM93kezPfXlME/O86EbY/V9GB9ePX8G1/6W+/9h1dq/HGfTfzT3j/xNo7522Bfnqe5jO/fvhVthlfk434v3iO9zG/UOphyPeinPl1J8Gtaa7xPTa/Dk+RIs4deMvwGvcGsmsCvJ0AAAAABJRU5ErkJggg==);word-break:initial;word-wrap:normal}.vditor-reset pre:hover div.vditor-copy{display:block}.vditor-reset .language-math,.vditor-reset .language-echarts,.vditor-reset .language-mindmap,.vditor-reset .language-plantuml,.vditor-reset .language-mermaid,.vditor-reset .language-abc,.vditor-reset .language-flowchart,.vditor-reset .language-graphviz{margin-bottom:16px}.vditor-reset .language-math mjx-container:focus{outline:none;cursor:context-menu}.vditor-reset .language-echarts,.vditor-reset .language-mindmap{overflow:hidden;height:420px}.vditor-reset .language-mermaid,.vditor-reset .language-flowchart,.vditor-reset .language-graphviz{text-align:center}.vditor-reset .language-graphviz parsererror{overflow:auto}.vditor-reset kbd{display:inline-block;padding:3px 5px;font:11px Consolas,"Liberation Mono",Menlo,Courier,monospace;line-height:10px;color:#24292e;vertical-align:middle;background-color:#fafbfc;border:solid 1px #d1d5da;border-radius:3px;box-shadow:inset 0 -1px 0 #d1d5da}.vditor-reset summary{cursor:pointer}.vditor-reset summary:focus{outline:none}.vditor-reset svg{height:auto;width:auto;stroke-width:initial}.vditor-reset p:last-child,.vditor-reset blockquote:last-child,.vditor-reset pre:last-child,.vditor-reset ul:last-child,.vditor-reset ol:last-child,.vditor-reset hr:last-child{margin-bottom:0}.vditor-comment{border-bottom:2px solid #f8e6ab}.vditor-comment--focus,.vditor-comment--hover{background-color:#faf1d1;border-bottom:2px solid #ffc60a}.vditor-comment--focus .vditor-comment,.vditor-comment--hover .vditor-comment{border-bottom:2px solid #ffc60a}.vditor-task{list-style:none !important;word-break:break-all}.vditor-task input{margin:0 .2em .25em -1.6em;font-size:12px;vertical-align:middle}.vditor-copy{position:relative;display:none;z-index:1}.vditor-copy textarea{position:absolute;left:-100000px;height:10px}.vditor-copy span{cursor:pointer;position:absolute;right:15px;top:.5em}.vditor-copy svg{color:#586069;height:14px;width:14px !important;display:block;fill:currentColor}.vditor-linenumber{padding-left:4em !important;position:relative}.vditor-linenumber__rows{position:absolute;pointer-events:none;top:.5em;left:0;width:3em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;counter-reset:linenumber}.vditor-linenumber__rows>span{pointer-events:none;display:block}.vditor-linenumber__rows>span::before{counter-increment:linenumber;content:counter(linenumber);color:rgba(158, 150, 150, 0.38);display:block;padding-right:1em;text-align:right}.vditor-speech{position:absolute;display:none;background-color:#f6f8fa;border:1px solid #d1d5da;border-radius:3px;padding:3px;cursor:pointer;color:#586069}.vditor-speech:hover,.vditor-speech--current{color:#4285f4}.vditor-speech svg{height:14px;width:14px;fill:currentColor;display:block;stroke-width:0;stroke:currentColor}.vditor-anchor{margin-left:5px}.vditor-anchor--left{float:left;padding-right:4px;margin-left:-20px}.vditor-anchor svg{visibility:hidden}.vditor-anchor:hover svg{visibility:visible}.vditor-anchor:focus{outline:none}.vditor-linkcard{margin:31px auto 16px;transition:all .15s ease-in-out;cursor:pointer;max-width:768px;padding:0 10px}.vditor-linkcard a{border-radius:3px;background-color:#f6f8fa;overflow:hidden;max-height:250px;display:flex;text-decoration:none;flex-wrap:wrap-reverse;box-shadow:0 1px 2px rgba(0, 0, 0, 0.2)}.vditor-linkcard a:hover{box-shadow:0 0 3px rgba(0, 0, 0, 0.13),0 3px 6px rgba(0, 0, 0, 0.26);text-decoration:none}.vditor-linkcard a:visited .vditor-linkcard__abstract{color:rgba(88, 96, 105, 0.36)}.vditor-linkcard__info{padding:10px;min-width:200px;box-sizing:border-box;flex:1}.vditor-linkcard__title{font-size:14px;font-weight:400;color:#24292e;display:flex;align-items:center}.vditor-linkcard__title img{cursor:pointer;height:20px;width:20px;border-radius:3px;flex-shrink:0;margin-right:5px}.vditor-linkcard__abstract{word-wrap:break-word;word-break:break-all;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;font-size:13px;color:#586069;margin:5px 0}.vditor-linkcard__site{font-size:12px;color:#4285f4}.vditor-linkcard__image{background-size:cover;background-repeat:no-repeat;background-position:center center;max-width:250px;min-width:126px;cursor:pointer;background-color:rgba(88, 96, 105, 0.36)}.vditor-footnotes__goto-ref{text-decoration:none}.vditor-toc{margin-bottom:16px;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;color:#4285f4}.vditor-toc .vditor-outline__action{display:none}.vditor-toc ul{list-style:none !important;padding-left:1em}.vditor-toc>ul{padding-left:0}.vditor-toc span{cursor:pointer}.vditor-toc li>span>svg{width:0;height:0}.vditor-outline{width:250px;border-right:1px solid var(--border-color);background-color:var(--panel-background-color);display:none;overflow:auto}.vditor-outline--right{border-right:0;border-left:1px solid var(--border-color)}.vditor-outline::-webkit-scrollbar{display:none}.vditor-outline ul{list-style:none !important;padding-left:1em;margin:0}.vditor-outline__content>ul{padding-left:0}.vditor-outline li>span{display:flex;align-items:center;padding:5px 10px;cursor:pointer;color:var(--textarea-text-color)}.vditor-outline li>span>svg{height:10px;width:10px}.vditor-outline li>span:hover{color:var(--toolbar-icon-hover-color)}.vditor-outline li>span>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vditor-outline__title{border-bottom:1px dashed var(--border-color);padding:5px 10px;color:var(--toolbar-icon-color);font-size:12px}.vditor-outline__action{transition:all .15s ease-in-out;fill:currentColor;margin-right:5px;flex-shrink:0}.vditor-outline__action--close{transform:rotate(-90deg)}.vditor-wysiwyg{box-sizing:border-box;flex:1;position:relative;width:100%;min-width:1px}.vditor-wysiwyg pre.vditor-reset{background-color:var(--panel-background-color);margin:0;white-space:pre-wrap;height:100%;box-sizing:border-box}.vditor-wysiwyg pre.vditor-reset[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-wysiwyg pre.vditor-reset:empty::before{content:attr(placeholder);color:var(--second-color)}.vditor-wysiwyg pre.vditor-reset:focus{outline:none;background-color:var(--textarea-background-color)}.vditor-wysiwyg pre.vditor-reset:after{content:"";height:var(--editor-bottom);display:block}.vditor-wysiwyg blockquote:empty::before,.vditor-wysiwyg pre>code:empty::before,.vditor-wysiwyg p:empty::before,.vditor-wysiwyg h1:empty::after,.vditor-wysiwyg h2:empty::after,.vditor-wysiwyg h3:empty::after,.vditor-wysiwyg h4:empty::after,.vditor-wysiwyg h5:empty::after,.vditor-wysiwyg h6:empty::after{content:" "}.vditor-wysiwyg code[data-marker="`"]{padding-left:0 !important;padding-right:0 !important}.vditor-wysiwyg__block pre:first-child{margin-bottom:-1em}.vditor-wysiwyg__block pre:first-child code{height:auto;color:var(--textarea-text-color);height:auto;text-align:left}.vditor-wysiwyg__block pre:last-child{margin-bottom:1em}.vditor-wysiwyg__preview{cursor:pointer;white-space:initial;min-height:27px}.vditor-wysiwyg>.vditor-reset>h1:before,.vditor-wysiwyg>.vditor-reset>h2:before,.vditor-wysiwyg>.vditor-reset>h3:before,.vditor-wysiwyg>.vditor-reset>h4:before,.vditor-wysiwyg>.vditor-reset>h5:before,.vditor-wysiwyg>.vditor-reset>h6:before,.vditor-wysiwyg div.vditor-wysiwyg__block:before,.vditor-wysiwyg div[data-type=link-ref-defs-block]:before,.vditor-wysiwyg div[data-type=footnotes-block]:before,.vditor-wysiwyg .vditor-toc:before{float:left;padding-right:4px;margin-left:-29px;content:"H1";font-size:.85rem;font-weight:normal;color:var(--second-color)}.vditor-wysiwyg>.vditor-reset>h2:before{content:"H2"}.vditor-wysiwyg>.vditor-reset>h3:before{content:"H3"}.vditor-wysiwyg>.vditor-reset>h4:before{content:"H4"}.vditor-wysiwyg>.vditor-reset>h5:before{content:"H5"}.vditor-wysiwyg>.vditor-reset>h6:before{content:"H6"}.vditor-wysiwyg div[data-type=link-ref-defs-block]:before{content:'"A"'}.vditor-wysiwyg div[data-type=footnotes-block]:before{content:"^F"}.vditor-wysiwyg div.vditor-wysiwyg__block:before{content:""}.vditor-wysiwyg div.vditor-wysiwyg__block[data-type=yaml-front-matter]:before{content:"F"}.vditor-wysiwyg div.vditor-wysiwyg__block[data-type=math-block]:before{content:"$$"}.vditor-wysiwyg .vditor-toc:before{content:"ToC"}.vditor-wysiwyg hr{display:inline-block;margin:12px 0;width:100%}.vditor-wysiwyg details{white-space:initial}.vditor-wysiwyg a{cursor:pointer}.vditor-wysiwyg span[data-type=backslash]>span{display:none;color:var(--second-color)}.vditor-wysiwyg span[data-type=link-ref],.vditor-wysiwyg sup[data-type=footnotes-ref]{color:#4285f4}.vditor-wysiwyg span[data-type=toc-h]{color:#4285f4;text-decoration:underline}.vditor-wysiwyg div[data-type=footnotes-block]{border-top:2px solid var(--heading-border-color);padding-top:24px;margin-top:24px}.vditor-wysiwyg div[data-type=link-ref-defs-block]{color:var(--blockquote-color)}@media screen and (max-width: 520px){.vditor-wysiwyg h1:before,.vditor-wysiwyg h2:before,.vditor-wysiwyg h3:before,.vditor-wysiwyg h4:before,.vditor-wysiwyg h5:before,.vditor-wysiwyg h6:before,.vditor-wysiwyg div.vditor-wysiwyg__block:before,.vditor-wysiwyg div[data-type=link-ref-defs-block]:before,.vditor-wysiwyg div[data-type=footnotes-block]:before,.vditor-wysiwyg .vditor-toc:before{content:none}}.vditor-ir{box-sizing:border-box;flex:1;min-width:1px;position:relative;width:100%}.vditor-ir__node[data-type=code-block]:before,.vditor-ir__node[data-type=code-block]:after,.vditor-ir__node[data-type=yaml-front-matter]:before,.vditor-ir__node[data-type=yaml-front-matter]:after,.vditor-ir__node[data-type=math-block]:before,.vditor-ir__node[data-type=math-block]:after{content:" ";color:var(--second-color)}.vditor-ir__node:not(.vditor-ir__node--expand) .vditor-ir__marker{padding:0 !important}.vditor-ir__node:not(.vditor-ir__node--expand)[data-type=a]{cursor:pointer}.vditor-ir__node[data-type=link-ref],.vditor-ir__node[data-type=footnotes-ref]{color:#4285f4}.vditor-ir__node[data-type=html-block]{margin-bottom:1em}.vditor-ir__node .vditor-ir__marker{width:0;overflow:hidden;display:inline-block;height:0;transition:all .15s ease-in-out}.vditor-ir__node--hidden .vditor-ir__marker{visibility:hidden}.vditor-ir__node--expand .vditor-ir__marker{color:var(--second-color);display:inline;height:auto;width:auto}.vditor-ir__node--expand .vditor-ir__marker--hide{display:none}.vditor-ir__node--expand .vditor-ir__marker--heading{color:var(--ir-heading-color)}.vditor-ir__node--expand .vditor-ir__marker--bi{color:var(--ir-bi-color)}.vditor-ir__node--expand .vditor-ir__marker--link{color:var(--ir-link-color)}.vditor-ir__node--expand .vditor-ir__marker--title{color:var(--ir-title-color)}.vditor-ir__node--expand .vditor-ir__marker--bracket{color:var(--ir-bracket-color);text-decoration:underline}.vditor-ir__node--expand .vditor-ir__marker--paren{color:var(--ir-paren-color)}.vditor-ir__node--expand .vditor-ir__marker--info{color:var(--ir-heading-color)}.vditor-ir__node--expand .vditor-ir__marker--pre code{color:var(--textarea-text-color);height:auto;text-align:left}.vditor-ir__node--expand[data-type=code-block]:before,.vditor-ir__node--expand[data-type=code-block]:after{content:"```"}.vditor-ir__node--expand[data-type=yaml-front-matter]:before,.vditor-ir__node--expand[data-type=yaml-front-matter]:after{content:"---"}.vditor-ir__node--expand[data-type=math-block]:before,.vditor-ir__node--expand[data-type=math-block]:after{content:"$$"}.vditor-ir__node span[data-type=code-block-open-marker],.vditor-ir__node span[data-type=code-block-close-marker],.vditor-ir__node span[data-type=yaml-front-matter-open-marker],.vditor-ir__node span[data-type=yaml-front-matter-close-marker],.vditor-ir__node span[data-type=math-block-open-marker],.vditor-ir__node span[data-type=math-block-close-marker]{display:none}.vditor-ir__preview{cursor:pointer;white-space:initial;min-height:27px}.vditor-ir__link{color:var(--ir-bracket-color);text-decoration:underline}.vditor-ir pre.vditor-reset{background-color:var(--panel-background-color);margin:0;white-space:pre-wrap;height:100%;box-sizing:border-box}.vditor-ir pre.vditor-reset[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-ir pre.vditor-reset:empty::before{content:attr(placeholder);color:var(--second-color)}.vditor-ir pre.vditor-reset:focus{outline:none;background-color:var(--textarea-background-color)}.vditor-ir pre.vditor-reset:after{content:"";height:var(--editor-bottom);display:block}.vditor-ir pre.vditor-reset pre{margin:0}.vditor-ir hr{display:inline-block;margin:12px 0;width:100%}.vditor-ir blockquote:empty::before,.vditor-ir pre>code:empty::before,.vditor-ir p:empty::before,.vditor-ir h1:empty::after,.vditor-ir h2:empty::after,.vditor-ir h3:empty::after,.vditor-ir h4:empty::after,.vditor-ir h5:empty::after,.vditor-ir h6:empty::after{content:" "}.vditor-ir .vditor-reset>h1:before,.vditor-ir .vditor-reset>h2:before,.vditor-ir .vditor-reset>h3:before,.vditor-ir .vditor-reset>h4:before,.vditor-ir .vditor-reset>h5:before,.vditor-ir .vditor-reset>h6:before,.vditor-ir div[data-type=link-ref-defs-block]:before,.vditor-ir div[data-type=footnotes-block]:before,.vditor-ir .vditor-toc:before{float:left;padding-right:4px;margin-left:-29px;content:"H1";font-size:.85rem;font-weight:normal;color:var(--second-color)}.vditor-ir .vditor-reset>h2:before{content:"H2"}.vditor-ir .vditor-reset>h3:before{content:"H3"}.vditor-ir .vditor-reset>h4:before{content:"H4"}.vditor-ir .vditor-reset>h5:before{content:"H5"}.vditor-ir .vditor-reset>h6:before{content:"H6"}.vditor-ir div[data-type=link-ref-defs-block]{color:var(--blockquote-color)}.vditor-ir div[data-type=link-ref-defs-block]:before{content:'"A"'}.vditor-ir div[data-type=footnotes-block]{border-top:2px solid var(--heading-border-color);padding-top:24px;margin-top:24px}.vditor-ir div[data-type=footnotes-block]:before{content:"^F"}.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>ul,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>ol,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>p,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>blockquote,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>pre,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>table,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>hr{margin-left:8px}.vditor-ir .vditor-toc:before{content:"ToC"}.vditor-ir .vditor-toc span[data-type=toc-h]{color:#4285f4;text-decoration:underline}@media screen and (max-width: 520px){.vditor-ir h1:before,.vditor-ir h2:before,.vditor-ir h3:before,.vditor-ir h4:before,.vditor-ir h5:before,.vditor-ir h6:before,.vditor-ir div[data-type=link-ref-defs-block]:before,.vditor-ir div[data-type=footnotes-block]:before,.vditor-ir .vditor-toc:before{content:none}}.vditor-sv{font-family:"Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols";margin:0 1px 0 0;overflow:auto;width:100%;flex:1;min-width:1px;border:0;resize:none;padding:10px 9px 10px 10px;box-sizing:border-box;background-color:var(--panel-background-color);outline:0 none;font-size:16px;line-height:22px;color:var(--textarea-text-color);border-radius:0 0 3px 3px;font-variant-ligatures:no-common-ligatures;white-space:pre-wrap;word-break:break-word;word-wrap:break-word}.vditor-sv[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-sv:empty::before{content:attr(placeholder);color:var(--second-color)}.vditor-sv:focus{background-color:var(--textarea-background-color)}.vditor-sv:after{content:"";height:var(--editor-bottom);display:block}.vditor-sv span[data-type=newline]+span[data-type=text]:empty{display:inherit}.vditor-sv .sup{vertical-align:super;font-size:smaller}.vditor-sv .strong{font-weight:bold}.vditor-sv .em{font-style:italic}.vditor-sv .s{text-decoration:line-through}.vditor-sv .mark:not(.vditor-sv__marker){background-color:yellow;color:black}.vditor-sv .h1{font-size:1.75em;line-height:44px}.vditor-sv .h2{font-size:1.55em;line-height:38px}.vditor-sv .h3{font-size:1.38em;line-height:27px}.vditor-sv .h4{font-size:1.25em;line-height:25px}.vditor-sv .h5{font-size:1.13em}.vditor-sv .h6{font-size:1em}.vditor-sv__marker{color:var(--second-color)}.vditor-sv__marker--heading{color:var(--ir-heading-color)}.vditor-sv__marker--bi{color:var(--ir-bi-color)}.vditor-sv__marker--link{color:var(--ir-link-color)}.vditor-sv__marker--title{color:var(--ir-title-color)}.vditor-sv__marker--bracket{color:var(--ir-bracket-color)}.vditor-sv__marker--paren{color:var(--ir-paren-color)}.vditor-sv__marker--info{color:var(--ir-heading-color)}.vditor-sv__marker--strong{font-weight:bold}.vditor-reset code:not(.hljs):not(.highlight-chroma){font-family:"HarmonyOS",mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols" !important}.vditor-reset pre>code{font-family:"HarmonyOS",mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols" !important}.vditor-reset{font-family:"HarmonyOS","Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols" !important}.vditor{--border-color: #f1f1f1;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, .2);--toolbar-background-color: #fdfdfd;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color:rgba(27, 31, 35, .05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;height:100%;background-color:#fff}body{margin:0;font-family:"HarmonyOS","Helvetica Neue","Luxi Sans","DejaVu Sans",Tahoma,"Hiragino Sans GB","Microsoft Yahei",sans-serif;font-size:14px;color:#2c2c2c;background-color:#f6f6f6}::-moz-selection{text-shadow:none;background:rgba(65,131,196,.4)}::selection{text-shadow:none;background:rgba(66,133,244,.4)}ul,ol{margin:0;padding:0}h1,h2,h3,h4,h5,h6,dl,dd,p{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none}a{outline:0;text-decoration:none;color:#4285f4}a:hover{text-decoration:underline}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{max-width:100%;vertical-align:middle;border:0;height:auto;-ms-interpolation-mode:bicubic}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle;font-family:"HarmonyOS","Helvetica Neue","Luxi Sans","DejaVu Sans",Tahoma,"Hiragino Sans GB","Microsoft Yahei",sans-serif;outline:none}button,input{line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}svg{fill:currentColor;display:inline-block;stroke-width:0;stroke:currentColor;width:14px;height:14px}blockquote{margin:0}@-webkit-keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}@-o-keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}@-ms-keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}@keyframes spaceboots{0%{-webkit-transform:translate(0px, 0);-moz-transform:translate(0px, 0);-o-transform:translate(0px, 0);-ms-transform:translate(0px, 0);transform:translate(0px, 0)}30%{-webkit-transform:translate(0px, 1px);-moz-transform:translate(0px, 1px);-o-transform:translate(0px, 1px);-ms-transform:translate(0px, 1px);transform:translate(0px, 1px)}45%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}60%{-webkit-transform:translate(0px, -1px);-moz-transform:translate(0px, -1px);-o-transform:translate(0px, -1px);-ms-transform:translate(0px, -1px);transform:translate(0px, -1px)}80%{-webkit-transform:translate(0px, 0px);-moz-transform:translate(0px, 0px);-o-transform:translate(0px, 0px);-ms-transform:translate(0px, 0px);transform:translate(0px, 0px)}}.fn-flex,.fn__flex{display:flex}.fn__flex-column{min-height:100%;display:flex;flex-direction:column}.fn__flex-column.select-center{flex-direction:column;align-items:center}.fn__flex-column.select-center label.gestureRadio{padding:0 10px}.fn-flex-1,.fn__flex-1{flex:1;min-width:1px}.fn-pointer{cursor:pointer}.fn-sub{vertical-align:sub}.fn-clear:before,.fn-clear:after{display:table;content:""}.fn-clear:after{clear:both}.fn-left{float:left}.fn-right{float:right}.fn-none{display:none}.fn-hidden{visibility:hidden}.fn-oh{overflow:hidden}.fn-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:normal}.fn-hr5{display:block;height:5px}.fn-content{padding:15px}.fn-inline{display:inline-block}.fn-text-top{vertical-align:text-top}.ft-13{font-size:13px}.ft-smaller{font-size:12px}.ft-gray{color:#787777}.ft-fade{color:#878787}.ft-red{color:#e59230}.ft-blue{color:#4285f4}.ft-green{color:#569e3d}.ft-a-title{color:#616161;text-decoration:none}.ft-a-title:hover{color:#2c2c2c}.ft-center{text-align:center}.ft-nowrap{white-space:nowrap}.discuss_title{vertical-align:10px;padding-left:20px;text-decoration:none;font-size:13px;font-weight:600;line-height:1;color:#616161;display:inline-block}.count{text-decoration:none;padding:2px 5px;font-size:12px;font-weight:600;line-height:1;color:#616161;background-color:#eee;border-radius:20px;display:inline-block}.count:hover{text-decoration:none}.sub-head{padding:15px;border-bottom:1px solid #eee;line-height:18px;font-size:18px}.wrapper .aplayer{margin:0;box-shadow:0 1px 2px rgba(0,0,0,.2)}.wrapper .aplayer .aplayer-pic{background-size:cover}.wrapper .aplayer svg{height:16px;width:16px;float:left;margin:0px 0 0 2px}#breezemoonList button.absolute{right:0;top:0}.breezemoon__input{padding-right:61px !important}.index-user{display:flex;flex-direction:row;flex-wrap:wrap;padding:13px 15px}.tag-item{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-right:15px;margin-bottom:15px}.percent-container{width:50px;height:50px;padding:2px;border:2px solid #76daff;border-radius:50%;overflow:hidden}.percent-wave{position:relative;width:50px;height:50px;color:#000;background-color:#76daff;border-radius:50%}.percent-wave-before,.percent-wave-after{content:"";position:absolute;width:100px;height:100px;top:20px;left:50%;background-color:rgba(255,255,255,.4);border-radius:35%;transform:translate(-50%, -70%) rotate(0);animation:rotate 6s linear infinite;transition:1s;z-index:10}.percent-wave-after{border-radius:45%;background-color:rgba(255,255,255,.9);transform:translate(-50%, -70%) rotate(0);animation:rotate 10s linear -5s infinite;z-index:20}.percent-wave .percent{position:relative;width:50px;height:50px;display:flex;justify-content:center;align-items:center;color:#76daff;font-size:16px;text-shadow:0 1px #fff,1px 0 #fff,-1px 0 #fff,0 -1px #fff;z-index:30}@keyframes rotate{50%{transform:translate(-50%, -73%) rotate(180deg)}100%{transform:translate(-50%, -70%) rotate(360deg)}}:root{--background-color: #fff;--background-secondary-color: #f6f8fa;--text-color: #000;--text-gray-color: rgba(0,0,0,0.54);--text-fade-color: rgba(0,0,0,0.38);--layer-color: #616161;--layer-background-color: #fff;--layer-border-color: #eee;--layer-hover-color: #fff;--layer-hover-background-color: #4285f4;--header-background-color: #3b3e43;--toc-hover-color: #4285f4;--tab-current-background-color: var(--header-background-color);--box-shadow: 0 3px 12px rgba(27,31,35,0.15);--dialog-close-color: hsla(0,0%,100%,0.54);--input-border-color: #d1d5da;--logo-hover-color: var(--header-background-color)}.fn-hr10{height:10px;display:block}.tag{padding:2px 3px;font-size:12px;border-radius:2px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.12);background-color:#f0f0f0;color:#999;white-space:nowrap;display:inline-block;margin:5px 0;line-height:16px}.tag:hover{text-decoration:none;color:#2c2c2c;background-color:#ccc}button,.btn{cursor:pointer;color:#2c2c2c;border-radius:3px;padding:6px 12px;background-color:#fff;border:1px solid #d5d5d5;border-bottom-color:#e1e1e1;box-sizing:border-box;line-height:19px;white-space:nowrap;transition:all 100ms linear;font-weight:500}button:focus,.btn:focus{box-shadow:0 0 0 .3rem rgba(25,140,255,.2)}button:hover,.btn:hover{text-decoration:none;color:#198cff;box-shadow:.2rem .2rem 1rem 0 rgba(25,140,255,.2);background-color:#fff}button:active,.btn:active{color:rgba(25,140,255,.6);background-color:#fafcff}button.green,.btn.green{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.15);background-color:#60b044;border-color:#5ca941}button.green:hover,.btn.green:hover{background-color:#569e3d}button.green:active{background-color:#569e3d;border-color:#418737;box-shadow:0 2px 4px rgba(0,0,0,.25) inset}button.red,.btn.red{color:#e59230}button.red:hover,.btn.red:hover,.btn.red-hover{color:#fff;background-color:#e59230;border-color:#c0372a}button.red:active,.btn.red:active{background-color:#e59230;border-color:#c9320c;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.25) inset}button.small,.btn.small{padding:0 5px;font-size:12px;font-weight:normal;display:inline-block;line-height:19px;height:20px;text-shadow:initial}button.absolute{position:absolute;right:10px;top:10px}a[class^=icon-],a[class*=" icon-"]{color:#2c2c2c}a[class^=icon-]:hover,a[class*=" icon-"]:hover{text-decoration:none;color:#4285f4}.tip.error{color:#b22c39;border:1px solid #f0dddf;background-color:#fff0f1;border-radius:.3rem}.tip ul{margin:5px 30px;text-align:left;list-style-type:none}.tip.succ{border:1px solid #e1f0e5;color:#3b7649;background-color:#edfaf0;border-radius:.3rem}#registerTip,#loginTip,#addArticleTip,#profilesTip,#passwordTip{white-space:normal;word-wrap:break-word}.avatar,.avatar-small,.avatar-mid,.avatar-big{border-radius:3px 3px 3px 3px;background-size:cover;background-repeat:no-repeat;background-position:center center;display:inline-block;vertical-align:middle}.avatar{height:30px;width:30px;margin-right:10px}.avatar-small{height:20px;width:20px}.avatar-big{border:1px solid #eee;height:210px;width:210px;border-radius:6px}.avatar-mid{border:1px solid #eee;height:118px;width:118px;border-radius:4px}.status{border-top:1px dotted #ccc;list-style:none;padding:10px 0}.status>li{overflow:hidden;flex:1;-webkit-box-flex:1;text-align:center}.status>li>strong{font-size:20px}.form{position:relative}.form table{width:100%}.form input[type=text],.form input[type=date],.form input[type=datetime],.form input[type=datetime-local],.form input[type=password],.form input[type=number],.form select,.form textarea{line-height:17px;padding:7px 8px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:.3rem;width:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.form input[type=text]:not([readonly]):not([disabled]):hover,.form input[type=date]:not([readonly]):not([disabled]):hover,.form input[type=datetime]:not([readonly]):not([disabled]):hover,.form input[type=datetime-local]:not([readonly]):not([disabled]):hover,.form input[type=password]:not([readonly]):not([disabled]):hover,.form input[type=number]:not([readonly]):not([disabled]):hover,.form select:not([readonly]):not([disabled]):hover,.form textarea:not([readonly]):not([disabled]):hover{border-color:rgba(25,140,255,.5)}.form label{color:#616161;font-size:15px;margin:10px 0 5px;float:left}.form label.ft-red{color:#e59230}.form label>a{font-weight:normal}.form label input[type=checkbox],.form label input[type=radio]{vertical-align:middle}.form input[type=file]{width:1px;opacity:.001;height:16px}.pagination{background-color:#fff;background:linear-gradient(#FFFFFF, #EFEFEF);background:-ms-linear-gradient(#FFFFFF, #EFEFEF);background:-o-linear-gradient(#FFFFFF, #EFEFEF);background:-webkit-linear-gradient(#FFFFFF, #EFEFEF);border:1px solid #eaeaea;border-bottom:0;display:inline-block;margin:10px;border-radius:3px;font-size:12px;float:right}.pagination a,.pagination span{border-bottom:1px solid #dadada;border-left:1px solid rgba(255,255,255,.7);border-right:1px solid rgba(0,0,0,.04);color:#777;float:left;padding:5px 8px;text-decoration:none;text-shadow:0 1px 0 #fff}.pagination a{cursor:pointer}.pagination a:hover{color:#4285f4;border-bottom-color:#cfdce8;background-color:#fafbfd;background:linear-gradient(#fafbfd, #dce6ef);background:-ms-linear-gradient(#fafbfd, #dce6ef);background:-o-linear-gradient(#fafbfd, #dce6ef);background:-webkit-linear-gradient(#fafbfd, #dce6ef)}.pagination span.current{background-color:#fcfcfc;background:linear-gradient(#FCFCFC, #EBEBEB);background:-ms-linear-gradient(#FCFCFC, #EBEBEB);background:-o-linear-gradient(#FCFCFC, #EBEBEB);background:-webkit-linear-gradient(#FCFCFC, #EBEBEB);border-bottom-color:#d26911;color:#000}.pagination span.gap{color:#bbb}.pagination select{border:0;color:#777;padding:4px 5px;white-space:nowrap;float:left;border-bottom:1px solid #dadada;border-radius:0;background:linear-gradient(#fff, #EFEFEF)}.dialog-background{background-color:#000;display:none;height:100%;left:0;opacity:.5;position:absolute;top:0;width:100%;z-index:200}.dialog-panel{display:none;position:fixed;z-index:201;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.25);border-radius:5px;box-shadow:0 0 18px rgba(0,0,0,.4)}.dialog-header-bg{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 12px;font-size:16px;font-weight:600;border-bottom:1px solid #eee;cursor:move;user-select:none}.dialog-title{flex:1;display:flex;align-items:center;min-height:48px;line-height:1.4}.dialog-header-bg .icon-close{color:rgba(0,0,0,.25);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;margin-left:10px;font-weight:bold;-webkit-user-drag:none}.dialog-header-bg .icon-close:hover{color:#2c2c2c}.dialog-main{min-width:300px;padding:12px;box-sizing:border-box}.emoji-dialog{padding:4px 2px 8px}.emoji-dialog__desc{margin-bottom:14px;color:#616161;line-height:1.7}.emoji-dialog__field+.emoji-dialog__field{margin-top:12px}.emoji-dialog__label{display:block;margin-bottom:8px;color:#616161;font-size:14px;line-height:1.5}.emoji-dialog__row{display:flex;align-items:center;gap:8px}.emoji-dialog__input{width:100%;padding:10px 12px;border:1px solid #d8e1eb;border-radius:10px;box-sizing:border-box;background:#fff;color:#222;box-shadow:inset 0 1px 2px rgba(15,23,42,.04)}.emoji-dialog__input[readonly]{background:#f6f8fb;color:#2c3e50}.emoji-dialog__input--code{letter-spacing:.08em;font-weight:600}.emoji-dialog__actions{margin-top:16px;display:flex;justify-content:flex-end;gap:8px}.completed-panel{padding:0;overflow:auto;left:0;display:none;position:absolute;background-color:#fff;border:1px solid #eee;z-index:72;border-radius:0 0 3px 3px;width:50%;top:32px;box-sizing:border-box}.completed-panel a{display:block;padding:3px;text-decoration:none;line-height:18px;height:18px}.completed-panel a.selected,.completed-panel a:hover{background-color:#f7f7f7}.wrapper{margin:0 10px}.nav{height:28px;width:100%;padding:5px 0;z-index:99;background-color:rgba(217,240,255,.75)}.nav .wrapper{display:flex;justify-content:space-between;align-items:center}.nav .head-fn form{position:relative}.nav .head-fn h1 a svg{color:#fff;height:28px;width:28px;margin-top:-5px;float:left}.nav .user-nav{position:relative;display:flex;justify-content:center;align-items:center;padding-bottom:5px}.nav .user-nav a.unlogin{font-size:14px}.nav div>a{color:#3b3e43;text-decoration:none;margin:0 3px;padding:4px 5px;float:right;font-size:20px;line-height:20px;height:20px}.nav div>a:hover{color:#4285f4}.nav div>a.last{margin-right:0}.nav .avatar-small{height:20px;width:20px;vertical-align:super}.nav .user-nav .no-msg,.nav .user-nav .msg{background-color:rgba(203,202,202,.29);border-radius:3px;color:#3b3e43;font-size:14px;padding:0px 6px;margin:5px 4px;line-height:20px;transition:.5s}.nav .user-nav .msg{-webkit-animation:spaceboots 1s infinite;-moz-animation:spaceboots 1s infinite;-o-animation:spaceboots 1s infinite;-ms-animation:spaceboots 1s infinite;animation:spaceboots 1s infinite;background-color:#e59230;color:#fff}.nav .user-nav svg{color:#3b3e43;height:20px;width:20px}.nav .user-nav a.selected.no-msg,.nav .user-nav a.selected.msg{animation:none;background-color:#e59230;border-bottom:0}.nav .form{background-color:#fff;border:1px solid #cacaca;box-shadow:0 1px 0 rgba(255,255,255,.4),0 0 10px rgba(0,0,0,.1);padding:14px;position:absolute;right:0;top:33px;z-index:2;width:250px}.nav .form input[type=text],.nav .form input[type=password]{margin:10px 0}.nav input.search{background-color:#fff;border:1px solid #ddd;border-radius:3px 3px 3px 3px;padding:5px 8px;width:230px;margin:1px 0 0 20px;float:left;box-shadow:inset 0 1px 2px rgba(0,0,0,.075)}.nav input.search:focus{border-color:#51a7e8;box-shadow:0 0 3px rgba(81,167,232,.5),0 1px 1px rgba(0,0,0,.2) inset}.footer{color:#434444;padding:10px 0;text-align:center;font-size:12px;background-color:#fff}.footer a{color:#7e7e7e}.list h2{font-size:14px;font-weight:normal}.list h2>a{color:#595959}.list h2>a:hover{color:#2c2c2c}.list>ul{list-style:none}.list>ul>li{border-bottom:1px solid #eee;padding:10px 5px 10px 5px;white-space:normal;word-wrap:break-word;position:relative}.list li.last{border-bottom-width:0}.list .comment>p{margin:0}.comment img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.list>ul>li.cmt-perfect,.list>ul>li.cmt-perfect:hover{background-color:#f9f6f6}.has-view{margin-right:40px}#articltVia{white-space:nowrap}label.anonymous-check{margin:0 9px}label.anonymous-check input{margin-left:4px}.cmts{position:absolute;right:10px;top:40%}.cmts a.count:visited{background-color:#f6f6f6;color:#999}#revision .revisions{margin:5px 0 15px;text-align:center}#revision .revisions a{color:#616161;vertical-align:middle}#revision .revisions a:hover{color:#2c2c2c}#revision .revisions a.disabled{color:#878787;cursor:default}#revision .revisions span{margin:0 10px 0 10px}#revision .revision-picker{border-bottom:1px solid #e6e6e6;display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding-bottom:12px}#revision .revision-picker label{color:#616161;display:flex;flex-direction:column;gap:4px}#revision .revision-picker select{border:1px solid #d9d9d9;border-radius:3px;box-sizing:border-box;height:32px;max-width:100%;padding:0 6px;width:100%}#revision .revision-picker .revision-picker__toggle{align-items:center;flex-direction:row;white-space:nowrap}#revision .revision-picker .revision-picker__compare{height:32px;line-height:30px;padding:0 12px;width:72px}#revision .revision-diff{max-height:58vh;overflow:auto}#revision .revision-diff-section{margin-top:12px}#revision .revision-diff-section h3{color:#2c2c2c;font-size:14px;line-height:20px;margin:0 0 6px}#revision .revision-diff-title,#revision .revision-diff-lines{background:#fff;border:1px solid #e6e6e6;border-radius:4px}#revision .revision-diff-title{line-height:1.8;padding:10px;white-space:pre-wrap;word-break:break-word}#revision .revision-diff-word--add{background:#e9f7ec;color:#569e3d}#revision .revision-diff-word--remove{background:#ffeded;color:#d23f31;text-decoration:line-through}#revision .revision-diff-line{border-left:3px solid rgba(0,0,0,0);box-sizing:border-box;line-height:1.7;min-height:28px;padding:4px 8px;white-space:pre-wrap;word-break:break-word}#revision .revision-diff-line+.revision-diff-line{border-top:1px solid #f0f0f0}#revision .revision-diff-line--add{background:#f0fbf2;border-left-color:#569e3d}#revision .revision-diff-line--remove{background:#fff1f1;border-left-color:#d23f31}body.revision-modal-open{overflow:hidden}.revision-modal{align-items:flex-end;display:none;inset:0;justify-content:center;position:fixed;z-index:260}.revision-modal.is-open{display:flex}.revision-modal__overlay{background:rgba(15,23,42,.58);inset:0;position:absolute}.revision-modal__panel{background:#fff;border-radius:8px 8px 0 0;box-shadow:0 -18px 50px rgba(15,23,42,.28);display:flex;flex-direction:column;height:min(88vh,760px);max-width:100vw;overflow:hidden;position:relative;width:100%}.revision-modal__header{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex:0 0 auto;justify-content:space-between;min-height:52px;padding:0 14px}.revision-modal__title{color:#2c2c2c;font-size:16px;font-weight:600;line-height:24px}.revision-modal__close{align-items:center;background:#f6f8fa;border:1px solid #e6e6e6;border-radius:50%;color:#616161;cursor:pointer;display:inline-flex;font-size:24px;height:34px;justify-content:center;line-height:32px;padding:0;width:34px}.revision-modal__body{box-sizing:border-box;flex:1 1 auto;min-height:0;padding:12px}.revision-modal #revision,.revision-modal #revisions{display:flex;flex-direction:column;height:100%;min-height:0}.revision-modal #revision .revision-picker{flex:0 0 auto}.revision-modal #revision .revision-diff{flex:1 1 auto;max-height:none;min-height:0}.module{margin-bottom:10px;background-color:#fff;border-radius:3px;width:100%;word-wrap:break-word;box-sizing:border-box}.module-header{border-radius:3px 3px 0 0;background-color:#f7f7f7;border-bottom:1px solid #eee;padding:9px 10px 10px;text-shadow:0 1px 0 #fff;font-size:14px;line-height:17px}.module-header h2{display:inline;font-size:15px;font-weight:normal}.module-panel{border-radius:0 0 5px 5px}.module-panel strong{display:inline-block;margin-top:14px}.module-panel .module-list li{border-bottom:1px dotted #ccc;list-style:none outside none;padding:5px 10px;position:relative}.module-panel .module-list li.last,.module-panel .module-list li:last-child{border-bottom-width:0}.module .comment-content{color:#999;float:left;margin-left:5px;width:210px}.module-panel.form{padding:0 10px 10px}#killBrowser .module{height:235px;width:520px}#killBrowser p{margin:10px 0}#killBrowser ul{margin-left:30px}#killBrowser img{position:absolute;right:36px;top:58px}.emoji{width:1.3em;height:1.3em;display:inline-block;margin-bottom:.25em;background-size:contain;vertical-align:text-top;-webkit-filter:none !important;filter:none !important;transition:none !important}.person-info{position:relative}.person-info .info{position:relative;left:-1px;top:-1px;overflow:hidden;height:35px}.person-info .info button.red{position:absolute;border-radius:3px 0 0 0;min-width:35%;color:#fff;padding:5px 0;background-color:#b33630;background-image:linear-gradient(#dc5f59, #b33630);border-color:#cd504a;letter-spacing:1px}.person-info .info button.red:hover{letter-spacing:2px}.person-info .info .fn-right{margin:9px 10px 0 0}.person-info .status{border-bottom:1px dotted #ccc;border-top-width:0;margin-top:-20px;margin-bottom:15px}.person-info .status .fn-pointer:hover span{color:#2c2c2c}.person-info .module-panel{padding:0 10px 10px 10px}.person-info .activity-board{position:absolute;height:2px;background-color:#b33630;top:-1px}.person-info .right{width:2px;right:-1px;left:auto}.person-info .left{width:2px;right:0;left:-1px}.person-info .bottom{top:auto;bottom:-1px}.painter-point{background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-size:8px 8px;height:17px;width:38px;display:inline-block;vertical-align:sub}.top .has-view{line-height:21px}.responsive-show{display:none}.algolia-autocomplete .aa-dropdown-menu{background-color:#fff;border:1px solid #eee;margin:0 0 5px 19px}.algolia-autocomplete .aa-dropdown-menu img{height:20px}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion{cursor:pointer;padding:5px 4px;border-bottom:1px solid #eee}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion.aa-cursor{background-color:#f7f7f7}.algolia-autocomplete .aa-dropdown-menu .aa-suggestion em{font-weight:bold;color:#e59230;font-style:normal}.algolia-autocomplete .aa-dropdown-menu .fn-right{margin:5px}.ranking{text-align:center;margin:10px}.ranking-title{font-size:18px;text-align:center}.more-article{display:block;text-align:center;padding:5px;background-color:#f6f6f6;margin-bottom:10px;border-bottom:1px solid #eee}.module-list .slogan{position:absolute;top:50%;margin-top:-12px}.module-list .title{color:#767676;margin:5px 0 5px 30px;display:block;line-height:20px}.module-list.open-source .title{margin-left:60px}.module-list.open-source .slogan{margin-top:-11px}.module-list.domain .slogan{text-align:center;margin-top:-10px;width:30px}.module-list.domain .title{margin-left:50px}.module-list.domain .tag{margin-right:10px}.module-panel.ad{padding:10px;text-align:center}.module-panel.ad .header{color:#2c2c2c}.module-panel.ad img{margin-bottom:5px}.article-actions .fn-right>a,.article-actions .fn-right>span{padding:4px 8px;border-radius:2px;display:inline-block;line-height:16px;float:left;text-decoration:none;margin-top:10px}.article-info{position:relative;display:grid;grid-template-columns:30px minmax(0, 1fr);column-gap:10px;row-gap:8px;align-items:start}.article-info>a[rel=author]{grid-column:1;grid-row:1/3;display:block;width:24px;height:24px;margin-top:2px}.article-info>div.article-params{position:static;grid-column:2;grid-row:1;min-width:0;min-height:0;font-size:12px;line-height:18px}.article-info>.article-reaction,.article-info>.article-reaction-shell{grid-column:2;grid-row:2;justify-self:start;margin:0}.article-info>.article-actions{grid-column:2;grid-row:2;justify-self:end;width:auto;margin-top:0 !important}.article-info>.article-actions .fn-right{float:none;display:inline-flex;align-items:center;gap:6px}.article-info>.article-actions .fn-right>a,.article-info>.article-actions .fn-right>span{float:none;margin-top:0}#heatBar{position:fixed;top:2px;right:0px;width:100%}h1.article-title{word-break:break-all;font-size:16px;font-weight:normal;margin:4px 0 20px 0}h1.article-title>a{color:#595959}h1.article-title>a:hover{color:#2c2c2c}.editor-panel{position:fixed;left:0;right:0;bottom:-200%;z-index:120;display:none;width:100%;height:100%;box-sizing:border-box;overflow-x:hidden}.editor-panel .editor-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.48)}.editor-panel .wrapper{position:absolute;right:10px;bottom:0;left:10px;z-index:121;display:flex;flex-direction:column;box-sizing:border-box;width:auto;max-width:calc(100vw - 20px);height:min(86vh,520px);height:min(86dvh,520px);max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px);overflow:hidden;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));border-radius:10px 10px 0 0;background:#fff}.editor-panel .editor-panel__head{flex:0 0 auto;align-items:center;min-height:28px;margin-bottom:8px}.editor-panel .article-comment-content{display:flex;flex:1;flex-direction:column;min-height:0}.editor-panel #commentContent{display:flex;flex:1;min-height:0}.editor-panel #commentContent .vditor{display:flex;flex:1;width:100% !important;height:100% !important;max-width:100%;min-height:0;box-sizing:border-box;overflow:hidden}.editor-panel #commentContent .vditor-content{flex:1;min-height:0;overflow:hidden}.editor-panel #commentContent .vditor-toolbar{overflow:visible;white-space:nowrap}.editor-panel #commentContent .vditor-ir,.editor-panel #commentContent .vditor-sv,.editor-panel #commentContent .vditor-wysiwyg{min-height:0 !important}.editor-panel .comment-submit{flex:0 0 auto;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:2px}.editor-panel .comment-submit>div:first-child{flex:0 0 auto;position:relative}.editor-panel .comment-submit .fn-flex-1{display:none}.editor-panel #emojiList{position:fixed;right:12px;bottom:calc(52px + env(safe-area-inset-bottom));left:12px;width:auto !important;max-width:none !important;box-sizing:border-box;overflow:hidden}.editor-panel #emojiList>div{width:100% !important;min-width:0}.editor-panel #emojiGroupBoxNew{flex:0 0 90px;width:90px !important;min-width:0}.editor-panel #emojisNew{min-width:0;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;max-height:min(250px,38vh);max-height:min(250px,38dvh)}.editor-panel .comment-submit label.anonymous-check{margin:0;white-space:nowrap}.editor-panel #articleCommentBtn{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:76px;min-height:38px;padding:0 16px;border:1px solid #e59230;border-radius:4px;background:#e59230;color:#fff;line-height:36px;white-space:nowrap}.editor-panel .editor-hide{color:#616161;font-size:22px}.comment__reply{padding:0 10px 12px}.comment__reply .avatar{margin-right:8px}.comment__reply .reply__text{min-height:36px;padding:0 10px;border:1px solid #eee;border-radius:4px;color:#4285f4;cursor:pointer;line-height:36px}#thoughtProgress{height:2px;position:relative;margin-bottom:10px;margin-top:20px}#thoughtProgress .bar{position:absolute;background-color:#e0e0e0;height:2px}#thoughtProgress .icon-video{position:absolute;top:-8px;left:0;cursor:pointer;color:#e59230;margin-left:-10px}.comment-submit{display:flex;align-items:center;margin-top:10px}label.cmt-anonymous{margin:7px 15px 0 0}#shareClipboard.tooltipped-hover{color:#4285f4}.comments>.comments-header{border-bottom:1px solid #dbdbdb;margin:20px 0 20px 0;padding:10px 5px 11px 10px}.comments-header__main{display:flex;align-items:center;justify-content:space-between;gap:10px}.comment-filterbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px}.comment-segment{display:inline-flex;overflow:hidden;border:1px solid #e5e7eb;border-radius:6px;background:#fff}.comment-segment__item{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border-left:1px solid #e5e7eb;color:var(--text-gray-color);font-size:13px;line-height:1}.comment-segment__item:first-child{border-left-width:0}.comment-segment__item--active,.comment-segment__item--active:hover{color:#fff;background:#616161}.comment-action__bar{display:flex;align-items:center;justify-content:flex-start;gap:0 10px;flex-wrap:wrap}.comment-action__bar>.action-btns{margin-left:auto;padding-left:10px}.comment-action__left{display:flex;align-items:center;flex:1 1 180px;flex-wrap:wrap;gap:8px;min-width:0;transform:translateX(-10px)}.comment-action__reply{color:var(--text-gray-color);white-space:nowrap}.comment-action__reply svg{margin-left:4px}.action-btns{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.comments>div.comments-header svg{margin:3px 10px 0 0}.comments>div.comments-header a{text-decoration:none;color:#817e7e}.comments>div.comments-header a.comment-segment__item{color:var(--text-gray-color);font-size:13px}.comments>div.comments-header a.comment-segment__item--active,.comments>div.comments-header a.comment-segment__item--active:hover{color:#fff;background:#616161}.comments>ul>li,.comment-thread__reply{transition:transform .18s ease}.comment-focus-highlight{animation:comment-focus-nudge .38s ease-out 1}.comment-origin{display:inline-flex;align-items:center;gap:4px;max-width:130px;color:var(--text-gray-color);font-size:12px;white-space:nowrap}.comment-origin span{overflow:hidden;text-overflow:ellipsis}.comment-origin-inline{display:block;margin-top:2px;color:var(--text-gray-color)}.comment-thread{--comment-thread-max-indent: 80px;margin:10px 0 8px;padding:1px 0 1px 10px;border-left:1px solid rgba(15,23,42,.14);background:rgba(0,0,0,0)}.comment-thread__list{display:flex;flex-direction:column;gap:10px}.comment-thread__reply{display:flex;align-items:flex-start;gap:8px;min-width:0;margin-left:min(var(--comment-thread-indent, 0px),var(--comment-thread-max-indent));padding:2px 0;position:relative}.comment-thread__reply--nested::before{position:absolute;top:0;bottom:0;left:-8px;border-left:1px solid rgba(15,23,42,.12);content:""}.comment-thread__reply+.comment-thread__reply{padding-top:10px;border-top:1px solid rgba(15,23,42,.08)}.comment-thread__avatar{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background-position:center;background-size:cover}.comment-thread__body{flex:1;min-width:0;border-radius:4px;transition:transform .18s ease}.comment-thread__reply.comment-focus-highlight{animation:none}.comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:comment-focus-nudge .38s ease-out 1}.comment-thread__meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:13px;line-height:1.45}.comment-thread__meta a{color:var(--text-color);font-weight:600}.comment-thread .comment-origin-inline{display:inline;margin-top:0}.comment-thread__content{margin-top:2px;color:var(--text-color);font-size:14px;line-height:1.7}.comment-thread__content img:not(.emoji){max-width:150px;max-height:300px;cursor:zoom-in}.comment-thread__content>p:last-child{margin-bottom:0}.comment-thread__actions{align-items:center;gap:4px;margin-top:5px;font-size:13px}.comment-thread__actions .comment-action__left{flex:0 1 auto;gap:4px;transform:none}.comment-thread__actions .action-btns{justify-content:flex-start;gap:2px;margin-left:0;padding-left:0}.comment-thread__actions .action-btns>span,.comment-thread__actions .action-btns>a{min-height:28px;padding:0 7px;border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);box-shadow:none}.comment-thread__actions .action-btns>span:active,.comment-thread__actions .action-btns>a:active{background:rgba(98,162,240,.1)}.comment-thread__actions .reaction-pill,.comment-thread__actions .reaction-trigger{min-height:28px;padding:0 7px;border-color:rgba(0,0,0,0);background:rgba(0,0,0,0);box-shadow:none}.comment-thread__actions .reaction-widget__items{gap:2px;min-height:28px}.comment-thread__more{margin-top:10px;padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:13px}.comment-thread__pager{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:var(--text-gray-color);font-size:12px}.comment-thread__pager button{min-height:28px;padding:0;border:0;background:rgba(0,0,0,0);color:#616161;cursor:pointer;font-size:12px}.comment-thread__page-info{color:var(--text-gray-color)}.comments li.shield{background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px}.comments.list>ul>li.perfect,.comments.list>ul>li.perfect:hover{background-color:#f9f6f6}.comments>ul>li:hover .hover-show{visibility:visible}.comments>ul>li:hover .comment-action,.comments>ul>li.selected .comment-action{display:block}.comment-get-comment.list>ul>li{margin-bottom:10px;padding-top:0}.comment-replies.list>ul{margin-top:10px}.comment-replies.list>ul>li{border-bottom-width:0;border-top:1px solid #eee}.comment-replies.list>ul>li{background-color:rgba(0,0,0,0)}.article-reaction,.comment-reaction,.chat-reaction{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:100%}.article-reaction-shell{display:flex;justify-content:flex-start;width:100%;margin:12px 0 8px}.article-reaction{margin:12px 0 8px}.comment-reaction{margin-top:0}.article-reaction .reaction-popover{left:0;right:auto}.chat-reaction{clear:both;display:flex;margin:7px 0 0;width:100%}.chat-reaction--empty{position:absolute;top:10px;right:-14px;z-index:5;width:auto;margin:0;transform:none}.reaction-widget__summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.reaction-widget__items{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:28px}.reaction-widget__items:empty{display:none}.reaction-pill,.reaction-trigger,.reaction-option{appearance:none;border:0;font:inherit;line-height:1;cursor:pointer}.reaction-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border:1px solid var(--layer-border-color);border-radius:999px;background:rgba(255,255,255,.86);color:var(--text-gray-color);user-select:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.reaction-pill:hover{background:#fff;border-color:rgba(98,162,240,.42);transform:translateY(-1px)}.reaction-pill-wrapper .reaction-pill__tip{bottom:calc(100% - 2px);width:max-content;min-width:0;max-width:calc(100vw - 24px);max-height:168px;margin-bottom:0;padding:10px;border:1px solid rgba(148,163,184,.26);border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 14px 32px rgba(15,23,42,.14);display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:8px;overflow-y:auto;text-align:left;z-index:24}.comment-action__left .comment-reaction--summary{flex:0 1 auto;min-width:0}.comment-reaction--summary{gap:0}.action-btns .comment-reaction--trigger{display:inline-flex}.action-btns .comment-reaction--trigger .reaction-popover{left:auto;right:0}.reaction-pill__tip-link{display:inline-flex;width:28px;height:28px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.96);box-shadow:0 6px 14px rgba(15,23,42,.12);transition:transform .18s cubic-bezier(0.22, 1, 0.36, 1),box-shadow .18s ease}.reaction-pill__tip-link:hover{transform:translateY(-1px) scale(1.04);box-shadow:0 10px 20px rgba(37,99,235,.18)}.reaction-pill__tip-avatar{display:block;width:100%;height:100%;object-fit:cover}.reaction-pill.selected{border-color:rgba(98,162,240,.72);background:rgba(98,162,240,.12);color:#2563eb;font-weight:600;box-shadow:0 8px 18px rgba(37,99,235,.12)}.reaction-pill__emoji{line-height:1}.reaction-pill__count{font-size:12px;line-height:1}.reaction-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:30px;min-width:30px;padding:0 9px;border-radius:999px;background:rgba(37,99,235,.08);border:1px solid rgba(37,99,235,.14);color:#2563eb;font-size:12px;font-weight:600;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease}.reaction-trigger:active{transform:scale(0.96)}.reaction-trigger.is-open{background:rgba(37,99,235,.16);border-color:rgba(37,99,235,.28);box-shadow:0 10px 24px rgba(37,99,235,.18)}.reaction-trigger__icon{font-size:15px}.action-btns>span,.action-btns>a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;padding:0 10px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(255,255,255,.84);box-shadow:0 8px 18px rgba(15,23,42,.06);color:var(--text-gray-color);text-decoration:none;white-space:nowrap;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.action-btns>span.ft-red,.action-btns>a.ft-red,.action-btns>span.ft-red:hover,.action-btns>a.ft-red:hover{color:var(--point-hover-color);border-color:rgba(226,61,61,.2);background:rgba(255,243,243,.92)}.action-btns>span.icon-reply-btn{font-weight:600}.action-btns>span:active,.action-btns>a:active{transform:scale(0.97)}.action-btns svg{vertical-align:middle}.reaction-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:70;display:none;grid-template-columns:repeat(5, minmax(0, 1fr));gap:8px;min-width:240px;max-width:min(272px,100vw - 32px);padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 18px 38px rgba(15,23,42,.16);backdrop-filter:blur(16px)}.article-reaction.is-open,.comment-reaction.is-open,.chat-reaction.is-open{z-index:70}.article-reaction.is-open .reaction-popover,.comment-reaction.is-open .reaction-popover,.chat-reaction.is-open .reaction-popover{display:grid;animation:reaction-pop .28s cubic-bezier(0.22, 1.28, 0.36, 1)}.reaction-option{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;background:rgba(241,245,249,.9);border:1px solid rgba(0,0,0,0);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.reaction-option:active{transform:scale(0.9)}.reaction-option.selected{background:rgba(37,99,235,.12);border-color:rgba(37,99,235,.3);box-shadow:inset 0 0 0 1px rgba(37,99,235,.12)}.reaction-option--wide{grid-column:span 2;width:auto;white-space:nowrap}.reaction-option--wide .reaction-option__emoji{font-size:18px;letter-spacing:.02em}.reaction-option__emoji{font-size:20px;line-height:1}.chat-reaction .reaction-pill{min-height:26px;padding:0 9px;font-size:12px}.chat-reaction .reaction-trigger{min-height:28px;padding:0 11px}.chat-reaction--empty .reaction-trigger{min-width:32px;min-height:32px;padding:0}.chat-reaction .reaction-popover,.chat-reaction--empty .reaction-popover{left:auto;right:0}.chat-reaction .reaction-popover{top:calc(100% + 6px)}.chat-reaction--empty .reaction-popover{top:calc(100% + 10px)}.chats__content>.date-bar{clear:both;display:flex;justify-content:flex-end;align-items:center;gap:4px;float:none;margin-top:6px;width:100%}.reaction-loading{opacity:.68;pointer-events:none}.reaction-flyin{position:fixed;left:0;top:0;z-index:10010;font-size:20px;line-height:1;pointer-events:none;filter:drop-shadow(0 8px 18px rgba(15, 23, 42, 0.18));will-change:transform,opacity}@keyframes comment-focus-nudge{0%,100%{transform:translate3d(0, 0, 0)}45%{transform:translate3d(4px, 0, 0)}}@media(prefers-reduced-motion: reduce){.comment-focus-highlight,.comment-thread__reply.comment-focus-highlight .comment-thread__body{animation:none}}@keyframes reaction-pop{0%{opacity:0;transform:translateY(8px) scale(0.82)}70%{opacity:1;transform:translateY(-2px) scale(1.03)}100%{opacity:1;transform:translateY(0) scale(1)}}.comments li .fn-pointer:hover{color:#999}.comments .comment>p{margin-top:10px;margin-bottom:0}.comments.nice ul{margin-top:5px;border:1px solid #eee;border-radius:3px}.comments.nice>ul>li:last-child{border-bottom-width:0}.comment-paragraph-context{display:-webkit-box;margin:0 0 7px;overflow:hidden;color:#718078;font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.long-article-orphaned-comments{margin:14px 0 0;border-top:1px solid rgba(65,94,71,.14);padding-top:10px}.long-article-orphaned-comments summary{color:#68776e;cursor:pointer;font-size:12px}.long-article-orphaned-comments>ul{margin-top:8px}.comment-login{box-sizing:border-box;margin:10px;background-color:#fafafa}.comment-login>a{text-align:center;display:block;padding:21px 0px 21px}#articleRewardContent{margin-top:20px;padding:10px;background-image:-webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.9)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.9)), color-stop(0.75, rgba(255, 255, 255, 0.9)), color-stop(0.75, transparent), to(transparent));background-image:-o-linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.9) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 75%, transparent 75%, transparent);background-color:#f7f7f7;background-size:45px 45px}#articleRewardContent>p{margin:0}#articleRewardContent.reward{text-align:center}#articleRewardContent.reward>span{margin:20px;display:inline-block}.article-tags .tag{margin:0;padding:0 3px}.article-visit-sources{display:flex;align-items:center;flex-wrap:wrap;gap:3px 7px;max-width:100%;line-height:18px;margin:3px 0 0}.article-visit-source{display:inline-flex;align-items:center;color:#8b8b8b;font-size:12px;line-height:18px}.article-visit-source__icon{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;margin-right:2px;color:#8b8b8b;flex:0 0 auto}.article-visit-source__icon svg{display:block;width:13px;height:13px;fill:currentColor}.article-visit-source--google .article-visit-source__icon,.article-visit-source--chrome .article-visit-source__icon{color:#4285f4}.article-visit-source--baidu .article-visit-source__icon{color:#35f}.article-visit-source--bing .article-visit-source__icon,.article-visit-source--edge .article-visit-source__icon{color:#0078d7}.article-visit-source--sogou .article-visit-source__icon{color:#fa4f00}.article-visit-source--yandex .article-visit-source__icon{color:#fc3f1d}.article-visit-source--360 .article-visit-source__icon,.article-visit-source--android .article-visit-source__icon{color:#2fa866}.article-visit-source--duckduckgo .article-visit-source__icon{color:#de5833}.article-visit-source--safari .article-visit-source__icon{color:#0a84ff}.article-visit-source--firefox .article-visit-source__icon{color:#ff7139}.article-visit-source--opera .article-visit-source__icon{color:#ff1b2d}.article-visit-source--samsung .article-visit-source__icon{color:#1428a0}.article-visit-source--iphone .article-visit-source__icon{color:#6e6e73}.share{margin:10px 0;position:relative}.share svg{height:16px;width:16px}.share #qrCode{position:absolute;bottom:30px;right:0;border:5px solid #eee;z-index:1;height:90px;border-radius:3px;width:90px}.share [class^=icon-]{cursor:pointer;transition:all .2s ease-out 0s;-webkit-transition:all .2s ease-out 0s;display:inline-block;font-size:16px}.share [class^=icon-]:hover{color:#4285f4}#replyUseName{visibility:hidden;line-height:18px;height:18px;margin:5px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#replyUseName.reply-use-name--active{visibility:visible}#replyUseName .reply-use-name__target{display:inline-flex;align-items:center;max-width:calc(100% - 26px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#replyUseName .reply-use-name__target svg{margin-right:2px}#replyUseName .reply-use-name__cancel{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:6px;border-radius:50%;border:1px solid #ddd;line-height:14px}#articleToC{top:21px;z-index:10}.article-toc li{list-style-type:none}.article-toc li a{padding:5px 10px 5px 20px;border-left:2px solid rgba(0,0,0,0);display:block;line-height:20px;color:#767676}.article-toc li a:last-child{border-bottom-width:0}.article-toc li a:hover{border-left:1px solid #4285f4;background-color:#f7f7f7;padding-left:21px;color:#4285f4;text-decoration:none}.article-toc li.current a{border-left:2px solid #4285f4;background-color:#f0f0f0;color:#4285f4}.article-toc li.toc-h2 a,.article-toc li.toc-h2.current a:hover{padding-left:34px}.article-toc li.toc-h3 a,.article-toc li.toc-h3.current a:hover{padding-left:48px}.article-toc li.toc-h4 a,.article-toc li.toc-h4.current a:hover{padding-left:62px}.article-toc li.toc-h5 a,.article-toc li.toc-h5.current a:hover{padding-left:86px}.article-toc li.toc-h2 a:hover{padding-left:35px}.article-toc li.toc-h3 a:hover{padding-left:49px}.article-toc li.toc-h4 a:hover{padding-left:63px}.article-toc li.toc-h5 a:hover{padding-left:87px}.domains{border-bottom:2px solid #e59230}.domains svg{vertical-align:sub}.domains a{height:17px;text-align:center;padding:10px 2px;color:#999;text-decoration:none;line-height:16px;display:block;flex:1;font-size:12px}.domains a.selected{color:#4285f4}.domains-count{padding:10px 18px;font-size:18px;line-height:26px;color:#1b3650;text-align:center;background-image:linear-gradient(#f5fbff, #e4f0ff);border:1px solid #cee0e7;border-radius:3px;width:100%;box-sizing:border-box;margin:10px 0 10px}.article-list li.stick{background-color:#f9f6f6}.article-list li.stick .stick-remains{vertical-align:top}.article-list li.stick:hover .stick-remains{display:inline}.article-list li .commenters{display:none;top:32%;position:absolute;right:10px}.article-list li .commenters>a{float:left;margin-left:4px;width:25px;text-decoration:none;color:#999}.article-list li .commenters>a:hover{color:#4285f4}.article-list li:hover .commenters{display:block}.article-list .preview{position:absolute;left:65px;z-index:1;top:40px;background-color:#fff;border:1px solid #ddd;border-radius:3px 3px 3px 3px;padding:5px 10px;opacity:.9;width:70%;min-width:130px;min-height:36px}.article-list .preview .ico-arrow{width:0px;height:0px;border-left:10px solid rgba(0,0,0,0);border-right:10px solid rgba(0,0,0,0);border-bottom:10px solid rgba(255,255,255,.9);position:absolute;top:-10px;z-index:1;left:11px}.article-list .preview .ico-arrowborder{width:0px;height:0px;border-left:11px solid rgba(0,0,0,0);border-right:11px solid rgba(0,0,0,0);border-bottom:11px solid #ddd;position:absolute;top:-11px;left:10px}.heat{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0}.point,.point-remove{position:absolute;height:5px;background-color:#e59230;z-index:1;bottom:-3px;right:0px;width:5px;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:slideInRight;animation-name:slideInRight}.point-remove{animation-name:slideInLeft;-webkit-animation-name:slideInLeft}@keyframes slideInLeft{0%{right:0}100%{right:100%}}@-webkit-keyframes slideInLeft{0%{right:0}100%{right:100%}}@keyframes slideInRight{0%{right:100%}100%{right:0}}@-webkit-keyframes slideInRight{0%{right:100%}100%{right:0}}.article-level0{color:#878787}.article-level1{color:#fc0}.article-level2{color:#ffc1cc}.article-level3{color:#f63}.article-level4{color:#e59230}.guide .intro.vditor-reset{padding:10px;line-height:24px}.guide .guide-tab,.guide .step-btn{margin:10px}.guide .form{margin:0;width:auto}.guide #avatarUpload label{margin-top:0}.guide .tag-desc>li:hover>a{border-bottom-style:solid;border-radius:3px}.guide .tag-desc li.current>a{background-color:#878787;color:#fff;border-color:#bbb}.guide .intro dt.current{color:#ffac45}.guide .fn-flex>div{padding:10px;box-sizing:border-content;width:50%}.guide .md{background-color:#f1f7fe}.guide .md pre{white-space:pre-wrap;word-wrap:break-word}.verify .intro{padding:30px;background-color:#f1f7fe;color:#616161}.verify .form{font-size:14px;line-height:1.6;margin:20px 0}.verify .form>svg{margin:0 auto;height:50px;width:50px;display:block}.verify .form input[type=text],.verify .form input[type=password]{margin:10px 0;width:100%;padding-left:36px;background-color:#fff}.verify .form button{margin:10px 0;width:100%}.verify .form .input-wrap{position:relative}.verify .form .input-wrap svg{color:#999;position:absolute;top:19px;left:10px}.verify .form .captcha-img{top:11px;position:absolute;height:31px;left:1px;border-radius:3px 0 0 3px}.verify .form input.captcha-input{padding-left:91px}.verify .openid-info{font-size:14px;line-height:1.6;margin:20px 0}.verify .openid-info .avatar-openid{width:50px !important;height:50px !important}.verify .openid-info .tip1{font-size:20px;font-weight:bold}.verify .openid-info .tip2{color:#b0a114}.verify .openid-info .info-box{margin-top:10px;margin-bottom:10px;display:flex;flex-direction:row;padding:10px;align-items:center;background:#eee;border-radius:2px}.verify .openid-info .info-detail{font-size:18px;margin-left:10px;line-height:24px}.verify .openid-intro .openid-intro-title{color:#4285f4}.module-panel .tags li{float:left;list-style:none;line-height:19px;margin:10px 10px 0 0}.module-panel .tags{margin:0 0 10px 10px}.tag-desc.fn-clear{margin:10px 0 0px 10px}.tag-desc>li{float:left;position:relative;list-style:none;margin:0 10px 10px 0;font-size:12px}.tag-desc>li:hover>div{display:block}.tag-desc>li>a{float:left;color:#999;padding:2px 5px;border:1px solid #ddd;position:relative;height:20px;white-space:nowrap;word-wrap:normal;background-color:#f7f7f7;border-radius:3px 3px 3px 3px;line-height:21px}.tag-desc>li>a:hover{text-decoration:none}.tag-desc>li:hover>a{border-bottom-style:dotted;border-radius:3px 3px 0 0;opacity:.7;z-index:3}.tag-desc>li>a>span{text-decoration:none;color:#999}.tag-desc>li>a>img{border-radius:2px 2px 2px 2px;height:16px;width:16px;margin:-2px 2px 0 0}.tag-desc>li>div{background-color:#f7f7f7;border:1px solid #ddd;border-radius:3px 0 3px 3px;display:none;right:0;margin-left:3px;padding:5px 10px;position:absolute;top:25px;z-index:2;opacity:.9;width:200px;min-width:150px}.tag-articles-tag-desc.tag-desc>li>div{left:-3px;right:auto;border-radius:0 3px 3px 3px}.tag-articles .content{padding-top:10px}.tag-articles h1.fn-inline{line-height:28px;font-size:20px}.tag-articles .btn.red{vertical-align:super}.tag-articles .article-actions .fn-right{margin-top:-8px}.tags-cold li h2,.tags-trend li h2{display:inline-block}.list>ul.tags-trend>li,.list>ul.tags-cold>li{padding:5px}.tag-artile-user{border-bottom:1px dotted #ccc;padding:0 0px 10px 10px}code.prettyprint{display:inline;border:none;background-color:initial;border-radius:initial;padding:initial}code .str{color:initial}code .kwd{color:initial}code .com{color:initial;font-style:italic}code .typ{color:initial}code .lit{color:initial}code .pun{color:initial}code .pln{color:initial}code .tag{color:initial}code .atn{color:initial}code .atv{color:initial}code .dec{color:initial}.activity{min-height:300px}.activity-char-btns{margin-top:10px}#charCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;margin:20px auto;background-image:url(../images/m-char.png);background-size:cover}#paintCanvas{border:1px solid #eee;border-radius:5px;background-color:#fff;display:block;margin:20px auto;background-size:cover}.chat-room{background:#fff;padding:0 10px}.chat-room .online-cnt{line-height:33px;margin-right:10px;color:#787777}.chat-room .list{height:200px;overflow:auto}.index .index-wrap{background-color:#fafafa;border-bottom:1px solid #eee;border-top:1px solid #eee}.index>.slogan{padding:10px;color:#767676;border-top:1px solid #eee;background-color:#fafafa}.index>.slogan a:hover svg{color:#4285f4}.index .tag-desc>li:hover>span{border-bottom-style:solid;border-radius:3px;opacity:.7;z-index:3}.index a.count{position:absolute;right:10px;top:50%;margin-top:-8px}.index a.count:visited{background-color:#f6f6f6;color:#999}.index .module-list .title{margin-right:30px}.index .module-header{margin:-1px;text-align:right;text-shadow:0 0 0}.index .module-header a{color:#fff}.user-name{font-size:20px;font-weight:300;line-height:26px;border-bottom:1px dotted #ccc;margin-bottom:20px;padding:20px 10px 25px 10px}.user-name #userNicknameDom{font-size:26px;line-height:30px}.user-name .mbti{background-color:#b2b1ff;color:#fff;font-size:12px;line-height:20px;border-radius:3px;height:20px;display:inline-block;padding:0 5px;vertical-align:middle;box-sizing:border-box}.user-name .mbti svg{margin-top:2px}.user-name .online,.user-name .offline,.user-name .color_admin,.user-name .color_op,.user-name .color_police,.user-name .color_svip,.user-name .color_vip{background-color:#e59230;color:#fff;font-size:12px;line-height:20px;border-radius:3px;height:20px;display:inline-block;padding:0 5px 0 3px;vertical-align:middle}.user-name .online svg,.user-name .offline svg,.user-name .color_admin svg,.user-name .color_op svg,.user-name .color_police svg,.user-name .color_svip svg,.user-name .color_vip svg{margin-top:2px}.user-name .offline{background-color:#787777}.user-name .color_admin{background-color:#d70274}.user-name .color_op{background-color:#7702d7}.user-name .color_police{background-color:#026dd7}.user-name .color_svip{background-color:#d7b502}.user-name .color_vip{background-color:#d74202}.user-name button.follow{font-size:14px;width:100%;margin:10px 0}.user-info{line-height:26px;font-size:12px;color:#616161}.user-intro{line-height:26px}.pre-post>div{font-size:30px;border-bottom:1px solid #eee;padding:20px 10px;text-align:center}.pre-post>div:last-child{border-bottom-width:0}.pre-post>div>a{color:#404040;display:block;margin-bottom:20px}.pre-post a:hover{text-decoration:none;color:#4285f4}.pre-post a svg{height:30px;width:30px;vertical-align:middle;margin-right:20px}.pre-post div.ft-fade{font-size:15px}#articleContent{height:332px;margin:10px 0}#articleRewardContent{margin-top:10px;padding:0}#tip{position:inherit;white-space:pre-wrap}.tip-add-article{color:#777;list-style:circle outside none;margin-left:20px;line-height:22px}.article-content{width:100%;position:relative}.article-content#articleAudio{width:auto;margin-bottom:10px}#showReward{color:#999;width:100%;display:block}.post .tags-wrap{position:relative}.post .tags-input{border:1px solid #ccc;background-color:#fafafa;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.075) inset;padding:5px 5px 3px 5px;width:100%;line-height:17px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;height:33px}.post .tags-input span.tag{margin:2px 5px 0 0px;color:#4285f4}.post .tags-input .tag>span.close{cursor:pointer;margin-left:5px;color:#999}.post .tags-input span.tag.haved{color:#2c2c2c;background-color:#ccc;transition:background .5s ease-in,color .3s ease-out}.post .tags-input input{border:0;outline:none;border-radius:0;padding:2px;box-shadow:0 0 0;background-color:rgba(0,0,0,0)}.post .tags-input input:focus{border:0;background-color:rgba(0,0,0,0);box-shadow:0 0 0}.post .domains-tags,.post .completed-panel{display:none;position:absolute;background-color:#fff;border:1px solid #eee;z-index:10;padding:10px;border-radius:0 0 3px 3px;width:100%;box-sizing:border-box;top:32px}.post .domains-tags .tag{cursor:pointer;color:#4285f4}.post .domains-tags>span.current{color:#fff;background-color:#2c5d8d;background-image:linear-gradient(#7ba9d6, #2c5d8d);border-color:#689cd0}.post .completed-panel{padding:0;overflow:auto;left:0}.post .completed-panel a{display:block;padding:3px;text-decoration:none;line-height:18px;height:18px}.post .completed-panel a.selected,.post .completed-panel a:hover{background-color:#f7f7f7}.article-draft-action{min-width:68px;color:#31526f;background:#f5f8fb;border:1px solid #c9d7e5;border-radius:4px}.article-draft-box{position:fixed;inset:0;z-index:1000;background:rgba(15,23,42,.38);display:flex;align-items:center;justify-content:center;padding:12px;box-sizing:border-box;backdrop-filter:blur(2px)}.article-draft-box.fn-none{display:none}.article-draft-box__panel{width:100%;max-height:82vh;display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:8px;border:1px solid rgba(201,215,229,.9);box-shadow:0 16px 36px rgba(15,23,42,.24)}.article-draft-box__head{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 14px;border-bottom:1px solid #e8eef5}.article-draft-box__head strong{color:#1f2937;font-size:16px;line-height:24px}.article-draft-box__close{width:44px;height:44px;padding:0;color:#64748b;background:rgba(0,0,0,0);border:0;border-radius:4px;font-size:24px;line-height:42px}.article-draft-box__body{overflow:auto}.article-draft-box__list{padding:12px;color:#5d6b7a}.article-draft-box__item{padding:12px;border:1px solid #e3eaf2;border-radius:6px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.05)}.article-draft-box__item+.article-draft-box__item{margin-top:10px}.article-draft-box__title{color:#1f2937;font-weight:600;line-height:22px;overflow-wrap:anywhere}.article-draft-box__summary{margin-top:4px;color:#6b7280;line-height:20px;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.article-draft-box__meta{margin-top:8px;color:#8a97a8;font-size:12px;line-height:18px}.article-draft-box__actions{margin-top:10px;display:flex;gap:8px}.article-draft-box__restore,.article-draft-box__remove{flex:1;min-height:44px;padding:0 12px;border-radius:4px}.article-draft-box__restore{color:#fff;background:#23835b;border:1px solid #23835b}.article-draft-box__remove{color:#a33a3a;background:#fff6f6;border:1px solid #f0c5c5}.article-draft-box__state,.article-draft-box__empty{padding:34px 10px;color:#8a97a8;text-align:center;border:1px dashed #d7e0ea;border-radius:6px;background:#fafcff}.tab-current{background-color:#fafafa;border-bottom:1px solid #eee;padding:5px 10px;font-size:14px;font-weight:bold}.tab-current>span{color:#767676}.tab{list-style:none}.tab>li a{padding:5px 0;display:block}.home-invisible{margin:10px 0;border-bottom:1px dotted #ccc;padding-bottom:10px}.home-account__captch{position:relative}.home-account__captch img{position:absolute;height:31px;top:39px;right:1px;border-radius:0 3px 3px 0}.notification-tab a:hover{text-decoration:none}.notification-tab a{display:inline-block !important}.notification .read{background-color:#fafafa;opacity:.5}.notification li{background-color:#f8f8ff;line-height:21px}.notification li:last-child{border-bottom-width:0}.follow li{position:relative;border-bottom:1px solid #eee;padding:10px;list-style:none;box-sizing:border-box}.follow .user-online{position:absolute;left:45px;top:45px}.admin .avatar{height:17px;width:17px}.admin .tags{display:inline-block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;vertical-align:bottom}.admin .form input[type=text],.admin .form input[type=number]{width:30%;margin-right:10px}.points{border-collapse:collapse;border-spacing:0;width:100%}.points td{border-bottom:1px solid #ccc}.points .even{background-color:#f7f7f7}.points .date{width:75px;padding:10px}.points .name{word-break:break-all}.points .type{width:60px;padding:0 10px}.points .sum{text-align:center;width:35px;padding:0 10px;color:#f37800;font-weight:700}.points .sum.plus{color:#53a000}.points .balance{width:40px;padding:0 10px}#avatarUpload{overflow:hidden}.settings-avatar .btn{margin-top:0}.settings-avatar .avatar-big{display:block;margin-bottom:10px}.settings-avatar li{margin-left:20px}.error-403>.slogan{padding-top:20px;background-color:#fafafa;border-bottom:1px solid #eee}.error-403 .slogan-border{margin:20px 0 20px;color:#767676;background-color:#fff;border:1px solid #eee;border-radius:3px;border-bottom:1px solid #eee;width:100%}.error-403 .slogan-register{padding-top:20px;text-align:center}.error-403 .slogan-text{margin:20px 10px}.module.editor-toolbar-emoji{position:absolute;bottom:14px;height:111px;overflow:auto;z-index:124;background-color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);width:50%}.module.editor-toolbar-emoji .emoji{cursor:pointer;padding:5px;border-radius:2px;margin-bottom:0}.module.editor-toolbar-emoji .emoji:hover{background-color:#878787}.wrapper .editor-toolbar{border:1px solid #ccc}.wrapper .editor-toolbar>a:last-child{display:none}.link-forge .link-forge-upload{margin:10px 0}.link-forge .link-forge-upload input[type=text]{width:74%;margin-right:20px}.link-forge .module-panel{max-height:409px;overflow:hidden}.breezemoon__btn{position:absolute;top:9px;right:10px;border-radius:0 3px 3px 0 !important}@media only screen and (device-width: 414px)and (device-height: 896px)and (-webkit-device-pixel-ratio: 2),only screen and (device-width: 375px)and (device-height: 812px)and (-webkit-device-pixel-ratio: 3),only screen and (device-width: 414px)and (device-height: 896px)and (-webkit-device-pixel-ratio: 3){.footer{padding-bottom:22px}}.blur img{-webkit-filter:blur(20px) saturate(1.4);filter:blur(20px) saturate(1.4);transition:all .15s ease-in-out}.blur img:hover{filter:none;-webkit-filter:none}#chatRoomIndex li img{max-width:150px;max-height:150px}.chat-room li img{max-height:400px;max-width:600px}.tag_selection{margin:20px 0 0 0}.chats__users{overflow:auto}.chats__users::-webkit-scrollbar{display:none}.chats__input{margin-bottom:15px}.chats__editor{min-height:160px}.chats__content{background-color:var(--background-secondary-color);border-radius:5px;padding:8px 15px;margin:0 53px 15px 15px;overflow:initial;max-width:85%;box-sizing:border-box;position:relative}.chats__content--private{padding-top:8px;padding-bottom:6px}.chats__message{margin:0;line-height:18px}.chats__content--private>.chats__meta{margin-top:3px;min-height:15px;line-height:15px}.chats__content--private>.chats__meta .details,.chats__content--private>.chats__meta .details>summary{height:15px;line-height:15px}.chats__content .vditor-reset::-webkit-scrollbar{display:none}.chats__content .language-echarts,.chats__content .language-mermaid,.chats__content .language-mindmap,.chats__content iframe{width:510px}.chats__content .vditor-reset img:not(.emoji){max-width:150px;max-height:300px}.chats__arrow{position:relative}.chats__arrow:after{position:absolute;width:0;height:0;content:"";top:5px;left:-25px;border:5px solid rgba(0,0,0,0);border-right:5px solid var(--background-secondary-color)}.chats__item .avatar{margin-right:0}.chats__item--me{flex-direction:row-reverse}.chats__item--me .chats__content{margin:0 15px 15px 53px;background-color:rgba(98,162,240,.1)}.chats__item--me .chats__content .chats__arrow:after{right:-25px;border-left-color:rgba(98,162,240,.1);left:auto;border-right-color:rgba(0,0,0,0)}.ft__fade{color:var(--text-fade-color)}.ft__smaller{font-size:12px}.chats__content .ft__smaller{font-weight:500;font-size:13px}.fn__right{float:right}.action__item{line-height:18px;height:18px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;transition:all .15s ease-in-out;cursor:pointer;display:inline-flex;align-items:center}.action__item,.comment__titles span{font-size:12px;color:var(--layer-color)}.fn__flex-center{-ms-grid-row-align:center;align-self:center}.details{display:inline-block;position:relative}.details>summary{list-style:none}.fn__layer{display:block;padding:5px 0;-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:scale-in;animation-name:scale-in;-webkit-animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);position:absolute;background-color:var(--layer-background-color);line-height:20px;box-shadow:0 1px 2px rgba(0,0,0,.6);border:1px solid var(--layer-border-color);border-radius:3px;min-width:180px;right:0;z-index:100}.action__item details-menu{right:-15px;top:20px}.details>summary{list-style:none}.details>summary::-webkit-details-marker,.details>summary:before{display:none}.details>summary:focus{outline:none}.details:not([open])>:not(summary){display:none}.details details-menu:after,.details details-menu:before{top:-14px;right:12px;left:auto;position:absolute;border:7px solid rgba(0,0,0,0);border-bottom:7px solid var(--layer-background-color);content:" "}.details details-menu:before{border-width:8px;border-bottom-color:var(--layer-border-color);top:-16px;right:11px}.fn__layer .item{display:block;text-shadow:0 1px 0 var(--layer-background-color);position:relative;padding:5px 10px;color:var(--layer-color);font-weight:400;width:100%;box-sizing:border-box;word-break:break-all}.fn__layer .item--current,.fn__layer .item:hover{text-decoration:none;background-color:var(--layer-hover-background-color);color:var(--layer-hover-color) !important;text-shadow:none}.fn__layer a:hover{text-decoration:underline}.chats__item--me{flex-direction:row-reverse}.chats__content .vditor-reset{overflow:visible}.hongbao__item{position:relative;background-color:var(--layer-background-color);color:var(--layer-color);cursor:pointer;padding:7px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:3px 5px 8px 3px}.hongbao__item:hover{box-shadow:0 0 3px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.26)}.hongbao__icon{height:50px !important;width:50px !important;margin-right:7px}.hongbao__count{font-size:24px;margin:10px 0}.opened .hongbao__finger_guessing{display:none}.hongbao__finger_guessing_icon{position:absolute;right:-25px;width:45px;height:45px;border-radius:50%;border:2px solid rgba(0,0,0,0);transition:.2s}.hongbao__finger_guessing_icon:hover{border-color:#5c1151}.hongbao__finger_guessing_icon:nth-child(1){top:-25px;background:url("../images/redpacket/gesture/rock.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(2){top:15px;right:-50px;background:url("../images/redpacket/gesture/scissors.png") no-repeat center center;background-size:contain}.hongbao__finger_guessing_icon:nth-child(3){top:55px;background:url("../images/redpacket/gesture/paper.png") no-repeat center center;background-size:contain}.hide-list{--border-color: #d1d5da;--second-color: rgba(88, 96, 105, 0.36);--panel-background-color: #fff;--panel-shadow: 0 1px 2px rgba(0, 0, 0, .2);--toolbar-background-color: #f6f8fa;--toolbar-icon-color: #586069;--toolbar-icon-hover-color: #4285f4;--toolbar-height: 35px;--toolbar-divider-margin-top: 8px;--textarea-background-color: #fafbfc;--textarea-text-color: #24292e;--resize-icon-color: var(--toolbar-icon-color);--resize-background-color: var(--toolbar-background-color);--resize-hover-icon-color: var(--panel-background-color);--resize-hover-background-color: var(--toolbar-icon-hover-color);--count-background-color: rgba(27, 31, 35, .05);--heading-border-color: #eaecef;--blockquote-color: #6a737d;--ir-heading-color: #660e7a;--ir-title-color: #808080;--ir-bi-color: #0033b3;--ir-link-color: #008000;--ir-bracket-color: #0000ff;--ir-paren-color: #008000;background-color:var(--panel-background-color);position:absolute;box-shadow:var(--panel-shadow);border-radius:3px;padding:5px;z-index:3;font-size:14px;display:none;user-select:none;max-width:320px;min-width:80px;animation-duration:.15s;animation-name:scale-in;animation-timing-function:cubic-bezier(0.2, 0, 0.13, 1.5);color:var(--toolbar-icon-color)}.hide-list-emojis{display:inline-block;overflow:auto}.hide-list-emojis button{cursor:pointer;border-radius:3px;float:left;height:72px;width:72px;text-align:center;line-height:26px;padding:3px;box-sizing:border-box;font-size:16px;transition:all .15s ease-in-out;border:0;margin:0;background-color:rgba(0,0,0,0);overflow:hidden}.hide-list-emojis__tail{margin-top:5px;font-size:12px;color:var(--toolbar-icon-color);display:flex}.hide-list-emojis__tail a{text-decoration:none;color:var(--toolbar-icon-color)}.hide-list-emojis__tail a:hover{color:var(--toolbar-icon-hover-color);cursor:pointer;text-decoration:none}.hide-list-emojis__tip{flex:1;min-width:1px;width:200px;margin-right:10px;color:var(--toolbar-icon-color);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hide-list-emojis button:hover{text-decoration:none;border-color:rgba(0,0,0,.38);background-color:#eee}.hide-list-emojis button:active{background-color:rgba(0,0,0,.38);box-shadow:0 2px 4px rgba(0,0,0,.05) inset}.showList{display:block}.divX{text-align:right;cursor:pointer;height:15px}.mobile-head{box-shadow:0 1px 2px #e2e2e2;box-sizing:border-box;position:fixed;top:0;width:100%;z-index:20}.index-top__nav{color:#000;display:flex;background-color:#f6f8fa}.index-top__nav .item--current{border-bottom-color:#000;color:#000}.index-top__nav a{border-bottom:2px solid rgba(0,0,0,0);flex:1;line-height:34px;text-align:center;color:#616161}.list__item{list-style:none;margin-bottom:10px;padding:3px 5px 9px 5px;font-family:"HarmonyOS",Helvetica Neue,Luxi Sans,DejaVu Sans,Hiragino Sans GB,Microsoft Yahei,sans-serif,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Android Emoji,EmojiSymbols;border-bottom:1px solid #eee}.list__item :last-child{margin-bottom:0}.list__item--stick{background-color:rgba(98,162,240,.1) !important}.list__title{display:flex;overflow:hidden;text-overflow:ellipsis}.list__title a{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-color);display:-webkit-box}.list__title a[disabled]{color:var(--text-fade-color)}.list__title .list__title a{font-size:16px;line-height:20px;max-height:40px}.list__title svg{-ms-grid-row-align:center;align-self:center;flex-shrink:0;height:18px;margin-right:5px;width:18px}.list__title--compact{margin-top:4px}.list__title--compact a:visited{color:#999}.list__meta{color:var(--text-fade-color);font-size:12px;line-height:18px}.fn__flex-inline{align-items:center;display:inline-flex}.ft__gray{color:var(--text-gray-color)}.ft__level1{color:#fc0}.list-avatar{background-color:rgba(0,0,0,.02);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:12px;height:24px;overflow:hidden;width:24px}.fn__5{height:5px}.list__img{margin-left:5px;max-height:95px;overflow:hidden;width:30%}.list__img img{border-radius:3px;width:100%}.list__img--space{margin-bottom:5px}.list__content{word-wrap:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-color);display:-webkit-box;line-height:20px;max-height:40px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.list__content :visited{color:#999}.list__tag{color:var(--layer-color);display:inline-block;font-size:12px;line-height:20px;margin-top:5px}.module__title{font-size:14px;font-weight:400;line-height:24px}.fn__clear:after,.fn__clear:before{content:"";display:table}.fn__clear:after{clear:both}.module_new{line-height:16px;padding:0px 10px 8px 10px}.tags{background-color:var(--layer-background-color);box-shadow:0 1px 2px var(--layer-border-color);padding:10px 0 0 10px}.tags .tag{background-color:var(--background-secondary-color);border-radius:3px;color:var(--layer-color);float:left;line-height:14px;margin:0 10px 10px 0;padding:5px;word-break:keep-all}.tags .tag img,.tags .tag svg{float:left;height:14px;margin-right:5px;width:14px}.menu{background-color:var(--layer-background-color);box-shadow:0 1px 2px var(--layer-border-color);padding:0 10px}.menu__item{word-wrap:break-word;border-bottom:1px solid var(--layer-border-color);list-style:none;padding:10px 0;word-break:break-all}.menu__item .title{color:#767676}.menu__item--last,.menu__item:last-child{border-bottom-width:0}.module__body{background-color:var(--layer-background-color) !important;box-shadow:0 1px 2px var(--layer-border-color);box-sizing:border-box;padding:10px;width:100%}.avatar{background-color:rgba(0,0,0,.02);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:12px;height:24px;overflow:hidden;width:24px}.avatar--index{margin-bottom:5px}.recent__nav{line-height:16px;padding:5px 10px;overflow:auto;background-color:#f6f6f6;white-space:nowrap}.recent__nav .recent__nav-item{background-color:var(--background-secondary-color);border:0;border-radius:3px;display:inline-block;line-height:14px;padding:5px 10px;text-align:center;font-size:12px;flex:1;min-width:1px;color:#4285f4}.recent__nav .recent__nav-check{color:var(--text-gray-color) !important}.TGIF__item{background-color:var(--layer-background-color);color:var(--layer-color);cursor:default;padding:10px;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.2);margin:0px 5px 10px 5px}#liveliness{height:1px;background:red;width:0}.main{margin:10px 5px 5px 5px;background-color:var(--layer-background-color);box-shadow:0 1px 2px var(--layer-border-color);padding:5px 5px 20px 5px}#musicBox{position:fixed;bottom:-106px;left:0;width:100%;height:106px;background:#fff;box-shadow:-1px -1px 4px 1px rgba(0,0,0,.3);z-index:9990;transition:.3s}#musicBox .music-box{position:relative;margin:0 auto;width:90%;height:106px;min-width:430px;max-width:1300px;display:flex;padding:5px 0}#musicBox .music-box .music-img{margin:0 10px}#musicBox .music-box .music-img .music-img-item{width:40px;height:40px;cursor:pointer;border-radius:50%}#musicBox .music-box.playing .music-img-item{animation:spin 2s linear infinite}#musicBox .music-box .music-detail{width:100px;height:106px;background:#fff;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-around}#musicBox .music-box .music-detail .music-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:bold}#musicBox .music-box .music-close-btn{position:absolute;top:-20px;right:0;width:50px;height:20px;background:#fff;border-top-left-radius:5px;border-top-right-radius:5px;cursor:pointer;text-align:center;box-shadow:0 -1px 0 1px rgba(0,0,0,.3);padding-top:2px;box-sizing:border-box}#musicBox .music-box .music-close-btn img{width:20px;height:20px}#musicBox .music-box .music-controller{display:flex;justify-content:space-between;align-items:center;width:120px;height:40px}#musicBox .music-box .music-controller img{cursor:pointer}#musicBox .music-box .music-controller .music-prev,#musicBox .music-box .music-controller .music-next,#musicBox .music-box .music-controller .music-list,#musicBox .music-box .music-controller .music-voice,#musicBox .music-box .music-controller .music-mode{width:30px;height:30px}#musicBox .music-box .music-controller .music-play{width:40px;height:40px}#musicBox .music-box .music-controller .music-voice-box{position:fixed;bottom:40px;display:none;padding:10px;background:#fff;z-index:9991}#musicBox .music-box .music-controller .music-voice:hover .music-voice-box{display:block}#musicBox.show{bottom:0}#musicBox .music-core{position:fixed;bottom:-100px;left:0;z-index:-1}.music-list-box{position:fixed;bottom:-200px;left:0;transition:.3s;width:80%;height:200px;min-width:430px;max-width:800px;padding:20px;background:#fff;box-shadow:-1px -1px 4px 1px rgba(0,0,0,.3);z-index:9980;border-top-right-radius:5px;border-top-left-radius:5px;box-sizing:border-box;overflow-y:scroll}.music-list-box::-webkit-scrollbar{width:0}.music-list-box.show{bottom:50px}.music-list-box .music-list-item{display:flex;align-items:center;border-bottom:1px solid rgba(0,0,0,.3);padding:5px;background:#fff;transition:.3s}.music-list-box .music-list-item:hover{background:rgba(0,0,0,.1)}.music-list-box .music-list-item img{width:20px;height:20px;margin-right:10px}.music-list-box .music-list-item .music-list-title{flex:1}.music-list-box .music-list-item .music-list-controller span{cursor:pointer}.music-list-box .music-list-item .music-list-controller span:hover{text-decoration:underline}.music-player{margin:10px;padding:10px;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;box-shadow:0 0 10px #ccc;background:#fff}.music-player .music-player-img{width:50px;height:50px;margin-right:10px}.music-player .music-player-box .music-player-title{width:200px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:bold;font-size:18px}.music-player .music-player-box .music-player-controller span{cursor:pointer}.music-player .music-player-box .music-player-controller span:hover{text-decoration:underline}.file__items{margin-bottom:8px}.file__items .item{border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.2);box-sizing:border-box;color:var(--text-gray-color);float:left;height:222px;margin:8px 0 0 8px;overflow:hidden;position:relative;width:259px}.file__items .item__img{background-position:50%;background-size:contain;background-repeat:no-repeat;height:100%;width:100%}.file__items .item--selected,.file__items .item:hover{box-shadow:var(--shadow-layer)}.file__items .item--selected .item__info,.file__items .item:hover .item__info{top:0}.file__items .item--selected .item__info{background-color:var(--layer-hover-background-color)}.file__items .item--file{align-items:center;padding:8px}.file__items .item--file svg{color:var(--text-fade-color);height:100px;width:100px}.file__items .item__info{background-color:rgba(0,0,0,.86);box-sizing:border-box;color:#fff;height:100%;overflow:hidden;padding:10px;position:absolute;top:100%;transition:all .15s ease-in-out;width:100%;word-break:break-all}.file__items .item__info .red{margin-top:8px;width:100%}.ft-admin-user{color:red;font-weight:bold}.article-statement{width:auto;color:#0f8cee;background-color:#e3f9fd;border-radius:12px;padding:4px 8px;margin:5px auto;font-weight:bold}.rainbow{background:linear-gradient(90deg, #ff0000, #ff8000, #ffff00, #00ff00, #00ffff, #0000ff, #8000ff, #ff00ff);background-size:800% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:rainbow 6s linear infinite}@keyframes rainbow{0%{background-position:0% 50%}100%{background-position:100% 50%}}.neon{background:linear-gradient(90deg, #ff00cc, #ff0066, #ff3333, #ff6600, #ffcc00);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:neon 3s ease infinite;text-shadow:0 0 5px rgba(255,0,204,.5)}@keyframes neon{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.fire{background:linear-gradient(90deg, #ff8a00, #ff0000, #ff8a00, #ff4500);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:fire 2.5s ease-in-out infinite}@keyframes fire{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.ocean{background:linear-gradient(90deg, #00b4db, #0083b0, #00b4db, #00c9ff);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:ocean 5s ease-in-out infinite}@keyframes ocean{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.forest{background:linear-gradient(90deg, #00ff7f, #32cd32, #228b22, #006400);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:forest 7s ease infinite}@keyframes forest{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.sunset{background:linear-gradient(90deg, #ff7e5f, #feb47b, #ff7e5f, #ff512f);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:sunset 6s ease infinite}@keyframes sunset{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.metal{background:linear-gradient(90deg, #bdc3c7, #2c3e50, #bdc3c7, #95a5a6);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:metal 4s linear infinite}@keyframes metal{0%{background-position:0% 50%}100%{background-position:100% 50%}}.galaxy{background:linear-gradient(90deg, #8a2be2, #4b0082, #9400d3, #8a2be2);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:galaxy 8s ease infinite;text-shadow:0 0 8px rgba(138,43,226,.4)}@keyframes galaxy{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.pulse{background:linear-gradient(90deg, #ff0080, #ff8c00, #40e0d0);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);animation:pulse 4s ease infinite}@keyframes pulse{0%,100%{background-position:0% 50%;opacity:1}50%{background-position:100% 50%;opacity:.8}}.game-badge .badge{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;background:#f5f5f7;border:1px solid #e0e0e4;text-decoration:none;color:#333;font-size:13px;line-height:1.2;cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .1s ease;margin:10px 0 0 0}.game-badge .badge:hover{background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.12);transform:translateY(-1px)}.game-badge .badge-logo{width:24px;height:24px;border-radius:6px;object-fit:cover;margin-right:8px}.game-badge .badge-text{display:flex;flex-direction:column}.game-badge .badge-room-name{font-weight:600;margin-bottom:2px}.game-badge .badge-status{display:inline-flex;align-items:center;font-size:12px;color:#666}.game-badge .badge-status-text{margin-right:4px}.game-badge .badge-status-icon{font-size:14px}.tip-wrapper{position:relative;display:inline-block;cursor:pointer}.tip-wrapper .tip-text{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:rgba(236,236,236,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#000;padding:6px 10px;border-radius:4px;white-space:normal;word-break:break-all;width:230px;text-align:center;font-size:14px;margin-bottom:6px;transition:opacity .2s;z-index:10}.tip-wrapper:hover .tip-text{visibility:visible;opacity:1}.long-article-content{min-width:0;overflow:visible !important;padding:0;color:#25332a;font-size:var(--long-article-font-size, 16px);line-height:1.9;overflow-wrap:anywhere}.long-article-content>p{margin:1.1em 0;text-indent:2em}.long-article-content>p:has(>img),.long-article-content>p:has(>picture),.long-article-content>p:has(>video),.long-article-content>p:has(>iframe){text-indent:0}.long-article-content>h1,.long-article-content>h2,.long-article-content>h3,.long-article-content>h4,.long-article-content>h5,.long-article-content>h6{margin:1.65em 0 .7em;color:#1f2e24;line-height:1.45;text-indent:0}.long-article-content>ul,.long-article-content>ol,.long-article-content>blockquote,.long-article-content>pre,.long-article-content>table,.long-article-content>figure{margin-top:1.25em;margin-bottom:1.25em;text-indent:0}.long-article-content blockquote{padding:12px 14px;border-left:4px solid #9bb4a0;background:#f0f5ef;color:#526259}.long-article-content img{display:block;max-width:100%;height:auto;margin:1.4em auto}.long-article-content table{display:block;max-width:100%;overflow-x:auto}.long-article-content pre{border-radius:7px}.long-article-content :not(pre)>code{border-radius:4px;background:#edf2ec;color:#35513d}.long-article-commentable-block{position:relative}.long-article-paragraph-highlight{display:inline;padding:0 2px;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-color .18s ease,text-decoration-color .18s ease}.long-article-commentable-block.is-commenting>.long-article-paragraph-highlight{background:rgba(77,111,84,.14);text-decoration:underline;text-decoration-style:dashed;text-decoration-color:rgba(77,111,84,.42);text-decoration-thickness:1px;text-underline-offset:4px}.long-article-paragraph-comment-btn{position:relative;display:none;align-items:center;justify-content:center;width:24px;height:20px;margin-left:6px;padding:0;border:0;border-radius:3px;background:rgba(0,0,0,0);color:#6e8975;opacity:.76;transform:translateY(-1px);vertical-align:.18em;text-indent:0}.long-article-paragraph-comment-btn svg{width:14px;height:14px}.long-article-paragraph-comment-btn span{position:static;display:none;min-width:12px;height:18px;padding:0 4px;border:1px solid rgba(77,111,84,.32);border-radius:2px;background:rgba(237,245,237,.78);color:#617068;font-size:10px;line-height:16px;text-align:center}.long-article-paragraph-comment-btn.has-comments{display:inline-flex;width:auto;min-width:18px;height:18px;padding:0;opacity:1}.long-article-paragraph-comment-btn.has-comments svg{display:none}.long-article-paragraph-comment-btn.has-comments span:not([hidden]){display:inline-block}.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn{background:#3e7250;color:#fff;opacity:1}.long-article-commentable-block.is-commenting .long-article-paragraph-comment-btn span{border-color:#3e7250;background:rgba(0,0,0,0);color:#fff}.long-article-paragraph-comments{position:absolute;inset:0;z-index:6;display:none;box-sizing:border-box;padding:14px;overflow:auto;background:#dcebdd}.long-article-paragraph-comments .reaction-widget__summary{display:none}.long-article-paragraph-comments .comment-thread{--comment-thread-max-indent: 16px}#longArticleParagraphComments .action-btns{position:relative}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions{display:inline-flex;align-items:center;gap:2px;margin-left:4px}#longArticleParagraphComments .long-article-paragraph-comment-hover-actions>span,#longArticleParagraphComments .long-article-paragraph-comment-more{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none}#longArticleParagraphComments .long-article-paragraph-comment-more-menu{position:relative;display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more{color:var(--text-gray-color);width:24px;min-width:24px;padding:0}#longArticleParagraphComments .long-article-paragraph-comment-more svg{width:16px;height:16px;fill:currentColor}#longArticleParagraphComments .long-article-paragraph-comment-more-panel{position:absolute;right:0;bottom:calc(100% + 6px);z-index:3;display:none;align-items:center;gap:2px;padding:4px;border:1px solid rgba(95,126,104,.18);border-radius:6px;background:#f4f8f4;box-shadow:none;white-space:nowrap}#longArticleParagraphComments .long-article-paragraph-comment-more-menu.is-more-open .long-article-paragraph-comment-more-panel{display:inline-flex}#longArticleParagraphComments .long-article-paragraph-comment-more-panel>span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 6px;border:0;border-radius:4px;background:rgba(0,0,0,0);box-shadow:none}.long-article-paragraph-comments.is-active{display:block}#comments.is-paragraph-view>:not(.long-article-paragraph-comments){visibility:hidden}.long-article-paragraph-comments__header{position:sticky;top:-14px;z-index:2;margin:-14px -14px 12px;padding:16px 14px 12px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97)}.long-article-paragraph-comments__header strong{color:#1f2e24;font-size:18px}.long-article-paragraph-comments__header p{margin:8px 0;color:#526259;font-size:12px;line-height:1.6}.long-article-paragraph-comments__header>button{position:absolute;top:12px;right:12px;border:0;background:rgba(0,0,0,0);color:#77857c;font-size:24px}.long-article-paragraph-comments__sort,.long-article-paragraph-comments__pager{display:flex;justify-content:center;gap:6px}.long-article-paragraph-comments__sort button,.long-article-paragraph-comments__reply{min-height:28px;padding:0 10px;border:1px solid rgba(65,94,71,.14);border-radius:5px;background:#edf5ed;color:#6e8975;font-size:12px}.long-article-paragraph-comments .list>ul>li{margin:0;padding:14px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}.long-article-paragraph-comments__sort button.is-active{background:#3e7250;color:#fff}.long-article-paragraph-comments__reply{display:block;margin-bottom:10px;padding:10px;cursor:pointer}body.night .long-article-paragraph-comments{background:#111}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header{background:rgba(17,17,17,.97)}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header strong{color:#eef4ef}body.night .long-article-paragraph-comments .long-article-paragraph-comments__header p,body.night .long-article-paragraph-comments .long-article-paragraph-comments__header>button{color:#858f88}body.night .long-article-paragraph-comments .long-article-paragraph-comments__sort button,body.night .long-article-paragraph-comments .long-article-paragraph-comments__reply{border-color:rgba(255,255,255,.08);background:#191919;color:#989898}.long-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:10px 0 0;padding:0;color:#718078;font-size:13px;line-height:1.55;text-align:left}.long-article-meta a{color:#526c5a;text-decoration:none}.long-article-meta a:hover{color:#2f6a43}.long-article-meta .long-article-author{color:#2f4937;font-weight:600}.long-article-meta__separator{color:#9ba79f}.long-article-home-link{display:inline-flex;align-items:center;gap:5px;min-height:32px;margin:0 0 20px;padding:0 9px 0 7px;border-radius:5px;color:#526c5a;font-size:13px;text-decoration:none}.long-article-home-link svg{width:17px;height:17px}.long-article-catalog{position:fixed;inset:0;z-index:98;display:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;background:#dcebdd}.long-article-catalog__inner{box-sizing:border-box;min-height:100%;padding:calc(28px + env(safe-area-inset-top)) 20px calc(80px + env(safe-area-inset-bottom))}.long-article-catalog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid rgba(65,94,71,.18)}.long-article-catalog__header h2{margin:0;color:#1d2b21;font-size:24px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}.long-article-catalog__header span{display:block;margin-top:5px;color:#718078;font-size:12px}.long-article-catalog__close{display:inline-flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;background:rgba(0,0,0,0);color:#617068}.long-article-catalog__close svg{width:20px;height:20px}.long-article-catalog__chapters{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0 8px;margin-top:10px}.long-article-catalog__chapter{display:grid;grid-template-columns:72px minmax(0, 1fr);align-items:center;gap:10px;min-height:54px;padding:8px;border-bottom:1px solid rgba(65,94,71,.12);box-sizing:border-box;color:#25332a;text-decoration:none}.long-article-catalog__chapter--active{background:rgba(95,126,104,.15);box-shadow:inset 3px 0 #3e7250;color:#28593a;font-weight:600}.long-article-catalog__chapter-no{color:#718078;font-size:12px;white-space:nowrap}.long-article-catalog__chapter-title{min-width:0;font-size:15px;line-height:1.5;overflow-wrap:anywhere}body.long-article-page{--long-article-comments-width: min(430px, 100vw);min-height:100vh;width:100%;margin:0;padding:0;overflow-x:hidden;box-sizing:border-box;background:#c7dcc8;color:#25332a}body.long-article-page.long-article-catalog-open{overflow:hidden}body.long-article-page.long-article-catalog-open .long-article-catalog{display:block}body.long-article-page.long-article-catalog-open .long-article-settings{z-index:121}body.long-article-page>.nav,body.long-article-page>.footer,body.long-article-page .article-header{display:none !important}body.long-article-page #share,body.long-article-page .share,body.long-article-page .article-nav-scope,body.long-article-page .article-tail{display:none !important}body.long-article-page>.main{box-sizing:border-box;margin:0;padding:0 14px 30px;background:#c7dcc8;box-shadow:none}body.long-article-page>.main>.article-actions{display:none}body.long-article-page .article-main{overflow:hidden;padding:0;border:0;border-radius:0;background:#dcebdd;box-shadow:none}body.long-article-page .article-main>.wrapper{width:auto;max-width:none;margin:0;padding:34px 20px 30px;overflow-x:hidden;box-sizing:border-box}body.long-article-page .article-title{margin:0;padding:0;box-sizing:border-box;color:#1d2b21;font-size:26px;font-weight:650;line-height:1.35;text-align:left}body.long-article-page .article-title>a{color:inherit}body.long-article-page .long-article-content{width:100%;max-width:100%;margin-top:28px;padding:0;box-sizing:border-box;color:#25332a;font-size:var(--long-article-font-size, 16px);line-height:1.9}body.long-article-page .long-article-content>p{margin:1.1em 0}body.long-article-page #comments{position:fixed;top:0;right:0;bottom:0;z-index:115;box-sizing:border-box;width:var(--long-article-comments-width);height:100vh;height:100dvh;margin:0;padding:0 14px calc(78px + env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:0;border-left:1px solid rgba(61,91,68,.14);border-radius:0;background:#dcebdd;box-shadow:-12px 0 30px rgba(40,66,47,.16);transform:translateX(100%);transition:transform .28s ease,visibility 0s linear .28s;visibility:hidden}body.long-article-page #comments .list.comments{border:0;background:rgba(0,0,0,0);box-shadow:none}body.long-article-page #comments .comments-header{position:sticky;top:0;z-index:4;margin:0 -14px 6px;padding:18px 14px 14px;border-bottom:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);backdrop-filter:blur(8px)}body.long-article-page #comments .comments-header__main>.fn-right{display:none}body.long-article-page #comments .article-cmt-cnt{color:#1f2e24;font-size:20px;font-weight:650}body.long-article-page #comments .long-article-comments-count{margin-left:4px;color:#77857c;font-size:12px;font-weight:400}body.long-article-page #comments .comment-filterbar{margin-top:10px}body.long-article-page #comments .comment-segment{border-color:rgba(65,94,71,.15);background:#edf5ed}body.long-article-page #comments .comments-header a.comment-segment__item{color:#68776e}body.long-article-page #comments .comments-header a.comment-segment__item--active,body.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#5f7e68;color:#fff}body.long-article-page #comments .list.comments>ul{margin:0;padding:0 0 10px}body.long-article-page #comments .list.comments>ul>li,body.long-article-page #comments .list.comments>ul>li.cmt-perfect,body.long-article-page #comments .list.comments>ul>li.cmt-perfect:hover{margin:0;padding:16px 0;border-bottom:1px solid rgba(65,94,71,.12);background:rgba(0,0,0,0)}body.long-article-page #comments .list.comments>ul>li .avatar{width:32px;height:32px;border-radius:50%}body.long-article-page #comments .comment-info{color:#6f7d74;line-height:1.5}body.long-article-page #comments .comment-info a,body.long-article-page #comments .comment-thread__meta a{color:#405647;font-weight:600}body.long-article-page #comments .comment{margin-top:6px;color:#243128;font-size:15px;line-height:1.7}body.long-article-page #comments .comment-thread{margin:10px 0 4px;padding:10px;border:0;border-radius:8px;background:#edf5ed}body.long-article-page #comments .comment-thread__content{color:#34463a}body.long-article-page #comments .comment__reply{position:fixed;right:0;bottom:0;z-index:5;box-sizing:border-box;width:100%;margin:0;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid rgba(65,94,71,.14);background:rgba(220,235,221,.97);box-shadow:0 -8px 22px rgba(40,66,47,.08);backdrop-filter:blur(8px)}body.long-article-page #comments .comment__reply .reply__text{min-height:38px;border-color:rgba(65,94,71,.14);border-radius:8px;background:#edf5ed;color:#65746a;line-height:36px}body.long-article-page.long-article-comments-open #comments{transform:translateX(0);transition-delay:0s;visibility:visible}body.long-article-page.long-article-comments-open .long-article-settings{z-index:121}body.long-article-page.long-article-comments-open .long-article-settings__actions{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}body.long-article-page.long-article-comments-open .long-article-settings__actions>:not([data-long-article-action=comments]),body.long-article-page.long-article-comments-open .long-article-toggle-btn{display:none}body.long-article-page .long-article-comments-close{display:inline-flex;flex:0 0 32px;align-items:center;justify-content:center;width:32px;height:32px;margin-left:auto;padding:0;border:0;border-radius:50%;background:rgba(95,126,104,.12);box-shadow:none;color:#617068}body.long-article-page .long-article-comments-close svg{width:17px;height:17px}body.long-article-page .editor-panel{right:0;left:auto;width:var(--long-article-comments-width);max-width:var(--long-article-comments-width)}body.long-article-page .editor-panel .editor-bg{display:none}body.long-article-page .editor-panel .wrapper{right:0;left:auto;width:100%;max-width:100%;border-radius:10px 0 0;border-top:1px solid rgba(65,94,71,.16);background:#dcebdd;box-shadow:0 -12px 30px rgba(40,66,47,.16)}body.long-article-page .side{display:none}.article-nav-scope{margin:16px 0}.long-article-column-manage{display:inline-flex;align-items:center;justify-content:center;min-height:30px;margin-top:8px;padding:0 12px;border:1px solid #d9e5f5;border-radius:15px;background:#fff;color:#2b5db9;text-decoration:none}.article-nav-scope__input,.article-nav-sort__input{position:absolute;opacity:0;pointer-events:none}.article-nav-scope__tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-scope__tab{height:28px;padding:0 10px;border-radius:6px;color:#667085;cursor:pointer;font-size:13px;line-height:28px;text-align:center}.article-nav-sort{margin-top:10px}.article-nav-sort__tabs{display:grid;grid-template-columns:repeat(3, 1fr);gap:4px;padding:3px;border:1px solid #e4e9f2;border-radius:8px;background:#f7f9fc}.article-nav-sort__tab{height:26px;padding:0 8px;border-radius:6px;color:#667085;cursor:pointer;font-size:12px;line-height:26px;text-align:center}.article-nav-sort__panel--author,.article-nav-sort__panel--hot{display:none}.article-nav-scope--switchable .article-nav-scope__panel--all{display:none}#articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,#articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,#articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,#articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,#articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.12);color:#1f2937;font-weight:600}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--column{display:none}#articleNavScopeAll:checked~.article-nav-scope__panels .article-nav-scope__panel--all{display:block}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--time,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--time{display:none}#articleNavSortAuthor:checked~.article-nav-sort__panels .article-nav-sort__panel--author,#articleNavSortHot:checked~.article-nav-sort__panels .article-nav-sort__panel--hot{display:block}.article-adjacent-nav{display:flex;flex-direction:column;gap:12px;margin:12px 0 0}.article-adjacent-nav__link{display:block;min-height:60px;padding:10px 12px;border:1px solid #eee;border-radius:8px;background:#fafafa;color:#111;line-height:1.5;text-decoration:none}.article-adjacent-nav__link:hover{text-decoration:none}.article-adjacent-nav__link--disabled{color:#999}.article-adjacent-nav__label{margin-bottom:4px;color:#888;font-size:12px}.article-adjacent-nav__title{margin-bottom:4px;font-weight:700;overflow-wrap:anywhere}.article-adjacent-nav__preview{max-height:4.5em;overflow:hidden;color:#555;font-size:13px}.article-nav-list-card{margin:10px 0 0;padding:10px;border:1px solid #e8edf5;border-radius:8px;background:#fbfdff}.article-nav-list-card__title{color:#2b3a55;font-weight:600}.article-nav-list-card__items{margin-top:8px;padding-top:6px;border-top:1px dashed #e6eaf0}.article-nav-list-card__item{display:block;padding:6px 8px;border-radius:8px;color:#3d4a5c;line-height:1.45;overflow-wrap:anywhere;text-decoration:none}.article-nav-list-card__item--active{background:#e8f0ff;color:#1d4ed8;font-weight:600}.long-article-page .article-actions .fn-right{display:none !important}.long-article-settings{position:fixed;right:12px;bottom:calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px;align-items:flex-end;z-index:99}.long-article-settings__actions{display:flex;max-height:calc(100vh - 92px);max-height:calc(100dvh - 92px);flex-direction:column;gap:7px;overflow-y:auto;opacity:0;pointer-events:none;scrollbar-width:none;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease;visibility:hidden}.long-article-settings__actions::-webkit-scrollbar{display:none}.long-article-settings.is-open .long-article-settings__actions{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.long-article-settings-btn{width:40px;height:40px;border:0;border-radius:8px;background:#dcebdd;box-shadow:0 4px 12px rgba(48,73,55,.15);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#52685a;font-size:14px;font-weight:600;transition:background .2s ease,color .2s ease,transform .2s ease;gap:1px;position:relative}.long-article-settings-btn svg{width:18px;height:18px;fill:currentColor;flex-shrink:0}.long-article-settings-btn span{font-size:13px;font-weight:600}.long-article-settings-btn.has-cnt svg{width:16px;height:16px}.long-article-settings-btn.has-cnt .count{font-size:10px;line-height:1;font-weight:600}.long-article-settings-btn.ft-red{color:#f44336}.long-article-settings-btn.is-active{background:#3e7250;color:#fff}.long-article-toggle-btn{width:40px;height:40px;border-radius:8px;background:#dcebdd;border:0;box-shadow:0 4px 12px rgba(48,73,55,.15);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#52685a;font-size:18px;font-weight:600;transition:background .2s ease,color .2s ease}.long-article-toggle-btn.active{background:#3e7250;color:#fff}body.night .long-article-catalog{background:#111}body.night .long-article-catalog .long-article-catalog__header{border-color:rgba(255,255,255,.1)}body.night .long-article-catalog .long-article-catalog__header h2{color:#eef4ef}body.night .long-article-catalog .long-article-catalog__header span{color:#858f88}body.night .long-article-catalog .long-article-catalog__close{color:#989898}body.night .long-article-catalog .long-article-catalog__chapter{border-color:rgba(255,255,255,.08);color:#b9c2bc}body.night .long-article-catalog .long-article-catalog__chapter--active{background:rgba(95,149,109,.2);box-shadow:inset 3px 0 #7fb78d;color:#c9edcf}body.night .long-article-catalog .long-article-catalog__chapter-no{color:#858f88}body.night.long-article-page{background:#0a0a0a;color:#d9e3db}body.night.long-article-page>.main{background:#0a0a0a}body.night.long-article-page .article-main{background:#111;box-shadow:none}body.night.long-article-page .article-title,body.night.long-article-page .article-title>a{color:#eef4ef}body.night.long-article-page .long-article-home-link{color:#989898}body.night.long-article-page #comments{background:#111;border-left-color:rgba(255,255,255,.08);box-shadow:-12px 0 30px rgba(0,0,0,.34)}body.night.long-article-page #comments .comments-header,body.night.long-article-page #comments .comment__reply{border-color:rgba(255,255,255,.08);background:rgba(17,17,17,.97)}body.night.long-article-page #comments .article-cmt-cnt{color:#eef4ef}body.night.long-article-page #comments .long-article-comments-count,body.night.long-article-page #comments .comment-info{color:#858f88}body.night.long-article-page #comments .comment-segment,body.night.long-article-page #comments .comment-thread,body.night.long-article-page #comments .comment__reply .reply__text{border-color:rgba(255,255,255,.08);background:#191919}body.night.long-article-page #comments .comments-header a.comment-segment__item,body.night.long-article-page #comments .comment-info a,body.night.long-article-page #comments .comment-thread__meta a{color:#aab4ad}body.night.long-article-page #comments .comments-header a.comment-segment__item--active,body.night.long-article-page #comments .comments-header a.comment-segment__item--active:hover{background:#465c4d;color:#fff}body.night.long-article-page #comments .list.comments>ul>li,body.night.long-article-page #comments .list.comments>ul>li.cmt-perfect,body.night.long-article-page #comments .list.comments>ul>li.cmt-perfect:hover{border-color:rgba(255,255,255,.08);background:rgba(0,0,0,0)}body.night.long-article-page #comments .comment,body.night.long-article-page #comments .comment-thread__content{color:#b9c2bc}body.night.long-article-page .long-article-comments-close{background:#191919;color:#989898}body.night.long-article-page .editor-panel .wrapper{border-color:rgba(255,255,255,.08);background:#191919;box-shadow:0 -12px 30px rgba(0,0,0,.34)}body.night .long-article-content{color:#989898}body.night .long-article-content a{color:#8fc9a0}body.night .long-article-content blockquote{border-color:#587663;background:#223128;color:#b8c7bc}body.night .long-article-content>h1,body.night .long-article-content>h2,body.night .long-article-content>h3,body.night .long-article-content>h4,body.night .long-article-content>h5,body.night .long-article-content>h6{color:#989898}body.night .long-article-content pre{background-color:#111a15}body.night .long-article-content :not(pre)>code{background:#27362c;color:#b9d6c1}body.night .long-article-meta{color:#93a299}body.night .long-article-meta a{color:#a9c7b1}body.night .long-article-meta a:hover{color:#c6e5ce}body.night .article-nav-scope__tabs,body.night .article-nav-sort__tabs{border-color:rgba(255,255,255,.1);background:#1f2937}body.night .article-nav-scope__tab,body.night .article-nav-sort__tab{color:#cbd5e1}body.night #articleNavScopeColumn:checked~.article-nav-scope__tabs .article-nav-scope__tab--column,body.night #articleNavScopeAll:checked~.article-nav-scope__tabs .article-nav-scope__tab--all,body.night #articleNavSortTime:checked~.article-nav-sort__tabs .article-nav-sort__tab--time,body.night #articleNavSortAuthor:checked~.article-nav-sort__tabs .article-nav-sort__tab--author,body.night #articleNavSortHot:checked~.article-nav-sort__tabs .article-nav-sort__tab--hot{background:#334155;color:#f8fafc}body.night .article-adjacent-nav__link,body.night .article-nav-list-card{border-color:rgba(255,255,255,.1);background:#1f2937;color:#e5e7eb}body.night .article-adjacent-nav__label,body.night .article-adjacent-nav__preview{color:#94a3b8}body.night .article-nav-list-card__title,body.night .article-nav-list-card__item{color:#e5e7eb}body.night .article-nav-list-card__items{border-color:rgba(255,255,255,.1)}body.night .article-nav-list-card__item--active{background:rgba(59,130,246,.18);color:#bfdbfe}body.night .long-article-settings-btn,body.night .long-article-toggle-btn{border:0;background:#191919;color:#989898}body.night .long-article-settings-btn:hover,body.night .long-article-toggle-btn:hover{background:#191919;color:#989898}body.night .long-article-toggle-btn.active{background:#191919;color:#fff}.mobile-long-column__chapters{display:flex;flex-direction:column;gap:4px;margin-top:8px}.mobile-long-column__chapter{display:flex;align-items:center;gap:6px;padding:5px 0;border-radius:6px;background:rgba(0,0,0,0);text-decoration:none}.mobile-long-column__chapter+.mobile-long-column__chapter{border-top:1px dashed rgba(0,0,0,.06)}.mobile-long-column__chapter-no{flex:0 0 auto;padding:0 6px;height:18px;line-height:18px;border-radius:9px;background:#eef2ff;color:#475569;font-size:10px;white-space:nowrap}.mobile-long-column__chapter-title{min-width:0;flex:1;font-size:12px;line-height:1.3;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.night .mobile-long-column__chapter{background:rgba(0,0,0,0)}body.night .mobile-long-column__chapter+.mobile-long-column__chapter{border-color:rgba(255,255,255,.08)}body.night .mobile-long-column__chapter-no{background:#3a3a3a;color:#ddd}body.night .mobile-long-column__chapter-title{color:#ddd}.emoji_group{display:inline-block;padding:2px 4px;cursor:pointer}.emoji_group_select{border-bottom:2px solid #aaa}.emoji_item{position:relative;display:inline-block;width:100px;height:100px;margin:6px 6px 16px}.emoji_img_wrap{width:100px;height:100px;display:flex;justify-content:center}.emoji_img_wrap img{width:100%;border-radius:6px}.emoji_name_wrap{display:flex;align-items:center}.emoji_name{flex:1}.emoji_overlay{position:absolute;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;gap:6px;opacity:0;pointer-events:none;transition:opacity .15s ease}.emoji_item:hover .emoji_overlay{opacity:1;pointer-events:auto}.emoji_btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:rgba(255,255,255,.9);border-radius:4px;cursor:pointer;font-size:14px;line-height:1}.home-personalize-toolbar{position:relative;display:flex;justify-content:flex-end;padding:12px 0 0}.home-personalize-toolbar__btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-color:#d7dee8;color:#2f3b52}.home-personalize-toolbar__btn svg{width:14px;height:14px}.home-personalize-panel{position:absolute;top:52px;right:0;z-index:80;display:none;width:280px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.18)}.home-personalize-panel--open{display:block}.home-personalize-panel__head,.home-personalize-panel__actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px}.home-personalize-panel__head{border-bottom:1px solid #eef2f7}.home-personalize-panel__actions{border-top:1px solid #eef2f7}.home-personalize-panel__actions button{flex:1 1 auto}.home-personalize-panel__list{max-height:360px;overflow:auto;padding:6px}.home-personalize-panel__item{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:8px;min-height:38px;padding:0 8px;border-radius:6px;color:#2f3b52;cursor:grab}.home-personalize-panel__check{display:grid;grid-template-columns:22px minmax(0, 1fr);align-items:center;gap:8px;min-width:0;cursor:pointer}.home-personalize-panel__check span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-personalize-panel__sort{display:inline-flex;gap:4px}.home-personalize-panel__sort button{min-height:28px;padding:0 7px;font-size:12px}.home-personalize-panel__sort button:disabled{cursor:default;opacity:.42}.home-personalize-panel__item:hover{background:#f6f8fb}.home-personalize-panel__item--dragging{opacity:.55}.home-module[draggable=true]{cursor:grab}.home-module--dragging{opacity:.55;outline:2px dashed #7da7df;outline-offset:3px}.repeater-station{box-sizing:border-box;padding:14px;border:1px solid #e5ebf3;border-radius:8px;background:#fff}.repeater-station__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.repeater-station__title,.repeater-station__tabs,.repeater-station__actions,.repeater-station__create-actions{display:flex;align-items:center;gap:8px}.repeater-station__title{min-width:0;color:#1f2937;font-weight:700}.repeater-station__title svg{width:16px;height:16px;color:#2b5db9}.repeater-station__tabs,.repeater-station__actions{flex-wrap:wrap}.repeater-station__tab,.repeater-station__btn{min-height:32px;padding:0 10px;border-radius:6px}.repeater-station__tab--active,.repeater-station__btn--liked{border-color:#2b5db9;background:#edf4ff;color:#1d4ed8}.repeater-station__body{min-height:120px;padding:14px;border-radius:8px;background:#f7fafc}.repeater-station__quote{color:#1f2937;font-size:15px;line-height:1.75;overflow-wrap:anywhere}.repeater-station__meta{display:flex;gap:10px;margin-top:10px;color:#738095;font-size:12px}.repeater-station__actions{margin-top:12px}.repeater-station__btn{display:inline-flex;align-items:center;gap:5px;text-decoration:none}.repeater-station__btn svg{width:14px;height:14px}.repeater-station__create{margin-top:12px}.repeater-station__create textarea{box-sizing:border-box;width:100%;min-height:86px;padding:10px;border:1px solid #d7dee8;border-radius:6px;resize:vertical}body.night .home-personalize-panel,body.night .repeater-station{border-color:rgba(255,255,255,.1);background:#1e293b}body.night .repeater-station__body{background:#111827}body.night .repeater-station__title,body.night .repeater-station__quote,body.night .home-personalize-panel__item{color:#e5e7eb}@media(max-width: 768px){.home-personalize-toolbar{margin:0 10px;padding-top:8px}.home-personalize-panel{top:48px;right:0;left:0;width:auto}.repeater-station__head{align-items:flex-start;flex-direction:column}.repeater-station__body{min-height:96px}}.home-personalize-toolbar,.wrapper.home-personalize-toolbar{position:fixed;display:flex;justify-content:flex-end;top:172px;right:24px;left:auto !important;z-index:30;width:auto !important;min-width:0 !important;max-width:none !important;padding:0 !important;margin:0 !important;background:rgba(0,0,0,0) !important;overflow:visible !important;box-sizing:border-box;pointer-events:none}.home-personalize-toolbar__btn{flex-direction:column;justify-content:center;gap:3px;width:86px;min-height:54px;border:1px solid #e0e7ef;border-radius:16px;background:rgba(248,250,252,.76);box-shadow:0 6px 24px rgba(60,80,120,.12),0 1.5px 6px rgba(60,80,120,.08);color:#222;font-weight:700;line-height:1.2;pointer-events:auto;backdrop-filter:blur(8px);transition:box-shadow .3s,transform .2s}.home-personalize-toolbar__btn:hover{box-shadow:0 12px 32px rgba(60,80,120,.16),0 2px 8px rgba(60,80,120,.1);transform:translateY(-2px) scale(1.04)}.home-personalize-toolbar__btn svg{width:16px;height:16px}.home-personalize-toolbar__btn span{font-size:12px}.home-personalize-panel{top:62px;pointer-events:auto}.home-personalize-toolbar--nav,.wrapper.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;display:inline-flex;align-items:center;width:auto;padding:0;margin:0;background:rgba(0,0,0,0);pointer-events:auto}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{flex-direction:row;gap:0;width:auto;min-width:0;min-height:0;border:0;border-radius:6px;background:rgba(0,0,0,0);box-shadow:none;color:#3b3e43;font-size:0;line-height:1;padding:14px 10px;backdrop-filter:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:focus{background:#fff7ec;box-shadow:none;color:#e59230;transform:none}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{color:currentColor;fill:none;height:18px;stroke:currentColor;width:18px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn span{display:none}.home-personalize-toolbar--nav .home-personalize-panel{top:46px;right:0}.long-read-zone--compact .long-read-zone__wrapper{gap:12px;padding:14px 18px}.long-read-zone__compact-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px}.long-read-zone__compact-group{min-width:0}.long-read-zone__compact-group .module-list{margin-top:8px}.long-read-zone__compact-group li{min-height:30px}.repeater-station--sidebar{margin-bottom:12px;padding:10px}.repeater-station--sidebar .repeater-station__head{align-items:flex-start;flex-direction:column;gap:8px}.repeater-station--sidebar .repeater-station__body{min-height:72px;padding:10px}.repeater-station--sidebar .repeater-station__quote{font-size:13px;line-height:1.65}.repeater-station--sidebar .repeater-station__tab,.repeater-station--sidebar .repeater-station__btn{min-height:28px;padding:0 8px}.repeater-station--mobile-users{margin:0 10px 10px}@media(max-width: 768px){.home-personalize-toolbar{top:150px;right:10px;margin:0}.home-personalize-panel{right:0;left:auto;width:min(280px,100vw - 20px)}.home-personalize-toolbar--nav{position:relative;top:auto;right:auto;flex:0 0 34px;height:34px;margin:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn{box-sizing:border-box;border-radius:999px;height:34px;justify-content:center;padding:0;width:34px}.home-personalize-toolbar--nav .home-personalize-toolbar__btn:hover,.home-personalize-toolbar--nav .home-personalize-toolbar__btn:active{background:#eef6ff;color:#2b5db9}.home-personalize-toolbar--nav .home-personalize-toolbar__btn svg{height:21px;width:21px}.home-personalize-toolbar--nav .home-personalize-panel{position:fixed;top:52px;right:10px;left:auto}.long-read-zone__compact-grid{grid-template-columns:1fr}}.long-read-zone__actions{align-items:center;display:inline-flex;gap:8px}.column-cover,.column-detail-hero__cover,.column-reading-book,.column-book__cover{background-color:#cdd6e3;background-position:center;background-size:cover;display:block;overflow:hidden;position:relative;text-decoration:none}.column-cover::before,.column-detail-hero__cover::before,.column-reading-book::before{background:linear-gradient(180deg, rgba(15, 23, 42, 0.12), rgba(15, 23, 42, 0.78));content:"";inset:0;position:absolute}.column-cover--default,.column-detail-hero--default .column-detail-hero__cover,.column-book--default .column-book__cover{background-blend-mode:multiply;background-color:#8aa0bd}.column-bookstore__panel{padding:16px}.column-bookstore__sections{display:grid;gap:18px;grid-template-columns:repeat(2, minmax(0, 1fr))}.column-bookstore__section{min-width:0}.column-bookstore__section h2,.column-bookstore__section h3{color:#263241;font-size:16px;line-height:1.4;margin:0 0 14px}.column-bookstore__section h3{background:#e8f5d8;border-radius:999px;display:inline-block;padding:4px 14px}.column-bookstore__section--hot h2,.column-bookstore__section--hot h3{background:#ffe2df;color:#c0392b}.column-bookstore__grid{display:grid;gap:18px 14px;grid-template-columns:repeat(auto-fill, minmax(88px, 1fr))}.column-book{color:#263241;display:block;min-width:0;text-align:center;text-decoration:none}.column-book__cover{aspect-ratio:3/4;border-radius:3px 6px 6px 3px;box-shadow:inset 7px 0 0 rgba(0,0,0,.14),0 8px 18px rgba(31,41,55,.18);transition:box-shadow .18s,transform .18s}.column-book:hover .column-book__cover{box-shadow:inset 7px 0 0 rgba(0,0,0,.18),0 12px 24px rgba(31,41,55,.24);transform:translateY(-2px)}.column-book__title{display:-webkit-box;font-size:13px;font-weight:700;line-height:1.35;margin-top:8px;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.column-bookstore__empty{color:#8a94a6;padding:18px 0;text-align:center}.column-detail-hero{border-bottom:1px solid #edf1f6;display:grid;gap:20px;grid-template-columns:160px minmax(0, 1fr);padding:18px}.column-detail-hero__cover{aspect-ratio:3/4;border-radius:8px}.column-cover span,.column-detail-hero__cover span,.column-reading-book span{position:relative;z-index:1}.column-detail-hero__cover span{bottom:14px;color:#fff;font-weight:700;left:14px;line-height:1.35;overflow-wrap:anywhere;position:absolute;right:14px}.column-detail-hero__body h1{color:#111827;font-size:28px;line-height:1.25;margin:6px 0 10px;overflow-wrap:anywhere}.column-detail-hero__label,.column-detail-hero__meta{color:#6b7280}.column-reading-shelf{display:grid;gap:10px;padding:12px}.column-reading-book{border-radius:8px;color:#fff;min-height:148px}.column-reading-book__title,.column-reading-book__bookmark,.column-reading-book__chapter{color:#fff;left:12px;position:absolute;right:12px}.column-reading-book__bookmark{background:#d94848;left:auto;padding:8px 0 10px;text-align:center;top:0;width:58px}.column-reading-book__title{bottom:42px;font-weight:700}.column-reading-book__chapter{bottom:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-manage__list{display:grid;gap:14px;padding:16px}.column-manage__item{align-items:start;display:grid;gap:14px;grid-template-columns:120px minmax(0, 1fr)}.column-manage__item--current{background:#f8fbff;border:1px solid #cfe0fb;border-radius:8px;padding:10px}.column-cover{aspect-ratio:3/4;border-radius:8px}.column-cover span{bottom:10px;color:#fff;font-weight:700;left:10px;line-height:1.35;position:absolute;right:10px}.column-manage__title{color:#1f2937;font-weight:700;line-height:1.4;text-decoration:none}.column-manage__meta{color:#6b7280;font-size:12px;line-height:1.6}.column-manage__form{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.column-manage__input{flex:1 1 260px;min-width:0}body.night .column-bookstore__section h2,body.night .column-book{color:#e5e7eb}body.night .column-bookstore__section h3{background:rgba(74,222,128,.16);color:#bbf7d0}body.night .column-bookstore__section--hot h2,body.night .column-bookstore__section--hot h3{background:rgba(248,113,113,.16);color:#fecaca}@media(max-width: 768px){.column-bookstore__sections{grid-template-columns:1fr}.column-bookstore__grid{gap:16px 12px;grid-template-columns:repeat(3, minmax(0, 1fr));padding:0 10px 12px}.column-bookstore__section{margin-bottom:10px}.column-detail-hero,.column-manage__item{grid-template-columns:104px minmax(0, 1fr);padding:12px}.column-detail-hero__body h1{font-size:20px}}.column-detail-hero__edit{border:1px solid #cfe0fb;border-radius:6px;color:#2b5db9;display:inline-flex;line-height:20px;margin-top:14px;padding:5px 12px;text-decoration:none}.column-detail-hero__edit:hover{background:#f5f9ff;text-decoration:none}.long-article-cover-dialog{align-items:center;display:flex;inset:0;justify-content:center;position:fixed;z-index:190}.long-article-cover-dialog.fn-none{display:none}.long-article-cover-dialog__mask{background:rgba(15,23,42,.48);inset:0;position:absolute}.long-article-cover-dialog__panel{background:#fff;border-radius:8px;box-shadow:0 18px 54px rgba(15,23,42,.24);max-width:calc(100vw - 32px);padding:16px;position:relative;width:420px}.long-article-cover-dialog__head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.long-article-cover-dialog__head strong{color:#1f2937;font-size:16px;line-height:1.4}.long-article-cover-dialog__close{align-items:center;background:rgba(0,0,0,0);border:0;color:#64748b;cursor:pointer;display:inline-flex;font-size:24px;height:36px;justify-content:center;line-height:1;padding:0;width:36px}.long-article-cover-dialog__body{align-items:center;display:flex;justify-content:center}.long-article-cover-dialog__preview{aspect-ratio:3/4;background-color:#cdd6e3;background-position:center;background-size:cover;border-radius:8px;box-shadow:inset 7px 0 0 rgba(0,0,0,.14);overflow:hidden;position:relative;width:154px}.long-article-cover-dialog__preview::before{background:linear-gradient(180deg, rgba(15, 23, 42, 0.08), rgba(15, 23, 42, 0.72));content:"";inset:0;position:absolute}.long-article-cover-dialog__preview.column-cover--default{background:linear-gradient(135deg, #8aa0bd, #637792)}.long-article-cover-dialog__preview span{bottom:10px;color:#fff;font-weight:700;left:10px;line-height:1.35;overflow-wrap:anywhere;position:absolute;right:10px;z-index:1}.long-article-cover-dialog__status{color:#2f7d4f;font-size:13px;line-height:20px;margin-top:12px;min-height:20px;text-align:center}.long-article-cover-dialog__status--error{color:#b42318}.long-article-cover-dialog__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:14px}.long-article-cover-dialog__actions button{min-height:36px}.long-article-cover-dialog__actions button:disabled{cursor:default;opacity:.58}body.night .long-article-cover-dialog__panel{background:#1f2937}body.night .long-article-cover-dialog__head strong{color:#e5e7eb}body.night .long-article-cover-dialog__close{color:#cbd5e1}body.night .long-article-cover-dialog__status{color:#86efac}body.night .long-article-cover-dialog__status--error{color:#fca5a5}@media(max-width: 768px){.long-article-cover-dialog__panel{max-height:calc(100vh - 28px);overflow:auto;width:calc(100vw - 28px)}.long-article-cover-dialog__preview{width:132px}.long-article-cover-dialog__actions{justify-content:stretch}.long-article-cover-dialog__actions button{flex:1 1 0;min-height:44px}}.mobile-head+div[style*="height: 74px"]{height:84px !important}.nav{background:rgba(255,255,255,.98);border-bottom:1px solid #e5ebf2;box-shadow:0 4px 16px rgba(15,23,42,.06);box-sizing:border-box;height:48px;padding:0}.nav .wrapper{align-items:center;box-sizing:border-box;height:48px;margin:0;padding:0 10px;width:100%}.nav .head-fn{flex:0 0 auto}.nav .head-fn h1{line-height:0;margin:0}.nav .head-fn h1 a{align-items:center;display:flex;height:40px;justify-content:center;width:44px}#logo-animate{height:34px !important;width:34px !important}#logo-animate svg{display:block;float:none;margin:0}.nav .user-nav{display:flex;flex:1 1 auto;gap:4px;justify-content:flex-end;min-width:0;overflow:hidden;padding-bottom:0}.nav div>a,.nav .user-nav .no-msg,.nav .user-nav .msg{align-items:center;background:rgba(0,0,0,0);border-radius:999px;box-sizing:border-box;color:#667085;display:inline-flex;flex:0 0 34px;height:34px;justify-content:center;line-height:1;margin:0;padding:0;text-decoration:none;width:34px}.nav div>a:hover,.nav div>a:active{background:#eef4ff;color:#2f6fed}.nav .user-nav .no-msg,.nav .user-nav .msg{font-size:15px}.nav .user-nav .msg{background:#fff1f0;color:#d92d20}.nav .user-nav svg{color:currentColor;height:21px;width:21px}.nav .user-nav #aChat svg{height:19px !important;vertical-align:0 !important;width:19px}.nav .avatar-small{border-radius:8px;height:28px;width:28px}.recent__nav{background:#f8fafc;box-sizing:border-box;display:flex;gap:4px;min-height:38px;overflow-x:auto;overflow-y:hidden;padding:6px 10px;scrollbar-width:none;white-space:nowrap;-webkit-overflow-scrolling:touch}.recent__nav::-webkit-scrollbar{display:none}.recent__nav .recent__nav-item{align-items:center;border-radius:999px;box-sizing:border-box;display:inline-flex;flex:0 0 auto;line-height:26px;min-height:28px;padding:0 10px}.recent__nav .recent__nav-check{background:#fff;box-shadow:inset 0 0 0 1px #e5ebf2}body.index{background-color:#f4f6f8 !important}.mobile-head{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(226,232,240,.86);box-shadow:0 6px 18px rgba(15,23,42,.08)}.index-top__nav{box-sizing:border-box;flex-wrap:nowrap;height:36px;overflow-x:auto;overflow-y:hidden;padding:0 8px;scrollbar-width:none;white-space:nowrap}.index-top__nav::-webkit-scrollbar{display:none}.index-top__nav a{box-sizing:border-box;flex:1 1 0;line-height:34px;min-width:0;overflow:hidden;padding:0 4px;text-overflow:ellipsis}.index-top__nav .item--current{border-bottom-color:#2f6fed;color:#2f6fed;font-weight:600}body.index .main{background:rgba(0,0,0,0);box-shadow:none;margin:10px 10px 12px;padding:0}body.index .main>ul{list-style:none;margin:0;padding:0}body.index .home-personalize-zone>.home-module{list-style:none}body.index .main>ul>.module__title{border:0;color:#667085 !important;font-size:13px !important;font-weight:600 !important;letter-spacing:0;margin:14px 0 8px;padding:0 2px !important}body.index .list__item{background:#fff;border:1px solid #e5ebf2;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.06);box-sizing:border-box;margin-bottom:10px;padding:12px !important}body.index .list__item.fn__flex:not(.mobile-long-column){background:rgba(0,0,0,0);border:0;box-shadow:none;color:#667085;margin:12px 0 4px;padding:0 2px !important}body.index .list__meta{align-items:center;color:#667085;display:flex;flex-wrap:wrap;gap:4px;line-height:20px;min-height:28px}body.index .list-avatar{border-radius:8px;height:28px;margin-right:4px;width:28px}body.index .list__title{display:block}body.index .list__title a[rel=bookmark]{color:#1f2933;font-size:17px;font-weight:650;line-height:23px;max-height:46px;word-break:break-word}body.index .list__content{color:#4b5563;line-height:22px;max-height:44px;word-break:break-word}body.index .list__img{border-radius:8px;margin-left:10px;max-height:none;overflow:hidden;width:30%}body.index .list__img img{aspect-ratio:1;display:block;height:100%;object-fit:cover}body.index .list__tag,body.index .mobile-long-column__chapter-no{background:#eef4ff;border-radius:999px;color:#315fbd;line-height:20px;padding:0 8px}.module_new{margin:14px 10px 8px;padding:0}.module__title{color:#667085;font-weight:600}.tags{background:rgba(0,0,0,0);box-shadow:none;display:flex;flex-wrap:wrap;gap:8px;padding:0 10px 10px}.tags .tag{align-items:center;background:#fff;border:1px solid #e5ebf2;border-radius:999px;box-shadow:0 4px 14px rgba(15,23,42,.04);color:#1f2933;display:inline-flex;float:none;line-height:20px;margin:0;min-height:36px;padding:0 12px}.menu,.module__body,.TGIF__item{border:1px solid #e5ebf2;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.06);margin-left:10px;margin-right:10px}.module__body{width:auto}.menu__item{padding:0}.menu__item .title{align-items:center;color:#1f2933;display:flex;min-height:44px;text-decoration:none}.main>.article-actions{margin-bottom:10px !important;padding:0 2px}.article-actions .fn-right{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.article-actions .fn-right>a,.article-actions .fn-right>span{align-items:center;background:#f8fafc;border:1px solid #e5ebf2;border-radius:999px;box-sizing:border-box;color:#667085;display:inline-flex;float:none;justify-content:center;line-height:20px;margin-top:0;min-height:44px;min-width:44px;padding:0 12px}.article-actions .fn-right>a.ft-red,.article-actions .fn-right>span.ft-red,.article-actions .fn-right>a.ft-red:hover,.article-actions .fn-right>span.ft-red:hover{background:#fff7ed;border-color:rgba(180,83,9,.34);box-shadow:0 8px 20px rgba(180,83,9,.12);color:#b45309}.article-actions .fn-right>a.ft-blue,.article-actions .fn-right>span.ft-blue,.article-actions .fn-right>a.ft-blue:hover,.article-actions .fn-right>span.ft-blue:hover{background:#eef4ff;border-color:rgba(47,111,237,.28);color:#2f6fed}.article-actions .fn-right>a.ft-green,.article-actions .fn-right>span.ft-green,.article-actions .fn-right>a.ft-green:hover,.article-actions .fn-right>span.ft-green:hover{background:#f0fdf4;border-color:rgba(22,101,52,.26);color:#166534}.main>.article-main{background:#fff;border:1px solid #e5ebf2;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.06);box-sizing:border-box;padding:16px 12px 18px;width:100%}.main>.article-main>.wrapper{margin:0}h1.article-title{color:#1f2933;font-size:22px;font-weight:700;line-height:1.35;margin:0 0 14px;word-break:break-word}h1.article-title>a{color:#1f2933}.article-title+div{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px !important}.article-title+div img{color:rgba(0,0,0,0);display:block;flex:0 0 auto;font-size:0;height:22px;line-height:0;max-width:calc(100vw - 48px);width:auto}.article-info{grid-template-columns:34px minmax(0, 1fr);margin-bottom:18px;row-gap:10px}.article-info>a[rel=author]{height:32px;width:32px}.article-info>a[rel=author] .avatar{border-radius:10px;height:32px;margin:0;width:32px}.article-info>div.article-params{color:#667085;line-height:20px}.article-info>div.article-params strong{color:#1f2933;font-size:14px}.article-info>.article-reaction,.article-info>.article-reaction-shell{grid-column:1/-1;grid-row:2;margin:2px 0 0}.article-info>.article-actions{grid-column:1/-1;grid-row:3;justify-self:start;margin-top:0 !important}.article-info>.article-actions .fn-right{justify-content:flex-start}.article-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.article-tags .tag{background:#fff7ed;border-radius:999px;color:#9a4f00;line-height:22px;padding:0 9px}.article-visit-sources{gap:5px;margin-top:6px}.article-visit-source{background:#f8fafc;border-radius:999px;line-height:22px;padding:0 7px}.article-content{color:#24292f;font-size:16px;line-height:1.75;overflow-wrap:anywhere}.article-content p{margin:0 0 14px}.article-content img{border-radius:8px}#comments{margin-top:14px}.comments>ul>li{background:rgba(0,0,0,0);border:0;border-bottom:1px solid #e5ebf2;border-radius:0;box-shadow:none;box-sizing:border-box;margin-bottom:0;padding:16px 0 !important}.comments .comment-info img[src*="/gen"]{color:rgba(0,0,0,0);display:inline-block;font-size:0;height:18px;line-height:0;max-width:calc(100vw - 120px);object-fit:contain;vertical-align:-4px;width:auto}.comment-action>.comment-action__bar{flex-wrap:nowrap;gap:4px;max-width:100%}.comment-action>.comment-action__bar>.comment-action__left{flex:0 1 auto;flex-wrap:nowrap;min-width:0;transform:none}.comment-action>.comment-action__bar>.action-btns{display:none;flex:1 1 auto;flex-wrap:nowrap;justify-content:flex-start;margin-left:0;min-width:0;overflow-x:auto;overflow-y:hidden;padding-left:0;scrollbar-width:none;-webkit-overflow-scrolling:touch}#comments .list.comments>ul>li.comment-actions-open>.fn-flex .comment-action>.comment-action__bar>.action-btns,#comments .list.comments>ul>li:hover>.fn-flex .comment-action>.comment-action__bar>.action-btns{display:inline-flex;visibility:visible}.comment-action>.comment-action__bar>.action-btns::-webkit-scrollbar{display:none}.comment-action>.comment-action__bar>.action-btns>a,.comment-action>.comment-action__bar>.action-btns>span{flex:0 0 auto;padding-right:8px;padding-left:8px}.comment-thread__actions .action-btns{display:none;flex-wrap:nowrap;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.comment-thread__reply.comment-actions-open>.comment-thread__body>.comment-thread__actions .action-btns,.comment-thread__reply:hover>.comment-thread__body>.comment-thread__actions .action-btns{display:inline-flex;visibility:visible}.comment-thread__actions .action-btns::-webkit-scrollbar{display:none}.comment-thread__actions .action-btns>a,.comment-thread__actions .action-btns>span{padding-right:6px;padding-left:6px}.action-btns .comment-reaction--trigger .reaction-popover{position:fixed;right:auto;bottom:auto;width:min(272px,100vw - 24px);max-width:calc(100vw - 24px);min-width:240px;z-index:10020}.comment-collect-emoji-btn{cursor:pointer} \ No newline at end of file diff --git a/src/main/resources/js/article.js b/src/main/resources/js/article.js index b4ff00cc..2e31f6e5 100644 --- a/src/main/resources/js/article.js +++ b/src/main/resources/js/article.js @@ -318,11 +318,22 @@ var Comment = { return ' data-thread-depth="' + depth + '" style="--comment-thread-indent:' + (depth * 28) + 'px"' }, + renderThreadReplyParagraphAttributes: function (data) { + var paragraphId = data.commentParagraphId || '' + if (!paragraphId) { + return '' + } + var paragraphStatus = parseInt(data.commentParagraphStatus, 10) + paragraphStatus = isNaN(paragraphStatus) ? 0 : paragraphStatus + return ' data-comment-paragraph-id="' + Comment.escapeHTML(paragraphId) + + '" data-comment-paragraph-status="' + paragraphStatus + '"' + }, renderThreadReply: function (data) { var depth = Comment.getThreadReplyDepth(data) return '
' + Comment.renderThreadReplyStyle(depth) + + Comment.renderThreadReplyParagraphAttributes(data) + '>' + '").text(e||"").html()},renderCommentAuthorName:function(e){var t=Comment.escapeHTML(e.commentAuthorName);return e.commentAuthorNickName?Comment.escapeHTML(e.commentAuthorNickName)+" ("+t+")":t},renderOriginalAuthorLabel:function(e){var t=e.commentOriginalAuthorNickName||e.commentOriginalAuthorName;return t?'回复 @'+Comment.escapeHTML(t)+"":""},escapeJSString:function(e){return String(e||"").replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\r/g,"\\r").replace(/\n/g,"\\n")},getCommentHashId:function(e){var t=String(e||"").indexOf("#");return t<0?"":String(e).substring(t+1)},getCurrentPageNum:function(){var e=window.location.search.match(/[?&]p=(\d+)/);return e?parseInt(e[1]):1},getSearchValue:function(e,t){for(var n=String(e||"").replace(/^\?/,"").split("&"),i=0;i1?o[1]:""}return""},normalizeCommentSearch:function(e){for(var t=["p","m","sort","author"],n=[],i=0;i
'),e.find(".comment-action").before(n)),n},renderThreadAction:function(e){return'
'+Comment.renderReactionBar(e.oId,e.reactionSummary,e.currentUserReaction)+'
'+Comment.renderThreadThankAction(e)+Comment.renderThreadVoteAction(e,!0)+Comment.renderThreadVoteAction(e,!1)+Comment.renderThreadReportAction(e)+Comment.renderThreadRemoveAction(e)+Comment.renderThreadHistoryAction(e)+Comment.renderThreadEditAction(e)+Comment.renderThreadReplyAction(e)+"
"},renderThreadThankAction:function(e){var t=Comment.escapeJSString(e.oId),n=Comment.escapeJSString(e.commentThankLabel),i=parseInt(e.commentAnonymous||0),o=parseInt(e.rewardedCnt||e.commentThankCnt||0),r=e.rewarded?" ft-red":"",a="";return e.rewarded||(a=Label.canThankComment?" onclick=\"Comment.thank('"+t+"', '"+Comment.escapeJSString(Label.csrfToken)+"', '"+n+"', "+i+', this)"':' onclick="Article.permissionTip(Label.noPermissionLabel)"'),' '+o+""},renderThreadVoteAction:function(e,t){var n=Comment.escapeJSString(e.oId),i=parseInt(e.commentVote)===(t?0:1),o=parseInt(t?e.commentGoodCnt||0:e.commentBadCnt||0),r=t?Label.upLabel:Label.downLabel,a=t?"thumbs-up":"thumbs-down",s=t?"voteUp":"voteDown",l=(t?Label.canGoodComment:Label.canBadComment)?"Article."+s+"('"+n+"', 'comment', this)":"Article.permissionTip(Label.noPermissionLabel)";return' '+o+""},renderThreadReportAction:function(e){var t=Comment.escapeJSString(e.oId);return'"},renderThreadReplyAction:function(e){return Label.isLoggedIn&&Label.canAddComment?'':""},renderThreadRemoveAction:function(e){return e.commentIsCurrentUser&&Label.canRemoveComment?'':""},renderThreadEditAction:function(e){return e.commentIsCurrentUser&&Label.canUpdateComment?'':""},renderThreadHistoryAction:function(e){return!Label.canViewCommentHistory||parseInt(e.commentRevisionCount||0)<2?"":''},updateCommentHistoryAction:function(e,t){var n=Comment.getCommentElement(e);if(n.hasClass("comment-thread__reply")){var i=n.find("> .comment-thread__body > .comment-thread__actions > .action-btns");if(i.children(".comment-history-action").remove(),!(t<2)){var o=Comment.renderThreadHistoryAction({oId:e,commentRevisionCount:t}),r=i.children(".comment-edit-action");1===r.length?r.before(o):i.append(o)}}else n.find(".icon-history").parent().toggle(t>=2)},updateEditedCommentContent:function(e,t){var n=Comment.getCommentElement(e);n.hasClass("comment-thread__reply")?n.find("> .comment-thread__body > .comment-thread__content").html(t):n.find("> .fn-flex > .fn-flex-1 > .vditor-reset").html(t)},getThreadReplyDepth:function(e){var t=parseInt(e.commentThreadDepth,10);if(!isNaN(t)&&t>=0)return t;var n=document.getElementById(e.commentOriginalCommentId);return n&&$(n).hasClass("comment-thread__reply")?(t=parseInt($(n).attr("data-thread-depth"),10),isNaN(t)?1:t+1):0},renderThreadReplyClass:function(e){return"comment-thread__reply"+(e>0?" comment-thread__reply--nested":"")},renderThreadReplyStyle:function(e){return' data-thread-depth="'+e+'" style="--comment-thread-indent:'+28*e+'px"'},renderThreadReply:function(e){var t=Comment.getThreadReplyDepth(e);return'
'+Comment.renderCommentAuthorName(e)+""+Comment.renderOriginalAuthorLabel(e)+' • '+Comment.escapeHTML(e.timeAgo)+'
'+e.commentContent+"
"+Comment.renderThreadAction(e)+"
"},renderThreadReplies:function(e){for(var t="",n=0;n'+Comment.escapeHTML(n)+""},renderThreadPagination:function(e,t,n){if(e.find(".comment-thread__pager").remove(),n&&!(parseInt(n.paginationPageCount||0)<=1)){var i=parseInt(n.paginationCurrentPageNum||1),o=parseInt(n.paginationPageCount||1),r=['
'];i>1&&r.push(Comment.renderThreadPageButton(t,i-1,"上一页")),r.push('',i,"/",o,""),i"),e.append(r.join(""))}},getCommentQueryExtra:function(){return Label.commentQueryExtra||""},normalizeReactionSummary:function(e){if(Array.isArray(e))return e;if("string"!=typeof e||""===e)return[];try{var t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return[]}},getReactionMap:function(e){e=Comment.normalizeReactionSummary(e);for(var t={},n=0;n/g,">")},getReactionUserDetails:function(e){return e&&Array.isArray(e.userDetails)?e.userDetails:[]},renderReactionTip:function(e){var t=Comment.getReactionUserDetails(e);if(0===t.length)return"";for(var n=[],i=0;i'),n.push('',Comment.escapeReactionHtml(s),''),n.push("")}}return 0===n.length?"":''+n.join("")+""},renderReactionSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],r=0;r'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderReactionPanel:function(e,t){for(var n=['
'],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
"),n.join("")},renderReactionSummaryWidget:function(e,t,n){var i=Comment.renderReactionSummaryItems(e,t,n),o=['
'];return o.push('
'),o.push('
',i,"
"),o.join("")},renderReactionTriggerWidget:function(e,t,n){var i=n?" is-open":"",o=['
'];return o.push('"),o.push(Comment.renderReactionPanel(e,t)),o.push("
"),o.join("")},renderReactionBar:function(e,t,n,i,o){if("summary"===o)return Comment.renderReactionSummaryWidget(e,t,n);if("trigger"===o)return Comment.renderReactionTriggerWidget(e,n,i);var r=i?" is-open":"",a=Comment.renderReactionSummaryItems(e,t,n),s=['
'];return s.push('
'),s.push('
',a,"
"),s.push('
"),s.push(Comment.renderReactionPanel(e,n)),s.push("
"),s.join("")},getReactionWidgets:function(e){return $('.comment-reaction[data-target-id="'+e+'"]')},getInteractiveReactionWidgets:function(e){return $('.comment-reaction--combined[data-target-id="'+e+'"], .comment-reaction--trigger[data-target-id="'+e+'"]')},mountReactionTrigger:function(e,t,n,i){if(0!==e.length){var o=Comment.renderReactionBar(t,[],n,i,"trigger"),r=e.find('.comment-reaction--trigger[data-target-id="'+t+'"]');r.length>0?r.replaceWith(o):e.prepend(o)}},collectReactionShells:function(e){var t=e?$(e):$(document);return t.hasClass("comment-reaction-shell")?t.add(t.find(".comment-reaction-shell")):t.find(".comment-reaction-shell")},initReactionWidgets:function(e){Comment.collectReactionShells(e).each(function(){var e=$(this),t=e.attr("data-target-id"),n=e.attr("data-summary"),i=e.attr("data-current-user-reaction")||"",o=e.closest(".comment-action__bar").find(".action-btns").first(),r=e.closest(".comment-action__left").length>0&&o.length>0,a=Comment.renderReactionBar(t,n,i,!1,r?"summary":"combined");e.replaceWith(a),r&&Comment.mountReactionTrigger(o,t,i,!1)})},closeReactionPanels:function(e){var t=e?$(e):$(document),n=".comment-reaction--combined, .comment-reaction--trigger";(t.is(n)?t.add(t.find(n)):t.find(n)).removeClass("is-open")},toggleReactionPanel:function(e){var t=$(e).closest(".comment-reaction"),n=t.attr("data-target-id"),i=!t.hasClass("is-open");Comment.closeReactionPanels(),i&&Comment.getInteractiveReactionWidgets(n).addClass("is-open")},bindReactionPanels:function(){$(document).off("click.commentReaction").on("click.commentReaction",function(e){0===$(e.target).closest(".comment-reaction").length&&Comment.closeReactionPanels()})},updateReactionBars:function(e,t,n,i){var o=Comment.getReactionWidgets(e),r="boolean"==typeof i?i:Comment.getInteractiveReactionWidgets(e).first().hasClass("is-open");o.each(function(){var i=$(this),o="combined";i.hasClass("comment-reaction--summary")?o="summary":i.hasClass("comment-reaction--trigger")&&(o="trigger"),i.replaceWith(Comment.renderReactionBar(e,t,n,r,o))})},updateReactionFromChannel:function(e){var t=e.targetId||e.commentId;if(t){var n=Comment.getReactionWidgets(t);if(0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";Comment.updateReactionBars(t,e.summary||[],i,!1)}}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".comment-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/comment/reaction",type:"POST",data:JSON.stringify({commentId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?Comment.updateReactionBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})},report:function(e){var t=$(e);t.attr("disabled","disabled").css("opacity","0.3"),$.ajax({url:Label.servePath+"/report",type:"POST",cache:!1,data:JSON.stringify({reportDataId:$("#reportDialog").data("id"),reportDataType:$("#reportDialog").data("type"),reportType:$("input[name=report]:checked").val(),reportMemo:$("#reportTextarea").val()}),complete:function(e){t.removeAttr("disabled").css("opacity","1"),0===e.responseJSON.code?(Util.alert(Label.reportSuccLabel),$("#reportTextarea").val(""),$("#reportDialog").dialog("close")):Util.alert(e.responseJSON.msg)}})},accept:function(e,t,n){confirm(e)&&$.ajax({url:Label.servePath+"/comment/accept",type:"POST",headers:{csrfToken:Label.csrfToken},cache:!1,data:JSON.stringify({commentId:t}),success:function(e){0===e.code?($(n).closest("li").addClass("cmt-perfect"),$(n).remove()):Util.alert(e.msg)}})},remove:function(e){if(!confirm("删除评论需要100积分,"+Label.confirmRemoveLabel))return!1;var t=document.getElementById(e),n=t?t.getAttribute("data-comment-paragraph-id"):"";$.ajax({url:Label.servePath+"/comment/"+e+"/remove",type:"POST",cache:!1,success:function(t,i){0===t.code?($("#"+e).remove(),n&&window.LongArticleParagraphComments&&window.LongArticleParagraphComments.handleRemove(n)):Util.alert(t.msg)}})},exchangeCmtSort:function(e){e=0===e?1:0;var t=Comment.getCommentQueryExtra().replace("&sort=hot","");window.location.href=window.location.pathname+"?m="+e+t+"#comments"},_bgFade:function(e,t){return 0!==e.length&&(!1!==(t=t||{}).scroll&&$(window).scrollTop(e[0].offsetTop-48),"comments"!==e.attr("id")&&!1!==t.highlight&&($(".comment-focus-highlight").removeClass("comment-focus-highlight"),e.addClass("comment-focus-highlight"),setTimeout(function(){e.removeClass("comment-focus-highlight")},1800),!0))},edit:function(e){Comment._toggleReply(),$(".cmt-anonymous").hide(),$.ajax({url:Label.servePath+"/comment/"+e+"/content",type:"GET",cache:!1,success:function(e,t){0===e.code&&Comment.editor.setValue(e.commentContent)}}),$("#replyUseName").html(' '+Label.commonUpdateCommentPermissionLabel+"").data("commentId",e)},goComment:function(e){var t=Comment.getCommentHashId(e);return(!t||!Comment.focusCommentById(t))&&(t&&Comment.isSameCommentPage(e)?(Comment.expandThreadForComment(t),!1):(window.location=e,!1))},focusCommentElement:function(e,t){return Comment._bgFade(e,t)},focusCommentById:function(e,t){var n=Comment.getCommentElement(e);return 1===n.length&&Comment.focusCommentElement(n,t)},focusLocationHash:function(){var e=Comment.getCommentHashId(window.location.hash);return!!e&&(!!Comment.focusCommentById(e)||Comment.expandThreadForComment(e))},expandThreadForComment:function(e){return $.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,anchorCommentId:e,userCommentViewMode:Label.userCommentViewMode,sort:Label.commentSort,author:Label.commentAuthorFilter?"1":""}),success:function(t){if(0!==t.code)return!1;Comment.renderThreadResponse(t.commentThreadRootId,t.commentThreadReplies||[],e,{pagination:t.pagination})}}),!0},renderThreadResponse:function(e,t,n,i){i=i||{};var o=Comment.getCommentElement(e);if(1!==o.length)return!1;var r=Comment.ensureThread(o,e);return r.find(".comment-thread__list").html(Comment.renderThreadReplies(t)),r.addClass("comment-thread--expanded"),r.find(".comment-thread__more").remove(),Comment.renderThreadPagination(r,e,i.pagination),Comment.initReactionWidgets(r),Util.listenUserCard(),Util.parseHljs(),Util.parseMarkdown(),!1===i.focus||!n||Comment.focusCommentById(n)},_hideReplyPanel:function(){var e=$(".editor-panel");return!(0===e.length||!e.hasClass("editor-panel--open"))&&(e.removeClass("editor-panel--open"),e.find(".wrapper").slideUp(function(){e.fadeOut(100),$(".footer").removeAttr("style")}),!1)},_toggleReply:function(e){if(!Label.isLoggedIn)return Util.needLogin(),!1;if(0===$("#commentContent").length)return Util.alert(Label.notAllowCmtLabel),!1;if("false"===$(this).data("hasPermission"))return Article.permissionTip(Label.noPermissionLabel),!1;var t=$(".editor-panel");if(t.hasClass("editor-panel--open"))return Comment._hideReplyPanel();document.body.classList.contains("long-article-page")&&window.LongArticle&&!window.LongArticle.isCommentsOpen()&&window.LongArticle.openComments(),$(".cmt-anonymous").show(),$(".footer").css("margin-bottom",$(".editor-panel > .wrapper").outerHeight()+"px"),$("#replyUseName").html(''+$(".article-title").text().replace(//g,">")+"").removeData(),"0px"!==t.css("bottom")&&(t.find(".wrapper").hide(),t.css("bottom",0)),t.show().addClass("editor-panel--open"),t.find(".wrapper").slideDown(function(){Comment.editor.focus(),e&&e()})},loadEmojis:function(){let e=Comment.getEmojis(),t="";for(let n=0;n\n
\n \n`;$("#emojis").html(t)},confirmed:!1,delEmoji:function(e){if(!0===Comment.confirmed||confirm("确定要删除该表情包吗?")){Comment.confirmed=!0;let t=Comment.getEmojis();for(let n=0;n5242880?Util.alert("图片过大 (最大限制 5M)"):t.submit():Util.alert("只允许上传图片!")}}else t.submit()},formData:function(e){return e.serializeArray()},submit:function(e,t){},done:function(e,t){var n={result:{key:t.result.data.succMap[Object.keys(t.result.data.succMap)[0]]}};Comment.addEmoji(n.result.key)},fail:function(e,t){Util.alert("Upload error: "+t.errorThrown)}})},fromURL:function(){Util.alert('
\n\n
\n
\n \n
\n
',"从URL导入表情包"),$("#fromURL").focus(),$("#fromURL").unbind(),$("#fromURL").bind("keypress",function(e){"13"==e.keyCode&&(Comment.addEmoji($("#fromURL").val()),Util.closeAlert())})},addEmoji:function(){if(0!==arguments.length){var e=[];if(1===arguments.length&&Array.isArray(arguments[0]))e=arguments[0];else for(var t=0;t ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-reply").parent().click():Comment._toggleReply(),!1}).bind("keyup","h",function(){return 1===$("#comments .list > ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-heart").parent().click(),!1}).bind("keyup","t",function(){return 1===$("#comments .list > ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-thumbs-up").parent().click(),!1}).bind("keyup","d",function(){return 1===$("#comments .list > ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-thumbs-down").parent().click(),!1}).bind("keyup","c",function(){return 1===$("#comments .list > ul > li.focus .comment-info .icon-reply-to").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .comment-info .icon-reply-to").parent().click(),!1}).bind("keyup","m",function(){return 1===$("#comments .list > ul > li.focus .comment-action > .ft-fade > .fn-pointer").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .comment-action > .ft-fade > .fn-pointer").click(),!1}).bind("keyup","a",function(){return"x"===Util.prevKey&&1===$("#comments .list > ul > li.focus .icon-setting").parent().length&&(window.location=$("#comments .list > ul > li.focus .icon-setting").parent().attr("href")),!1}).bind("keyup","m",function(){return"v"===Util.prevKey&&Article.toggleToc(),!1}).bind("keyup","h",function(){return"v"===Util.prevKey&&$("#thankArticle").click(),!1}).bind("keyup","t",function(){return"v"===Util.prevKey&&$(".article-header .icon-thumbs-up").parent().click(),!1}).bind("keyup","d",function(){return"v"===Util.prevKey&&$(".article-header .icon-thumbs-down").parent().click(),!1}).bind("keyup","i",function(){return"v"===Util.prevKey&&$(".article-header .icon-view").parent().click(),!1}).bind("keyup","c",function(){return"v"===Util.prevKey&&$(".article-header .icon-star").parent().click(),!1}).bind("keyup","l",function(){return"v"===Util.prevKey&&$(".article-header .icon-history").parent().click(),!1}).bind("keyup","e",function(){return"v"===Util.prevKey&&1===$(".article-actions .icon-edit").parent().length&&(window.location=$(".article-actions .icon-edit").parent().attr("href")),!1}).bind("keyup","s",function(){return"v"===Util.prevKey&&1===$(".article-actions .icon-chevron-up").length&&Article.stick(Label.articleOId),!1}).bind("keyup","a",function(){return"v"===Util.prevKey&&1===$(".article-actions .icon-setting").parent().length&&(window.location=$(".article-actions .icon-setting").parent().attr("href")),!1}).bind("keyup","p",function(){return"v"===Util.prevKey&&1===$(".article-header a[rel=prev]").length&&(window.location=$(".article-header a[rel=prev]").attr("href")),!1}).bind("keyup","n",function(){return"v"===Util.prevKey&&1===$(".article-header a[rel=next]").length&&(window.location=$(".article-header a[rel=next]").attr("href")),!1})},init:function(){if($("#sendComment").click(function(){Comment._toggleReply()}),Comment.focusLocationHash(),this._initHotKey(),$.pjax({selector:"#comments .pagination a",container:"#comments",show:"",cache:!1,storage:!0,titleSuffix:"",callback:function(){Comment.initReactionWidgets($("#comments")),Util.parseMarkdown(),Util.parseHljs(),Util.listenUserCard(),Comment.focusLocationHash()}}),NProgress.configure({showSpinner:!1}),$("#comments").bind("pjax.start",function(){NProgress.start()}),$("#comments").bind("pjax.end",function(){NProgress.done()}),ArticleReaction.bindPanels(),ArticleReaction.initWidgets(),Comment.bindReactionPanels(),Comment.initReactionWidgets($("#comments")),!Label.isLoggedIn||!document.getElementById("commentContent"))return!1;Comment.editor=Util.newVditor({id:"commentContent",cache:!0,preview:{mode:"editor"},resize:{enable:!0,position:"top"},height:200,placeholder:Label.commentEditorPlaceholderLabel,ctrlEnter:function(){Comment.add(Label.articleOId,Label.csrfToken,document.getElementById("articleCommentBtn"))},esc:function(){$(".editor-hide").click()}})},thank:function(e,t,n,i,o){if(!Label.isLoggedIn)return Util.needLogin(),!1;if(0===i&&!confirm(n))return!1;var r={commentId:e};$.ajax({url:Label.servePath+"/comment/thank",type:"POST",headers:{csrfToken:t},cache:!1,data:JSON.stringify(r),error:function(e,t,n){Util.alert(n)},success:function(e,t){if(0===e.code){$(o).removeAttr("onclick");var n=$(''),i=$(o).offset().top,r=$(o).offset().left;n.css({"z-index":9999,top:i,left:r,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(n),n.animate({left:r-150,top:i-60,opacity:0},1e3,function(){var e=parseInt($(o).text());$(o).html(' '+(e+1)).addClass("ft-red"),n.remove()})}else Util.alert(e.msg)}})},showReply:function(e,t,n){var i=$(t).closest("li").find("."+n);if("comment-get-comment"===n){if(0!==i.find("li").length)return i.html(""),!1}else if(0===$(t).find(".icon-chevron-down").length)return $(t).find(".icon-chevron-up").removeClass("icon-chevron-up").addClass("icon-chevron-down").find("use").attr("xlink:href","#chevron-down"),i.html(""),!1;if("0.3"===$(t).css("opacity"))return!1;var o="/comment/replies";"comment-get-comment"===n&&(o="/comment/original"),$.ajax({url:Label.servePath+o,type:"POST",data:JSON.stringify({commentId:e,userCommentViewMode:Label.userCommentViewMode}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(e,n){if(0!==e.code)return Util.alert(e.msg),!1;var o=e.commentReplies,r="";o instanceof Array||(o=[o]),0===o.length&&(r='
  • '+Label.removedLabel+"
  • ");for(var a=0;a
    ',r+='',r+='
    ',r+="
    ",r+='
    ',r+='',r+=Comment.renderCommentAuthorName(s),r+="",r+=Comment.renderOriginalAuthorLabel(s),r+=' • '+s.timeAgo,s.rewardedCnt>0&&(r+=' '+s.rewardedCnt+" "),r+="",r+='
    '+s.commentContent+"
    "+Comment.renderReactionBar(s.oId,s.reactionSummary,s.currentUserReaction)+"
    "}i.html("
      "+r+"
    "),Util.parseHljs(),Util.parseMarkdown(),$(t).find(".icon-chevron-down").removeClass("icon-chevron-down").addClass("icon-chevron-up").find("use").attr("xlink:href","#chevron-up")},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},showThreadReplies:function(e,t,n){if("0.3"===$(t).css("opacity"))return!1;$.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,paginationCurrentPageNum:n||1}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(t){if(0!==t.code)return Util.alert(t.msg),!1;Comment.renderThreadResponse(t.commentThreadRootId||e,t.commentThreadReplies||[],null,{focus:!1,pagination:t.pagination})},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},add:function(e,t,n){var i={articleId:e,commentAnonymous:$("#commentAnonymous").prop("checked"),commentVisible:$("#commentVisible").prop("checked"),commentContent:Comment.editor.getValue(),userCommentViewMode:Label.userCommentViewMode};$("#replyUseName").data("commentOriginalCommentId")&&(i.commentOriginalCommentId=$("#replyUseName").data("commentOriginalCommentId"));var o=window.LongArticleParagraphComments,r=o&&o.getSubmissionParagraphId?o.getSubmissionParagraphId(i.commentOriginalCommentId):"";r&&(i.paragraphId=r);var a=Label.servePath+"/comment",s="POST",l=$("#replyUseName").data("commentId");l?(a=Label.servePath+"/comment/"+l,s="PUT"):r&&(a=Label.servePath+"/comment/paragraph"),$.ajax({url:a,type:s,headers:{csrfToken:t},cache:!1,data:JSON.stringify(i),beforeSend:function(){$(n).attr("disabled","disabled").css("opacity","0.3")},success:function(e,t){$(n).removeAttr("disabled").css("opacity","1"),0===e.code?(l&&(Comment.updateEditedCommentContent(l,e.commentContent),Comment.updateCommentHistoryAction(l,parseInt(e.commentRevisionCount||0))),i.commentOriginalCommentId&&Util.setUnreadNotificationCount(),Comment.editor.setValue(""),$(".editor-hide").click(),$("#replyUseName").text("").removeData(),r&&o&&o.handleSubmitSuccess(),i.commentOriginalCommentId&&Comment.focusCommentById(i.commentOriginalCommentId,{scroll:!1})):$("#addCommentTip").addClass("error").html("
    • "+e.msg+"
    ")},error:function(e){$("#addCommentTip").addClass("error").html("
    • "+e.statusText+"
    ")},complete:function(){$(n).removeAttr("disabled").css("opacity","1"),setTimeout(Util.listenUserCard,1e3)}})},reply:function(e,t){window.LongArticleParagraphComments&&window.LongArticleParagraphComments.activateFromComment(document.getElementById(t)),Comment._toggleReply(function(){var e=Comment.getCommentElement(t);0!==e.length&&$(window).height()-(e[0].offsetTop-$(window).scrollTop()+e.outerHeight())<$(".editor-panel .wrapper").outerHeight()&&$(window).scrollTop(e[0].offsetTop-($(window).height()-$(".editor-panel .wrapper").outerHeight()-e.outerHeight()))});var n="",i=Comment.escapeHTML(e),o=Comment.getCommentElement(t),r=o.find(">.fn-flex>div>a").clone();0===r.length&&(r=o.find(">.fn-flex .avatar").clone()),0===r.length?n=' '+i+"":r.is("a")?(r.addClass("ft-a-title").attr("href","#"+t).attr("onclick",'Comment._bgFade($("#'+t+'"))'),r.find("div").removeClass("avatar").addClass("avatar-small").after(" "+i).before(' '),n=r[0].outerHTML):(r.removeClass("avatar").addClass("avatar-small"),n=' '+r[0].outerHTML+" "+i+""),$("#replyUseName").html(n).data("commentOriginalCommentId",t)}},ArticleReaction={renderSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],r=0;r'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderPanel:function(e,t){for(var n=['
    '],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
    "),n.join("")},renderBar:function(e,t,n,i){var o=i?" is-open":"",r=['
    '];return r.push('
    '),r.push('
    ',ArticleReaction.renderSummaryItems(e,t,n),"
    "),r.push('
    "),r.push(ArticleReaction.renderPanel(e,n)),r.push("
    "),r.join("")},collectShells:function(e){var t=e?$(e):$(document);return t.hasClass("article-reaction-shell")?t.add(t.find(".article-reaction-shell")):t.find(".article-reaction-shell")},ensureShell:function(){if(!($(".article-reaction-shell, .article-reaction").length>0)&&Label.articleOId){var e=$(".article-main .tag-desc").first().closest(".fn-flex");0===e.length&&(e=$(".article-main .article-actions.action-btns").first()),0!==e.length&&$('
    ').insertAfter(e)}},getWidgets:function(e){return $('.article-reaction[data-target-id="'+e+'"]')},initWidgets:function(e){e||ArticleReaction.ensureShell(),ArticleReaction.collectShells(e).each(function(){var e=$(this);e.replaceWith(ArticleReaction.renderBar(e.attr("data-target-id"),e.attr("data-summary"),e.attr("data-current-user-reaction")||"",!1))})},closePanels:function(){$(".article-reaction.is-open").removeClass("is-open")},togglePanel:function(e){var t=$(e).closest(".article-reaction"),n=!t.hasClass("is-open");ArticleReaction.closePanels(),n&&t.addClass("is-open")},bindPanels:function(){$(document).off("click.articleReaction").on("click.articleReaction",function(e){0===$(e.target).closest(".article-reaction").length&&ArticleReaction.closePanels()})},updateBars:function(e,t,n,i){var o=ArticleReaction.getWidgets(e),r="boolean"==typeof i?i:o.first().hasClass("is-open");o.each(function(){$(this).replaceWith(ArticleReaction.renderBar(e,t,n,r))})},updateReactionFromChannel:function(e){var t=e.targetId,n=ArticleReaction.getWidgets(t);if(t&&0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";ArticleReaction.updateBars(t,e.summary||[],i,!1)}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".article-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/article/reaction",type:"POST",data:JSON.stringify({articleId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?ArticleReaction.updateBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})}},Article={initAudio:function(){$(".content-audio").each(function(){var e=$(this);new APlayer({element:this,narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",preload:"none",mode:"circulation",music:{title:e.data("title"),author:'音乐分享',url:e.data("url"),pic:Label.staticServePath+"/images/music.png"}})});var e=$("#articleAudio");if(0===e.length)return!1;new APlayer({element:document.getElementById("articleAudio"),narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",mode:"order",preload:"none",music:{title:"语音预览",author:'小薇',url:e.data("url"),pic:Label.staticServePath+"/images/blank.png"}})},permissionTip:function(e){Label.isLoggedIn?Util.alert(e):Util.needLogin()},voteUp:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.next();if(i.hasClass("disabled"))return!1;var r={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/up/"+t,type:"POST",cache:!1,data:JSON.stringify(r),success:function(e,t){i.removeClass("disabled");var n=parseInt(i.text()),r=parseInt(o.text());0!==e.code?Util.alert(e.msg):0===e.type?i.html(' '+(n-1)).removeClass("ft-red"):(i.html(' '+(n+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(r-1)).removeClass("ft-red"))}})},voteDown:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.prev();if(i.hasClass("disabled"))return!1;var r={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/down/"+t,type:"POST",cache:!1,data:JSON.stringify(r),success:function(e,t){i.removeClass("disabled");var n=parseInt(o.text()),r=parseInt(i.text());if(0===e.code)return 1===e.type?i.html(' '+(r-1)).removeClass("ft-red"):(i.html(' '+(r+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(n-1)).removeClass("ft-red")),!1;Util.alert(e.msg)}})},previewImgAfterLoading:function(){$(".img-preview img").css("transform","translate3d("+Math.max(0,$(window).width()-$(".img-preview img").width())/2+"px, "+Math.max(0,$(window).height()-$(".img-preview img").height())/2+"px, 0)"),setTimeout(function(){$(".img-preview").width($(window).width())},300)},init:function(){this.initToc(),this.share(),Util.parseHljs(),Util.parseMarkdown();var e=null;$(".article").on("dblclick",".vditor-reset img",function(){clearTimeout(e),$(this).hasClass("emoji")||1===$(this).closest(".editor-panel").length||1===$(this).closest(".ad").length||window.open($(this).attr("src"))}).on("click",".vditor-reset img",function(t){if(clearTimeout(e),!$(this).hasClass("emoji")&&1!==$(this).closest(".editor-panel").length&&1!==$(this).closest(".ad").length){var n=$(this),i=this;e=setTimeout(function(){var e=i.offsetTop,t=i.offsetLeft;1===n.closest(".comments").length&&(e+=n.closest("li")[0].offsetTop,t=t+$(".comments")[0].offsetLeft+15);var o=(n.attr("src")||"").split("?imageView2")[0],r=$('
    ').on("click",function(){$(this).remove()}),a=$("").css("transform","translate3d("+Math.max(0,t)+"px, "+Math.max(0,e-$(window).scrollTop())+"px, 0)").attr("src",o).on("load",Article.previewImgAfterLoading);r.append(a),$("body").append(r),$(".img-preview").css({"background-color":"#fff",position:"fixed"})},100)}}),$("#reportDialog").dialog({width:$(window).width()>500?500:$(window).width()-50,height:450,modal:!0,hideFooter:!0}),this.initAudio(),$(window).scroll(function(){var e=$(window).scrollTop();$(".share").css("top",e+60+"px"),e<$(".article-title").offset().top?($(".article-header").css("top","-60px"),$(".nav").show()):($(".article-header").css("top","0"),$(".nav").hide())}),$(window).resize(function(){Article.syncTocLayout()});var t=location.search.split("r=")[1];t&&sessionStorage.setItem("r",t.split("&")[0]),$(function(){$.ajax({url:Label.servePath+"/api/article/reward/senders/"+Label.articleOId,method:"GET",async:!1,headers:{csrfToken:Label.csrfToken},success:function(e){if(0===e.code&&""!==e.data){let t=e.data;for(let e=0;e\n
    \n
    \n
    \n")}Util.listenUserCard()}}})})},revision:function(e,t){if(!Label.isLoggedIn)return Util.needLogin(),!1;t||(t="article"),Article._revisionDialogOpen("comment"===t?"评论历史":"文章历史"),"comment"===t?Article._legacyRevision(e,t):Article._articleRevision(e)},_revisionDialogInit:function(){$("#revisionDialog").length>0||($("body").append(''),$("#revisionDialog .revision-modal__body").append($("#revision")),$("#revisionDialog .revision-modal__overlay, #revisionDialog .revision-modal__close").click(function(){Article._revisionDialogClose()}),$(document).off("keydown.revisionDialog").on("keydown.revisionDialog",function(e){"Escape"===e.key&&$("#revisionDialog").hasClass("is-open")&&Article._revisionDialogClose()}))},_revisionDialogOpen:function(e){Article._revisionDialogInit(),$("#revisionDialogTitle").text(e||"历史版本"),$("#revisionDialog").addClass("is-open").attr("aria-hidden","false"),$("body").addClass("revision-modal-open"),$("#revisionDialog .revision-modal__close").focus()},_revisionDialogClose:function(){$("#revisionDialog").removeClass("is-open").attr("aria-hidden","true"),$("body").removeClass("revision-modal-open")},_legacyRevision:function(e,t){$.ajax({url:Label.servePath+"/"+t+"/"+e+"/revisions",cache:!1,success:function(e,n){if(0===e.code){if(0===e.revisions.length||1===e.revisions.length)return $("#revision > .revisions").remove(),$("#revisions").html(""+Label.noRevisionLabel+""),!1;$("#revisions").html("").prev().remove(),$("#revisions").data("revisions",e.revisions).before('
    '+(e.revisions.length-1)+"~"+e.revisions.length+"/"+e.revisions.length+'
    '),e.revisions.length<=2&&$("#revision a").first().addClass("disabled");var i=JsDiff.createPatch("",e.revisions[e.revisions.length-2].revisionData.articleContent||e.revisions[e.revisions.length-2].revisionData.commentContent,e.revisions[e.revisions.length-1].revisionData.articleContent||e.revisions[e.revisions.length-1].revisionData.commentContent,e.revisions[e.revisions.length-2].revisionData.articleTitle||"",e.revisions[e.revisions.length-1].revisionData.articleTitle||"");return new Diff2HtmlUI({diff:i}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0}),Article._revisionsControls(t),!1}Util.alert(e.msg)}})},_revisionsControls:function(e){var t=$("#revisions").data("revisions");$("#revision a.first").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions").text().split("~")[0]);e<=2?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.last").removeClass("disabled"),$("#revision .revisions > span").html(e-1+"~"+e+"/"+t.length);var n=JsDiff.createPatch("",t[e-2].revisionData.articleContent||t[e-2].revisionData.commentContent,t[e-1].revisionData.articleContent||t[e-1].revisionData.commentContent,t[e-2].revisionData.articleTitle||"",t[e-1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}}),$("#revision a.last").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions span").text().split("~")[0]);e>t.length-3?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.first").removeClass("disabled"),$("#revision .revisions > span").html(e+1+"~"+(e+2)+"/"+t.length);var n=JsDiff.createPatch("",t[e].revisionData.articleContent||t[e].revisionData.commentContent,t[e+1].revisionData.articleContent||t[e+1].revisionData.commentContent,t[e].revisionData.articleTitle||"",t[e+1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}})},_articleRevision:function(e){$("#revision > .revisions").remove(),$("#revisions").removeData("revisions").removeData("revisionDetails").html("加载中"),$.ajax({url:Label.servePath+"/article/"+e+"/revisions/list",cache:!1,success:function(t){if(0===t.code){var n=t.revisions||[];n.length<2?$("#revisions").html(""+Label.noRevisionLabel+""):($("#revisions").data("revisions",n).data("revisionDetails",{}).html(Article._revisionPickerHtml(n)),Article._revisionBindPicker(e),Article._revisionCompare(e))}else $("#revisions").html(""+Article._revisionEscapeHTML(t.msg||"加载失败")+"")},error:function(){$("#revisions").html("加载失败")}})},_revisionPickerHtml:function(e){for(var t=e.length-2,n=e.length-1,i="",o="",r=0;r
    '},_revisionOptionHtml:function(e,t){return'"},_revisionVersionLabel:function(e){return e.current?"当前 "+e.revisionTimeStr:e.revisionTimeStr},_revisionBindPicker:function(e){$("#revision .revision-picker__compare").click(function(){Article._revisionCompare(e)}),$("#revision .revision-picker__diff-only").change(function(){Article._revisionCompare(e)})},_revisionCompare:function(e){var t=$("#revision .revision-picker__base").val(),n=$("#revision .revision-picker__target").val(),i=$("#revision .revision-picker__diff-only").is(":checked");$("#revisions .revision-diff").html("加载中"),$.when(Article._revisionFetch(e,t),Article._revisionFetch(e,n)).done(function(e,t){Article._revisionRenderCompare(e,t,i)}).fail(function(e){$("#revisions .revision-diff").html(""+Article._revisionEscapeHTML(e||"加载失败")+"")})},_revisionFetch:function(e,t){var n=$("#revisions").data("revisionDetails")||{},i=$.Deferred();return n[t]?(i.resolve(n[t]),i.promise()):($.ajax({url:Label.servePath+"/article/"+e+"/revisions/"+encodeURIComponent(t),cache:!1,success:function(e){0===e.code?(n[t]=e.revision,$("#revisions").data("revisionDetails",n),i.resolve(e.revision)):i.reject(e.msg)},error:function(){i.reject("加载失败")}}),i.promise())},_revisionRenderCompare:function(e,t,n){var i=e.revisionData||{},o=t.revisionData||{},r=Article._revisionRenderInlineDiff("标题",i.articleTitle||"",o.articleTitle||"",n);r+=Article._revisionRenderLineDiff("内容",i.articleContent||"",o.articleContent||"",n),$("#revisions .revision-diff").html(r||"无差异")},_revisionRenderInlineDiff:function(e,t,n,i){for(var o=JsDiff.diffWordsWithSpace?JsDiff.diffWordsWithSpace(t,n):JsDiff.diffWords(t,n),r=!1,a="",s=0;s'+Article._revisionEscapeHTML(o[s].value)+"")}return i&&!r?"":'

    '+e+'

    '+a+"
    "},_revisionRenderLineDiff:function(e,t,n,i){for(var o=JsDiff.diffLines(t,n),r=!1,a="",s=0;s

    '+e+'

    '+a+"
    "},_revisionLineHtml:function(e,t){for(var n=Article._revisionSplitLines(e),i="",o=0;o'+Article._revisionEscapeHTML(n[o])+"";return i},_revisionSplitLines:function(e){var t=e.split("\n");return""===t[t.length-1]&&t.pop(),t},_revisionEscapeHTML:function(e){return String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},share:function(){var e=$("#qrCode").data("shareurl");$("#qrCode").qrcode({width:90,height:90,text:e}),$("body").click(function(){$("#qrCode").slideUp()}),$(".share > span").click(function(){var t=$(this).data("type");if(!t)return!1;if("wechat"===t)return $("#qrCode").slideToggle(),!1;if("copy"===t)return!1;var n=encodeURIComponent(Label.articleTitle+" - "+Label.symphonyLabel),i=encodeURIComponent(e),o=$(".article-info .avatar-mid").css("background-image");pic=o.substring(5,o.length-2);var r={};r.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+n+"&url="+i+"&pic="+pic,r.weibo="http://v.t.sina.com.cn/share/share.php?title="+n+"&url="+i+"&pic="+pic,r.google="https://plus.google.com/share?url="+i,r.twitter="https://twitter.com/intent/tweet?status="+n+" "+i,window.open(r[t],"_blank","top=100,left=200,width=648,height=618")}),$("#qrCode").click(function(){$(this).hide()}),$("#shareClipboard").mouseover(function(){$(this).attr("aria-label",Label.copyLabel)}),Util.clipboard($("#shareClipboard"),$("#shareClipboard").next(),function(){$("#shareClipboard").attr("aria-label",Label.copiedLabel)})},reward:function(e){confirm(Label.rewardConfirmLabel)&&$.ajax({url:Label.servePath+"/article/reward?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0!==e.code)Util.alert(e.msg);else{$("#articleRewardContent .vditor-reset").html(e.articleRewardContent),Util.parseHljs(),Util.parseMarkdown();var n=$("#articleRewardContent > span"),i=parseInt(n.text());n.addClass("ft-red").removeClass("ft-blue").html(i+1+" "+Label.rewardLabel).removeAttr("onclick")}},error:function(e){Util.needLogin()}})},thankArticle:function(e,t){return Label.isLoggedIn?!(0===t&&!confirm(Label.thankArticleConfirmLabel))&&(Label.currentUserName===Label.articleAuthorName?(Util.alert(Label.thankSelfLabel),!1):void $.ajax({url:Label.servePath+"/article/thank?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0===e.code){var n=parseInt($("#thankArticle").text());$("#thankArticle").removeAttr("onclick").html(''+(n+1)+"").addClass("ft-red").removeClass("ft-blue");var i=$(''),o=$("#thankArticle").offset().top,r=$("#thankArticle").offset().left;return i.css({"z-index":9999,top:o-20,left:r,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(i),i.animate({top:o-180,opacity:0},1500,function(){i.remove()}),!1}Util.alert(e.msg)}})):(Util.needLogin(),!1)},stick:function(e){confirm(Label.stickConfirmLabel)&&$.ajax({url:Label.servePath+"/article/stick?articleId="+e,type:"POST",cache:!1,success:function(e,t){Util.alert(e.msg),window.location.href=Label.servePath+"/recent"}})},playThought:function(e){var t=String.fromCharCode(31),n=String.fromCharCode(30),i=String.fromCharCode(29),o=String.fromCharCode(10),r=String.fromCharCode(24),a=$("#thoughtProgress > span"),s=$("#thoughtProgress > svg"),l="#articleThought",c=function(e,n){var o=e.split(t);3===o.length&&o.splice(0,0,"");var a=o[0],s=o[2].split("-"),l=o[3].split("-");if(s[0]=parseInt(s[0]),s[1]=parseInt(s[1]),l[0]=parseInt(l[0]),l[1]=parseInt(l[1]),a===r){for(var c=[],m=s[1],d=0;l[1],m").replace(/ /g," ").replace(/ /g,"    ");$(l).data("text",e).html(t)},parseInt(m[u].split(t)[1])/d);for(var h=0,f=parseInt(m[u-1].split(t)[1])/d,v=setInterval(function(){h>=f?(a.width("100%"),s.css("left","100%"),clearInterval(v)):(h+=20,s.css("left",100*h/f+"%"),a.width(100*h/f+"%"))},20),g="",C="",b=0,y=0,w=0;y").replace(/ /g," ").replace(/ /g,"    "),g=L,$(l).html(C),b=Math.max(b,$(l).height())}$("#thoughtProgressPreview").html('
    '+C+"
    "),$("#thoughtProgressPreview").dialog({modal:!0,hideFooter:!0}),s.click(function(){$("#thoughtProgressPreview").dialog("open")}),$(l).html(C).height(b).css("margin-bottom","15px").html("")},syncTocLayout:function(){var e=1===$("#articleToC").length;return $("body.article").toggleClass("article--has-toc",e),$(".article-body .wrapper, #articleCommentsPanel, .article-footer").css("margin-right",""),e&&$("#articleToC > .module-panel").height($(window).height()-48),e},initToc:function(){if(!this.syncTocLayout())return!1;var e=$("#articleToC"),t=$(".article-toc"),n=$(".article-content [id^=toc]"),i=!1;e.offset().top;toc=[],e.find("li").click(function(){var t=$(this);let n=$(this).find("a").text();n=normalizeHeadingIdFromString(n),document.getElementById(n).scrollIntoView({behavior:"smooth"}),setTimeout(function(){e.find("li").removeClass("current"),t.addClass("current")},50)}),$(window).scroll(function(o){if(parseInt($("#articleToC").css("right"))<0)return!1;$("#articleToC > .module-panel").height($(window).height()-49),toc=[],n.each(function(e){toc.push({id:this.id,offsetTop:this.offsetTop})});for(var r=$(window).scrollTop(),a=0,s=toc.length;a0?a-1:0;e.find('a[data-id="'+toc[l].id+'"]').parent().addClass("current");break}r>=toc[toc.length-1].offsetTop-53&&(e.find("li").removeClass("current"),e.find("li:last").addClass("current"));var c=e.find("li.current")[0].offsetTop;i||(t.scrollTop()c-30&&t.scrollTop(c)),setTimeout(function(){i=!1},600)}),$(window).scroll(),t.scrollTop(e.find("li.current")[0].offsetTop).scroll(function(){i=!0})},toggleToc:function(){var e=$("#articleToC");if(0===e.length)return!1;var t=$(".article-header .icon-unordered-list");t.hasClass("ft-red")?(e.animate({right:"-"+$("#articleToC").outerWidth()+"px"}),t.removeClass("ft-red"),$(".article-actions .icon-unordered-list").removeClass("ft-red")):(e.animate({right:0}),t.addClass("ft-red"),$(".article-actions .icon-unordered-list").addClass("ft-red"))},getNotificationCommentIds:function(e){var t=[],n=function(e){(e=String(e||"").replace(/^#/,"").trim())&&-1===t.indexOf(e)&&t.push(e)};return String(e||"").split(",").forEach(n),n(window.location.hash),t.join(",")},makeNotificationRead:function(e,t){var n={articleId:e,commentIds:Article.getNotificationCommentIds(t)};$.ajax({url:Label.servePath+"/notifications/make-read",type:"POST",cache:!1,data:JSON.stringify(n)})}},ArticleAdjacentNav={storageKey:"articleAdjacentSort",sortValues:["time","author","hot"],init:function(){var e=$("[data-article-nav-sort]");0!==e.length&&(this.applySort(e,this.getStoredSort()),this.bindSortChange(e))},getStoredSort:function(){var e=window.localStorage.getItem(this.storageKey);return this.isValidSort(e)?e:"time"},isValidSort:function(e){return-1!==this.sortValues.indexOf(e)},bindSortChange:function(e){var t=this;e.find(".article-nav-sort__input").on("change",function(){this.checked&&t.isValidSort(this.value)&&(window.localStorage.setItem(t.storageKey,this.value),t.applySort(e,this.value))})},applySort:function(e,t){e.find('.article-nav-sort__input[value="'+t+'"]').prop("checked",!0)}};Article.init(),$(document).ready(function(){ArticleAdjacentNav.init(),Comment.init(),EmojiGroups.init("Comment","New"),Comment.loadEmojiGroupsNew(),(()=>{let e=(new Date).getTime(),t=0;const n=function(){0!==t&&(clearTimeout(t),t=0),$("#emojiList").css("top","auto"),$("#emojiList").css("bottom","60px"),e=(new Date).getTime(),t=setTimeout(()=>{(new Date).getTime()-e<=700&&$("#emojiList").removeClass("showList")},null!==navigator.userAgent.match(/(phone|pad|pod|ios|Android|Mobile|BlackBerry|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian)/i)?0:600)};$("#emojiBtn").hover(function(){0!==t&&(clearTimeout(t),t=0),$("#emojiList").css("top","auto"),$("#emojiList").css("bottom","60px"),e=(new Date).getTime(),EmojiGroups.ensureCurrentFresh(Comment,"New"),setTimeout(()=>0!==$("#emojiBtn:hover").length&&$("#emojiList").addClass("showList"),300)},n),$("#emojiList").hover(function(){0!==t&&(clearTimeout(t),t=0),e=(new Date).getTime()},n)})(),ArticleChannel.init(Label.articleChannel),Label.isLoggedIn&&(Article.makeNotificationRead(Label.articleOId,Label.notificationCmtIds),setTimeout(function(){Util.setUnreadNotificationCount()},1e3))}),Article.initCollectButtons=function(){$(".comment-action .action-btns").each(function(){const e=$(this);if(e.data("collect-inited"))return;const t=e.closest("li").find(".vditor-reset.comment").first();if(!t.length)return;const n=t.find("img").filter(function(){return!$(this).hasClass("emoji")&&0===$(this).closest(".editor-panel, .ad").length}).map(function(){return $(this).attr("src")}).get().filter(Boolean),i=Array.from(new Set(n));if(!i.length)return;e.data("collect-inited",!0);const o=$('');o.append(' 收藏表情'),o.on("click",function(e){e.stopPropagation(),EmojiGroups.openCollectDialog(i)}),e.prepend(o).prepend(" ")})},$(function(){Article.initCollectButtons()}); \ No newline at end of file +function isLetterOrDigit(e){return/\p{L}|\p{N}/u.test(e)}function normalizeHeadingIdFromString(e,t){let n=e.replace(/^#+/,"");if(t){const e=new RegExp(t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");n=n.replace(e,"")}let i="";for(const e of n)isLetterOrDigit(e)?i+=e:i+="-";return i=i.replace(/-{3,}/g,"--"),i.startsWith("--")&&(i="-"+i.slice(2)),i.endsWith("--")&&(i=i.slice(0,-2)+"-"),i}var Comment={editor:void 0,reactionOptions:[{value:"thumbsup",emoji:"👍"},{value:"thumbsdown",emoji:"👎"},{value:"check",emoji:"✅"},{value:"cross",emoji:"❌"},{value:"star",emoji:"⭐"},{value:"heart",emoji:"❤️"},{value:"fire",emoji:"🔥"},{value:"party",emoji:"🎉"},{value:"laugh",emoji:"😂"},{value:"wow",emoji:"😮"},{value:"clap",emoji:"👏"},{value:"hundred",emoji:"💯"},{value:"rocket",emoji:"🚀"},{value:"salute",emoji:"🖖"},{value:"handshake",emoji:"🤝"},{value:"raisedhands",emoji:"🙌"},{value:"mindblown",emoji:"🤯"},{value:"thinking",emoji:"🤔"},{value:"eyes",emoji:"👀"},{value:"cry",emoji:"😢"},{value:"angry",emoji:"😡"},{value:"pray",emoji:"🙏"},{value:"brokenheart",emoji:"💔"},{value:"skull",emoji:"💀"},{value:"clown",emoji:"🤡"},{value:"poop",emoji:"💩"},{value:"heartonfire",emoji:"❤️‍🔥"},{value:"plus",emoji:"➕1️⃣"}],isWideReactionOption:function(e){return"plus"===e.value||"heartonfire"===e.value},escapeHTML:function(e){return $("
    ").text(e||"").html()},renderCommentAuthorName:function(e){var t=Comment.escapeHTML(e.commentAuthorName);return e.commentAuthorNickName?Comment.escapeHTML(e.commentAuthorNickName)+" ("+t+")":t},renderOriginalAuthorLabel:function(e){var t=e.commentOriginalAuthorNickName||e.commentOriginalAuthorName;return t?'回复 @'+Comment.escapeHTML(t)+"":""},escapeJSString:function(e){return String(e||"").replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\r/g,"\\r").replace(/\n/g,"\\n")},getCommentHashId:function(e){var t=String(e||"").indexOf("#");return t<0?"":String(e).substring(t+1)},getCurrentPageNum:function(){var e=window.location.search.match(/[?&]p=(\d+)/);return e?parseInt(e[1]):1},getSearchValue:function(e,t){for(var n=String(e||"").replace(/^\?/,"").split("&"),i=0;i1?o[1]:""}return""},normalizeCommentSearch:function(e){for(var t=["p","m","sort","author"],n=[],i=0;i
    '),e.find(".comment-action").before(n)),n},renderThreadAction:function(e){return'
    '+Comment.renderReactionBar(e.oId,e.reactionSummary,e.currentUserReaction)+'
    '+Comment.renderThreadThankAction(e)+Comment.renderThreadVoteAction(e,!0)+Comment.renderThreadVoteAction(e,!1)+Comment.renderThreadReportAction(e)+Comment.renderThreadRemoveAction(e)+Comment.renderThreadHistoryAction(e)+Comment.renderThreadEditAction(e)+Comment.renderThreadReplyAction(e)+"
    "},renderThreadThankAction:function(e){var t=Comment.escapeJSString(e.oId),n=Comment.escapeJSString(e.commentThankLabel),i=parseInt(e.commentAnonymous||0),o=parseInt(e.rewardedCnt||e.commentThankCnt||0),r=e.rewarded?" ft-red":"",a="";return e.rewarded||(a=Label.canThankComment?" onclick=\"Comment.thank('"+t+"', '"+Comment.escapeJSString(Label.csrfToken)+"', '"+n+"', "+i+', this)"':' onclick="Article.permissionTip(Label.noPermissionLabel)"'),' '+o+""},renderThreadVoteAction:function(e,t){var n=Comment.escapeJSString(e.oId),i=parseInt(e.commentVote)===(t?0:1),o=parseInt(t?e.commentGoodCnt||0:e.commentBadCnt||0),r=t?Label.upLabel:Label.downLabel,a=t?"thumbs-up":"thumbs-down",s=t?"voteUp":"voteDown",l=(t?Label.canGoodComment:Label.canBadComment)?"Article."+s+"('"+n+"', 'comment', this)":"Article.permissionTip(Label.noPermissionLabel)";return' '+o+""},renderThreadReportAction:function(e){var t=Comment.escapeJSString(e.oId);return'"},renderThreadReplyAction:function(e){return Label.isLoggedIn&&Label.canAddComment?'':""},renderThreadRemoveAction:function(e){return e.commentIsCurrentUser&&Label.canRemoveComment?'':""},renderThreadEditAction:function(e){return e.commentIsCurrentUser&&Label.canUpdateComment?'':""},renderThreadHistoryAction:function(e){return!Label.canViewCommentHistory||parseInt(e.commentRevisionCount||0)<2?"":''},updateCommentHistoryAction:function(e,t){var n=Comment.getCommentElement(e);if(n.hasClass("comment-thread__reply")){var i=n.find("> .comment-thread__body > .comment-thread__actions > .action-btns");if(i.children(".comment-history-action").remove(),!(t<2)){var o=Comment.renderThreadHistoryAction({oId:e,commentRevisionCount:t}),r=i.children(".comment-edit-action");1===r.length?r.before(o):i.append(o)}}else n.find(".icon-history").parent().toggle(t>=2)},updateEditedCommentContent:function(e,t){var n=Comment.getCommentElement(e);n.hasClass("comment-thread__reply")?n.find("> .comment-thread__body > .comment-thread__content").html(t):n.find("> .fn-flex > .fn-flex-1 > .vditor-reset").html(t)},getThreadReplyDepth:function(e){var t=parseInt(e.commentThreadDepth,10);if(!isNaN(t)&&t>=0)return t;var n=document.getElementById(e.commentOriginalCommentId);return n&&$(n).hasClass("comment-thread__reply")?(t=parseInt($(n).attr("data-thread-depth"),10),isNaN(t)?1:t+1):0},renderThreadReplyClass:function(e){return"comment-thread__reply"+(e>0?" comment-thread__reply--nested":"")},renderThreadReplyStyle:function(e){return' data-thread-depth="'+e+'" style="--comment-thread-indent:'+28*e+'px"'},renderThreadReplyParagraphAttributes:function(e){var t=e.commentParagraphId||"";if(!t)return"";var n=parseInt(e.commentParagraphStatus,10);return n=isNaN(n)?0:n,' data-comment-paragraph-id="'+Comment.escapeHTML(t)+'" data-comment-paragraph-status="'+n+'"'},renderThreadReply:function(e){var t=Comment.getThreadReplyDepth(e);return'
    '+Comment.renderCommentAuthorName(e)+""+Comment.renderOriginalAuthorLabel(e)+' • '+Comment.escapeHTML(e.timeAgo)+'
    '+e.commentContent+"
    "+Comment.renderThreadAction(e)+"
    "},renderThreadReplies:function(e){for(var t="",n=0;n'+Comment.escapeHTML(n)+""},renderThreadPagination:function(e,t,n){if(e.find(".comment-thread__pager").remove(),n&&!(parseInt(n.paginationPageCount||0)<=1)){var i=parseInt(n.paginationCurrentPageNum||1),o=parseInt(n.paginationPageCount||1),r=['
    '];i>1&&r.push(Comment.renderThreadPageButton(t,i-1,"上一页")),r.push('',i,"/",o,""),i"),e.append(r.join(""))}},getCommentQueryExtra:function(){return Label.commentQueryExtra||""},normalizeReactionSummary:function(e){if(Array.isArray(e))return e;if("string"!=typeof e||""===e)return[];try{var t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return[]}},getReactionMap:function(e){e=Comment.normalizeReactionSummary(e);for(var t={},n=0;n/g,">")},getReactionUserDetails:function(e){return e&&Array.isArray(e.userDetails)?e.userDetails:[]},renderReactionTip:function(e){var t=Comment.getReactionUserDetails(e);if(0===t.length)return"";for(var n=[],i=0;i'),n.push('',Comment.escapeReactionHtml(s),''),n.push("")}}return 0===n.length?"":''+n.join("")+""},renderReactionSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],r=0;r'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderReactionPanel:function(e,t){for(var n=['
    '],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
    "),n.join("")},renderReactionSummaryWidget:function(e,t,n){var i=Comment.renderReactionSummaryItems(e,t,n),o=['
    '];return o.push('
    '),o.push('
    ',i,"
    "),o.join("")},renderReactionTriggerWidget:function(e,t,n){var i=n?" is-open":"",o=['
    '];return o.push('"),o.push(Comment.renderReactionPanel(e,t)),o.push("
    "),o.join("")},renderReactionBar:function(e,t,n,i,o){if("summary"===o)return Comment.renderReactionSummaryWidget(e,t,n);if("trigger"===o)return Comment.renderReactionTriggerWidget(e,n,i);var r=i?" is-open":"",a=Comment.renderReactionSummaryItems(e,t,n),s=['
    '];return s.push('
    '),s.push('
    ',a,"
    "),s.push('
    "),s.push(Comment.renderReactionPanel(e,n)),s.push("
    "),s.join("")},getReactionWidgets:function(e){return $('.comment-reaction[data-target-id="'+e+'"]')},getInteractiveReactionWidgets:function(e){return $('.comment-reaction--combined[data-target-id="'+e+'"], .comment-reaction--trigger[data-target-id="'+e+'"]')},mountReactionTrigger:function(e,t,n,i){if(0!==e.length){var o=Comment.renderReactionBar(t,[],n,i,"trigger"),r=e.find('.comment-reaction--trigger[data-target-id="'+t+'"]');r.length>0?r.replaceWith(o):e.prepend(o)}},collectReactionShells:function(e){var t=e?$(e):$(document);return t.hasClass("comment-reaction-shell")?t.add(t.find(".comment-reaction-shell")):t.find(".comment-reaction-shell")},initReactionWidgets:function(e){Comment.collectReactionShells(e).each(function(){var e=$(this),t=e.attr("data-target-id"),n=e.attr("data-summary"),i=e.attr("data-current-user-reaction")||"",o=e.closest(".comment-action__bar").find(".action-btns").first(),r=e.closest(".comment-action__left").length>0&&o.length>0,a=Comment.renderReactionBar(t,n,i,!1,r?"summary":"combined");e.replaceWith(a),r&&Comment.mountReactionTrigger(o,t,i,!1)})},closeReactionPanels:function(e){var t=e?$(e):$(document),n=".comment-reaction--combined, .comment-reaction--trigger";(t.is(n)?t.add(t.find(n)):t.find(n)).removeClass("is-open")},toggleReactionPanel:function(e){var t=$(e).closest(".comment-reaction"),n=t.attr("data-target-id"),i=!t.hasClass("is-open");Comment.closeReactionPanels(),i&&Comment.getInteractiveReactionWidgets(n).addClass("is-open")},bindReactionPanels:function(){$(document).off("click.commentReaction").on("click.commentReaction",function(e){0===$(e.target).closest(".comment-reaction").length&&Comment.closeReactionPanels()})},updateReactionBars:function(e,t,n,i){var o=Comment.getReactionWidgets(e),r="boolean"==typeof i?i:Comment.getInteractiveReactionWidgets(e).first().hasClass("is-open");o.each(function(){var i=$(this),o="combined";i.hasClass("comment-reaction--summary")?o="summary":i.hasClass("comment-reaction--trigger")&&(o="trigger"),i.replaceWith(Comment.renderReactionBar(e,t,n,r,o))})},updateReactionFromChannel:function(e){var t=e.targetId||e.commentId;if(t){var n=Comment.getReactionWidgets(t);if(0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";Comment.updateReactionBars(t,e.summary||[],i,!1)}}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".comment-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/comment/reaction",type:"POST",data:JSON.stringify({commentId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?Comment.updateReactionBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})},report:function(e){var t=$(e);t.attr("disabled","disabled").css("opacity","0.3"),$.ajax({url:Label.servePath+"/report",type:"POST",cache:!1,data:JSON.stringify({reportDataId:$("#reportDialog").data("id"),reportDataType:$("#reportDialog").data("type"),reportType:$("input[name=report]:checked").val(),reportMemo:$("#reportTextarea").val()}),complete:function(e){t.removeAttr("disabled").css("opacity","1"),0===e.responseJSON.code?(Util.alert(Label.reportSuccLabel),$("#reportTextarea").val(""),$("#reportDialog").dialog("close")):Util.alert(e.responseJSON.msg)}})},accept:function(e,t,n){confirm(e)&&$.ajax({url:Label.servePath+"/comment/accept",type:"POST",headers:{csrfToken:Label.csrfToken},cache:!1,data:JSON.stringify({commentId:t}),success:function(e){0===e.code?($(n).closest("li").addClass("cmt-perfect"),$(n).remove()):Util.alert(e.msg)}})},remove:function(e){if(!confirm("删除评论需要100积分,"+Label.confirmRemoveLabel))return!1;var t=document.getElementById(e),n=t?t.getAttribute("data-comment-paragraph-id"):"";$.ajax({url:Label.servePath+"/comment/"+e+"/remove",type:"POST",cache:!1,success:function(t,i){0===t.code?($("#"+e).remove(),n&&window.LongArticleParagraphComments&&window.LongArticleParagraphComments.handleRemove(n)):Util.alert(t.msg)}})},exchangeCmtSort:function(e){e=0===e?1:0;var t=Comment.getCommentQueryExtra().replace("&sort=hot","");window.location.href=window.location.pathname+"?m="+e+t+"#comments"},_bgFade:function(e,t){return 0!==e.length&&(!1!==(t=t||{}).scroll&&$(window).scrollTop(e[0].offsetTop-48),"comments"!==e.attr("id")&&!1!==t.highlight&&($(".comment-focus-highlight").removeClass("comment-focus-highlight"),e.addClass("comment-focus-highlight"),setTimeout(function(){e.removeClass("comment-focus-highlight")},1800),!0))},edit:function(e){Comment._toggleReply(),$(".cmt-anonymous").hide(),$.ajax({url:Label.servePath+"/comment/"+e+"/content",type:"GET",cache:!1,success:function(e,t){0===e.code&&Comment.editor.setValue(e.commentContent)}}),$("#replyUseName").html(' '+Label.commonUpdateCommentPermissionLabel+"").data("commentId",e)},goComment:function(e){var t=Comment.getCommentHashId(e);return(!t||!Comment.focusCommentById(t))&&(t&&Comment.isSameCommentPage(e)?(Comment.expandThreadForComment(t),!1):(window.location=e,!1))},focusCommentElement:function(e,t){return Comment._bgFade(e,t)},focusCommentById:function(e,t){var n=Comment.getCommentElement(e);return 1===n.length&&Comment.focusCommentElement(n,t)},focusLocationHash:function(){var e=Comment.getCommentHashId(window.location.hash);return!!e&&(!!Comment.focusCommentById(e)||Comment.expandThreadForComment(e))},expandThreadForComment:function(e){return $.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,anchorCommentId:e,userCommentViewMode:Label.userCommentViewMode,sort:Label.commentSort,author:Label.commentAuthorFilter?"1":""}),success:function(t){if(0!==t.code)return!1;Comment.renderThreadResponse(t.commentThreadRootId,t.commentThreadReplies||[],e,{pagination:t.pagination})}}),!0},renderThreadResponse:function(e,t,n,i){i=i||{};var o=Comment.getCommentElement(e);if(1!==o.length)return!1;var r=Comment.ensureThread(o,e);return r.find(".comment-thread__list").html(Comment.renderThreadReplies(t)),r.addClass("comment-thread--expanded"),r.find(".comment-thread__more").remove(),Comment.renderThreadPagination(r,e,i.pagination),Comment.initReactionWidgets(r),Util.listenUserCard(),Util.parseHljs(),Util.parseMarkdown(),!1===i.focus||!n||Comment.focusCommentById(n)},_hideReplyPanel:function(){var e=$(".editor-panel");return!(0===e.length||!e.hasClass("editor-panel--open"))&&(e.removeClass("editor-panel--open"),e.find(".wrapper").slideUp(function(){e.fadeOut(100),$(".footer").removeAttr("style")}),!1)},_toggleReply:function(e){if(!Label.isLoggedIn)return Util.needLogin(),!1;if(0===$("#commentContent").length)return Util.alert(Label.notAllowCmtLabel),!1;if("false"===$(this).data("hasPermission"))return Article.permissionTip(Label.noPermissionLabel),!1;var t=$(".editor-panel");if(t.hasClass("editor-panel--open"))return Comment._hideReplyPanel();document.body.classList.contains("long-article-page")&&window.LongArticle&&!window.LongArticle.isCommentsOpen()&&window.LongArticle.openComments(),$(".cmt-anonymous").show(),$(".footer").css("margin-bottom",$(".editor-panel > .wrapper").outerHeight()+"px"),$("#replyUseName").html(''+$(".article-title").text().replace(//g,">")+"").removeData(),"0px"!==t.css("bottom")&&(t.find(".wrapper").hide(),t.css("bottom",0)),t.show().addClass("editor-panel--open"),t.find(".wrapper").slideDown(function(){Comment.editor.focus(),e&&e()})},loadEmojis:function(){let e=Comment.getEmojis(),t="";for(let n=0;n\n
    \n \n`;$("#emojis").html(t)},confirmed:!1,delEmoji:function(e){if(!0===Comment.confirmed||confirm("确定要删除该表情包吗?")){Comment.confirmed=!0;let t=Comment.getEmojis();for(let n=0;n5242880?Util.alert("图片过大 (最大限制 5M)"):t.submit():Util.alert("只允许上传图片!")}}else t.submit()},formData:function(e){return e.serializeArray()},submit:function(e,t){},done:function(e,t){var n={result:{key:t.result.data.succMap[Object.keys(t.result.data.succMap)[0]]}};Comment.addEmoji(n.result.key)},fail:function(e,t){Util.alert("Upload error: "+t.errorThrown)}})},fromURL:function(){Util.alert('
    \n\n
    \n
    \n \n
    \n
    ',"从URL导入表情包"),$("#fromURL").focus(),$("#fromURL").unbind(),$("#fromURL").bind("keypress",function(e){"13"==e.keyCode&&(Comment.addEmoji($("#fromURL").val()),Util.closeAlert())})},addEmoji:function(){if(0!==arguments.length){var e=[];if(1===arguments.length&&Array.isArray(arguments[0]))e=arguments[0];else for(var t=0;t ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-reply").parent().click():Comment._toggleReply(),!1}).bind("keyup","h",function(){return 1===$("#comments .list > ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-heart").parent().click(),!1}).bind("keyup","t",function(){return 1===$("#comments .list > ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-thumbs-up").parent().click(),!1}).bind("keyup","d",function(){return 1===$("#comments .list > ul > li.focus").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .icon-thumbs-down").parent().click(),!1}).bind("keyup","c",function(){return 1===$("#comments .list > ul > li.focus .comment-info .icon-reply-to").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .comment-info .icon-reply-to").parent().click(),!1}).bind("keyup","m",function(){return 1===$("#comments .list > ul > li.focus .comment-action > .ft-fade > .fn-pointer").length&&"x"===Util.prevKey&&$("#comments .list > ul > li.focus .comment-action > .ft-fade > .fn-pointer").click(),!1}).bind("keyup","a",function(){return"x"===Util.prevKey&&1===$("#comments .list > ul > li.focus .icon-setting").parent().length&&(window.location=$("#comments .list > ul > li.focus .icon-setting").parent().attr("href")),!1}).bind("keyup","m",function(){return"v"===Util.prevKey&&Article.toggleToc(),!1}).bind("keyup","h",function(){return"v"===Util.prevKey&&$("#thankArticle").click(),!1}).bind("keyup","t",function(){return"v"===Util.prevKey&&$(".article-header .icon-thumbs-up").parent().click(),!1}).bind("keyup","d",function(){return"v"===Util.prevKey&&$(".article-header .icon-thumbs-down").parent().click(),!1}).bind("keyup","i",function(){return"v"===Util.prevKey&&$(".article-header .icon-view").parent().click(),!1}).bind("keyup","c",function(){return"v"===Util.prevKey&&$(".article-header .icon-star").parent().click(),!1}).bind("keyup","l",function(){return"v"===Util.prevKey&&$(".article-header .icon-history").parent().click(),!1}).bind("keyup","e",function(){return"v"===Util.prevKey&&1===$(".article-actions .icon-edit").parent().length&&(window.location=$(".article-actions .icon-edit").parent().attr("href")),!1}).bind("keyup","s",function(){return"v"===Util.prevKey&&1===$(".article-actions .icon-chevron-up").length&&Article.stick(Label.articleOId),!1}).bind("keyup","a",function(){return"v"===Util.prevKey&&1===$(".article-actions .icon-setting").parent().length&&(window.location=$(".article-actions .icon-setting").parent().attr("href")),!1}).bind("keyup","p",function(){return"v"===Util.prevKey&&1===$(".article-header a[rel=prev]").length&&(window.location=$(".article-header a[rel=prev]").attr("href")),!1}).bind("keyup","n",function(){return"v"===Util.prevKey&&1===$(".article-header a[rel=next]").length&&(window.location=$(".article-header a[rel=next]").attr("href")),!1})},init:function(){if($("#sendComment").click(function(){Comment._toggleReply()}),Comment.focusLocationHash(),this._initHotKey(),$.pjax({selector:"#comments .pagination a",container:"#comments",show:"",cache:!1,storage:!0,titleSuffix:"",callback:function(){Comment.initReactionWidgets($("#comments")),Util.parseMarkdown(),Util.parseHljs(),Util.listenUserCard(),Comment.focusLocationHash()}}),NProgress.configure({showSpinner:!1}),$("#comments").bind("pjax.start",function(){NProgress.start()}),$("#comments").bind("pjax.end",function(){NProgress.done()}),ArticleReaction.bindPanels(),ArticleReaction.initWidgets(),Comment.bindReactionPanels(),Comment.initReactionWidgets($("#comments")),!Label.isLoggedIn||!document.getElementById("commentContent"))return!1;Comment.editor=Util.newVditor({id:"commentContent",cache:!0,preview:{mode:"editor"},resize:{enable:!0,position:"top"},height:200,placeholder:Label.commentEditorPlaceholderLabel,ctrlEnter:function(){Comment.add(Label.articleOId,Label.csrfToken,document.getElementById("articleCommentBtn"))},esc:function(){$(".editor-hide").click()}})},thank:function(e,t,n,i,o){if(!Label.isLoggedIn)return Util.needLogin(),!1;if(0===i&&!confirm(n))return!1;var r={commentId:e};$.ajax({url:Label.servePath+"/comment/thank",type:"POST",headers:{csrfToken:t},cache:!1,data:JSON.stringify(r),error:function(e,t,n){Util.alert(n)},success:function(e,t){if(0===e.code){$(o).removeAttr("onclick");var n=$(''),i=$(o).offset().top,r=$(o).offset().left;n.css({"z-index":9999,top:i,left:r,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(n),n.animate({left:r-150,top:i-60,opacity:0},1e3,function(){var e=parseInt($(o).text());$(o).html(' '+(e+1)).addClass("ft-red"),n.remove()})}else Util.alert(e.msg)}})},showReply:function(e,t,n){var i=$(t).closest("li").find("."+n);if("comment-get-comment"===n){if(0!==i.find("li").length)return i.html(""),!1}else if(0===$(t).find(".icon-chevron-down").length)return $(t).find(".icon-chevron-up").removeClass("icon-chevron-up").addClass("icon-chevron-down").find("use").attr("xlink:href","#chevron-down"),i.html(""),!1;if("0.3"===$(t).css("opacity"))return!1;var o="/comment/replies";"comment-get-comment"===n&&(o="/comment/original"),$.ajax({url:Label.servePath+o,type:"POST",data:JSON.stringify({commentId:e,userCommentViewMode:Label.userCommentViewMode}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(e,n){if(0!==e.code)return Util.alert(e.msg),!1;var o=e.commentReplies,r="";o instanceof Array||(o=[o]),0===o.length&&(r='
  • '+Label.removedLabel+"
  • ");for(var a=0;a
    ',r+='',r+='
    ',r+="
    ",r+='
    ',r+='',r+=Comment.renderCommentAuthorName(s),r+="",r+=Comment.renderOriginalAuthorLabel(s),r+=' • '+s.timeAgo,s.rewardedCnt>0&&(r+=' '+s.rewardedCnt+" "),r+="",r+='
    '+s.commentContent+"
    "+Comment.renderReactionBar(s.oId,s.reactionSummary,s.currentUserReaction)+"
    "}i.html("
      "+r+"
    "),Util.parseHljs(),Util.parseMarkdown(),$(t).find(".icon-chevron-down").removeClass("icon-chevron-down").addClass("icon-chevron-up").find("use").attr("xlink:href","#chevron-up")},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},showThreadReplies:function(e,t,n){if("0.3"===$(t).css("opacity"))return!1;$.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,paginationCurrentPageNum:n||1}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(t){if(0!==t.code)return Util.alert(t.msg),!1;Comment.renderThreadResponse(t.commentThreadRootId||e,t.commentThreadReplies||[],null,{focus:!1,pagination:t.pagination})},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},add:function(e,t,n){var i={articleId:e,commentAnonymous:$("#commentAnonymous").prop("checked"),commentVisible:$("#commentVisible").prop("checked"),commentContent:Comment.editor.getValue(),userCommentViewMode:Label.userCommentViewMode};$("#replyUseName").data("commentOriginalCommentId")&&(i.commentOriginalCommentId=$("#replyUseName").data("commentOriginalCommentId"));var o=window.LongArticleParagraphComments,r=o&&o.getSubmissionParagraphId?o.getSubmissionParagraphId(i.commentOriginalCommentId):"";r&&(i.paragraphId=r);var a=Label.servePath+"/comment",s="POST",l=$("#replyUseName").data("commentId");l?(a=Label.servePath+"/comment/"+l,s="PUT"):r&&(a=Label.servePath+"/comment/paragraph"),$.ajax({url:a,type:s,headers:{csrfToken:t},cache:!1,data:JSON.stringify(i),beforeSend:function(){$(n).attr("disabled","disabled").css("opacity","0.3")},success:function(e,t){$(n).removeAttr("disabled").css("opacity","1"),0===e.code?(l&&(Comment.updateEditedCommentContent(l,e.commentContent),Comment.updateCommentHistoryAction(l,parseInt(e.commentRevisionCount||0))),i.commentOriginalCommentId&&Util.setUnreadNotificationCount(),Comment.editor.setValue(""),$(".editor-hide").click(),$("#replyUseName").text("").removeData(),r&&o&&o.handleSubmitSuccess(),i.commentOriginalCommentId&&Comment.focusCommentById(i.commentOriginalCommentId,{scroll:!1})):$("#addCommentTip").addClass("error").html("
    • "+e.msg+"
    ")},error:function(e){$("#addCommentTip").addClass("error").html("
    • "+e.statusText+"
    ")},complete:function(){$(n).removeAttr("disabled").css("opacity","1"),setTimeout(Util.listenUserCard,1e3)}})},reply:function(e,t){window.LongArticleParagraphComments&&window.LongArticleParagraphComments.activateFromComment(document.getElementById(t)),Comment._toggleReply(function(){var e=Comment.getCommentElement(t);0!==e.length&&$(window).height()-(e[0].offsetTop-$(window).scrollTop()+e.outerHeight())<$(".editor-panel .wrapper").outerHeight()&&$(window).scrollTop(e[0].offsetTop-($(window).height()-$(".editor-panel .wrapper").outerHeight()-e.outerHeight()))});var n="",i=Comment.escapeHTML(e),o=Comment.getCommentElement(t),r=o.find(">.fn-flex>div>a").clone();0===r.length&&(r=o.find(">.fn-flex .avatar").clone()),0===r.length?n=' '+i+"":r.is("a")?(r.addClass("ft-a-title").attr("href","#"+t).attr("onclick",'Comment._bgFade($("#'+t+'"))'),r.find("div").removeClass("avatar").addClass("avatar-small").after(" "+i).before(' '),n=r[0].outerHTML):(r.removeClass("avatar").addClass("avatar-small"),n=' '+r[0].outerHTML+" "+i+""),$("#replyUseName").html(n).data("commentOriginalCommentId",t)}},ArticleReaction={renderSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],r=0;r'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderPanel:function(e,t){for(var n=['
    '],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
    "),n.join("")},renderBar:function(e,t,n,i){var o=i?" is-open":"",r=['
    '];return r.push('
    '),r.push('
    ',ArticleReaction.renderSummaryItems(e,t,n),"
    "),r.push('
    "),r.push(ArticleReaction.renderPanel(e,n)),r.push("
    "),r.join("")},collectShells:function(e){var t=e?$(e):$(document);return t.hasClass("article-reaction-shell")?t.add(t.find(".article-reaction-shell")):t.find(".article-reaction-shell")},ensureShell:function(){if(!($(".article-reaction-shell, .article-reaction").length>0)&&Label.articleOId){var e=$(".article-main .tag-desc").first().closest(".fn-flex");0===e.length&&(e=$(".article-main .article-actions.action-btns").first()),0!==e.length&&$('
    ').insertAfter(e)}},getWidgets:function(e){return $('.article-reaction[data-target-id="'+e+'"]')},initWidgets:function(e){e||ArticleReaction.ensureShell(),ArticleReaction.collectShells(e).each(function(){var e=$(this);e.replaceWith(ArticleReaction.renderBar(e.attr("data-target-id"),e.attr("data-summary"),e.attr("data-current-user-reaction")||"",!1))})},closePanels:function(){$(".article-reaction.is-open").removeClass("is-open")},togglePanel:function(e){var t=$(e).closest(".article-reaction"),n=!t.hasClass("is-open");ArticleReaction.closePanels(),n&&t.addClass("is-open")},bindPanels:function(){$(document).off("click.articleReaction").on("click.articleReaction",function(e){0===$(e.target).closest(".article-reaction").length&&ArticleReaction.closePanels()})},updateBars:function(e,t,n,i){var o=ArticleReaction.getWidgets(e),r="boolean"==typeof i?i:o.first().hasClass("is-open");o.each(function(){$(this).replaceWith(ArticleReaction.renderBar(e,t,n,r))})},updateReactionFromChannel:function(e){var t=e.targetId,n=ArticleReaction.getWidgets(t);if(t&&0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";ArticleReaction.updateBars(t,e.summary||[],i,!1)}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".article-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/article/reaction",type:"POST",data:JSON.stringify({articleId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?ArticleReaction.updateBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})}},Article={initAudio:function(){$(".content-audio").each(function(){var e=$(this);new APlayer({element:this,narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",preload:"none",mode:"circulation",music:{title:e.data("title"),author:'音乐分享',url:e.data("url"),pic:Label.staticServePath+"/images/music.png"}})});var e=$("#articleAudio");if(0===e.length)return!1;new APlayer({element:document.getElementById("articleAudio"),narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",mode:"order",preload:"none",music:{title:"语音预览",author:'小薇',url:e.data("url"),pic:Label.staticServePath+"/images/blank.png"}})},permissionTip:function(e){Label.isLoggedIn?Util.alert(e):Util.needLogin()},voteUp:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.next();if(i.hasClass("disabled"))return!1;var r={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/up/"+t,type:"POST",cache:!1,data:JSON.stringify(r),success:function(e,t){i.removeClass("disabled");var n=parseInt(i.text()),r=parseInt(o.text());0!==e.code?Util.alert(e.msg):0===e.type?i.html(' '+(n-1)).removeClass("ft-red"):(i.html(' '+(n+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(r-1)).removeClass("ft-red"))}})},voteDown:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.prev();if(i.hasClass("disabled"))return!1;var r={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/down/"+t,type:"POST",cache:!1,data:JSON.stringify(r),success:function(e,t){i.removeClass("disabled");var n=parseInt(o.text()),r=parseInt(i.text());if(0===e.code)return 1===e.type?i.html(' '+(r-1)).removeClass("ft-red"):(i.html(' '+(r+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(n-1)).removeClass("ft-red")),!1;Util.alert(e.msg)}})},previewImgAfterLoading:function(){$(".img-preview img").css("transform","translate3d("+Math.max(0,$(window).width()-$(".img-preview img").width())/2+"px, "+Math.max(0,$(window).height()-$(".img-preview img").height())/2+"px, 0)"),setTimeout(function(){$(".img-preview").width($(window).width())},300)},init:function(){this.initToc(),this.share(),Util.parseHljs(),Util.parseMarkdown();var e=null;$(".article").on("dblclick",".vditor-reset img",function(){clearTimeout(e),$(this).hasClass("emoji")||1===$(this).closest(".editor-panel").length||1===$(this).closest(".ad").length||window.open($(this).attr("src"))}).on("click",".vditor-reset img",function(t){if(clearTimeout(e),!$(this).hasClass("emoji")&&1!==$(this).closest(".editor-panel").length&&1!==$(this).closest(".ad").length){var n=$(this),i=this;e=setTimeout(function(){var e=i.offsetTop,t=i.offsetLeft;1===n.closest(".comments").length&&(e+=n.closest("li")[0].offsetTop,t=t+$(".comments")[0].offsetLeft+15);var o=(n.attr("src")||"").split("?imageView2")[0],r=$('
    ').on("click",function(){$(this).remove()}),a=$("").css("transform","translate3d("+Math.max(0,t)+"px, "+Math.max(0,e-$(window).scrollTop())+"px, 0)").attr("src",o).on("load",Article.previewImgAfterLoading);r.append(a),$("body").append(r),$(".img-preview").css({"background-color":"#fff",position:"fixed"})},100)}}),$("#reportDialog").dialog({width:$(window).width()>500?500:$(window).width()-50,height:450,modal:!0,hideFooter:!0}),this.initAudio(),$(window).scroll(function(){var e=$(window).scrollTop();$(".share").css("top",e+60+"px"),e<$(".article-title").offset().top?($(".article-header").css("top","-60px"),$(".nav").show()):($(".article-header").css("top","0"),$(".nav").hide())}),$(window).resize(function(){Article.syncTocLayout()});var t=location.search.split("r=")[1];t&&sessionStorage.setItem("r",t.split("&")[0]),$(function(){$.ajax({url:Label.servePath+"/api/article/reward/senders/"+Label.articleOId,method:"GET",async:!1,headers:{csrfToken:Label.csrfToken},success:function(e){if(0===e.code&&""!==e.data){let t=e.data;for(let e=0;e\n
    \n
    \n
    \n")}Util.listenUserCard()}}})})},revision:function(e,t){if(!Label.isLoggedIn)return Util.needLogin(),!1;t||(t="article"),Article._revisionDialogOpen("comment"===t?"评论历史":"文章历史"),"comment"===t?Article._legacyRevision(e,t):Article._articleRevision(e)},_revisionDialogInit:function(){$("#revisionDialog").length>0||($("body").append(''),$("#revisionDialog .revision-modal__body").append($("#revision")),$("#revisionDialog .revision-modal__overlay, #revisionDialog .revision-modal__close").click(function(){Article._revisionDialogClose()}),$(document).off("keydown.revisionDialog").on("keydown.revisionDialog",function(e){"Escape"===e.key&&$("#revisionDialog").hasClass("is-open")&&Article._revisionDialogClose()}))},_revisionDialogOpen:function(e){Article._revisionDialogInit(),$("#revisionDialogTitle").text(e||"历史版本"),$("#revisionDialog").addClass("is-open").attr("aria-hidden","false"),$("body").addClass("revision-modal-open"),$("#revisionDialog .revision-modal__close").focus()},_revisionDialogClose:function(){$("#revisionDialog").removeClass("is-open").attr("aria-hidden","true"),$("body").removeClass("revision-modal-open")},_legacyRevision:function(e,t){$.ajax({url:Label.servePath+"/"+t+"/"+e+"/revisions",cache:!1,success:function(e,n){if(0===e.code){if(0===e.revisions.length||1===e.revisions.length)return $("#revision > .revisions").remove(),$("#revisions").html(""+Label.noRevisionLabel+""),!1;$("#revisions").html("").prev().remove(),$("#revisions").data("revisions",e.revisions).before('
    '+(e.revisions.length-1)+"~"+e.revisions.length+"/"+e.revisions.length+'
    '),e.revisions.length<=2&&$("#revision a").first().addClass("disabled");var i=JsDiff.createPatch("",e.revisions[e.revisions.length-2].revisionData.articleContent||e.revisions[e.revisions.length-2].revisionData.commentContent,e.revisions[e.revisions.length-1].revisionData.articleContent||e.revisions[e.revisions.length-1].revisionData.commentContent,e.revisions[e.revisions.length-2].revisionData.articleTitle||"",e.revisions[e.revisions.length-1].revisionData.articleTitle||"");return new Diff2HtmlUI({diff:i}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0}),Article._revisionsControls(t),!1}Util.alert(e.msg)}})},_revisionsControls:function(e){var t=$("#revisions").data("revisions");$("#revision a.first").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions").text().split("~")[0]);e<=2?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.last").removeClass("disabled"),$("#revision .revisions > span").html(e-1+"~"+e+"/"+t.length);var n=JsDiff.createPatch("",t[e-2].revisionData.articleContent||t[e-2].revisionData.commentContent,t[e-1].revisionData.articleContent||t[e-1].revisionData.commentContent,t[e-2].revisionData.articleTitle||"",t[e-1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}}),$("#revision a.last").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions span").text().split("~")[0]);e>t.length-3?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.first").removeClass("disabled"),$("#revision .revisions > span").html(e+1+"~"+(e+2)+"/"+t.length);var n=JsDiff.createPatch("",t[e].revisionData.articleContent||t[e].revisionData.commentContent,t[e+1].revisionData.articleContent||t[e+1].revisionData.commentContent,t[e].revisionData.articleTitle||"",t[e+1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}})},_articleRevision:function(e){$("#revision > .revisions").remove(),$("#revisions").removeData("revisions").removeData("revisionDetails").html("加载中"),$.ajax({url:Label.servePath+"/article/"+e+"/revisions/list",cache:!1,success:function(t){if(0===t.code){var n=t.revisions||[];n.length<2?$("#revisions").html(""+Label.noRevisionLabel+""):($("#revisions").data("revisions",n).data("revisionDetails",{}).html(Article._revisionPickerHtml(n)),Article._revisionBindPicker(e),Article._revisionCompare(e))}else $("#revisions").html(""+Article._revisionEscapeHTML(t.msg||"加载失败")+"")},error:function(){$("#revisions").html("加载失败")}})},_revisionPickerHtml:function(e){for(var t=e.length-2,n=e.length-1,i="",o="",r=0;r
    '},_revisionOptionHtml:function(e,t){return'"},_revisionVersionLabel:function(e){return e.current?"当前 "+e.revisionTimeStr:e.revisionTimeStr},_revisionBindPicker:function(e){$("#revision .revision-picker__compare").click(function(){Article._revisionCompare(e)}),$("#revision .revision-picker__diff-only").change(function(){Article._revisionCompare(e)})},_revisionCompare:function(e){var t=$("#revision .revision-picker__base").val(),n=$("#revision .revision-picker__target").val(),i=$("#revision .revision-picker__diff-only").is(":checked");$("#revisions .revision-diff").html("加载中"),$.when(Article._revisionFetch(e,t),Article._revisionFetch(e,n)).done(function(e,t){Article._revisionRenderCompare(e,t,i)}).fail(function(e){$("#revisions .revision-diff").html(""+Article._revisionEscapeHTML(e||"加载失败")+"")})},_revisionFetch:function(e,t){var n=$("#revisions").data("revisionDetails")||{},i=$.Deferred();return n[t]?(i.resolve(n[t]),i.promise()):($.ajax({url:Label.servePath+"/article/"+e+"/revisions/"+encodeURIComponent(t),cache:!1,success:function(e){0===e.code?(n[t]=e.revision,$("#revisions").data("revisionDetails",n),i.resolve(e.revision)):i.reject(e.msg)},error:function(){i.reject("加载失败")}}),i.promise())},_revisionRenderCompare:function(e,t,n){var i=e.revisionData||{},o=t.revisionData||{},r=Article._revisionRenderInlineDiff("标题",i.articleTitle||"",o.articleTitle||"",n);r+=Article._revisionRenderLineDiff("内容",i.articleContent||"",o.articleContent||"",n),$("#revisions .revision-diff").html(r||"无差异")},_revisionRenderInlineDiff:function(e,t,n,i){for(var o=JsDiff.diffWordsWithSpace?JsDiff.diffWordsWithSpace(t,n):JsDiff.diffWords(t,n),r=!1,a="",s=0;s'+Article._revisionEscapeHTML(o[s].value)+"")}return i&&!r?"":'

    '+e+'

    '+a+"
    "},_revisionRenderLineDiff:function(e,t,n,i){for(var o=JsDiff.diffLines(t,n),r=!1,a="",s=0;s

    '+e+'

    '+a+"
    "},_revisionLineHtml:function(e,t){for(var n=Article._revisionSplitLines(e),i="",o=0;o'+Article._revisionEscapeHTML(n[o])+"";return i},_revisionSplitLines:function(e){var t=e.split("\n");return""===t[t.length-1]&&t.pop(),t},_revisionEscapeHTML:function(e){return String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},share:function(){var e=$("#qrCode").data("shareurl");$("#qrCode").qrcode({width:90,height:90,text:e}),$("body").click(function(){$("#qrCode").slideUp()}),$(".share > span").click(function(){var t=$(this).data("type");if(!t)return!1;if("wechat"===t)return $("#qrCode").slideToggle(),!1;if("copy"===t)return!1;var n=encodeURIComponent(Label.articleTitle+" - "+Label.symphonyLabel),i=encodeURIComponent(e),o=$(".article-info .avatar-mid").css("background-image");pic=o.substring(5,o.length-2);var r={};r.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+n+"&url="+i+"&pic="+pic,r.weibo="http://v.t.sina.com.cn/share/share.php?title="+n+"&url="+i+"&pic="+pic,r.google="https://plus.google.com/share?url="+i,r.twitter="https://twitter.com/intent/tweet?status="+n+" "+i,window.open(r[t],"_blank","top=100,left=200,width=648,height=618")}),$("#qrCode").click(function(){$(this).hide()}),$("#shareClipboard").mouseover(function(){$(this).attr("aria-label",Label.copyLabel)}),Util.clipboard($("#shareClipboard"),$("#shareClipboard").next(),function(){$("#shareClipboard").attr("aria-label",Label.copiedLabel)})},reward:function(e){confirm(Label.rewardConfirmLabel)&&$.ajax({url:Label.servePath+"/article/reward?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0!==e.code)Util.alert(e.msg);else{$("#articleRewardContent .vditor-reset").html(e.articleRewardContent),Util.parseHljs(),Util.parseMarkdown();var n=$("#articleRewardContent > span"),i=parseInt(n.text());n.addClass("ft-red").removeClass("ft-blue").html(i+1+" "+Label.rewardLabel).removeAttr("onclick")}},error:function(e){Util.needLogin()}})},thankArticle:function(e,t){return Label.isLoggedIn?!(0===t&&!confirm(Label.thankArticleConfirmLabel))&&(Label.currentUserName===Label.articleAuthorName?(Util.alert(Label.thankSelfLabel),!1):void $.ajax({url:Label.servePath+"/article/thank?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0===e.code){var n=parseInt($("#thankArticle").text());$("#thankArticle").removeAttr("onclick").html(''+(n+1)+"").addClass("ft-red").removeClass("ft-blue");var i=$(''),o=$("#thankArticle").offset().top,r=$("#thankArticle").offset().left;return i.css({"z-index":9999,top:o-20,left:r,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(i),i.animate({top:o-180,opacity:0},1500,function(){i.remove()}),!1}Util.alert(e.msg)}})):(Util.needLogin(),!1)},stick:function(e){confirm(Label.stickConfirmLabel)&&$.ajax({url:Label.servePath+"/article/stick?articleId="+e,type:"POST",cache:!1,success:function(e,t){Util.alert(e.msg),window.location.href=Label.servePath+"/recent"}})},playThought:function(e){var t=String.fromCharCode(31),n=String.fromCharCode(30),i=String.fromCharCode(29),o=String.fromCharCode(10),r=String.fromCharCode(24),a=$("#thoughtProgress > span"),s=$("#thoughtProgress > svg"),l="#articleThought",c=function(e,n){var o=e.split(t);3===o.length&&o.splice(0,0,"");var a=o[0],s=o[2].split("-"),l=o[3].split("-");if(s[0]=parseInt(s[0]),s[1]=parseInt(s[1]),l[0]=parseInt(l[0]),l[1]=parseInt(l[1]),a===r){for(var c=[],m=s[1],d=0;l[1],m").replace(/ /g," ").replace(/ /g,"    ");$(l).data("text",e).html(t)},parseInt(m[u].split(t)[1])/d);for(var h=0,f=parseInt(m[u-1].split(t)[1])/d,v=setInterval(function(){h>=f?(a.width("100%"),s.css("left","100%"),clearInterval(v)):(h+=20,s.css("left",100*h/f+"%"),a.width(100*h/f+"%"))},20),g="",C="",b=0,y=0,w=0;y").replace(/ /g," ").replace(/ /g,"    "),g=L,$(l).html(C),b=Math.max(b,$(l).height())}$("#thoughtProgressPreview").html('
    '+C+"
    "),$("#thoughtProgressPreview").dialog({modal:!0,hideFooter:!0}),s.click(function(){$("#thoughtProgressPreview").dialog("open")}),$(l).html(C).height(b).css("margin-bottom","15px").html("")},syncTocLayout:function(){var e=1===$("#articleToC").length;return $("body.article").toggleClass("article--has-toc",e),$(".article-body .wrapper, #articleCommentsPanel, .article-footer").css("margin-right",""),e&&$("#articleToC > .module-panel").height($(window).height()-48),e},initToc:function(){if(!this.syncTocLayout())return!1;var e=$("#articleToC"),t=$(".article-toc"),n=$(".article-content [id^=toc]"),i=!1;e.offset().top;toc=[],e.find("li").click(function(){var t=$(this);let n=$(this).find("a").text();n=normalizeHeadingIdFromString(n),document.getElementById(n).scrollIntoView({behavior:"smooth"}),setTimeout(function(){e.find("li").removeClass("current"),t.addClass("current")},50)}),$(window).scroll(function(o){if(parseInt($("#articleToC").css("right"))<0)return!1;$("#articleToC > .module-panel").height($(window).height()-49),toc=[],n.each(function(e){toc.push({id:this.id,offsetTop:this.offsetTop})});for(var r=$(window).scrollTop(),a=0,s=toc.length;a0?a-1:0;e.find('a[data-id="'+toc[l].id+'"]').parent().addClass("current");break}r>=toc[toc.length-1].offsetTop-53&&(e.find("li").removeClass("current"),e.find("li:last").addClass("current"));var c=e.find("li.current")[0].offsetTop;i||(t.scrollTop()c-30&&t.scrollTop(c)),setTimeout(function(){i=!1},600)}),$(window).scroll(),t.scrollTop(e.find("li.current")[0].offsetTop).scroll(function(){i=!0})},toggleToc:function(){var e=$("#articleToC");if(0===e.length)return!1;var t=$(".article-header .icon-unordered-list");t.hasClass("ft-red")?(e.animate({right:"-"+$("#articleToC").outerWidth()+"px"}),t.removeClass("ft-red"),$(".article-actions .icon-unordered-list").removeClass("ft-red")):(e.animate({right:0}),t.addClass("ft-red"),$(".article-actions .icon-unordered-list").addClass("ft-red"))},getNotificationCommentIds:function(e){var t=[],n=function(e){(e=String(e||"").replace(/^#/,"").trim())&&-1===t.indexOf(e)&&t.push(e)};return String(e||"").split(",").forEach(n),n(window.location.hash),t.join(",")},makeNotificationRead:function(e,t){var n={articleId:e,commentIds:Article.getNotificationCommentIds(t)};$.ajax({url:Label.servePath+"/notifications/make-read",type:"POST",cache:!1,data:JSON.stringify(n)})}},ArticleAdjacentNav={storageKey:"articleAdjacentSort",sortValues:["time","author","hot"],init:function(){var e=$("[data-article-nav-sort]");0!==e.length&&(this.applySort(e,this.getStoredSort()),this.bindSortChange(e))},getStoredSort:function(){var e=window.localStorage.getItem(this.storageKey);return this.isValidSort(e)?e:"time"},isValidSort:function(e){return-1!==this.sortValues.indexOf(e)},bindSortChange:function(e){var t=this;e.find(".article-nav-sort__input").on("change",function(){this.checked&&t.isValidSort(this.value)&&(window.localStorage.setItem(t.storageKey,this.value),t.applySort(e,this.value))})},applySort:function(e,t){e.find('.article-nav-sort__input[value="'+t+'"]').prop("checked",!0)}};Article.init(),$(document).ready(function(){ArticleAdjacentNav.init(),Comment.init(),EmojiGroups.init("Comment","New"),Comment.loadEmojiGroupsNew(),(()=>{let e=(new Date).getTime(),t=0;const n=function(){0!==t&&(clearTimeout(t),t=0),$("#emojiList").css("top","auto"),$("#emojiList").css("bottom","60px"),e=(new Date).getTime(),t=setTimeout(()=>{(new Date).getTime()-e<=700&&$("#emojiList").removeClass("showList")},null!==navigator.userAgent.match(/(phone|pad|pod|ios|Android|Mobile|BlackBerry|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian)/i)?0:600)};$("#emojiBtn").hover(function(){0!==t&&(clearTimeout(t),t=0),$("#emojiList").css("top","auto"),$("#emojiList").css("bottom","60px"),e=(new Date).getTime(),EmojiGroups.ensureCurrentFresh(Comment,"New"),setTimeout(()=>0!==$("#emojiBtn:hover").length&&$("#emojiList").addClass("showList"),300)},n),$("#emojiList").hover(function(){0!==t&&(clearTimeout(t),t=0),e=(new Date).getTime()},n)})(),ArticleChannel.init(Label.articleChannel),Label.isLoggedIn&&(Article.makeNotificationRead(Label.articleOId,Label.notificationCmtIds),setTimeout(function(){Util.setUnreadNotificationCount()},1e3))}),Article.initCollectButtons=function(){$(".comment-action .action-btns").each(function(){const e=$(this);if(e.data("collect-inited"))return;const t=e.closest("li").find(".vditor-reset.comment").first();if(!t.length)return;const n=t.find("img").filter(function(){return!$(this).hasClass("emoji")&&0===$(this).closest(".editor-panel, .ad").length}).map(function(){return $(this).attr("src")}).get().filter(Boolean),i=Array.from(new Set(n));if(!i.length)return;e.data("collect-inited",!0);const o=$('');o.append(' 收藏表情'),o.on("click",function(e){e.stopPropagation(),EmojiGroups.openCollectDialog(i)}),e.prepend(o).prepend(" ")})},$(function(){Article.initCollectButtons()}); \ No newline at end of file diff --git a/src/main/resources/js/m-article.js b/src/main/resources/js/m-article.js index 550e4610..a87f14eb 100644 --- a/src/main/resources/js/m-article.js +++ b/src/main/resources/js/m-article.js @@ -294,11 +294,22 @@ var Comment = { return ' data-thread-depth="' + depth + '" style="--comment-thread-indent:' + (depth * 16) + 'px"' }, + renderThreadReplyParagraphAttributes: function (data) { + var paragraphId = data.commentParagraphId || '' + if (!paragraphId) { + return '' + } + var paragraphStatus = parseInt(data.commentParagraphStatus, 10) + paragraphStatus = isNaN(paragraphStatus) ? 0 : paragraphStatus + return ' data-comment-paragraph-id="' + Comment.escapeHTML(paragraphId) + + '" data-comment-paragraph-status="' + paragraphStatus + '"' + }, renderThreadReply: function (data) { var depth = Comment.getThreadReplyDepth(data) return ''),e.find(".comment-action").before(n)),n},renderThreadAction:function(e){return'
    '+Comment.renderReactionShell(e.oId,e.reactionSummary,e.currentUserReaction)+'
    '+Comment.renderThreadReplyAction(e)+Comment.renderThreadHistoryAction(e)+Comment.renderThreadEditAction(e)+Comment.renderThreadRemoveAction(e)+Comment.renderThreadThankAction(e)+Comment.renderThreadVoteAction(e,!0)+Comment.renderThreadVoteAction(e,!1)+Comment.renderThreadReportAction(e)+"
    "},renderThreadThankAction:function(e){var t=Comment.escapeJSString(e.oId),n=Comment.escapeJSString(e.commentThankLabel),i=parseInt(e.commentAnonymous||0),o=parseInt(e.rewardedCnt||e.commentThankCnt||0),a=e.rewarded?" ft-red":"",r="";return e.rewarded||(r=Label.canThankComment?" onclick=\"Comment.thank('"+t+"', '"+Comment.escapeJSString(Label.csrfToken)+"', '"+n+"', "+i+', this)"':' onclick="Article.permissionTip(Label.noPermissionLabel)"'),' '+o+""},renderThreadVoteAction:function(e,t){var n=Comment.escapeJSString(e.oId),i=parseInt(e.commentVote)===(t?0:1),o=parseInt(t?e.commentGoodCnt||0:e.commentBadCnt||0),a=t?Label.upLabel:Label.downLabel,r=t?"thumbs-up":"thumbs-down",s=t?"voteUp":"voteDown",c=(t?Label.canGoodComment:Label.canBadComment)?"Article."+s+"('"+n+"', 'comment', this)":"Article.permissionTip(Label.noPermissionLabel)";return' '+o+""},renderThreadReportAction:function(e){var t=Comment.escapeJSString(e.oId);return'"},renderThreadReplyAction:function(e){return Label.isLoggedIn&&Label.canAddComment?'':""},renderThreadRemoveAction:function(e){return e.commentIsCurrentUser&&Label.canRemoveComment?'':""},renderThreadEditAction:function(e){return e.commentIsCurrentUser&&Label.canUpdateComment?'':""},renderThreadHistoryAction:function(e){return!Label.canViewCommentHistory||parseInt(e.commentRevisionCount||0)<2?"":''},updateCommentHistoryAction:function(e,t){var n=Comment.getCommentElement(e);if(n.hasClass("comment-thread__reply")){var i=n.find("> .comment-thread__body > .comment-thread__actions > .action-btns");if(i.children(".comment-history-action").remove(),!(t<2)){var o=Comment.renderThreadHistoryAction({oId:e,commentRevisionCount:t}),a=i.children(".comment-edit-action");1===a.length?a.before(o):i.append(o)}}else n.find(".icon-history").parent().toggle(t>=2)},updateEditedCommentContent:function(e,t){var n=Comment.getCommentElement(e);n.hasClass("comment-thread__reply")?n.find("> .comment-thread__body > .comment-thread__content").html(t):n.find("> .fn-flex > .fn-flex-1 > .vditor-reset").html(t)},renderReactionShell:function(e,t,n){var i="string"==typeof t?t:JSON.stringify(t||[]);return'
    "},getThreadReplyDepth:function(e){var t=parseInt(e.commentThreadDepth,10);if(!isNaN(t)&&t>=0)return t;var n=document.getElementById(e.commentOriginalCommentId);return n&&$(n).hasClass("comment-thread__reply")?(t=parseInt($(n).attr("data-thread-depth"),10),isNaN(t)?1:t+1):0},renderThreadReplyClass:function(e){return"comment-thread__reply"+(e>0?" comment-thread__reply--nested":"")},renderThreadReplyStyle:function(e){return' data-thread-depth="'+e+'" style="--comment-thread-indent:'+16*e+'px"'},renderThreadReply:function(e){var t=Comment.getThreadReplyDepth(e);return'
    '+Comment.renderCommentAuthorName(e)+""+Comment.renderOriginalAuthorLabel(e)+' • '+Comment.escapeHTML(e.timeAgo)+'
    '+e.commentContent+"
    "+Comment.renderThreadAction(e)+"
    "},renderThreadReplies:function(e){for(var t="",n=0;n'+Comment.escapeHTML(n)+""},renderThreadPagination:function(e,t,n){if(e.find(".comment-thread__pager").remove(),n&&!(parseInt(n.paginationPageCount||0)<=1)){var i=parseInt(n.paginationCurrentPageNum||1),o=parseInt(n.paginationPageCount||1),a=['
    '];i>1&&a.push(Comment.renderThreadPageButton(t,i-1,"上一页")),a.push('',i,"/",o,""),i"),e.append(a.join(""))}},getCommentQueryExtra:function(){return Label.commentQueryExtra||""},normalizeReactionSummary:function(e){if(Array.isArray(e))return e;if("string"!=typeof e||""===e)return[];try{var t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return[]}},getReactionMap:function(e){e=Comment.normalizeReactionSummary(e);for(var t={},n=0;n/g,">")},getReactionUserDetails:function(e){return e&&Array.isArray(e.userDetails)?e.userDetails:[]},renderReactionTip:function(e){var t=Comment.getReactionUserDetails(e);if(0===t.length)return"";for(var n=[],i=0;i'),n.push('',Comment.escapeReactionHtml(s),''),n.push("")}}return 0===n.length?"":''+n.join("")+""},renderReactionSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],a=0;a'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderReactionPanel:function(e,t){for(var n=['
    '],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
    "),n.join("")},renderReactionSummaryWidget:function(e,t,n){var i=Comment.renderReactionSummaryItems(e,t,n),o=['
    '];return o.push('
    '),o.push('
    ',i,"
    "),o.join("")},renderReactionTriggerWidget:function(e,t,n){var i=n?" is-open":"",o=['
    '];return o.push('"),o.push(Comment.renderReactionPanel(e,t)),o.push("
    "),o.join("")},renderReactionBar:function(e,t,n,i,o){if("summary"===o)return Comment.renderReactionSummaryWidget(e,t,n);if("trigger"===o)return Comment.renderReactionTriggerWidget(e,n,i);var a=i?" is-open":"",r=Comment.renderReactionSummaryItems(e,t,n),s=['
    '];return s.push('
    '),s.push('
    ',r,"
    "),s.push('
    "),s.push(Comment.renderReactionPanel(e,n)),s.push("
    "),s.join("")},getReactionWidgets:function(e){return $('.comment-reaction[data-target-id="'+e+'"]')},getInteractiveReactionWidgets:function(e){return $('.comment-reaction--combined[data-target-id="'+e+'"], .comment-reaction--trigger[data-target-id="'+e+'"]')},mountReactionTrigger:function(e,t,n,i){if(0!==e.length){var o=Comment.renderReactionBar(t,[],n,i,"trigger"),a=e.find('.comment-reaction--trigger[data-target-id="'+t+'"]');if(a.length>0)a.replaceWith(o);else{var r=e.children(".icon-reply-btn").first();r.length>0?r.after(o):e.prepend(o)}}},collectReactionShells:function(e){var t=e?$(e):$(document);return t.hasClass("comment-reaction-shell")?t.add(t.find(".comment-reaction-shell")):t.find(".comment-reaction-shell")},initReactionWidgets:function(e){Comment.collectReactionShells(e).each(function(){var e=$(this),t=e.attr("data-target-id"),n=e.attr("data-summary"),i=e.attr("data-current-user-reaction")||"",o=e.closest(".comment-action__bar").find(".action-btns").first(),a=e.closest(".comment-action__left").length>0&&o.length>0,r=Comment.renderReactionBar(t,n,i,!1,a?"summary":"combined");e.replaceWith(r),a&&Comment.mountReactionTrigger(o,t,i,!1)})},closeReactionPanels:function(e){var t=e?$(e):$(document),n=".comment-reaction--combined, .comment-reaction--trigger",i=t.is(n)?t.add(t.find(n)):t.find(n);i.removeClass("is-open"),Comment.resetReactionPopoverStyle(i)},resetReactionPopoverStyle:function(e){e.find(".reaction-popover").removeAttr("style")},positionReactionPopover:function(e){if(0!==e.closest(".action-btns").length){var t=e.find(".reaction-popover").get(0),n=e.find(".reaction-trigger").get(0);if(t&&n){var i=12,o=n.getBoundingClientRect(),a=t.getBoundingClientRect(),r=Math.min(Math.max(a.width||240,240),window.innerWidth-24),s=a.height||288,c=Math.min(Math.max(o.left,i),window.innerWidth-r-i),l=o.bottom+8;l+s>window.innerHeight-i&&(l=o.top-s-8),l0},getActionToggleTarget:function(e){var t=$(e).closest(".comment-thread__reply");return t.length>0?t.first():$(e).closest("#comments .list.comments > ul > li").first()},closeCommentActionMenus:function(e){var t=$("#comments .comment-actions-open");e&&e.length>0&&(t=t.not(e)),t.removeClass("comment-actions-open")},bindMobileCommentActions:function(){$("#comments").off("click.mobileCommentActions").on("click.mobileCommentActions",".list.comments > ul > li,.comment-thread__reply",function(e){if(!Comment.shouldSkipActionToggle(e.target)){var t=Comment.getActionToggleTarget(e.target);0!==t.length&&t[0]===e.currentTarget&&(Comment.closeCommentActionMenus(t),t.toggleClass("comment-actions-open"))}}),$(document).off("click.mobileCommentActions").on("click.mobileCommentActions",function(e){0===$(e.target).closest("#comments .comment-actions-open").length&&Comment.closeCommentActionMenus()})},updateReactionBars:function(e,t,n,i){var o=Comment.getReactionWidgets(e),a="boolean"==typeof i?i:Comment.getInteractiveReactionWidgets(e).first().hasClass("is-open");o.each(function(){var i=$(this),o="combined";i.hasClass("comment-reaction--summary")?o="summary":i.hasClass("comment-reaction--trigger")&&(o="trigger"),i.replaceWith(Comment.renderReactionBar(e,t,n,a,o))}),a&&Comment.getInteractiveReactionWidgets(e).each(function(){Comment.positionReactionPopover($(this))})},updateReactionFromChannel:function(e){var t=e.targetId||e.commentId;if(t){var n=Comment.getReactionWidgets(t);if(0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";Comment.updateReactionBars(t,e.summary||[],i,!1)}}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".comment-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/comment/reaction",type:"POST",data:JSON.stringify({commentId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?Comment.updateReactionBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})},loadEmojis:function(){let e=Comment.getEmojis(),t="";for(let n=0;n\n
    \n \n`;$("#emojis").html(t)},ensureEmojiPanelReady:function(){if(Comment.emojiGroupsNew&&0!==Comment.emojiGroupsNew.length)if(Comment.currentEmojiGroupIdNew)EmojiGroups.ensureCurrentFresh(Comment,"New"),0===$("#emojisNew").children().length&&Comment.loadGroupEmojisNew(Comment.currentEmojiGroupIdNew);else{var e=EmojiGroups._findAllGroupId(Comment,"New");e&&Comment.selectEmojiGroupNew(e)}else Comment.loadEmojiGroupsNew()},openEmojiList:function(){Comment.ensureEmojiPanelReady(),$("#emojiList").addClass("showList")},closeEmojiList:function(){$("#emojiList").removeClass("showList")},bindMobileEmojiList:function(){var e=$("#emojiBtn"),t=$("#emojiList");0!==e.length&&0!==t.length&&(e.off("click.commentEmoji").on("click.commentEmoji",function(e){e.preventDefault(),e.stopPropagation(),t.hasClass("showList")?Comment.closeEmojiList():Comment.openEmojiList()}),t.off("click.commentEmoji").on("click.commentEmoji",function(e){e.stopPropagation()}),$(document).off("click.commentEmoji").on("click.commentEmoji",function(e){0===$(e.target).closest("#emojiBtn,#emojiList,#emojiCollectOverlay").length&&Comment.closeEmojiList()}))},confirmed:!1,delEmoji:function(e){if(!0===Comment.confirmed||confirm("确定要删除该表情包吗?")){Comment.confirmed=!0;let t=Comment.getEmojis();for(let n=0;n5242880?Util.alert("图片过大 (最大限制 5M)"):t.submit():Util.alert("只允许上传图片!")}}else t.submit()},formData:function(e){return e.serializeArray()},submit:function(e,t){},done:function(e,t){var n={result:{key:t.result.data.succMap[Object.keys(t.result.data.succMap)[0]]}};Comment.addEmoji(n.result.key)},fail:function(e,t){Util.alert("Upload error: "+t.errorThrown)}})},fromURL:function(){Util.alert('
    \n\n
    \n
    \n \n
    \n
    ',"从URL导入表情包"),$("#fromURL").focus(),$("#fromURL").unbind(),$("#fromURL").bind("keypress",function(e){"13"==e.keyCode&&(Comment.addEmoji($("#fromURL").val()),Util.closeAlert())})},addEmoji:function(){if(0!==arguments.length){var e=[];if(1===arguments.length&&Array.isArray(arguments[0]))e=arguments[0];else for(var t=0;t '+Label.commonUpdateCommentPermissionLabel+"").data("commentId",e).removeData("commentOriginalCommentId"),Comment._showReplyPanel(null,{keepAnonymousHidden:!0})},_bgFade:function(e,t){return 0!==e.length&&(!1!==(t=t||{}).scroll&&$(window).scrollTop(e[0].offsetTop-48),"comments"!==e.attr("id")&&!1!==t.highlight&&($(".comment-focus-highlight").removeClass("comment-focus-highlight"),e.addClass("comment-focus-highlight"),setTimeout(function(){e.removeClass("comment-focus-highlight")},1800),!0))},goComment:function(e){var t=Comment.getCommentHashId(e);return(!t||!Comment.focusCommentById(t))&&(t&&Comment.isSameCommentPage(e)?(Comment.expandThreadForComment(t),!1):(window.location=e,!1))},focusCommentElement:function(e,t){return Comment._bgFade(e,t)},focusCommentById:function(e,t){var n=Comment.getCommentElement(e);return 1===n.length&&Comment.focusCommentElement(n,t)},focusLocationHash:function(){var e=Comment.getCommentHashId(window.location.hash);return!!e&&(!!Comment.focusCommentById(e)||Comment.expandThreadForComment(e))},expandThreadForComment:function(e){return $.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,anchorCommentId:e,userCommentViewMode:Label.userCommentViewMode,sort:Label.commentSort,author:Label.commentAuthorFilter?"1":""}),success:function(t){if(0!==t.code)return!1;Comment.renderThreadResponse(t.commentThreadRootId,t.commentThreadReplies||[],e,{pagination:t.pagination})}}),!0},renderThreadResponse:function(e,t,n,i){i=i||{};var o=Comment.getCommentElement(e);if(1!==o.length)return!1;var a=Comment.ensureThread(o,e);return a.find(".comment-thread__list").html(Comment.renderThreadReplies(t)),a.addClass("comment-thread--expanded"),a.find(".comment-thread__more").remove(),Comment.renderThreadPagination(a,e,i.pagination),Comment.initReactionWidgets(a),Util.listenUserCard(),Util.parseHljs(),Util.parseMarkdown(),!1===i.focus||!n||Comment.focusCommentById(n)},_getReplyUseName:function(){var e=$("#replyUseName").not(".fn-none").first();return 0===e.length&&(e=$("#replyUseName").first()),e},_clearReplyUseName:function(){Comment._getReplyUseName().removeClass("reply-use-name--active").html("").removeData("commentOriginalCommentId").removeData("commentId")},cancelReply:function(){Comment._clearReplyUseName(),Comment._setArticleReplyTarget()},_setArticleReplyTarget:function(){var e=Comment._getReplyUseName();e.data("commentOriginalCommentId")||e.data("commentId")||e.addClass("reply-use-name--active").html(' '+Comment.escapeHTML($(".article-title").text())+"")},_showReplyPanel:function(e,t){if(t=t||{},!Label.isLoggedIn)return Util.needLogin(),!1;if(0===$("#commentContent").length)return Util.alert(Label.notAllowCmtLabel),!1;!0!==t.keepAnonymousHidden&&$(".anonymous-check").show(),Comment.closeReactionPanels(),ArticleReaction.closePanels(),Comment._setArticleReplyTarget();var n=$(".editor-panel");return 0!==n.length&&(n.hasClass("editor-panel--open")?(Comment.editor.focus(),e&&e(),!0):(n.show().addClass("editor-panel--open").css("bottom",0),n.find(".wrapper").hide().slideDown(function(){Comment.editor.focus(),e&&e()}),!0))},_hideReplyPanel:function(){return $(".editor-panel .wrapper").slideUp(function(){$(".editor-panel").removeClass("editor-panel--open").fadeOut(100)}),!1},_toggleReply:function(e){return $(".editor-panel").hasClass("editor-panel--open")?Comment._hideReplyPanel():Comment._showReplyPanel(e)},init:function(){if(Comment.focusLocationHash(),$.ua.set(navigator.userAgent),$.pjax({selector:".pagination a",container:"#comments",show:"",cache:!1,storage:!0,titleSuffix:"",callback:function(){Comment.initReactionWidgets($("#comments")),Comment.bindMobileCommentActions(),Article.initCollectButtons(),Util.parseMarkdown(),Util.parseHljs(),Comment.focusLocationHash()}}),NProgress.configure({showSpinner:!1}),$("#comments").bind("pjax.start",function(){NProgress.start()}),$("#comments").bind("pjax.end",function(){NProgress.done()}),ArticleReaction.bindPanels(),ArticleReaction.initWidgets(),Comment.bindReactionPanels(),Comment.initReactionWidgets($("#comments")),Comment.bindMobileCommentActions(),!Label.isLoggedIn)return!1;Comment.editor=Util.newVditor({id:"commentContent",cache:!0,preview:{mode:"editor"},resize:{enable:!0,position:"top"},height:200,placeholder:Label.commentEditorPlaceholderLabel,after:function(){Comment.bindMobileVditorToolbarEmoji()},ctrlEnter:function(){Comment.add(Label.articleOId,Label.csrfToken,document.getElementById("articleCommentBtn"))}})},bindMobileVditorToolbarEmoji:function(){if(-1!==navigator.userAgent.indexOf("iPhone")){var e=document.querySelector('#commentContent .vditor-toolbar__item button[data-type="emoji"]');if(e&&"true"!==e.getAttribute("data-mobile-emoji-click-bound")){var t=0;e.setAttribute("data-mobile-emoji-click-bound","true"),e.addEventListener("touchstart",function(){t=(new Date).getTime()},!0),e.addEventListener("click",function(n){(new Date).getTime()-t<700||(n.preventDefault(),n.stopPropagation(),e.dispatchEvent(new Event("touchstart",{bubbles:!0,cancelable:!0})))},!0)}}},thank:function(e,t,n,i,o){if(!Label.isLoggedIn)return Util.needLogin(),!1;if(0===i&&!confirm(n))return!1;var a={commentId:e};$.ajax({url:Label.servePath+"/comment/thank",type:"POST",headers:{csrfToken:t},cache:!1,data:JSON.stringify(a),error:function(e,t,n){Util.alert(n)},success:function(e,t){if(0===e.code){$(o).removeAttr("onclick");var n=$(''),i=$(o).offset().top,a=$(o).offset().left;n.css({"z-index":9999,top:i,left:a,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(n),n.animate({left:a-150,top:i-60,opacity:0},1e3,function(){var e=parseInt($(o).text());$(o).html(' '+(e+1)).addClass("ft-red"),n.remove()})}else Util.alert(e.msg)}})},showReply:function(e,t,n){var i=$(t).closest("li").find("."+n);if("comment-get-comment"===n){if(0!==i.find("li").length)return i.html(""),!1}else if(0===$(t).find(".icon-chevron-down").length)return $(t).find(".icon-chevron-up").removeClass("icon-chevron-up").addClass("icon-chevron-down").find("use").attr("xlink:href","#chevron-down"),i.html(""),!1;if("0.3"===$(t).css("opacity"))return!1;var o="/comment/replies";"comment-get-comment"===n&&(o="/comment/original"),$.ajax({url:Label.servePath+o,type:"POST",data:JSON.stringify({commentId:e,userCommentViewMode:Label.userCommentViewMode}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(e,n){if(0!==e.code)return Util.alert(e.msg),!1;var o=e.commentReplies,a="";o instanceof Array||(o=[o]),0===o.length&&(a='
  • '+Label.removedLabel+"
  • ");for(var r=0;r
    ',a+='',a+='
    ',a+="
    ",a+='
    ',a+='',a+=Comment.renderCommentAuthorName(s),a+="",a+=Comment.renderOriginalAuthorLabel(s),a+=' • '+s.timeAgo,s.rewardedCnt>0&&(a+=' '+s.rewardedCnt+" "),a+="",a+='
    '+s.commentContent+"
    "+Comment.renderReactionBar(s.oId,s.reactionSummary,s.currentUserReaction)+"
    "}i.html("
      "+a+"
    "),Util.parseHljs(),Util.parseMarkdown(),$(t).find(".icon-chevron-down").removeClass("icon-chevron-down").addClass("icon-chevron-up").find("use").attr("xlink:href","#chevron-up")},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},showThreadReplies:function(e,t,n){if("0.3"===$(t).css("opacity"))return!1;$.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,paginationCurrentPageNum:n||1}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(t){if(0!==t.code)return Util.alert(t.msg),!1;Comment.renderThreadResponse(t.commentThreadRootId||e,t.commentThreadReplies||[],null,{focus:!1,pagination:t.pagination})},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},add:function(e,t){var n=Comment._getReplyUseName(),i={articleId:e,commentAnonymous:$("#commentAnonymous").prop("checked"),commentVisible:$("#commentVisible").prop("checked"),commentContent:Comment.editor.getValue(),userCommentViewMode:Label.userCommentViewMode};n.data("commentOriginalCommentId")&&(i.commentOriginalCommentId=n.data("commentOriginalCommentId"));var o=window.LongArticleParagraphComments,a=o&&o.getSubmissionParagraphId?o.getSubmissionParagraphId(i.commentOriginalCommentId):"";a&&(i.paragraphId=a);var r=Label.servePath+"/comment",s="POST",c=n.data("commentId");c?(r=Label.servePath+"/comment/"+c,s="PUT"):a&&(r=Label.servePath+"/comment/paragraph"),$.ajax({url:r,type:s,headers:{csrfToken:t},cache:!1,data:JSON.stringify(i),beforeSend:function(){$(".form button.red").attr("disabled","disabled").css("opacity","0.3")},success:function(e,t){if($(".form button.red").removeAttr("disabled").css("opacity","1"),0===e.code){if(c&&(Comment.updateEditedCommentContent(c,e.commentContent),Comment.updateCommentHistoryAction(c,parseInt(e.commentRevisionCount||0))),Comment.editor.setValue(""),Comment._hideReplyPanel(),Comment._clearReplyUseName(),a&&o&&o.handleSubmitSuccess(),window.localStorage){window.localStorage[Label.articleOId]=JSON.stringify({commentContent:""})}i.commentOriginalCommentId&&Comment.focusCommentById(i.commentOriginalCommentId,{scroll:!1})}else $("#addCommentTip").addClass("error").html("
    • "+e.msg+"
    ")},error:function(e){$("#addCommentTip").addClass("error").html("
    • "+e.statusText+"
    ")},complete:function(){$(".form button.red").removeAttr("disabled").css("opacity","1")}})},reply:function(e,t){window.LongArticleParagraphComments&&window.LongArticleParagraphComments.activateFromComment(document.getElementById(t));var n=Comment.escapeHTML(e);Comment._getReplyUseName().addClass("reply-use-name--active").html(' '+n+'×').data("commentOriginalCommentId",t).removeData("commentId"),Comment._showReplyPanel()}},ArticleReaction={renderSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],a=0;a'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderPanel:function(e,t){for(var n=['
    '],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
    "),n.join("")},renderBar:function(e,t,n,i){var o=i?" is-open":"",a=['
    '];return a.push('
    '),a.push('
    ',ArticleReaction.renderSummaryItems(e,t,n),"
    "),a.push('
    "),a.push(ArticleReaction.renderPanel(e,n)),a.push("
    "),a.join("")},collectShells:function(e){var t=e?$(e):$(document);return t.hasClass("article-reaction-shell")?t.add(t.find(".article-reaction-shell")):t.find(".article-reaction-shell")},ensureShell:function(){if(!($(".article-reaction-shell, .article-reaction").length>0)&&Label.articleOId){var e=$(".article-main .article-tags").first();0===e.length&&(e=$(".article-main .article-info").first()),0!==e.length&&$('
    ').insertAfter(e)}},getWidgets:function(e){return $('.article-reaction[data-target-id="'+e+'"]')},initWidgets:function(e){e||ArticleReaction.ensureShell(),ArticleReaction.collectShells(e).each(function(){var e=$(this);e.replaceWith(ArticleReaction.renderBar(e.attr("data-target-id"),e.attr("data-summary"),e.attr("data-current-user-reaction")||"",!1))})},closePanels:function(){$(".article-reaction.is-open").removeClass("is-open")},togglePanel:function(e){var t=$(e).closest(".article-reaction"),n=!t.hasClass("is-open");ArticleReaction.closePanels(),n&&t.addClass("is-open")},bindPanels:function(){$(document).off("click.articleReaction").on("click.articleReaction",function(e){0===$(e.target).closest(".article-reaction").length&&ArticleReaction.closePanels()})},updateBars:function(e,t,n,i){var o=ArticleReaction.getWidgets(e),a="boolean"==typeof i?i:o.first().hasClass("is-open");o.each(function(){$(this).replaceWith(ArticleReaction.renderBar(e,t,n,a))})},updateReactionFromChannel:function(e){var t=e.targetId,n=ArticleReaction.getWidgets(t);if(t&&0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";ArticleReaction.updateBars(t,e.summary||[],i,!1)}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".article-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/article/reaction",type:"POST",data:JSON.stringify({articleId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?ArticleReaction.updateBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})}},Article={imagePreviewClickDelay:100,imagePreviewTouchClickGuard:600,imagePreviewTapMaxDistance:12,commentImageLeftOffset:15,imagePreviewTouchAt:0,imagePreviewTouchStart:null,initAudio:function(){$(".content-audio").each(function(){var e=$(this);new APlayer({element:this,narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",preload:"none",mode:"circulation",music:{title:e.data("title"),author:'音乐分享',url:e.data("url"),pic:Label.staticServePath+"/images/music.png"}})});var e=$("#articleAudio");if(0===e.length)return!1;new APlayer({element:document.getElementById("articleAudio"),narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",mode:"order",preload:"none",music:{title:"语音预览",author:'小薇',url:e.data("url"),pic:Label.staticServePath+"/images/blank.png"}})},permissionTip:function(e){Label.isLoggedIn?Util.alert(e):Util.needLogin()},voteUp:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.next();if(i.hasClass("disabled"))return!1;var a={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/up/"+t,type:"POST",cache:!1,data:JSON.stringify(a),success:function(e,t){i.removeClass("disabled");var n=parseInt(i.text()),a=parseInt(o.text());0!==e.code?Util.alert(e.msg):0===e.type?i.html(' '+(n-1)).removeClass("ft-red"):(i.html(' '+(n+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(a-1)).removeClass("ft-red"))}})},voteDown:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.prev();if(i.hasClass("disabled"))return!1;var a={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/down/"+t,type:"POST",cache:!1,data:JSON.stringify(a),success:function(e,t){i.removeClass("disabled");var n=parseInt(o.text()),a=parseInt(i.text());if(0===e.code)return 1===e.type?i.html(' '+(a-1)).removeClass("ft-red"):(i.html(' '+(a+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(n-1)).removeClass("ft-red")),!1;Util.alert(e.msg)}})},previewImgAfterLoading:function(){$(".img-preview img").css("transform","translate3d("+Math.max(0,$(window).width()-$(".img-preview img").width())/2+"px, "+Math.max(0,$(window).height()-$(".img-preview img").height())/2+"px, 0)"),setTimeout(function(){$(".img-preview").width($(window).width())},300)},isPreviewableImage:function(e){return!e.hasClass("emoji")&&1!==e.closest(".editor-panel").length&&1!==e.closest(".ad").length},markImagePreviewTouchStart:function(e){var t=e.originalEvent.changedTouches[0];Article.imagePreviewTouchStart={x:t.clientX,y:t.clientY}},isImagePreviewTap:function(e){if(null===Article.imagePreviewTouchStart)return!1;var t=e.originalEvent.changedTouches[0],n=t.clientX-Article.imagePreviewTouchStart.x,i=t.clientY-Article.imagePreviewTouchStart.y,o=Math.sqrt(n*n+i*i);return Article.imagePreviewTouchStart=null,o<=Article.imagePreviewTapMaxDistance},cancelImagePreviewEvent:function(e){e&&(e.preventDefault(),e.stopPropagation())},openImagePreview:function(e,t){var n=t.offsetTop,i=t.offsetLeft;1===e.closest(".comments").length&&(n+=e.closest("li")[0].offsetTop,i=i+$(".comments")[0].offsetLeft+Article.commentImageLeftOffset);var o=(e.attr("src")||"").split("?imageView2")[0],a=$('
    ').on("click",function(){$(this).remove()}),r=$("").css("transform","translate3d("+Math.max(0,i)+"px, "+Math.max(0,n-$(window).scrollTop())+"px, 0)").attr("src",o).on("load",Article.previewImgAfterLoading);a.append(r),$("body").append(a),$(".img-preview").css({"background-color":"#fff",position:"fixed"})},init:function(){this.share(),Util.parseHljs(),Util.parseMarkdown();var e=null;$(".main").off("dblclick.articleImagePreview click.articleImagePreview touchstart.articleImagePreview touchend.articleImagePreview touchcancel.articleImagePreview",".vditor-reset img").on("dblclick.articleImagePreview",".vditor-reset img",function(t){clearTimeout(e);var n=$(this);Article.isPreviewableImage(n)&&(Article.cancelImagePreviewEvent(t),window.open(n.attr("src")))}).on("touchstart.articleImagePreview",".vditor-reset img",function(e){Article.isPreviewableImage($(this))&&Article.markImagePreviewTouchStart(e)}).on("touchcancel.articleImagePreview",".vditor-reset img",function(){Article.imagePreviewTouchStart=null}).on("touchend.articleImagePreview",".vditor-reset img",function(t){clearTimeout(e);var n=$(this);Article.isPreviewableImage(n)&&Article.isImagePreviewTap(t)&&(Article.imagePreviewTouchAt=Date.now(),Article.cancelImagePreviewEvent(t),Article.openImagePreview(n,this))}).on("click.articleImagePreview",".vditor-reset img",function(t){if(clearTimeout(e),Date.now()-Article.imagePreviewTouchAt500?500:$(window).width()-50,height:450,modal:!0,hideFooter:!0}),this.initAudio()},revision:function(e,t){if(!Label.isLoggedIn)return Util.needLogin(),!1;t||(t="article"),Article._revisionDialogOpen("comment"===t?"评论历史":"文章历史"),"comment"===t?Article._legacyRevision(e,t):Article._articleRevision(e)},_revisionDialogInit:function(){$("#revisionDialog").length>0||($("body").append(''),$("#revisionDialog .revision-modal__body").append($("#revision")),$("#revisionDialog .revision-modal__overlay, #revisionDialog .revision-modal__close").click(function(){Article._revisionDialogClose()}),$(document).off("keydown.revisionDialog").on("keydown.revisionDialog",function(e){"Escape"===e.key&&$("#revisionDialog").hasClass("is-open")&&Article._revisionDialogClose()}))},_revisionDialogOpen:function(e){Article._revisionDialogInit(),$("#revisionDialogTitle").text(e||"历史版本"),$("#revisionDialog").addClass("is-open").attr("aria-hidden","false"),$("body").addClass("revision-modal-open"),$("#revisionDialog .revision-modal__close").focus()},_revisionDialogClose:function(){$("#revisionDialog").removeClass("is-open").attr("aria-hidden","true"),$("body").removeClass("revision-modal-open")},_legacyRevision:function(e,t){$.ajax({url:Label.servePath+"/"+t+"/"+e+"/revisions",cache:!1,success:function(e,n){if(0===e.code){if(0===e.revisions.length||1===e.revisions.length)return $("#revision > .revisions").remove(),$("#revisions").html(""+Label.noRevisionLabel+""),!1;$("#revisions").html("").prev().remove(),$("#revisions").data("revisions",e.revisions).before('
    '+(e.revisions.length-1)+"~"+e.revisions.length+"/"+e.revisions.length+'
    '),e.revisions.length<=2&&$("#revision a").first().addClass("disabled");var i=JsDiff.createPatch("",e.revisions[e.revisions.length-2].revisionData.articleContent||e.revisions[e.revisions.length-2].revisionData.commentContent,e.revisions[e.revisions.length-1].revisionData.articleContent||e.revisions[e.revisions.length-1].revisionData.commentContent,e.revisions[e.revisions.length-2].revisionData.articleTitle||"",e.revisions[e.revisions.length-1].revisionData.articleTitle||"");return new Diff2HtmlUI({diff:i}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0}),Article._revisionsControls(t),!1}Util.alert(e.msg)}})},_revisionsControls:function(e){var t=$("#revisions").data("revisions");$("#revision a.first").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions").text().split("~")[0]);e<=2?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.last").removeClass("disabled"),$("#revision .revisions > span").html(e-1+"~"+e+"/"+t.length);var n=JsDiff.createPatch("",t[e-2].revisionData.articleContent||t[e-2].revisionData.commentContent,t[e-1].revisionData.articleContent||t[e-1].revisionData.commentContent,t[e-2].revisionData.articleTitle||"",t[e-1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}}),$("#revision a.last").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions span").text().split("~")[0]);e>t.length-3?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.first").removeClass("disabled"),$("#revision .revisions > span").html(e+1+"~"+(e+2)+"/"+t.length);var n=JsDiff.createPatch("",t[e].revisionData.articleContent||t[e].revisionData.commentContent,t[e+1].revisionData.articleContent||t[e+1].revisionData.commentContent,t[e].revisionData.articleTitle||"",t[e+1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}})},_articleRevision:function(e){$("#revision > .revisions").remove(),$("#revisions").removeData("revisions").removeData("revisionDetails").html("加载中"),$.ajax({url:Label.servePath+"/article/"+e+"/revisions/list",cache:!1,success:function(t){if(0===t.code){var n=t.revisions||[];n.length<2?$("#revisions").html(""+Label.noRevisionLabel+""):($("#revisions").data("revisions",n).data("revisionDetails",{}).html(Article._revisionPickerHtml(n)),Article._revisionBindPicker(e),Article._revisionCompare(e))}else $("#revisions").html(""+Article._revisionEscapeHTML(t.msg||"加载失败")+"")},error:function(){$("#revisions").html("加载失败")}})},_revisionPickerHtml:function(e){for(var t=e.length-2,n=e.length-1,i="",o="",a=0;a
    '},_revisionOptionHtml:function(e,t){return'"},_revisionVersionLabel:function(e){return e.current?"当前 "+e.revisionTimeStr:e.revisionTimeStr},_revisionBindPicker:function(e){$("#revision .revision-picker__compare").click(function(){Article._revisionCompare(e)}),$("#revision .revision-picker__diff-only").change(function(){Article._revisionCompare(e)})},_revisionCompare:function(e){var t=$("#revision .revision-picker__base").val(),n=$("#revision .revision-picker__target").val(),i=$("#revision .revision-picker__diff-only").is(":checked");$("#revisions .revision-diff").html("加载中"),$.when(Article._revisionFetch(e,t),Article._revisionFetch(e,n)).done(function(e,t){Article._revisionRenderCompare(e,t,i)}).fail(function(e){$("#revisions .revision-diff").html(""+Article._revisionEscapeHTML(e||"加载失败")+"")})},_revisionFetch:function(e,t){var n=$("#revisions").data("revisionDetails")||{},i=$.Deferred();return n[t]?(i.resolve(n[t]),i.promise()):($.ajax({url:Label.servePath+"/article/"+e+"/revisions/"+encodeURIComponent(t),cache:!1,success:function(e){0===e.code?(n[t]=e.revision,$("#revisions").data("revisionDetails",n),i.resolve(e.revision)):i.reject(e.msg)},error:function(){i.reject("加载失败")}}),i.promise())},_revisionRenderCompare:function(e,t,n){var i=e.revisionData||{},o=t.revisionData||{},a=Article._revisionRenderInlineDiff("标题",i.articleTitle||"",o.articleTitle||"",n);a+=Article._revisionRenderLineDiff("内容",i.articleContent||"",o.articleContent||"",n),$("#revisions .revision-diff").html(a||"无差异")},_revisionRenderInlineDiff:function(e,t,n,i){for(var o=JsDiff.diffWordsWithSpace?JsDiff.diffWordsWithSpace(t,n):JsDiff.diffWords(t,n),a=!1,r="",s=0;s'+Article._revisionEscapeHTML(o[s].value)+"")}return i&&!a?"":'

    '+e+'

    '+r+"
    "},_revisionRenderLineDiff:function(e,t,n,i){for(var o=JsDiff.diffLines(t,n),a=!1,r="",s=0;s

    '+e+'

    '+r+"
    "},_revisionLineHtml:function(e,t){for(var n=Article._revisionSplitLines(e),i="",o=0;o'+Article._revisionEscapeHTML(n[o])+"";return i},_revisionSplitLines:function(e){var t=e.split("\n");return""===t[t.length-1]&&t.pop(),t},_revisionEscapeHTML:function(e){return String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},share:function(){if("mobile"!==$.ua.device.type){var e=$(".article-content").offset().left/2-15;$(".share").css("left",(e<20?20:e)+"px")}var t=$("#qrCode").data("shareurl");$("#qrCode").qrcode({width:90,height:90,text:t}),$("body").click(function(){$("#qrCode").slideUp()}),$(".share > span").click(function(){var e=$(this).data("type");if(!e)return!1;if("wechat"===e)return $("#qrCode").slideToggle(),!1;if("copy"===e)return!1;var n=encodeURIComponent(Label.articleTitle+" - "+Label.symphonyLabel),i=encodeURIComponent(t),o=$(".article-info .avatar").css("background-image");pic=o.substring(5,o.length-2);var a={};a.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+n+"&url="+i+"&pic="+pic,a.weibo="http://v.t.sina.com.cn/share/share.php?title="+n+"&url="+i+"&pic="+pic,a.google="https://plus.google.com/share?url="+i,a.twitter="https://twitter.com/intent/tweet?status="+n+" "+i,window.open(a[e],"_blank","top=100,left=200,width=648,height=618")}),$("#qrCode").click(function(){$(this).hide()}),$("#shareClipboard").mouseover(function(){$(this).attr("aria-label",Label.copyLabel)}),Util.clipboard($("#shareClipboard"),$("#shareClipboard").next(),function(){$("#shareClipboard").attr("aria-label",Label.copiedLabel)})},reward:function(e){confirm(Label.rewardConfirmLabel)&&$.ajax({url:Label.servePath+"/article/reward?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0!==e.code)Util.alert(e.msg);else{$("#articleRewardContent").html(e.articleRewardContent),Util.parseHljs(),Util.parseMarkdown();var n=parseInt($(".article-actions .icon-points").parent().text());$(".article-actions .icon-points").parent().addClass("ft-red").html(' '+(n+1)).removeAttr("onclick")}},error:function(e){Util.needLogin()}})},thankArticle:function(e,t){return Label.isLoggedIn?!(0===t&&!confirm(Label.thankArticleConfirmLabel))&&(Label.currentUserName===Label.articleAuthorName?(Util.alert(Label.thankSelfLabel),!1):void $.ajax({url:Label.servePath+"/article/thank?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0===e.code){var n=parseInt($("#thankArticle").text());$("#thankArticle").removeAttr("onclick").html(' '+(n+1)+"").addClass("ft-red").removeClass("ft-blue");var i=$(''),o=$("#thankArticle").offset().top,a=$("#thankArticle").offset().left;return i.css({"z-index":9999,top:o-20,left:a,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(i),i.animate({top:o-180,opacity:0},1500,function(){i.remove()}),!1}Util.alert(e.msg)}})):(Util.needLogin(),!1)},stick:function(e){confirm(Label.stickConfirmLabel)&&$.ajax({url:Label.servePath+"/article/stick?articleId="+e,type:"POST",cache:!1,success:function(e,t){Util.alert(e.msg),window.location.href=Label.servePath+"/recent"}})},playThought:function(e){var t=String.fromCharCode(31),n=String.fromCharCode(30),i=String.fromCharCode(29),o=String.fromCharCode(10),a=String.fromCharCode(24),r=$("#thoughtProgress > span"),s=$("#thoughtProgress > svg"),c="#articleThought",l=function(e,n){var o=e.split(t);3===o.length&&o.splice(0,0,"");var r=o[0],s=o[2].split("-"),c=o[3].split("-");if(s[0]=parseInt(s[0]),s[1]=parseInt(s[1]),c[0]=parseInt(c[0]),c[1]=parseInt(c[1]),r===a){for(var l=[],m=s[1],d=0;c[1],m").replace(/ /g," ").replace(/ /g,"    ");$(c).data("text",e).html(t)},parseInt(m[u].split(t)[1])/d);for(var h=0,v=parseInt(m[u-1].split(t)[1])/d,f=setInterval(function(){h>=v?(r.width("100%"),s.css("left","100%"),clearInterval(f)):(h+=20,s.css("left",100*h/v+"%"),r.width(100*h/v+"%"))},20),g="",C="",b=0,y=0,w=0;y").replace(/ /g," ").replace(/ /g,"    "),g=L,$(c).html(C),b=Math.max(b,$(c).height())}$("#thoughtProgressPreview").html('
    '+C+"
    "),$("#thoughtProgressPreview").dialog({modal:!0,hideFooter:!0}),s.click(function(){$("#thoughtProgressPreview").dialog("open")}),$(c).html(C).height(b).css("margin-bottom","15px").html("")},getNotificationCommentIds:function(e){var t=[],n=function(e){(e=String(e||"").replace(/^#/,"").trim())&&-1===t.indexOf(e)&&t.push(e)};return String(e||"").split(",").forEach(n),n(window.location.hash),t.join(",")},makeNotificationRead:function(e,t){var n={articleId:e,commentIds:Article.getNotificationCommentIds(t)};$.ajax({url:Label.servePath+"/notifications/make-read",type:"POST",cache:!1,data:JSON.stringify(n)})}},ArticleAdjacentNav={storageKey:"articleAdjacentSort",sortValues:["time","author","hot"],init:function(){var e=$("[data-article-nav-sort]");0!==e.length&&(this.applySort(e,this.getStoredSort()),this.bindSortChange(e))},getStoredSort:function(){var e=window.localStorage.getItem(this.storageKey);return this.isValidSort(e)?e:"time"},isValidSort:function(e){return-1!==this.sortValues.indexOf(e)},bindSortChange:function(e){var t=this;e.find(".article-nav-sort__input").on("change",function(){this.checked&&t.isValidSort(this.value)&&(window.localStorage.setItem(t.storageKey,this.value),t.applySort(e,this.value))})},applySort:function(e,t){e.find('.article-nav-sort__input[value="'+t+'"]').prop("checked",!0)}};Article.init(),$(document).ready(function(){ArticleAdjacentNav.init(),Comment.init(),EmojiGroups.init("Comment","New"),Comment.loadEmojiGroupsNew(),Comment.bindMobileEmojiList(),ArticleChannel.init(Label.articleChannel),Label.isLoggedIn&&(Article.makeNotificationRead(Label.articleOId,Label.notificationCmtIds),setTimeout(function(){Util.setUnreadNotificationCount()},1e3))}),Article.initCollectButtons=function(){$(".comment-action .action-btns").each(function(){const e=$(this);if(e.data("collect-inited"))return;const t=e.closest("li").find(".vditor-reset.comment").first();if(!t.length)return;const n=t.find("img").filter(function(){return!$(this).hasClass("emoji")&&0===$(this).closest(".editor-panel, .ad").length}).map(function(){return $(this).attr("src")}).get().filter(Boolean),i=Array.from(new Set(n));if(!i.length)return;e.data("collect-inited",!0);const o=$(' 收藏表情');o.on("click",function(e){e.stopPropagation(),EmojiGroups.openCollectDialog(i)});const a=e.children(".icon-reply-btn").first(),r=e.children(".comment-reaction--trigger").first();a.length?o.insertAfter(a):r.length?o.insertAfter(r):e.prepend(o)})},$(function(){Article.initCollectButtons()}); \ No newline at end of file +var Comment={editor:void 0,reactionOptions:[{value:"thumbsup",emoji:"👍"},{value:"thumbsdown",emoji:"👎"},{value:"check",emoji:"✅"},{value:"cross",emoji:"❌"},{value:"star",emoji:"⭐"},{value:"heart",emoji:"❤️"},{value:"fire",emoji:"🔥"},{value:"party",emoji:"🎉"},{value:"laugh",emoji:"😂"},{value:"wow",emoji:"😮"},{value:"clap",emoji:"👏"},{value:"hundred",emoji:"💯"},{value:"rocket",emoji:"🚀"},{value:"salute",emoji:"🖖"},{value:"handshake",emoji:"🤝"},{value:"raisedhands",emoji:"🙌"},{value:"mindblown",emoji:"🤯"},{value:"thinking",emoji:"🤔"},{value:"eyes",emoji:"👀"},{value:"cry",emoji:"😢"},{value:"angry",emoji:"😡"},{value:"pray",emoji:"🙏"},{value:"brokenheart",emoji:"💔"},{value:"skull",emoji:"💀"},{value:"clown",emoji:"🤡"},{value:"poop",emoji:"💩"},{value:"heartonfire",emoji:"❤️‍🔥"},{value:"plus",emoji:"➕1️⃣"}],isWideReactionOption:function(e){return"plus"===e.value||"heartonfire"===e.value},escapeHTML:function(e){return $("
    ").text(e||"").html()},renderCommentAuthorName:function(e){var t=Comment.escapeHTML(e.commentAuthorName);return e.commentAuthorNickName?Comment.escapeHTML(e.commentAuthorNickName)+" ("+t+")":t},renderOriginalAuthorLabel:function(e){var t=e.commentOriginalAuthorNickName||e.commentOriginalAuthorName;return t?'回复 @'+Comment.escapeHTML(t)+"":""},escapeJSString:function(e){return String(e||"").replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\r/g,"\\r").replace(/\n/g,"\\n")},getCommentHashId:function(e){var t=String(e||"").indexOf("#");return t<0?"":String(e).substring(t+1)},getCurrentPageNum:function(){var e=window.location.search.match(/[?&]p=(\d+)/);return e?parseInt(e[1]):1},getSearchValue:function(e,t){for(var n=String(e||"").replace(/^\?/,"").split("&"),i=0;i1?o[1]:""}return""},normalizeCommentSearch:function(e){for(var t=["p","m","sort","author"],n=[],i=0;i
    '),e.find(".comment-action").before(n)),n},renderThreadAction:function(e){return'
    '+Comment.renderReactionShell(e.oId,e.reactionSummary,e.currentUserReaction)+'
    '+Comment.renderThreadReplyAction(e)+Comment.renderThreadHistoryAction(e)+Comment.renderThreadEditAction(e)+Comment.renderThreadRemoveAction(e)+Comment.renderThreadThankAction(e)+Comment.renderThreadVoteAction(e,!0)+Comment.renderThreadVoteAction(e,!1)+Comment.renderThreadReportAction(e)+"
    "},renderThreadThankAction:function(e){var t=Comment.escapeJSString(e.oId),n=Comment.escapeJSString(e.commentThankLabel),i=parseInt(e.commentAnonymous||0),o=parseInt(e.rewardedCnt||e.commentThankCnt||0),a=e.rewarded?" ft-red":"",r="";return e.rewarded||(r=Label.canThankComment?" onclick=\"Comment.thank('"+t+"', '"+Comment.escapeJSString(Label.csrfToken)+"', '"+n+"', "+i+', this)"':' onclick="Article.permissionTip(Label.noPermissionLabel)"'),' '+o+""},renderThreadVoteAction:function(e,t){var n=Comment.escapeJSString(e.oId),i=parseInt(e.commentVote)===(t?0:1),o=parseInt(t?e.commentGoodCnt||0:e.commentBadCnt||0),a=t?Label.upLabel:Label.downLabel,r=t?"thumbs-up":"thumbs-down",s=t?"voteUp":"voteDown",c=(t?Label.canGoodComment:Label.canBadComment)?"Article."+s+"('"+n+"', 'comment', this)":"Article.permissionTip(Label.noPermissionLabel)";return' '+o+""},renderThreadReportAction:function(e){var t=Comment.escapeJSString(e.oId);return'"},renderThreadReplyAction:function(e){return Label.isLoggedIn&&Label.canAddComment?'':""},renderThreadRemoveAction:function(e){return e.commentIsCurrentUser&&Label.canRemoveComment?'':""},renderThreadEditAction:function(e){return e.commentIsCurrentUser&&Label.canUpdateComment?'':""},renderThreadHistoryAction:function(e){return!Label.canViewCommentHistory||parseInt(e.commentRevisionCount||0)<2?"":''},updateCommentHistoryAction:function(e,t){var n=Comment.getCommentElement(e);if(n.hasClass("comment-thread__reply")){var i=n.find("> .comment-thread__body > .comment-thread__actions > .action-btns");if(i.children(".comment-history-action").remove(),!(t<2)){var o=Comment.renderThreadHistoryAction({oId:e,commentRevisionCount:t}),a=i.children(".comment-edit-action");1===a.length?a.before(o):i.append(o)}}else n.find(".icon-history").parent().toggle(t>=2)},updateEditedCommentContent:function(e,t){var n=Comment.getCommentElement(e);n.hasClass("comment-thread__reply")?n.find("> .comment-thread__body > .comment-thread__content").html(t):n.find("> .fn-flex > .fn-flex-1 > .vditor-reset").html(t)},renderReactionShell:function(e,t,n){var i="string"==typeof t?t:JSON.stringify(t||[]);return'
    "},getThreadReplyDepth:function(e){var t=parseInt(e.commentThreadDepth,10);if(!isNaN(t)&&t>=0)return t;var n=document.getElementById(e.commentOriginalCommentId);return n&&$(n).hasClass("comment-thread__reply")?(t=parseInt($(n).attr("data-thread-depth"),10),isNaN(t)?1:t+1):0},renderThreadReplyClass:function(e){return"comment-thread__reply"+(e>0?" comment-thread__reply--nested":"")},renderThreadReplyStyle:function(e){return' data-thread-depth="'+e+'" style="--comment-thread-indent:'+16*e+'px"'},renderThreadReplyParagraphAttributes:function(e){var t=e.commentParagraphId||"";if(!t)return"";var n=parseInt(e.commentParagraphStatus,10);return n=isNaN(n)?0:n,' data-comment-paragraph-id="'+Comment.escapeHTML(t)+'" data-comment-paragraph-status="'+n+'"'},renderThreadReply:function(e){var t=Comment.getThreadReplyDepth(e);return'
    '+Comment.renderCommentAuthorName(e)+""+Comment.renderOriginalAuthorLabel(e)+' • '+Comment.escapeHTML(e.timeAgo)+'
    '+e.commentContent+"
    "+Comment.renderThreadAction(e)+"
    "},renderThreadReplies:function(e){for(var t="",n=0;n'+Comment.escapeHTML(n)+""},renderThreadPagination:function(e,t,n){if(e.find(".comment-thread__pager").remove(),n&&!(parseInt(n.paginationPageCount||0)<=1)){var i=parseInt(n.paginationCurrentPageNum||1),o=parseInt(n.paginationPageCount||1),a=['
    '];i>1&&a.push(Comment.renderThreadPageButton(t,i-1,"上一页")),a.push('',i,"/",o,""),i"),e.append(a.join(""))}},getCommentQueryExtra:function(){return Label.commentQueryExtra||""},normalizeReactionSummary:function(e){if(Array.isArray(e))return e;if("string"!=typeof e||""===e)return[];try{var t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return[]}},getReactionMap:function(e){e=Comment.normalizeReactionSummary(e);for(var t={},n=0;n/g,">")},getReactionUserDetails:function(e){return e&&Array.isArray(e.userDetails)?e.userDetails:[]},renderReactionTip:function(e){var t=Comment.getReactionUserDetails(e);if(0===t.length)return"";for(var n=[],i=0;i'),n.push('',Comment.escapeReactionHtml(s),''),n.push("")}}return 0===n.length?"":''+n.join("")+""},renderReactionSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],a=0;a'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderReactionPanel:function(e,t){for(var n=['
    '],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
    "),n.join("")},renderReactionSummaryWidget:function(e,t,n){var i=Comment.renderReactionSummaryItems(e,t,n),o=['
    '];return o.push('
    '),o.push('
    ',i,"
    "),o.join("")},renderReactionTriggerWidget:function(e,t,n){var i=n?" is-open":"",o=['
    '];return o.push('"),o.push(Comment.renderReactionPanel(e,t)),o.push("
    "),o.join("")},renderReactionBar:function(e,t,n,i,o){if("summary"===o)return Comment.renderReactionSummaryWidget(e,t,n);if("trigger"===o)return Comment.renderReactionTriggerWidget(e,n,i);var a=i?" is-open":"",r=Comment.renderReactionSummaryItems(e,t,n),s=['
    '];return s.push('
    '),s.push('
    ',r,"
    "),s.push('
    "),s.push(Comment.renderReactionPanel(e,n)),s.push("
    "),s.join("")},getReactionWidgets:function(e){return $('.comment-reaction[data-target-id="'+e+'"]')},getInteractiveReactionWidgets:function(e){return $('.comment-reaction--combined[data-target-id="'+e+'"], .comment-reaction--trigger[data-target-id="'+e+'"]')},mountReactionTrigger:function(e,t,n,i){if(0!==e.length){var o=Comment.renderReactionBar(t,[],n,i,"trigger"),a=e.find('.comment-reaction--trigger[data-target-id="'+t+'"]');if(a.length>0)a.replaceWith(o);else{var r=e.children(".icon-reply-btn").first();r.length>0?r.after(o):e.prepend(o)}}},collectReactionShells:function(e){var t=e?$(e):$(document);return t.hasClass("comment-reaction-shell")?t.add(t.find(".comment-reaction-shell")):t.find(".comment-reaction-shell")},initReactionWidgets:function(e){Comment.collectReactionShells(e).each(function(){var e=$(this),t=e.attr("data-target-id"),n=e.attr("data-summary"),i=e.attr("data-current-user-reaction")||"",o=e.closest(".comment-action__bar").find(".action-btns").first(),a=e.closest(".comment-action__left").length>0&&o.length>0,r=Comment.renderReactionBar(t,n,i,!1,a?"summary":"combined");e.replaceWith(r),a&&Comment.mountReactionTrigger(o,t,i,!1)})},closeReactionPanels:function(e){var t=e?$(e):$(document),n=".comment-reaction--combined, .comment-reaction--trigger",i=t.is(n)?t.add(t.find(n)):t.find(n);i.removeClass("is-open"),Comment.resetReactionPopoverStyle(i)},resetReactionPopoverStyle:function(e){e.find(".reaction-popover").removeAttr("style")},positionReactionPopover:function(e){if(0!==e.closest(".action-btns").length){var t=e.find(".reaction-popover").get(0),n=e.find(".reaction-trigger").get(0);if(t&&n){var i=12,o=n.getBoundingClientRect(),a=t.getBoundingClientRect(),r=Math.min(Math.max(a.width||240,240),window.innerWidth-24),s=a.height||288,c=Math.min(Math.max(o.left,i),window.innerWidth-r-i),l=o.bottom+8;l+s>window.innerHeight-i&&(l=o.top-s-8),l0},getActionToggleTarget:function(e){var t=$(e).closest(".comment-thread__reply");return t.length>0?t.first():$(e).closest("#comments .list.comments > ul > li").first()},closeCommentActionMenus:function(e){var t=$("#comments .comment-actions-open");e&&e.length>0&&(t=t.not(e)),t.removeClass("comment-actions-open")},bindMobileCommentActions:function(){$("#comments").off("click.mobileCommentActions").on("click.mobileCommentActions",".list.comments > ul > li,.comment-thread__reply",function(e){if(!Comment.shouldSkipActionToggle(e.target)){var t=Comment.getActionToggleTarget(e.target);0!==t.length&&t[0]===e.currentTarget&&(Comment.closeCommentActionMenus(t),t.toggleClass("comment-actions-open"))}}),$(document).off("click.mobileCommentActions").on("click.mobileCommentActions",function(e){0===$(e.target).closest("#comments .comment-actions-open").length&&Comment.closeCommentActionMenus()})},updateReactionBars:function(e,t,n,i){var o=Comment.getReactionWidgets(e),a="boolean"==typeof i?i:Comment.getInteractiveReactionWidgets(e).first().hasClass("is-open");o.each(function(){var i=$(this),o="combined";i.hasClass("comment-reaction--summary")?o="summary":i.hasClass("comment-reaction--trigger")&&(o="trigger"),i.replaceWith(Comment.renderReactionBar(e,t,n,a,o))}),a&&Comment.getInteractiveReactionWidgets(e).each(function(){Comment.positionReactionPopover($(this))})},updateReactionFromChannel:function(e){var t=e.targetId||e.commentId;if(t){var n=Comment.getReactionWidgets(t);if(0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";Comment.updateReactionBars(t,e.summary||[],i,!1)}}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".comment-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/comment/reaction",type:"POST",data:JSON.stringify({commentId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?Comment.updateReactionBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})},loadEmojis:function(){let e=Comment.getEmojis(),t="";for(let n=0;n\n
    \n \n`;$("#emojis").html(t)},ensureEmojiPanelReady:function(){if(Comment.emojiGroupsNew&&0!==Comment.emojiGroupsNew.length)if(Comment.currentEmojiGroupIdNew)EmojiGroups.ensureCurrentFresh(Comment,"New"),0===$("#emojisNew").children().length&&Comment.loadGroupEmojisNew(Comment.currentEmojiGroupIdNew);else{var e=EmojiGroups._findAllGroupId(Comment,"New");e&&Comment.selectEmojiGroupNew(e)}else Comment.loadEmojiGroupsNew()},openEmojiList:function(){Comment.ensureEmojiPanelReady(),$("#emojiList").addClass("showList")},closeEmojiList:function(){$("#emojiList").removeClass("showList")},bindMobileEmojiList:function(){var e=$("#emojiBtn"),t=$("#emojiList");0!==e.length&&0!==t.length&&(e.off("click.commentEmoji").on("click.commentEmoji",function(e){e.preventDefault(),e.stopPropagation(),t.hasClass("showList")?Comment.closeEmojiList():Comment.openEmojiList()}),t.off("click.commentEmoji").on("click.commentEmoji",function(e){e.stopPropagation()}),$(document).off("click.commentEmoji").on("click.commentEmoji",function(e){0===$(e.target).closest("#emojiBtn,#emojiList,#emojiCollectOverlay").length&&Comment.closeEmojiList()}))},confirmed:!1,delEmoji:function(e){if(!0===Comment.confirmed||confirm("确定要删除该表情包吗?")){Comment.confirmed=!0;let t=Comment.getEmojis();for(let n=0;n5242880?Util.alert("图片过大 (最大限制 5M)"):t.submit():Util.alert("只允许上传图片!")}}else t.submit()},formData:function(e){return e.serializeArray()},submit:function(e,t){},done:function(e,t){var n={result:{key:t.result.data.succMap[Object.keys(t.result.data.succMap)[0]]}};Comment.addEmoji(n.result.key)},fail:function(e,t){Util.alert("Upload error: "+t.errorThrown)}})},fromURL:function(){Util.alert('
    \n\n
    \n
    \n \n
    \n
    ',"从URL导入表情包"),$("#fromURL").focus(),$("#fromURL").unbind(),$("#fromURL").bind("keypress",function(e){"13"==e.keyCode&&(Comment.addEmoji($("#fromURL").val()),Util.closeAlert())})},addEmoji:function(){if(0!==arguments.length){var e=[];if(1===arguments.length&&Array.isArray(arguments[0]))e=arguments[0];else for(var t=0;t '+Label.commonUpdateCommentPermissionLabel+"").data("commentId",e).removeData("commentOriginalCommentId"),Comment._showReplyPanel(null,{keepAnonymousHidden:!0})},_bgFade:function(e,t){return 0!==e.length&&(!1!==(t=t||{}).scroll&&$(window).scrollTop(e[0].offsetTop-48),"comments"!==e.attr("id")&&!1!==t.highlight&&($(".comment-focus-highlight").removeClass("comment-focus-highlight"),e.addClass("comment-focus-highlight"),setTimeout(function(){e.removeClass("comment-focus-highlight")},1800),!0))},goComment:function(e){var t=Comment.getCommentHashId(e);return(!t||!Comment.focusCommentById(t))&&(t&&Comment.isSameCommentPage(e)?(Comment.expandThreadForComment(t),!1):(window.location=e,!1))},focusCommentElement:function(e,t){return Comment._bgFade(e,t)},focusCommentById:function(e,t){var n=Comment.getCommentElement(e);return 1===n.length&&Comment.focusCommentElement(n,t)},focusLocationHash:function(){var e=Comment.getCommentHashId(window.location.hash);return!!e&&(!!Comment.focusCommentById(e)||Comment.expandThreadForComment(e))},expandThreadForComment:function(e){return $.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,anchorCommentId:e,userCommentViewMode:Label.userCommentViewMode,sort:Label.commentSort,author:Label.commentAuthorFilter?"1":""}),success:function(t){if(0!==t.code)return!1;Comment.renderThreadResponse(t.commentThreadRootId,t.commentThreadReplies||[],e,{pagination:t.pagination})}}),!0},renderThreadResponse:function(e,t,n,i){i=i||{};var o=Comment.getCommentElement(e);if(1!==o.length)return!1;var a=Comment.ensureThread(o,e);return a.find(".comment-thread__list").html(Comment.renderThreadReplies(t)),a.addClass("comment-thread--expanded"),a.find(".comment-thread__more").remove(),Comment.renderThreadPagination(a,e,i.pagination),Comment.initReactionWidgets(a),Util.listenUserCard(),Util.parseHljs(),Util.parseMarkdown(),!1===i.focus||!n||Comment.focusCommentById(n)},_getReplyUseName:function(){var e=$("#replyUseName").not(".fn-none").first();return 0===e.length&&(e=$("#replyUseName").first()),e},_clearReplyUseName:function(){Comment._getReplyUseName().removeClass("reply-use-name--active").html("").removeData("commentOriginalCommentId").removeData("commentId")},cancelReply:function(){Comment._clearReplyUseName(),Comment._setArticleReplyTarget()},_setArticleReplyTarget:function(){var e=Comment._getReplyUseName();e.data("commentOriginalCommentId")||e.data("commentId")||e.addClass("reply-use-name--active").html(' '+Comment.escapeHTML($(".article-title").text())+"")},_showReplyPanel:function(e,t){if(t=t||{},!Label.isLoggedIn)return Util.needLogin(),!1;if(0===$("#commentContent").length)return Util.alert(Label.notAllowCmtLabel),!1;!0!==t.keepAnonymousHidden&&$(".anonymous-check").show(),Comment.closeReactionPanels(),ArticleReaction.closePanels(),Comment._setArticleReplyTarget();var n=$(".editor-panel");return 0!==n.length&&(n.hasClass("editor-panel--open")?(Comment.editor.focus(),e&&e(),!0):(n.show().addClass("editor-panel--open").css("bottom",0),n.find(".wrapper").hide().slideDown(function(){Comment.editor.focus(),e&&e()}),!0))},_hideReplyPanel:function(){return $(".editor-panel .wrapper").slideUp(function(){$(".editor-panel").removeClass("editor-panel--open").fadeOut(100)}),!1},_toggleReply:function(e){return $(".editor-panel").hasClass("editor-panel--open")?Comment._hideReplyPanel():Comment._showReplyPanel(e)},init:function(){if(Comment.focusLocationHash(),$.ua.set(navigator.userAgent),$.pjax({selector:".pagination a",container:"#comments",show:"",cache:!1,storage:!0,titleSuffix:"",callback:function(){Comment.initReactionWidgets($("#comments")),Comment.bindMobileCommentActions(),Article.initCollectButtons(),Util.parseMarkdown(),Util.parseHljs(),Comment.focusLocationHash()}}),NProgress.configure({showSpinner:!1}),$("#comments").bind("pjax.start",function(){NProgress.start()}),$("#comments").bind("pjax.end",function(){NProgress.done()}),ArticleReaction.bindPanels(),ArticleReaction.initWidgets(),Comment.bindReactionPanels(),Comment.initReactionWidgets($("#comments")),Comment.bindMobileCommentActions(),!Label.isLoggedIn)return!1;Comment.editor=Util.newVditor({id:"commentContent",cache:!0,preview:{mode:"editor"},resize:{enable:!0,position:"top"},height:200,placeholder:Label.commentEditorPlaceholderLabel,after:function(){Comment.bindMobileVditorToolbarEmoji()},ctrlEnter:function(){Comment.add(Label.articleOId,Label.csrfToken,document.getElementById("articleCommentBtn"))}})},bindMobileVditorToolbarEmoji:function(){if(-1!==navigator.userAgent.indexOf("iPhone")){var e=document.querySelector('#commentContent .vditor-toolbar__item button[data-type="emoji"]');if(e&&"true"!==e.getAttribute("data-mobile-emoji-click-bound")){var t=0;e.setAttribute("data-mobile-emoji-click-bound","true"),e.addEventListener("touchstart",function(){t=(new Date).getTime()},!0),e.addEventListener("click",function(n){(new Date).getTime()-t<700||(n.preventDefault(),n.stopPropagation(),e.dispatchEvent(new Event("touchstart",{bubbles:!0,cancelable:!0})))},!0)}}},thank:function(e,t,n,i,o){if(!Label.isLoggedIn)return Util.needLogin(),!1;if(0===i&&!confirm(n))return!1;var a={commentId:e};$.ajax({url:Label.servePath+"/comment/thank",type:"POST",headers:{csrfToken:t},cache:!1,data:JSON.stringify(a),error:function(e,t,n){Util.alert(n)},success:function(e,t){if(0===e.code){$(o).removeAttr("onclick");var n=$(''),i=$(o).offset().top,a=$(o).offset().left;n.css({"z-index":9999,top:i,left:a,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(n),n.animate({left:a-150,top:i-60,opacity:0},1e3,function(){var e=parseInt($(o).text());$(o).html(' '+(e+1)).addClass("ft-red"),n.remove()})}else Util.alert(e.msg)}})},showReply:function(e,t,n){var i=$(t).closest("li").find("."+n);if("comment-get-comment"===n){if(0!==i.find("li").length)return i.html(""),!1}else if(0===$(t).find(".icon-chevron-down").length)return $(t).find(".icon-chevron-up").removeClass("icon-chevron-up").addClass("icon-chevron-down").find("use").attr("xlink:href","#chevron-down"),i.html(""),!1;if("0.3"===$(t).css("opacity"))return!1;var o="/comment/replies";"comment-get-comment"===n&&(o="/comment/original"),$.ajax({url:Label.servePath+o,type:"POST",data:JSON.stringify({commentId:e,userCommentViewMode:Label.userCommentViewMode}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(e,n){if(0!==e.code)return Util.alert(e.msg),!1;var o=e.commentReplies,a="";o instanceof Array||(o=[o]),0===o.length&&(a='
  • '+Label.removedLabel+"
  • ");for(var r=0;r
    ',a+='',a+='
    ',a+="
    ",a+='
    ',a+='',a+=Comment.renderCommentAuthorName(s),a+="",a+=Comment.renderOriginalAuthorLabel(s),a+=' • '+s.timeAgo,s.rewardedCnt>0&&(a+=' '+s.rewardedCnt+" "),a+="",a+='
    '+s.commentContent+"
    "+Comment.renderReactionBar(s.oId,s.reactionSummary,s.currentUserReaction)+"
    "}i.html("
      "+a+"
    "),Util.parseHljs(),Util.parseMarkdown(),$(t).find(".icon-chevron-down").removeClass("icon-chevron-down").addClass("icon-chevron-up").find("use").attr("xlink:href","#chevron-up")},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},showThreadReplies:function(e,t,n){if("0.3"===$(t).css("opacity"))return!1;$.ajax({url:Label.servePath+"/comment/thread/replies",type:"POST",data:JSON.stringify({commentId:e,paginationCurrentPageNum:n||1}),beforeSend:function(){$(t).css("opacity","0.3")},success:function(t){if(0!==t.code)return Util.alert(t.msg),!1;Comment.renderThreadResponse(t.commentThreadRootId||e,t.commentThreadReplies||[],null,{focus:!1,pagination:t.pagination})},error:function(e){Util.alert(e.statusText)},complete:function(){$(t).css("opacity","1")}})},add:function(e,t){var n=Comment._getReplyUseName(),i={articleId:e,commentAnonymous:$("#commentAnonymous").prop("checked"),commentVisible:$("#commentVisible").prop("checked"),commentContent:Comment.editor.getValue(),userCommentViewMode:Label.userCommentViewMode};n.data("commentOriginalCommentId")&&(i.commentOriginalCommentId=n.data("commentOriginalCommentId"));var o=window.LongArticleParagraphComments,a=o&&o.getSubmissionParagraphId?o.getSubmissionParagraphId(i.commentOriginalCommentId):"";a&&(i.paragraphId=a);var r=Label.servePath+"/comment",s="POST",c=n.data("commentId");c?(r=Label.servePath+"/comment/"+c,s="PUT"):a&&(r=Label.servePath+"/comment/paragraph"),$.ajax({url:r,type:s,headers:{csrfToken:t},cache:!1,data:JSON.stringify(i),beforeSend:function(){$(".form button.red").attr("disabled","disabled").css("opacity","0.3")},success:function(e,t){if($(".form button.red").removeAttr("disabled").css("opacity","1"),0===e.code){if(c&&(Comment.updateEditedCommentContent(c,e.commentContent),Comment.updateCommentHistoryAction(c,parseInt(e.commentRevisionCount||0))),Comment.editor.setValue(""),Comment._hideReplyPanel(),Comment._clearReplyUseName(),a&&o&&o.handleSubmitSuccess(),window.localStorage){window.localStorage[Label.articleOId]=JSON.stringify({commentContent:""})}i.commentOriginalCommentId&&Comment.focusCommentById(i.commentOriginalCommentId,{scroll:!1})}else $("#addCommentTip").addClass("error").html("
    • "+e.msg+"
    ")},error:function(e){$("#addCommentTip").addClass("error").html("
    • "+e.statusText+"
    ")},complete:function(){$(".form button.red").removeAttr("disabled").css("opacity","1")}})},reply:function(e,t){window.LongArticleParagraphComments&&window.LongArticleParagraphComments.activateFromComment(document.getElementById(t));var n=Comment.escapeHTML(e);Comment._getReplyUseName().addClass("reply-use-name--active").html(' '+n+'×').data("commentOriginalCommentId",t).removeData("commentId"),Comment._showReplyPanel()}},ArticleReaction={renderSummaryItems:function(e,t,n){for(var i=Comment.getReactionMap(t),o=[],a=0;a'),o.push('"),""!==m&&o.push(m,"")}}return o.join("")},renderPanel:function(e,t){for(var n=['
    '],i=0;i"),n.push('',o.emoji,""),n.push("")}return n.push("
    "),n.join("")},renderBar:function(e,t,n,i){var o=i?" is-open":"",a=['
    '];return a.push('
    '),a.push('
    ',ArticleReaction.renderSummaryItems(e,t,n),"
    "),a.push('
    "),a.push(ArticleReaction.renderPanel(e,n)),a.push("
    "),a.join("")},collectShells:function(e){var t=e?$(e):$(document);return t.hasClass("article-reaction-shell")?t.add(t.find(".article-reaction-shell")):t.find(".article-reaction-shell")},ensureShell:function(){if(!($(".article-reaction-shell, .article-reaction").length>0)&&Label.articleOId){var e=$(".article-main .article-tags").first();0===e.length&&(e=$(".article-main .article-info").first()),0!==e.length&&$('
    ').insertAfter(e)}},getWidgets:function(e){return $('.article-reaction[data-target-id="'+e+'"]')},initWidgets:function(e){e||ArticleReaction.ensureShell(),ArticleReaction.collectShells(e).each(function(){var e=$(this);e.replaceWith(ArticleReaction.renderBar(e.attr("data-target-id"),e.attr("data-summary"),e.attr("data-current-user-reaction")||"",!1))})},closePanels:function(){$(".article-reaction.is-open").removeClass("is-open")},togglePanel:function(e){var t=$(e).closest(".article-reaction"),n=!t.hasClass("is-open");ArticleReaction.closePanels(),n&&t.addClass("is-open")},bindPanels:function(){$(document).off("click.articleReaction").on("click.articleReaction",function(e){0===$(e.target).closest(".article-reaction").length&&ArticleReaction.closePanels()})},updateBars:function(e,t,n,i){var o=ArticleReaction.getWidgets(e),a="boolean"==typeof i?i:o.first().hasClass("is-open");o.each(function(){$(this).replaceWith(ArticleReaction.renderBar(e,t,n,a))})},updateReactionFromChannel:function(e){var t=e.targetId,n=ArticleReaction.getWidgets(t);if(t&&0!==n.length){var i=e.actorUserId===Label.currentUserId?e.actorReaction||"":n.first().attr("data-current-user-reaction")||"";ArticleReaction.updateBars(t,e.summary||[],i,!1)}},react:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n).closest(".article-reaction");if("true"===i.attr("data-loading"))return!1;$.ajax({url:Label.servePath+"/article/reaction",type:"POST",data:JSON.stringify({articleId:e,groupType:"emoji",value:t}),beforeSend:function(){i.attr("data-loading","true").addClass("reaction-loading")},success:function(e){0===e.code?ArticleReaction.updateBars(e.data.targetId,e.data.summary,e.data.currentUserReaction,!1):Util.alert(e.msg)},error:function(e){Util.alert(e.statusText)},complete:function(){i.removeAttr("data-loading").removeClass("reaction-loading")}})}},Article={imagePreviewClickDelay:100,imagePreviewTouchClickGuard:600,imagePreviewTapMaxDistance:12,commentImageLeftOffset:15,imagePreviewTouchAt:0,imagePreviewTouchStart:null,initAudio:function(){$(".content-audio").each(function(){var e=$(this);new APlayer({element:this,narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",preload:"none",mode:"circulation",music:{title:e.data("title"),author:'音乐分享',url:e.data("url"),pic:Label.staticServePath+"/images/music.png"}})});var e=$("#articleAudio");if(0===e.length)return!1;new APlayer({element:document.getElementById("articleAudio"),narrow:!1,autoplay:!1,mutex:!0,theme:"#4285f4",mode:"order",preload:"none",music:{title:"语音预览",author:'小薇',url:e.data("url"),pic:Label.staticServePath+"/images/blank.png"}})},permissionTip:function(e){Label.isLoggedIn?Util.alert(e):Util.needLogin()},voteUp:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.next();if(i.hasClass("disabled"))return!1;var a={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/up/"+t,type:"POST",cache:!1,data:JSON.stringify(a),success:function(e,t){i.removeClass("disabled");var n=parseInt(i.text()),a=parseInt(o.text());0!==e.code?Util.alert(e.msg):0===e.type?i.html(' '+(n-1)).removeClass("ft-red"):(i.html(' '+(n+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(a-1)).removeClass("ft-red"))}})},voteDown:function(e,t,n){if(!Label.isLoggedIn)return Util.needLogin(),!1;var i=$(n),o=i.prev();if(i.hasClass("disabled"))return!1;var a={dataId:e};i.addClass("disabled"),$.ajax({url:Label.servePath+"/vote/down/"+t,type:"POST",cache:!1,data:JSON.stringify(a),success:function(e,t){i.removeClass("disabled");var n=parseInt(o.text()),a=parseInt(i.text());if(0===e.code)return 1===e.type?i.html(' '+(a-1)).removeClass("ft-red"):(i.html(' '+(a+1)).addClass("ft-red"),o.hasClass("ft-red")&&o.html(' '+(n-1)).removeClass("ft-red")),!1;Util.alert(e.msg)}})},previewImgAfterLoading:function(){$(".img-preview img").css("transform","translate3d("+Math.max(0,$(window).width()-$(".img-preview img").width())/2+"px, "+Math.max(0,$(window).height()-$(".img-preview img").height())/2+"px, 0)"),setTimeout(function(){$(".img-preview").width($(window).width())},300)},isPreviewableImage:function(e){return!e.hasClass("emoji")&&1!==e.closest(".editor-panel").length&&1!==e.closest(".ad").length},markImagePreviewTouchStart:function(e){var t=e.originalEvent.changedTouches[0];Article.imagePreviewTouchStart={x:t.clientX,y:t.clientY}},isImagePreviewTap:function(e){if(null===Article.imagePreviewTouchStart)return!1;var t=e.originalEvent.changedTouches[0],n=t.clientX-Article.imagePreviewTouchStart.x,i=t.clientY-Article.imagePreviewTouchStart.y,o=Math.sqrt(n*n+i*i);return Article.imagePreviewTouchStart=null,o<=Article.imagePreviewTapMaxDistance},cancelImagePreviewEvent:function(e){e&&(e.preventDefault(),e.stopPropagation())},openImagePreview:function(e,t){var n=t.offsetTop,i=t.offsetLeft;1===e.closest(".comments").length&&(n+=e.closest("li")[0].offsetTop,i=i+$(".comments")[0].offsetLeft+Article.commentImageLeftOffset);var o=(e.attr("src")||"").split("?imageView2")[0],a=$('
    ').on("click",function(){$(this).remove()}),r=$("").css("transform","translate3d("+Math.max(0,i)+"px, "+Math.max(0,n-$(window).scrollTop())+"px, 0)").attr("src",o).on("load",Article.previewImgAfterLoading);a.append(r),$("body").append(a),$(".img-preview").css({"background-color":"#fff",position:"fixed"})},init:function(){this.share(),Util.parseHljs(),Util.parseMarkdown();var e=null;$(".main").off("dblclick.articleImagePreview click.articleImagePreview touchstart.articleImagePreview touchend.articleImagePreview touchcancel.articleImagePreview",".vditor-reset img").on("dblclick.articleImagePreview",".vditor-reset img",function(t){clearTimeout(e);var n=$(this);Article.isPreviewableImage(n)&&(Article.cancelImagePreviewEvent(t),window.open(n.attr("src")))}).on("touchstart.articleImagePreview",".vditor-reset img",function(e){Article.isPreviewableImage($(this))&&Article.markImagePreviewTouchStart(e)}).on("touchcancel.articleImagePreview",".vditor-reset img",function(){Article.imagePreviewTouchStart=null}).on("touchend.articleImagePreview",".vditor-reset img",function(t){clearTimeout(e);var n=$(this);Article.isPreviewableImage(n)&&Article.isImagePreviewTap(t)&&(Article.imagePreviewTouchAt=Date.now(),Article.cancelImagePreviewEvent(t),Article.openImagePreview(n,this))}).on("click.articleImagePreview",".vditor-reset img",function(t){if(clearTimeout(e),Date.now()-Article.imagePreviewTouchAt500?500:$(window).width()-50,height:450,modal:!0,hideFooter:!0}),this.initAudio()},revision:function(e,t){if(!Label.isLoggedIn)return Util.needLogin(),!1;t||(t="article"),Article._revisionDialogOpen("comment"===t?"评论历史":"文章历史"),"comment"===t?Article._legacyRevision(e,t):Article._articleRevision(e)},_revisionDialogInit:function(){$("#revisionDialog").length>0||($("body").append(''),$("#revisionDialog .revision-modal__body").append($("#revision")),$("#revisionDialog .revision-modal__overlay, #revisionDialog .revision-modal__close").click(function(){Article._revisionDialogClose()}),$(document).off("keydown.revisionDialog").on("keydown.revisionDialog",function(e){"Escape"===e.key&&$("#revisionDialog").hasClass("is-open")&&Article._revisionDialogClose()}))},_revisionDialogOpen:function(e){Article._revisionDialogInit(),$("#revisionDialogTitle").text(e||"历史版本"),$("#revisionDialog").addClass("is-open").attr("aria-hidden","false"),$("body").addClass("revision-modal-open"),$("#revisionDialog .revision-modal__close").focus()},_revisionDialogClose:function(){$("#revisionDialog").removeClass("is-open").attr("aria-hidden","true"),$("body").removeClass("revision-modal-open")},_legacyRevision:function(e,t){$.ajax({url:Label.servePath+"/"+t+"/"+e+"/revisions",cache:!1,success:function(e,n){if(0===e.code){if(0===e.revisions.length||1===e.revisions.length)return $("#revision > .revisions").remove(),$("#revisions").html(""+Label.noRevisionLabel+""),!1;$("#revisions").html("").prev().remove(),$("#revisions").data("revisions",e.revisions).before('
    '+(e.revisions.length-1)+"~"+e.revisions.length+"/"+e.revisions.length+'
    '),e.revisions.length<=2&&$("#revision a").first().addClass("disabled");var i=JsDiff.createPatch("",e.revisions[e.revisions.length-2].revisionData.articleContent||e.revisions[e.revisions.length-2].revisionData.commentContent,e.revisions[e.revisions.length-1].revisionData.articleContent||e.revisions[e.revisions.length-1].revisionData.commentContent,e.revisions[e.revisions.length-2].revisionData.articleTitle||"",e.revisions[e.revisions.length-1].revisionData.articleTitle||"");return new Diff2HtmlUI({diff:i}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0}),Article._revisionsControls(t),!1}Util.alert(e.msg)}})},_revisionsControls:function(e){var t=$("#revisions").data("revisions");$("#revision a.first").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions").text().split("~")[0]);e<=2?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.last").removeClass("disabled"),$("#revision .revisions > span").html(e-1+"~"+e+"/"+t.length);var n=JsDiff.createPatch("",t[e-2].revisionData.articleContent||t[e-2].revisionData.commentContent,t[e-1].revisionData.articleContent||t[e-1].revisionData.commentContent,t[e-2].revisionData.articleTitle||"",t[e-1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}}),$("#revision a.last").click(function(){if(!$(this).hasClass("disabled")){var e=parseInt($("#revision .revisions span").text().split("~")[0]);e>t.length-3?$(this).addClass("disabled"):$(this).removeClass("disabled"),t.length>2&&$("#revision a.first").removeClass("disabled"),$("#revision .revisions > span").html(e+1+"~"+(e+2)+"/"+t.length);var n=JsDiff.createPatch("",t[e].revisionData.articleContent||t[e].revisionData.commentContent,t[e+1].revisionData.articleContent||t[e+1].revisionData.commentContent,t[e].revisionData.articleTitle||"",t[e+1].revisionData.articleTitle||"");new Diff2HtmlUI({diff:n}).draw("#revisions",{matching:"lines",outputFormat:"side-by-side",synchronisedScroll:!0})}})},_articleRevision:function(e){$("#revision > .revisions").remove(),$("#revisions").removeData("revisions").removeData("revisionDetails").html("加载中"),$.ajax({url:Label.servePath+"/article/"+e+"/revisions/list",cache:!1,success:function(t){if(0===t.code){var n=t.revisions||[];n.length<2?$("#revisions").html(""+Label.noRevisionLabel+""):($("#revisions").data("revisions",n).data("revisionDetails",{}).html(Article._revisionPickerHtml(n)),Article._revisionBindPicker(e),Article._revisionCompare(e))}else $("#revisions").html(""+Article._revisionEscapeHTML(t.msg||"加载失败")+"")},error:function(){$("#revisions").html("加载失败")}})},_revisionPickerHtml:function(e){for(var t=e.length-2,n=e.length-1,i="",o="",a=0;a
    '},_revisionOptionHtml:function(e,t){return'"},_revisionVersionLabel:function(e){return e.current?"当前 "+e.revisionTimeStr:e.revisionTimeStr},_revisionBindPicker:function(e){$("#revision .revision-picker__compare").click(function(){Article._revisionCompare(e)}),$("#revision .revision-picker__diff-only").change(function(){Article._revisionCompare(e)})},_revisionCompare:function(e){var t=$("#revision .revision-picker__base").val(),n=$("#revision .revision-picker__target").val(),i=$("#revision .revision-picker__diff-only").is(":checked");$("#revisions .revision-diff").html("加载中"),$.when(Article._revisionFetch(e,t),Article._revisionFetch(e,n)).done(function(e,t){Article._revisionRenderCompare(e,t,i)}).fail(function(e){$("#revisions .revision-diff").html(""+Article._revisionEscapeHTML(e||"加载失败")+"")})},_revisionFetch:function(e,t){var n=$("#revisions").data("revisionDetails")||{},i=$.Deferred();return n[t]?(i.resolve(n[t]),i.promise()):($.ajax({url:Label.servePath+"/article/"+e+"/revisions/"+encodeURIComponent(t),cache:!1,success:function(e){0===e.code?(n[t]=e.revision,$("#revisions").data("revisionDetails",n),i.resolve(e.revision)):i.reject(e.msg)},error:function(){i.reject("加载失败")}}),i.promise())},_revisionRenderCompare:function(e,t,n){var i=e.revisionData||{},o=t.revisionData||{},a=Article._revisionRenderInlineDiff("标题",i.articleTitle||"",o.articleTitle||"",n);a+=Article._revisionRenderLineDiff("内容",i.articleContent||"",o.articleContent||"",n),$("#revisions .revision-diff").html(a||"无差异")},_revisionRenderInlineDiff:function(e,t,n,i){for(var o=JsDiff.diffWordsWithSpace?JsDiff.diffWordsWithSpace(t,n):JsDiff.diffWords(t,n),a=!1,r="",s=0;s'+Article._revisionEscapeHTML(o[s].value)+"")}return i&&!a?"":'

    '+e+'

    '+r+"
    "},_revisionRenderLineDiff:function(e,t,n,i){for(var o=JsDiff.diffLines(t,n),a=!1,r="",s=0;s

    '+e+'

    '+r+"
    "},_revisionLineHtml:function(e,t){for(var n=Article._revisionSplitLines(e),i="",o=0;o'+Article._revisionEscapeHTML(n[o])+"";return i},_revisionSplitLines:function(e){var t=e.split("\n");return""===t[t.length-1]&&t.pop(),t},_revisionEscapeHTML:function(e){return String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},share:function(){if("mobile"!==$.ua.device.type){var e=$(".article-content").offset().left/2-15;$(".share").css("left",(e<20?20:e)+"px")}var t=$("#qrCode").data("shareurl");$("#qrCode").qrcode({width:90,height:90,text:t}),$("body").click(function(){$("#qrCode").slideUp()}),$(".share > span").click(function(){var e=$(this).data("type");if(!e)return!1;if("wechat"===e)return $("#qrCode").slideToggle(),!1;if("copy"===e)return!1;var n=encodeURIComponent(Label.articleTitle+" - "+Label.symphonyLabel),i=encodeURIComponent(t),o=$(".article-info .avatar").css("background-image");pic=o.substring(5,o.length-2);var a={};a.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+n+"&url="+i+"&pic="+pic,a.weibo="http://v.t.sina.com.cn/share/share.php?title="+n+"&url="+i+"&pic="+pic,a.google="https://plus.google.com/share?url="+i,a.twitter="https://twitter.com/intent/tweet?status="+n+" "+i,window.open(a[e],"_blank","top=100,left=200,width=648,height=618")}),$("#qrCode").click(function(){$(this).hide()}),$("#shareClipboard").mouseover(function(){$(this).attr("aria-label",Label.copyLabel)}),Util.clipboard($("#shareClipboard"),$("#shareClipboard").next(),function(){$("#shareClipboard").attr("aria-label",Label.copiedLabel)})},reward:function(e){confirm(Label.rewardConfirmLabel)&&$.ajax({url:Label.servePath+"/article/reward?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0!==e.code)Util.alert(e.msg);else{$("#articleRewardContent").html(e.articleRewardContent),Util.parseHljs(),Util.parseMarkdown();var n=parseInt($(".article-actions .icon-points").parent().text());$(".article-actions .icon-points").parent().addClass("ft-red").html(' '+(n+1)).removeAttr("onclick")}},error:function(e){Util.needLogin()}})},thankArticle:function(e,t){return Label.isLoggedIn?!(0===t&&!confirm(Label.thankArticleConfirmLabel))&&(Label.currentUserName===Label.articleAuthorName?(Util.alert(Label.thankSelfLabel),!1):void $.ajax({url:Label.servePath+"/article/thank?articleId="+e,type:"POST",cache:!1,success:function(e,t){if(0===e.code){var n=parseInt($("#thankArticle").text());$("#thankArticle").removeAttr("onclick").html(' '+(n+1)+"").addClass("ft-red").removeClass("ft-blue");var i=$(''),o=$("#thankArticle").offset().top,a=$("#thankArticle").offset().left;return i.css({"z-index":9999,top:o-20,left:a,position:"absolute","font-size":16,"-moz-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none"}),$("body").append(i),i.animate({top:o-180,opacity:0},1500,function(){i.remove()}),!1}Util.alert(e.msg)}})):(Util.needLogin(),!1)},stick:function(e){confirm(Label.stickConfirmLabel)&&$.ajax({url:Label.servePath+"/article/stick?articleId="+e,type:"POST",cache:!1,success:function(e,t){Util.alert(e.msg),window.location.href=Label.servePath+"/recent"}})},playThought:function(e){var t=String.fromCharCode(31),n=String.fromCharCode(30),i=String.fromCharCode(29),o=String.fromCharCode(10),a=String.fromCharCode(24),r=$("#thoughtProgress > span"),s=$("#thoughtProgress > svg"),c="#articleThought",l=function(e,n){var o=e.split(t);3===o.length&&o.splice(0,0,"");var r=o[0],s=o[2].split("-"),c=o[3].split("-");if(s[0]=parseInt(s[0]),s[1]=parseInt(s[1]),c[0]=parseInt(c[0]),c[1]=parseInt(c[1]),r===a){for(var l=[],m=s[1],d=0;c[1],m").replace(/ /g," ").replace(/ /g,"    ");$(c).data("text",e).html(t)},parseInt(m[u].split(t)[1])/d);for(var h=0,v=parseInt(m[u-1].split(t)[1])/d,f=setInterval(function(){h>=v?(r.width("100%"),s.css("left","100%"),clearInterval(f)):(h+=20,s.css("left",100*h/v+"%"),r.width(100*h/v+"%"))},20),g="",C="",b=0,y=0,w=0;y").replace(/ /g," ").replace(/ /g,"    "),g=L,$(c).html(C),b=Math.max(b,$(c).height())}$("#thoughtProgressPreview").html('
    '+C+"
    "),$("#thoughtProgressPreview").dialog({modal:!0,hideFooter:!0}),s.click(function(){$("#thoughtProgressPreview").dialog("open")}),$(c).html(C).height(b).css("margin-bottom","15px").html("")},getNotificationCommentIds:function(e){var t=[],n=function(e){(e=String(e||"").replace(/^#/,"").trim())&&-1===t.indexOf(e)&&t.push(e)};return String(e||"").split(",").forEach(n),n(window.location.hash),t.join(",")},makeNotificationRead:function(e,t){var n={articleId:e,commentIds:Article.getNotificationCommentIds(t)};$.ajax({url:Label.servePath+"/notifications/make-read",type:"POST",cache:!1,data:JSON.stringify(n)})}},ArticleAdjacentNav={storageKey:"articleAdjacentSort",sortValues:["time","author","hot"],init:function(){var e=$("[data-article-nav-sort]");0!==e.length&&(this.applySort(e,this.getStoredSort()),this.bindSortChange(e))},getStoredSort:function(){var e=window.localStorage.getItem(this.storageKey);return this.isValidSort(e)?e:"time"},isValidSort:function(e){return-1!==this.sortValues.indexOf(e)},bindSortChange:function(e){var t=this;e.find(".article-nav-sort__input").on("change",function(){this.checked&&t.isValidSort(this.value)&&(window.localStorage.setItem(t.storageKey,this.value),t.applySort(e,this.value))})},applySort:function(e,t){e.find('.article-nav-sort__input[value="'+t+'"]').prop("checked",!0)}};Article.init(),$(document).ready(function(){ArticleAdjacentNav.init(),Comment.init(),EmojiGroups.init("Comment","New"),Comment.loadEmojiGroupsNew(),Comment.bindMobileEmojiList(),ArticleChannel.init(Label.articleChannel),Label.isLoggedIn&&(Article.makeNotificationRead(Label.articleOId,Label.notificationCmtIds),setTimeout(function(){Util.setUnreadNotificationCount()},1e3))}),Article.initCollectButtons=function(){$(".comment-action .action-btns").each(function(){const e=$(this);if(e.data("collect-inited"))return;const t=e.closest("li").find(".vditor-reset.comment").first();if(!t.length)return;const n=t.find("img").filter(function(){return!$(this).hasClass("emoji")&&0===$(this).closest(".editor-panel, .ad").length}).map(function(){return $(this).attr("src")}).get().filter(Boolean),i=Array.from(new Set(n));if(!i.length)return;e.data("collect-inited",!0);const o=$(' 收藏表情');o.on("click",function(e){e.stopPropagation(),EmojiGroups.openCollectDialog(i)});const a=e.children(".icon-reply-btn").first(),r=e.children(".comment-reaction--trigger").first();a.length?o.insertAfter(a):r.length?o.insertAfter(r):e.prepend(o)})},$(function(){Article.initCollectButtons()}); \ No newline at end of file diff --git a/src/main/resources/repository.json b/src/main/resources/repository.json index a1c00a08..f3a38848 100644 --- a/src/main/resources/repository.json +++ b/src/main/resources/repository.json @@ -1026,6 +1026,12 @@ "length": 19, "description": "主键" }, + { + "name": "sourceAppId", + "type": "String", + "length": 64, + "description": "来源应用编号" + }, { "name": "requestId", "type": "String", diff --git a/src/main/resources/scss/index.scss b/src/main/resources/scss/index.scss index 3319f14d..83508605 100644 --- a/src/main/resources/scss/index.scss +++ b/src/main/resources/scss/index.scss @@ -6332,57 +6332,6 @@ body.night .long-article-paragraph-comments { text-overflow: ellipsis; } -.article-column-card { - margin: 16px 0; - padding: 12px; - border: 1px solid #b7cfba; - border-radius: 8px; - background: #cfe2d0; -} - -.article-column-card__title { - color: #2d4935; - font-weight: 600; - - a { - color: inherit; - text-decoration: none; - } -} - -.article-column-card__meta { - margin-top: 4px; - color: #718078; - font-size: 12px; -} - -.article-column-card__chapters { - margin-top: 10px; - max-height: 260px; - overflow: auto; - padding-top: 8px; - border-top: 1px dashed #b8d0bb; -} - -.article-column-card__chapter { - display: block; - padding: 6px 8px; - border-radius: 8px; - color: #3b5743; - text-decoration: none; - - &:hover { - background: #c1d9c4; - text-decoration: none; - } -} - -.article-column-card__chapter--active { - background: #b2d0b5; - color: #28593a; - font-weight: 600; -} - .article-nav-list-card { margin: 12px 0 0; padding: 12px; @@ -6753,7 +6702,6 @@ body.night { } .article-adjacent-nav__link, - .article-column-card, .article-nav-list-card { border-color: rgba(255, 255, 255, 0.1); background: #1f2937; @@ -6766,29 +6714,19 @@ body.night { } .article-adjacent-nav__label, - .article-adjacent-nav__preview, - .article-column-card__meta { + .article-adjacent-nav__preview { color: #94a3b8; } - .article-column-card__title, - .article-column-card__chapter, .article-nav-list-card__title, .article-nav-list-card__item { color: #e5e7eb; } - .article-column-card__chapters, .article-nav-list-card__items { border-color: rgba(255, 255, 255, 0.1); } - .article-column-card__chapter:hover, - .article-column-card__chapter--active { - background: rgba(95, 149, 109, 0.24); - color: #c9edcf; - } - .article-nav-list-card__item:hover, .article-nav-list-card__item--active { background: rgba(59, 130, 246, 0.18); diff --git a/src/main/resources/scss/mobile-base.scss b/src/main/resources/scss/mobile-base.scss index 8b57e7ba..53b69ba8 100644 --- a/src/main/resources/scss/mobile-base.scss +++ b/src/main/resources/scss/mobile-base.scss @@ -6414,52 +6414,6 @@ body.long-article-page { font-size: 13px; } -.article-column-card { - margin: 12px 0; - padding: 10px; - border: 1px solid #b7cfba; - border-radius: 8px; - background: #cfe2d0; -} - -.article-column-card__title { - color: #2d4935; - font-weight: 600; - - a { - color: inherit; - text-decoration: none; - } -} - -.article-column-card__meta { - margin-top: 4px; - color: #718078; - font-size: 12px; -} - -.article-column-card__chapters { - margin-top: 8px; - max-height: 220px; - overflow: auto; - padding-top: 6px; - border-top: 1px dashed #b8d0bb; -} - -.article-column-card__chapter { - display: block; - padding: 6px 8px; - border-radius: 8px; - color: #3b5743; - text-decoration: none; -} - -.article-column-card__chapter--active { - background: #b2d0b5; - color: #28593a; - font-weight: 600; -} - .article-nav-list-card { margin: 10px 0 0; padding: 10px; @@ -6800,7 +6754,6 @@ body.night { } .article-adjacent-nav__link, - .article-column-card, .article-nav-list-card { border-color: rgba(255, 255, 255, 0.1); background: #1f2937; @@ -6808,28 +6761,19 @@ body.night { } .article-adjacent-nav__label, - .article-adjacent-nav__preview, - .article-column-card__meta { + .article-adjacent-nav__preview { color: #94a3b8; } - .article-column-card__title, - .article-column-card__chapter, .article-nav-list-card__title, .article-nav-list-card__item { color: #e5e7eb; } - .article-column-card__chapters, .article-nav-list-card__items { border-color: rgba(255, 255, 255, 0.1); } - .article-column-card__chapter--active { - background: rgba(95, 149, 109, 0.24); - color: #c9edcf; - } - .article-nav-list-card__item--active { background: rgba(59, 130, 246, 0.18); color: #bfdbfe; diff --git a/src/main/resources/skins/classic/mobile/common/comment.ftl b/src/main/resources/skins/classic/mobile/common/comment.ftl index 9cf8c01d..11469944 100644 --- a/src/main/resources/skins/classic/mobile/common/comment.ftl +++ b/src/main/resources/skins/classic/mobile/common/comment.ftl @@ -92,7 +92,9 @@ <#if threadOriginalAuthorLabel == ''><#assign threadOriginalAuthorLabel = threadReply.commentOriginalAuthorName!'原评论'> <#assign threadDepth = threadReply.commentThreadDepth!0>
    + data-thread-depth="${threadDepth}" style="--comment-thread-indent:${threadDepth * 16}px" + <#if (threadReply.commentParagraphId!'') != ''>data-comment-paragraph-id="${threadReply.commentParagraphId?html}" + data-comment-paragraph-status="${threadReply.commentParagraphStatus!0}"> diff --git a/src/main/resources/skins/classic/pc/common/comment.ftl b/src/main/resources/skins/classic/pc/common/comment.ftl index 58b15611..e265ccfe 100644 --- a/src/main/resources/skins/classic/pc/common/comment.ftl +++ b/src/main/resources/skins/classic/pc/common/comment.ftl @@ -126,7 +126,9 @@ <#if threadOriginalAuthorLabel == ''><#assign threadOriginalAuthorLabel = threadReply.commentOriginalAuthorName!'原评论'> <#assign threadDepth = threadReply.commentThreadDepth!0>
    + data-thread-depth="${threadDepth}" style="--comment-thread-indent:${threadDepth * 28}px" + <#if (threadReply.commentParagraphId!'') != ''>data-comment-paragraph-id="${threadReply.commentParagraphId?html}" + data-comment-paragraph-status="${threadReply.commentParagraphStatus!0}">