:root{--waline-font-size:1rem;--waline-white:#fff;--waline-light-grey:#999;--waline-dark-grey:#666;--waline-theme-color:#27ae60;--waline-active-color:#2ecc71;--waline-color:#444;--waline-bg-color:#fff;--waline-bg-color-light:#f8f8f8;--waline-bg-color-hover:#f0f0f0;--waline-border-color:#ddd;--waline-disable-bg-color:#f8f8f8;--waline-disable-color:#000;--waline-code-bg-color:#282c34;--waline-warning-color:#915930;--waline-warning-bg-color:#eab30824;--waline-bq-color:#f0f0f0;--waline-avatar-size:3.25rem;--waline-m-avatar-size:calc(var(--waline-avatar-size) * 9 / 13);--waline-badge-color:#3498db;--waline-badge-font-size:.75em;--waline-info-bg-color:#f8f8f8;--waline-info-color:#999;--waline-info-font-size:.625em;--waline-border:1px solid var(--waline-border-color);--waline-avatar-radius:50%;--waline-box-shadow:none}[data-waline]{font-size:var(--waline-font-size);text-align:start}[dir=rtl] [data-waline]{direction:rtl}[data-waline] *{box-sizing:content-box;line-height:1.75}[data-waline] p{color:var(--waline-color)}[data-waline] a{color:var(--waline-theme-color);overflow-wrap:break-word;cursor:pointer;text-decoration:none;display:inline-block;position:relative}[data-waline] a:hover{color:var(--waline-active-color)}[data-waline] img{border:none;max-width:100%;max-height:400px}[data-waline] hr{border-style:dashed;border-color:var(--waline-bg-color-light);margin:.825em 0}[data-waline] code,[data-waline] pre{background:var(--waline-bg-color-light);border-radius:3px;margin:0;padding:.2em .4em;font-size:85%}[data-waline] pre{padding:10px;line-height:1.45;overflow:auto}[data-waline] pre::-webkit-scrollbar{width:6px;height:6px}[data-waline] pre::-webkit-scrollbar-track-piece:horizontal{background:#0000001a;border-radius:6px}[data-waline] pre::-webkit-scrollbar-thumb:horizontal{background:var(--waline-theme-color);border-radius:6px;width:6px}[data-waline] pre code{color:var(--waline-color);white-space:pre-wrap;word-break:keep-all;background:0 0;padding:0}[data-waline] blockquote{border-inline-start:8px solid var(--waline-bq-color);color:var(--waline-dark-grey);margin:.5em 0;padding:.5em 0 .5em 1em}[data-waline] blockquote>p{margin:0}[data-waline] ol,[data-waline] ul{margin-inline-start:1.25em;padding:0}[data-waline] input[type=checkbox],[data-waline] input[type=radio]{vertical-align:middle;margin-top:-2px;display:inline-block}.wl-btn{vertical-align:middle;border:1px solid var(--waline-border-color);min-width:2.5em;color:var(--waline-color);text-align:center;white-space:nowrap;cursor:pointer;user-select:none;touch-action:manipulation;background:0 0;border-radius:.5em;margin-bottom:0;padding:.5em 1em;font-size:.75em;font-weight:400;line-height:1.5;transition-duration:.4s;display:inline-block}.wl-btn:hover,.wl-btn:active{border-color:var(--waline-theme-color);color:var(--waline-theme-color)}.wl-btn:disabled{border-color:var(--waline-border-color);background:var(--waline-disable-bg-color);color:var(--waline-disable-color);cursor:not-allowed}.wl-btn.primary{border-color:var(--waline-theme-color);background:var(--waline-theme-color);color:var(--waline-white)}.wl-btn.primary:hover,.wl-btn.primary:active{border-color:var(--waline-active-color);background:var(--waline-active-color);color:var(--waline-white)}.wl-btn.primary:disabled{border-color:var(--waline-border-color);background:var(--waline-disable-bg-color);color:var(--waline-disable-color);cursor:not-allowed}.wl-loading{text-align:center}.wl-loading svg{margin:0 auto}.wl-comment{margin-bottom:.75em;display:flex;position:relative}.wl-close{inset-inline-end:-4px;cursor:pointer;background:0 0;border:none;padding:0;line-height:1;position:absolute;top:-4px}.wl-login-info{text-align:center;max-width:80px;margin-top:.75em}.wl-logout-btn{inset-inline-end:-10px;cursor:pointer;background:0 0;border:none;padding:3px;line-height:0;position:absolute;top:-10px}.wl-avatar{width:var(--waline-avatar-size);height:var(--waline-avatar-size);border:var(--waline-border);border-radius:var(--waline-avatar-radius);margin:0 auto;position:relative}@media (width<=720px){.wl-avatar{width:var(--waline-m-avatar-size);height:var(--waline-m-avatar-size)}}.wl-avatar img{border-radius:var(--waline-avatar-radius);width:100%;height:100%}.wl-login-nick{color:var(--waline-theme-color);word-break:break-all;font-size:.75em;display:block}.wl-panel{border:var(--waline-border);background:var(--waline-bg-color);width:100%;box-shadow:var(--waline-box-shadow);border-radius:.75em;flex-shrink:1;margin:.5em;position:relative}.wl-header{border-bottom:2px dashed var(--waline-border-color);border-top-left-radius:.75em;border-top-right-radius:.75em;padding:0 4px;display:flex;overflow:hidden}@media (width<=580px){.wl-header{display:block}}.wl-header label{min-width:40px;color:var(--waline-color);text-align:center;padding:.75em .5em;font-size:.75em}.wl-header input{resize:none;background:0 0;flex:1;width:0;padding:.5em;font-size:.625em}.wl-header-item{flex:1;display:flex}@media (width<=580px){.wl-header-item:not(:last-child){border-bottom:2px dashed var(--waline-border-color)}}.wl-header-1 .wl-header-item{width:100%}.wl-header-2 .wl-header-item{width:50%}@media (width<=580px){.wl-header-2 .wl-header-item{flex:0;width:100%}}.wl-header-3 .wl-header-item{width:33.33%}@media (width<=580px){.wl-header-3 .wl-header-item{width:100%}}.wl-editor{resize:vertical;box-sizing:border-box;background:0 0;border-radius:.5em;width:calc(100% - 1em);min-height:8.75em;margin:.75em .5em;font-size:.875em;position:relative}.wl-editor,.wl-input{max-width:100%;color:var(--waline-color);border:none;outline:none;transition:all .25s}.wl-editor:focus,.wl-input:focus{background:var(--waline-bg-color-light)}.wl-preview{padding:0 .5em .5em}.wl-preview h4{margin:.25em;font-size:.9375em;font-weight:700}.wl-preview .wl-content{overflow-wrap:break-word;hyphens:auto;min-height:1.25em;padding:.25em}.wl-preview .wl-content>:first-child{margin-top:0}.wl-preview .wl-content>:last-child{margin-bottom:0}.wl-footer{flex-wrap:wrap;margin:.5em .75em;display:flex;position:relative}.wl-actions{flex:2;align-items:center;display:flex}.wl-action{width:1.5em;height:1.5em;color:var(--waline-color);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin:2px;padding:0;font-size:16px;display:inline-flex}.wl-action:hover{color:var(--waline-theme-color)}.wl-action.active{color:var(--waline-active-color)}#wl-image-upload{display:none}#wl-image-upload:focus+label{color:var(--waline-color)}#wl-image-upload:focus-visible+label{outline:-webkit-focus-ring-color auto 1px}.wl-info{flex:3;justify-content:flex-end;align-items:center;display:flex}.wl-info .wl-text-number{color:var(--waline-info-color);font-size:.75em}.wl-info .wl-text-number .illegal{color:red}.wl-info button{margin-inline-start:.75em}.wl-info button svg{margin:0 auto;line-height:18px;display:block}.wl-emoji-popup{inset-inline-start:1.25em;z-index:10;border:var(--waline-border);background:var(--waline-bg-color);width:100%;max-width:526px;box-shadow:var(--waline-box-shadow);border-radius:6px;display:none;position:absolute;top:100%}.wl-emoji-popup.display{display:block}.wl-emoji-popup button{vertical-align:middle;width:2em;font-size:inherit;text-align:center;cursor:pointer;background:0 0;border-width:0;margin:.125em;padding:0;line-height:2;display:inline-block}.wl-emoji-popup button:hover{background:var(--waline-bg-color-hover)}.wl-emoji-popup .wl-emoji{vertical-align:middle;max-width:1.5em;max-height:1.5em;display:inline-block}.wl-emoji-popup .wl-emoji-preview{z-index:1;border:var(--waline-border);background:var(--waline-bg-color);max-width:3em;max-height:3em;box-shadow:var(--waline-box-shadow);border-radius:4px;padding:.25em;display:block;position:absolute;top:-4em;left:0}.wl-emoji-popup .wl-tab-wrapper{max-height:145px;padding:.5em;overflow-y:auto}.wl-emoji-popup .wl-tab-wrapper::-webkit-scrollbar{width:6px;height:6px}.wl-emoji-popup .wl-tab-wrapper::-webkit-scrollbar-track-piece:vertical{background:#0000001a;border-radius:6px}.wl-emoji-popup .wl-tab-wrapper::-webkit-scrollbar-thumb:vertical{background:var(--waline-theme-color);border-radius:6px;width:6px}.wl-emoji-popup .wl-tabs{white-space:nowrap;padding:0 6px;position:relative;overflow-x:auto}.wl-emoji-popup .wl-tabs:before{content:" ";z-index:2;background:var(--waline-border-color);height:1px;position:absolute;top:0;left:0;right:0}.wl-emoji-popup .wl-tabs::-webkit-scrollbar{width:6px;height:6px}.wl-emoji-popup .wl-tabs::-webkit-scrollbar-track-piece:horizontal{background:#0000001a;border-radius:6px}.wl-emoji-popup .wl-tabs::-webkit-scrollbar-thumb:horizontal{background:var(--waline-theme-color);border-radius:6px;height:6px}.wl-emoji-popup .wl-tab{margin:0;padding:0 .5em;position:relative}.wl-emoji-popup .wl-tab.active{z-index:3;border:1px solid var(--waline-border-color);background:var(--waline-bg-color);border-top-width:0;border-bottom-right-radius:6px;border-bottom-left-radius:6px}.wl-gif-popup{inset-inline-start:1.25em;z-index:10;border:var(--waline-border);background:var(--waline-bg-color);width:calc(100% - 3em);box-shadow:var(--waline-box-shadow);opacity:0;visibility:hidden;transform-origin:0 0;border-radius:6px;padding:.75em .75em .25em;transition:transform .2s ease-out,opacity .2s ease-out;position:absolute;top:100%;transform:scale(.9)}.wl-gif-popup.display{opacity:1;visibility:visible;transform:none}.wl-gif-popup input{box-sizing:border-box;border:var(--waline-border);width:100%;margin-bottom:10px;padding:3px 5px}.wl-gif-popup img{box-sizing:border-box;cursor:pointer;border:2px solid #fff;width:100%;display:block}.wl-gif-popup img:hover{border-color:var(--waline-theme-color);border-radius:2px}.wl-gallery{max-height:80vh;display:flex;overflow-y:auto}.wl-gallery-column{flex-direction:column;flex:1;height:max-content;display:flex}.wl-cards .wl-user{--avatar-size:var(--waline-avatar-size);margin-inline-end:.75em;position:relative}@media (width<=720px){.wl-cards .wl-user{--avatar-size:var(--waline-m-avatar-size)}}.wl-cards .wl-user .wl-user-avatar{width:var(--avatar-size);height:var(--avatar-size);border-radius:var(--waline-avatar-radius);box-shadow:var(--waline-box-shadow)}.wl-cards .wl-user .verified-icon,.wl-cards .wl-user .administrator-icon{inset-inline-start:calc(var(--avatar-size)*3/4);top:calc(var(--avatar-size)*3/4);background:var(--waline-bg-color);box-shadow:var(--waline-box-shadow);border-radius:50%;position:absolute}.wl-card-item{padding:.5em;display:flex;position:relative}.wl-card-item .wl-card-item{padding-inline-end:0}.wl-card{border-bottom:1px dashed var(--waline-border-color);flex:1;width:0;padding-bottom:.5em}.wl-card:first-child{margin-inline-start:1em}.wl-card-item:last-child>.wl-card{border-bottom:none}.wl-card .wl-nick svg{line-height:1;position:relative;bottom:-.125em}.wl-card .wl-head{line-height:1.5;overflow:hidden}.wl-card .wl-head .wl-nick{margin-inline-end:.5em;font-size:.875em;font-weight:700;line-height:1;text-decoration:none;display:inline-block;position:relative}.wl-card span.wl-nick{color:var(--waline-dark-grey)}.wl-card .wl-badge{border:1px solid var(--waline-badge-color);color:var(--waline-badge-color);font-size:var(--waline-badge-font-size);border-radius:4px;margin-inline-end:1em;padding:0 .3em;display:inline-block}.wl-card .wl-time{color:var(--waline-info-color);margin-inline-end:.875em;font-size:.75em}.wl-card .wl-meta{line-height:1;position:relative}.wl-card .wl-meta>span{background:var(--waline-info-bg-color);color:var(--waline-info-color);font-size:var(--waline-info-font-size);border-radius:.2em;margin-inline-end:.25em;padding:2px 4px;line-height:1.5;display:inline-block}.wl-card .wl-meta>span:empty{display:none}.wl-card .wl-comment-actions{float:right;line-height:1}[dir=rtl] .wl-card .wl-comment-actions{float:left}.wl-card .wl-delete,.wl-card .wl-like,.wl-card .wl-reply,.wl-card .wl-edit,.wl-card .wl-rss{color:var(--waline-color);cursor:pointer;background:0 0;border:none;align-items:center;line-height:1;transition:color .2s;display:inline-flex}.wl-card .wl-delete:hover,.wl-card .wl-like:hover,.wl-card .wl-reply:hover,.wl-card .wl-edit:hover,.wl-card .wl-rss:hover{color:var(--waline-theme-color)}.wl-card .wl-delete.active,.wl-card .wl-like.active,.wl-card .wl-reply.active,.wl-card .wl-edit.active,.wl-card .wl-rss.active{color:var(--waline-active-color)}.wl-card .wl-warning{border:1px dashed var(--waline-warning-color);background:var(--waline-warning-bg-color);color:var(--waline-warning-color);border-radius:5px;margin-top:1em;padding:.5em 1em;font-size:.875em;line-height:1em}.wl-card .wl-content{overflow-wrap:break-word;margin-bottom:.75em;padding-top:.625em;font-size:.875em;line-height:2;position:relative}.wl-card .wl-content.expand{cursor:pointer;max-height:8em;overflow:hidden}.wl-card .wl-content.expand:before{content:"";inset-inline-start:0;z-index:999;background:linear-gradient(#000,#ffffffe6);width:100%;display:block;position:absolute;top:0;bottom:3.15em}.wl-card .wl-content.expand:after{content:attr(data-expand);inset-inline-start:0;z-index:999;color:#828586;text-align:center;background:#ffffffe6;width:100%;height:3.15em;line-height:3.15em;display:block;position:absolute;bottom:0}.wl-card .wl-content .wl-reply-to{float:left;margin-right:.5em}.wl-card .wl-admin-actions{text-align:right;margin:8px 0;font-size:12px}.wl-card .wl-comment-status{margin:0 8px}.wl-card .wl-comment-status .wl-btn{border-radius:0}.wl-card .wl-comment-status .wl-btn:first-child{border-inline-end:0;border-radius:.5em 0 0 .5em}.wl-card .wl-comment-status .wl-btn:last-child{border-inline-start:0;border-radius:0 .5em .5em 0}.wl-card .wl-quote{border-inline-start:1px dashed #ededed80}.wl-card .wl-quote .wl-user{--avatar-size:var(--waline-m-avatar-size)}.wl-close-icon{color:var(--waline-border-color)}.wl-content .vemoji,.wl-content .wl-emoji{vertical-align:baseline;height:1.25em;margin:-.125em .25em;display:inline-block}.wl-content .wl-tex{background:var(--waline-info-bg-color);color:var(--waline-info-color)}.wl-content span.wl-tex{font-size:var(--waline-info-font-size);border-radius:.2em;margin-inline-end:.25em;padding:2px 4px;line-height:1.5;display:inline-block}.wl-content p.wl-tex{text-align:center}.wl-content .katex-display{-webkit-overflow-scrolling:touch;padding-top:.2em;padding-bottom:.2em;overflow:auto hidden}.wl-content .katex-display::-webkit-scrollbar{height:3px}.wl-content .katex-error{color:red}.wl-count{flex:1;font-size:1.25em;font-weight:700}.wl-empty{color:var(--waline-color);text-align:center;padding:1.25em;overflow:auto}.wl-operation{text-align:center}.wl-operation button{margin:1em 0}.wl-power{color:var(--waline-light-grey);font-size:var(--waline-info-font-size);text-align:end;margin-inline-start:auto;padding:.5em 0}.wl-meta-head{flex-direction:row;align-items:center;padding:.375em;display:flex}.wl-sort{margin:0;list-style-type:none}.wl-sort li{color:var(--waline-info-color);cursor:pointer;font-size:.75em;display:inline-block}.wl-sort li.active{color:var(--waline-theme-color)}.wl-sort li+li{margin-inline-start:1em}.wl-meta-foot{flex-direction:row;justify-content:space-between;align-items:center;display:flex}.wl-rss{flex-wrap:nowrap;gap:5px;max-width:16px;transition:all .2s ease-in-out;display:flex;overflow:hidden}.wl-rss:hover{max-width:100%}.wl-rss>a{flex-shrink:0;gap:2px;display:flex}.wl-rss span{color:var(--waline-light-grey);font-size:var(--waline-info-font-size);text-align:end}.wl-reaction{text-align:center;margin-bottom:1.75em;overflow:auto hidden}.wl-reaction img{width:100%;height:100%;transition:all .25s ease-in-out}.wl-reaction-title{margin:16px auto;font-size:18px;font-weight:700}.wl-reaction-list{flex-direction:row;justify-content:center;gap:16px;margin:0;padding:8px;list-style-type:none;display:flex}@media (width<=580px){.wl-reaction-list{gap:12px}}[data-waline] .wl-reaction-list{margin-inline-start:0}.wl-reaction-item{cursor:pointer;flex-direction:column;align-items:center;display:flex}.wl-reaction-item:hover img,.wl-reaction-item.active img{transform:scale(1.15)}.wl-reaction-img{width:42px;height:42px;position:relative}@media (width<=580px){.wl-reaction-img{width:32px;height:32px}}.wl-reaction-loading{inset-inline-end:-5px;width:18px;height:18px;color:var(--waline-theme-color);position:absolute;top:-4px}.wl-reaction-votes{inset-inline-end:-9px;border:1px solid var(--waline-theme-color);background:var(--waline-bg-color);min-width:1em;color:var(--waline-theme-color);border-radius:1em;padding:2px;font-size:.75em;font-weight:700;line-height:1;position:absolute;top:-9px}.wl-reaction-item.active .wl-reaction-votes{background:var(--waline-theme-color);color:var(--waline-bg-color)}.wl-reaction-text{font-size:.875em}.wl-reaction-item.active .wl-reaction-text{color:var(--waline-theme-color)}.wl-star{flex-direction:column;gap:12px;display:flex}.wl-star-rate{cursor:pointer;user-select:none;justify-content:center;gap:6px;display:flex}.wl-star-item{width:24px;height:24px;position:relative}.wl-star-icon{width:100%;height:100%}.wl-star-outline{fill:none;stroke:var(--waline-light-grey);stroke-width:1.5px}.wl-star-solid{fill:var(--waline-theme-color);stroke:var(--waline-theme-color);stroke-width:1.5px}.wl-star-score{flex-direction:column;gap:6px;display:flex}.wl-star-row{align-items:center;gap:8px;display:flex}.wl-star-row .wl-star-rate{align-items:center;gap:3px}.wl-star-row .wl-star-item{width:12px;height:12px;display:flex}.wl-star-progress{background:var(--waline-bg-color-light);border-radius:999px;flex:1;height:6px;overflow:hidden}.wl-star-progress-bar{background:var(--waline-theme-color);height:100%}.wl-star-percent{width:52px;color:var(--waline-light-grey);text-align:right;font-size:.75em}.wl-content pre,.wl-content pre[class*=language-]{background:var(--waline-code-bg-color);border-radius:6px;margin:.75rem 0;padding:1rem 1.25rem;line-height:1.4;overflow:auto}.wl-content pre code,.wl-content pre[class*=language-] code{color:#bbb;direction:ltr;border-radius:0;padding:0;background:0 0!important}.wl-content code[class*=language-],.wl-content pre[class*=language-]{color:#ccc;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;overflow-wrap:normal;tab-size:4;hyphens:none;background:0 0;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em}.wl-content pre[class*=language-]{overflow:auto}.wl-content :not(pre)>code[class*=language-],.wl-content pre[class*=language-]{background:#2d2d2d}.wl-content :not(pre)>code[class*=language-]{white-space:normal;border-radius:.3em;padding:.1em}.wl-content .token.comment,.wl-content .token.block-comment,.wl-content .token.prolog,.wl-content .token.doctype,.wl-content .token.cdata{color:#999}.wl-content .token.punctuation{color:#ccc}.wl-content .token.tag,.wl-content .token.attr-name,.wl-content .token.namespace,.wl-content .token.deleted{color:#e2777a}.wl-content .token.function-name{color:#6196cc}.wl-content .token.boolean,.wl-content .token.number,.wl-content .token.function{color:#f08d49}.wl-content .token.property,.wl-content .token.class-name,.wl-content .token.constant,.wl-content .token.symbol{color:#f8c555}.wl-content .token.selector,.wl-content .token.important,.wl-content .token.atrule,.wl-content .token.keyword,.wl-content .token.builtin{color:#cc99cd}.wl-content .token.string,.wl-content .token.char,.wl-content .token.attr-value,.wl-content .token.regex,.wl-content .token.variable{color:#7ec699}.wl-content .token.operator,.wl-content .token.entity,.wl-content .token.url{color:#67cdcc}.wl-content .token.important,.wl-content .token.bold{font-weight:700}.wl-content .token.italic{font-style:italic}.wl-content .token.entity{cursor:help}.wl-content .token.inserted{color:green}.wl-content .spoiler{cursor:help;background-color:currentColor;border-radius:.2em;transition:background .5s}.wl-content .spoiler:focus{background-color:#0000}.wl-recent-item p{display:inline}.wl-user-list{padding:0;list-style:none}.wl-user-list a,.wl-user-list a:hover,.wl-user-list a:visited{color:var(--waline-color);text-decoration:none}.wl-user-list .wl-user-avatar{border-radius:4px;margin-inline-end:10px;line-height:0;display:inline-block;position:relative;overflow:hidden}.wl-user-list .wl-user-avatar>img{width:var(--waline-user-avatar-size,48px);height:var(--waline-user-avatar-size,48px)}.wl-user-list .wl-user-badge{inset-inline-end:0;background:var(--waline-info-bg-color);min-width:.7em;height:1.5em;color:var(--waline-info-color);text-align:center;border-radius:4px;padding:0 .4em;font-size:10px;font-weight:700;line-height:1.5em;position:absolute;bottom:0}.wl-user-list .wl-user-item{margin:10px 0}.wl-user-list .wl-user-item:first-child .wl-user-badge{background:var(--waline-rank-gold-bg-color,#fa3939);color:var(--waline-white);font-weight:700}.wl-user-list .wl-user-item:nth-child(2) .wl-user-badge{background:var(--waline-rank-silver-bg-color,#fb811c);color:var(--waline-white);font-weight:700}.wl-user-list .wl-user-item:nth-child(3) .wl-user-badge{background:var(--waline-rank-copper-bg-color,#feb207);color:var(--waline-white)}.wl-user-list .wl-user-meta{vertical-align:top;display:inline-block}.wl-user-list .wl-badge{vertical-align:text-top;border:1px solid var(--waline-badge-color);color:var(--waline-badge-color);font-size:var(--waline-badge-font-size);border-radius:4px;margin-inline-start:.5em;padding:0 .3em;display:inline-block}.wl-user-wall{padding:0;list-style:none}.wl-user-wall .wl-user-badge,.wl-user-wall .wl-user-meta{display:none}.wl-user-wall .wl-user-item{transition:transform .2s ease-in-out;display:inline-block;position:relative}.wl-user-wall .wl-user-item:before,.wl-user-wall .wl-user-item:after{z-index:10;opacity:0;pointer-events:none;transform-origin:top;transition:all .18s ease-out .18s;position:absolute;bottom:100%;left:50%;transform:translate(-50%,4px)}.wl-user-wall .wl-user-item:before{content:"";border:5px solid #0000;border-top-color:#101010f2;width:0;height:0}.wl-user-wall .wl-user-item:after{content:attr(aria-label);color:#fff;white-space:nowrap;background:#101010f2;border-radius:2px;margin-bottom:10px;padding:.5em 1em;font-size:12px}.wl-user-wall .wl-user-item:hover{transform:scale(1.1)}.wl-user-wall .wl-user-item:hover:before,.wl-user-wall .wl-user-item:hover:after{opacity:1;pointer-events:none;transform:translate(-50%)}.wl-user-wall .wl-user-item img{width:var(--waline-user-avatar-size,48px);height:var(--waline-user-avatar-size,48px)}.article-comments{--waline-font-size:15px;--waline-white:var(--blog-bg);--waline-light-grey:var(--blog-text-3);--waline-dark-grey:var(--blog-text-2);--waline-theme-color:var(--blog-brand-1);--waline-active-color:var(--blog-brand-2);--waline-color:var(--blog-text-1);--waline-bg-color:var(--blog-bg);--waline-bg-color-light:var(--blog-bg-alt);--waline-bg-color-hover:var(--blog-bg-soft);--waline-border-color:var(--blog-divider);--waline-disable-bg-color:var(--blog-bg-alt);--waline-disable-color:var(--blog-text-3);--waline-code-bg-color:var(--blog-bg-alt);--waline-bq-color:var(--blog-divider);--waline-info-bg-color:var(--blog-bg-alt);--waline-info-color:var(--blog-text-3);--waline-badge-color:var(--blog-brand-1);--waline-avatar-size:42px;border-top:1px solid var(--blog-divider);margin-top:48px;padding-top:34px;scroll-margin-top:90px}.comments-heading{margin-bottom:24px}.comments-heading h2{color:var(--blog-text-1);margin:9px 0 12px;font-size:24px;font-weight:600;line-height:1.5}.comments-description,.comments-noscript,.comments-load-state p{color:var(--blog-text-2);margin:0;font-size:12px;line-height:1.9}.comments-load-state,.comments-noscript{border:1px solid var(--blog-divider);background:var(--blog-bg-alt);border-radius:8px;padding:20px}.comments-load-state[hidden],.comments-retry[hidden]{display:none}.comments-retry{border:1px solid var(--blog-divider);background:var(--blog-bg);color:var(--blog-brand-1);cursor:pointer;border-radius:5px;margin-top:12px;padding:8px 14px;font-size:12px}.comments-retry:hover{border-color:var(--blog-brand-1)}.comments-host{min-width:0}.article-comments .wl-panel{border-radius:8px;flex:1;width:auto;min-width:0;margin:0 0 12px}.article-comments .wl-header{border-bottom-style:solid;border-bottom-width:1px}.article-comments .wl-header label{padding:12px 8px;font-size:12px}.article-comments .wl-header input{font-size:13px}.article-comments .wl-input::placeholder,.article-comments .wl-editor::placeholder{color:var(--blog-text-3);opacity:1}.article-comments .wl-editor{min-height:150px;padding:8px;font-size:14px}.article-comments .wl-footer{gap:10px;margin:8px 14px 14px}.article-comments .wl-info{flex-wrap:wrap;flex:auto;gap:8px}.article-comments .wl-info button{margin-inline-start:0}.article-comments .wl-btn{border-radius:5px;font-size:12px;transition:background-color .15s,border-color .15s,color .15s}.article-comments .wl-meta-head{flex-wrap:wrap;gap:12px;padding:18px 0 12px}.article-comments .wl-count{font-size:17px}.article-comments .wl-sort{padding:0}.article-comments .wl-power{padding-top:16px;font-size:10px}.article-comments :is(button,input,textarea,a):focus-visible{outline:2px solid var(--blog-brand-1);outline-offset:3px}@media (width<=580px){.article-comments{margin-top:36px;padding-top:26px}.comments-heading h2{font-size:21px}.article-comments .wl-header-item:not(:last-child){border-bottom-style:solid;border-bottom-width:1px}.article-comments .wl-header label{min-width:44px}.article-comments .wl-info{justify-content:flex-end}.article-comments .wl-card-item{padding-inline:0}.article-comments .wl-card:first-child{margin-inline-start:0}}@media (prefers-reduced-motion:reduce){.article-comments *{transition:none!important}}.article-layout{grid-template-columns:minmax(0,780px) 180px;justify-content:center;gap:56px;max-width:1440px;margin:0 auto;padding:54px 36px 80px;display:grid}.article-layout.has-topic{grid-template-columns:208px minmax(0,780px) 180px;gap:36px}.article-layout:not(.has-outline){grid-template-columns:minmax(0,780px)}.article-layout.has-topic:not(.has-outline){grid-template-columns:208px minmax(0,780px)}.article-main,.article-prose{min-width:0}.article-header{border-bottom:1px solid var(--blog-divider);margin-bottom:32px;padding-bottom:30px}.article-back{color:var(--blog-brand-1);align-items:center;gap:8px;font-size:12px;line-height:1.8;text-decoration:none;display:inline-flex}.article-back:hover{text-underline-offset:4px;text-decoration:underline}.article-header h1{color:var(--blog-text-1);letter-spacing:-.7px;overflow-wrap:anywhere;margin:24px 0 18px;font-size:clamp(26px,2.8vw,37px);font-weight:650;line-height:1.55}.article-byline{color:var(--blog-text-3);flex-wrap:wrap;align-items:center;gap:9px;font-size:12px;line-height:1.8;display:flex}.article-meta-dot{opacity:.65}.article-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;font-size:11px;line-height:1.7;display:flex}.article-category{border:1px solid var(--blog-divider);background:var(--blog-bg-alt);color:var(--blog-brand-1);border-radius:4px;padding:3px 9px}.article-tag{color:var(--blog-text-3);padding:3px 2px}.article-topic-inner,.article-outline-inner{scrollbar-width:thin;scrollbar-color:var(--blog-divider) transparent;max-height:calc(100dvh - 132px);position:sticky;top:98px;overflow-y:auto}.article-topic-inner{padding-right:10px}.article-eyebrow{color:var(--blog-brand-1);letter-spacing:2px;font-size:9px;font-weight:600}.article-topic h2{margin:13px 0 7px;font-size:17px;font-weight:600}.article-topic p{color:var(--blog-text-3);margin:0 0 22px;font-size:10px;line-height:1.8}.article-topic ol,.article-outline ol,.article-mobile-outline ol{margin:0;padding:0;list-style:none}.article-topic li+li{margin-top:3px}.article-topic nav a{color:var(--blog-text-2);overflow-wrap:anywhere;border-radius:5px;gap:10px;padding:10px 9px;font-size:12px;line-height:1.85;text-decoration:none;display:flex}.article-topic nav a:hover,.article-topic nav a[aria-current=page]{background:var(--blog-bg-soft);color:var(--blog-brand-1)}.article-topic nav a[aria-current=page]{font-weight:600}.topic-number{width:18px;color:var(--blog-text-3);font-variant-numeric:tabular-nums;flex-shrink:0;padding-top:1px;font-size:10px}.article-outline{min-width:0;padding-top:5px}.article-outline-inner{border-left:1px solid var(--blog-divider);padding-left:18px}.article-outline h2{color:var(--blog-text-1);margin:0 0 15px;font-size:12px;font-weight:600}.article-outline a,.article-mobile-outline nav a{color:var(--blog-text-3);overflow-wrap:anywhere;padding:5px 0;font-size:11px;line-height:1.8;text-decoration:none;display:block}.article-outline a:hover,.article-mobile-outline nav a:hover,.article-outline a.is-active,.article-mobile-outline a.is-active{color:var(--blog-brand-1)}.article-outline a.is-active,.article-mobile-outline a.is-active{font-weight:600}.outline-nested{padding-left:12px}.article-outline .outline-back-top{border-top:1px solid var(--blog-divider);color:var(--blog-brand-1);margin-top:19px;padding-top:14px;display:inline-block}.article-mobile-outline{border:1px solid var(--blog-divider);background:var(--blog-bg-alt);border-radius:6px;margin-bottom:30px;display:none}.article-mobile-outline summary{color:var(--blog-text-1);cursor:pointer;align-items:center;gap:10px;padding:13px 16px;font-size:12px;font-weight:600;list-style:none;display:flex}.article-mobile-outline summary::-webkit-details-marker{display:none}.outline-count{color:var(--blog-text-3);margin-left:auto;font-size:10px;font-weight:400}.outline-chevron{font-size:18px;transition:transform .16s;display:block}.article-mobile-outline[open] .outline-chevron{transform:rotate(180deg)}.article-mobile-outline nav{border-top:1px solid var(--blog-divider);max-height:45dvh;padding:4px 16px 14px;overflow-y:auto}.article-prose{color:var(--blog-text-1);overflow-wrap:anywhere;font-size:15px;line-height:1.95}.article-prose>:first-child{margin-top:0}.article-prose p,.article-prose ul,.article-prose ol,.article-prose dl{margin:18px 0}.article-prose ul,.article-prose ol{padding-left:1.6em}.article-prose ul{list-style:outside}.article-prose ol{list-style:decimal}.article-prose li+li{margin-top:6px}.article-prose li>ul,.article-prose li>ol,.article-prose li>p{margin:8px 0}.article-prose :is(h1,h2,h3,h4,h5,h6){color:var(--blog-text-1);scroll-margin-top:110px;font-weight:600;line-height:1.65}.article-prose h1{margin:40px 0 20px;font-size:29px}.article-prose h2{border-top:1px solid var(--blog-divider);letter-spacing:-.2px;margin:46px 0 22px;padding-top:25px;font-size:23px}.article-prose>h2:first-child{border-top:0;padding-top:0}.article-prose h3{margin:30px 0 16px;font-size:19px}.article-prose h4{margin:24px 0 12px;font-size:16px}.article-prose :is(h5,h6){margin:24px 0 12px;font-size:15px}.article-prose a{color:var(--blog-brand-1);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--blog-brand-1) 35%, transparent);text-underline-offset:4px}.article-prose a:hover{text-decoration-color:currentColor}.article-prose .header-anchor{opacity:0;margin-left:7px;font-weight:400;text-decoration:none}.article-prose :is(h1,h2,h3,h4,h5,h6):hover .header-anchor,.article-prose .header-anchor:focus-visible{opacity:1}.article-prose blockquote{border-left:3px solid var(--blog-brand-2);background:var(--blog-bg-alt);color:var(--blog-text-2);border-radius:0 5px 5px 0;margin:22px 0;padding:5px 20px}.article-prose blockquote p{margin:10px 0}.article-prose hr{border:0;border-top:1px solid var(--blog-divider);margin:36px 0}.article-prose strong{font-weight:650}.article-prose img,.article-prose video{border-radius:6px;max-width:100%;height:auto;margin:24px auto;display:block}.article-prose picture{display:block}.article-prose figure{margin:24px 0}.article-prose figcaption{color:var(--blog-text-3);text-align:center;margin-top:10px;font-size:12px}.article-prose iframe{border:0;border-radius:6px;max-width:100%;margin:22px auto;display:block}.article-prose table{border-collapse:collapse;scrollbar-width:thin;max-width:100%;margin:24px 0;font-size:13px;line-height:1.8;display:block;overflow-x:auto}.article-prose th,.article-prose td{border:1px solid var(--blog-divider);text-align:left;vertical-align:top;padding:10px 14px}.article-prose th{background:var(--blog-bg-soft);font-weight:600}.application-record :is(th,td):first-child{white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums;min-width:64px}.application-record :is(th,td):last-child{white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums;min-width:88px}.article-prose tbody tr:nth-child(2n){background:var(--blog-bg-alt)}.article-prose code,.article-prose kbd,.article-prose pre{font-variant-ligatures:none;font-family:Cascadia Code,SFMono-Regular,Consolas,Liberation Mono,monospace}.article-prose :not(pre)>code{background:var(--blog-bg-soft);color:var(--blog-brand-1);overflow-wrap:anywhere;border-radius:4px;padding:2px 5px;font-size:.88em}.article-prose kbd{border:1px solid var(--blog-divider);background:var(--blog-bg-alt);border-bottom-width:2px;border-radius:4px;padding:2px 5px;font-size:.85em}.article-prose pre{border:1px solid var(--blog-divider);background:var(--blog-bg-alt);white-space:pre;tab-size:2;scrollbar-width:thin;scrollbar-color:var(--blog-divider) transparent;border-radius:6px;max-width:100%;margin:22px 0;padding:22px 20px;font-size:12.5px;line-height:1.85;overflow:auto}.article-prose pre code{width:fit-content;min-width:100%;color:inherit;font-size:inherit;overflow-wrap:normal;word-break:normal;background:0 0;padding:0;display:block}.article-code-shell{min-width:0;margin:22px 0;position:relative}.article-code-shell pre{margin:0;padding-top:42px}.article-copy-button{border:1px solid var(--blog-divider);background:var(--blog-bg);color:var(--blog-text-2);cursor:pointer;border-radius:4px;padding:3px 8px;font-family:inherit;font-size:10px;line-height:1.7;position:absolute;top:8px;right:9px}.article-copy-button:hover{border-color:var(--blog-brand-1);color:var(--blog-brand-1)}.article-copy-button:disabled{cursor:wait;opacity:.7}html.dark .article-prose .astro-code,html.dark .article-prose .astro-code span,html[data-theme=dark] .article-prose .astro-code,html[data-theme=dark] .article-prose .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.article-prose .katex{font-size:1.08em}.article-prose .katex-display{max-width:100%;margin:24px 0;padding:10px 0;overflow:auto hidden}.article-prose .katex-display>.katex{white-space:nowrap;width:fit-content;min-width:100%;display:block}.article-prose :is(.custom-block,.tip,.warning,.danger,.info){border:1px solid var(--blog-divider);border-left:3px solid var(--blog-brand-2);background:var(--blog-bg-alt);border-radius:6px;margin:22px 0;padding:12px 20px;font-size:14px}.article-prose .custom-block-title{margin:3px 0 8px;font-weight:600}.article-end{border-top:1px solid var(--blog-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:46px;padding-top:24px;font-size:11px;display:flex}.article-end p{color:var(--blog-text-3);margin:0}.article-end p span{color:var(--blog-brand-1);margin-right:8px}.article-end a{color:var(--blog-brand-1);text-decoration:none}.article-pagination{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px;display:grid}.article-pagination-link{border:1px solid var(--blog-divider);background:var(--blog-bg-alt);border-radius:6px;flex-direction:column;gap:9px;padding:19px 20px;text-decoration:none;display:flex}.article-pagination-link:hover{border-color:var(--blog-brand-1)}.article-pagination-link>span{color:var(--blog-text-3);font-size:10px}.article-pagination-link strong{color:var(--blog-text-1);overflow-wrap:anywhere;font-size:13px;font-weight:500;line-height:1.8}.article-pagination-next{text-align:right}.article-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.article-layout :is(a,button,summary,pre):focus-visible{outline:2px solid var(--blog-brand-1);outline-offset:4px}@media (width<=1190px){.article-layout{grid-template-columns:minmax(0,780px)}.article-layout.has-topic,.article-layout.has-topic:not(.has-outline){grid-template-columns:190px minmax(0,780px);gap:32px}.article-outline{display:none}.article-mobile-outline{display:block}}@media (width<=900px){.article-layout,.article-layout.has-topic,.article-layout.has-topic:not(.has-outline){grid-template-columns:minmax(0,780px);gap:0;padding:38px 28px 60px}.article-topic{display:none}}@media (width<=560px){.article-layout,.article-layout.has-topic,.article-layout.has-topic:not(.has-outline){padding:28px 20px 48px}.article-header{margin-bottom:24px;padding-bottom:23px}.article-header h1{letter-spacing:-.4px;margin-top:20px;font-size:26px}.article-prose{font-size:14px;line-height:1.95}.article-prose h2{margin-top:35px;padding-top:21px;font-size:21px}.article-prose h3{font-size:18px}.article-prose pre{padding-left:15px;padding-right:15px;font-size:12px}.article-prose th,.article-prose td{min-width:100px;padding:9px 11px}.article-pagination{grid-template-columns:1fr;gap:12px}.article-pagination-placeholder{display:none}.article-pagination-next{text-align:left}}@media (prefers-reduced-motion:reduce){.outline-chevron{transition:none}}
