diff --git a/package.json b/package.json index a05cff6..b96611d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "halo-theme-dream2.0-plus", - "version": "1.2.0", + "version": "1.2.1", "description": "梦之城,童话梦境,动漫类型博客主题。", "main": "index.js", "author": "nineya", diff --git a/templates/assets/css/celebration.min.css b/templates/assets/css/celebration.min.css index b1b749b..851f352 100644 --- a/templates/assets/css/celebration.min.css +++ b/templates/assets/css/celebration.min.css @@ -1,116 +1 @@ -html.celebration { - --main: hsla(0, 0%, 100%, 0.9); - --theme: #ff3b3b!important; - --background: rgba(201, 57, 58, 0.95); - --title: #fff; - --light-a: #fff; - --light-b: #f13a3a; - --light-c: #dcdcdc; - --light-d: #f13a3a; - --dark-a: #eee; - --dark-b: #eee; - --dark-c: #fff; - --dark-d: #e4e4e4; - --dark-e: #e4e4e4; - --color-a: #f13a3a; - --bg-a: hsla(0, 0%, 100%, 0.102); - --bg-b: #ec9494; - --bg-c: #ea5454; - --bg-d: rgba(189, 13, 14, 0.8); - --bg-e: #f13a3a; - --bg-g: #ec9494; - --bg-j: hsla(0, 0%, 100%, 0.102); - --bg-k: hsla(0, 0%, 100%, 0.102); - --bg-l: rgba(239, 107, 107, 0.8); - --bg-h: hsla(0, 68%, 53%, 0.8); - --box-shadow: 1px 1px 3px 1px #cb0b0b; - --comm-color-a: #eee; - --comm-color-c: #eee; - --comm-color-b: #eee; - --comm-color-d: #bbb; - --comm-color-f: #eee; - --comm-color-i: #ddd; - --comm-bg-a: rgba(181, 51, 51, 0.8); - --comm-bg-b: rgba(204, 78, 78, 0.9); - --comm-bg-h: rgba(204, 78, 78, 0.9); - background-color: #ec9494; -} -html.celebration body { - background: rgba(145, 11, 11, 0.9); -} -html.celebration .banner .banner-waves { - fill: #b81213; -} -html.celebration .navbar .navbar-search .input:focus, -html.celebration .navbar .navbar-search-mobile .input:focus { - background: var(--bg-a); -} -html.celebration .navbar .navbar-search .input::-webkit-input-placeholder, html.celebration .navbar .navbar-search-mobile .input::-webkit-input-placeholder { - color: #ec9494; -} -html.celebration .navbar .navbar-search .input::-moz-placeholder, html.celebration .navbar .navbar-search-mobile .input::-moz-placeholder { - color: #ec9494; -} -html.celebration .navbar .navbar-search .input:-ms-input-placeholder, html.celebration .navbar .navbar-search-mobile .input:-ms-input-placeholder { - color: #ec9494; -} -html.celebration .navbar .navbar-search .input::-ms-input-placeholder, html.celebration .navbar .navbar-search-mobile .input::-ms-input-placeholder { - color: #ec9494; -} -html.celebration .navbar .navbar-search .input::placeholder, -html.celebration .navbar .navbar-search-mobile .input::placeholder { - color: #ec9494; -} -html.celebration .navbar-slideout { - background: #910b0b; -} -html.celebration .navbar-slideout-menu { - background: var(--background); -} -html.celebration .banner:before { - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIzLTExLTAzVDAwOjMxOjMwKzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMy0xMS0wM1QwMDo0OTozMSswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMy0xMS0wM1QwMDo0OTozMSswODowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDplMjE4OTA3NS1hNzI0LWJmNGItOTFjYS01YTJiMTU3N2U1ZTciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ZTIxODkwNzUtYTcyNC1iZjRiLTkxY2EtNWEyYjE1NzdlNWU3IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZTIxODkwNzUtYTcyNC1iZjRiLTkxY2EtNWEyYjE1NzdlNWU3Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDplMjE4OTA3NS1hNzI0LWJmNGItOTFjYS01YTJiMTU3N2U1ZTciIHN0RXZ0OndoZW49IjIwMjMtMTEtMDNUMDA6MzE6MzArMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4LH1UYAAAAHklEQVQIHWP4LyhoCMR+UNqQAZkDEzBEwn7IAmCVAPCsFZXLivthAAAAAElFTkSuQmCC); -} -html.celebration .card { - border-radius: 0; -} -html.celebration .card:hover { - background: #b81213; -} -html.celebration .hljs { - color: hsla(0, 25%, 94%, 0.9); - background: hsla(0, 68%, 53%, 0.8); -} -html.celebration .main-content .note { - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAYAAAA/tpB3AAAAFUlEQVQImWMY7ODr16//CbmRgYEBAJG+A9/jkW/TAAAAAElFTkSuQmCC); -} -html.celebration .main-content figure pre > ul, -html.celebration .main-content figure figcaption { - color: #eebfbf; - background: rgba(255, 132, 132, 0.4); -} -html.celebration .main-content figure pre code { - color: hsla(0, 25%, 94%, 0.9); -} -html.celebration .main-content .pwd { - background: var(--bg-g); - color: var(--bg-g); -} -html.celebration .tips { - background-color: rgba(253, 237, 237, 0.9) !important; -} -html.celebration .widget.profile .address { - color: #e4e4e4; -} -html.celebration .links:not(.widget) .link-desc { - color: #e4e4e4; -} -html.celebration .aplayer .aplayer-info .aplayer-music .aplayer-author, -html.celebration .aplayer .aplayer-lrc p, -html.celebration .aplayer .aplayer-info .aplayer-controller .aplayer-time, -html.celebration .aplayer .aplayer-list ol li .aplayer-list-author, -html.celebration .aplayer .aplayer-list ol li .aplayer-list-index { - color: #ddd; -} -html.celebration .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path { - fill: #ddd; -} +html.celebration{--main:hsla(0, 0%, 100%, 0.9);--theme:#ff3b3b!important;--background:rgba(201, 57, 58, 0.95);--title:#fff;--light-a:#fff;--light-b:#f13a3a;--light-c:#dcdcdc;--light-d:#f13a3a;--dark-a:#eee;--dark-b:#eee;--dark-c:#fff;--dark-d:#e4e4e4;--dark-e:#e4e4e4;--color-a:#f13a3a;--bg-a:hsla(0, 0%, 100%, 0.102);--bg-b:#ec9494;--bg-c:#ea5454;--bg-d:rgba(189, 13, 14, 0.8);--bg-e:#f13a3a;--bg-g:#ec9494;--bg-j:hsla(0, 0%, 100%, 0.102);--bg-k:hsla(0, 0%, 100%, 0.102);--bg-l:rgba(239, 107, 107, 0.8);--bg-h:hsla(0, 68%, 53%, 0.8);--box-shadow:1px 1px 3px 1px #cb0b0b;--comm-color-a:#eee;--comm-color-c:#eee;--comm-color-b:#eee;--comm-color-d:#bbb;--comm-color-f:#eee;--comm-color-i:#ddd;--comm-bg-a:rgba(181, 51, 51, 0.8);--comm-bg-b:rgba(204, 78, 78, 0.9);--comm-bg-h:rgba(204, 78, 78, 0.9);background-color:#ec9494}html.celebration body{background:rgba(145,11,11,.9)}html.celebration .banner .banner-waves{fill:#b81213}html.celebration .navbar .navbar-search .input:focus,html.celebration .navbar .navbar-search-mobile .input:focus{background:var(--bg-a)}html.celebration .navbar .navbar-search .input::-webkit-input-placeholder,html.celebration .navbar .navbar-search-mobile .input::-webkit-input-placeholder{color:#ec9494}html.celebration .navbar .navbar-search .input::-moz-placeholder,html.celebration .navbar .navbar-search-mobile .input::-moz-placeholder{color:#ec9494}html.celebration .navbar .navbar-search .input:-ms-input-placeholder,html.celebration .navbar .navbar-search-mobile .input:-ms-input-placeholder{color:#ec9494}html.celebration .navbar .navbar-search .input::-ms-input-placeholder,html.celebration .navbar .navbar-search-mobile .input::-ms-input-placeholder{color:#ec9494}html.celebration .navbar .navbar-search .input::placeholder,html.celebration .navbar .navbar-search-mobile .input::placeholder{color:#ec9494}html.celebration .navbar-slideout{background:#910b0b}html.celebration .navbar-slideout-menu{background:var(--background)}html.celebration .banner:before{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIzLTExLTAzVDAwOjMxOjMwKzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMy0xMS0wM1QwMDo0OTozMSswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMy0xMS0wM1QwMDo0OTozMSswODowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDplMjE4OTA3NS1hNzI0LWJmNGItOTFjYS01YTJiMTU3N2U1ZTciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ZTIxODkwNzUtYTcyNC1iZjRiLTkxY2EtNWEyYjE1NzdlNWU3IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZTIxODkwNzUtYTcyNC1iZjRiLTkxY2EtNWEyYjE1NzdlNWU3Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDplMjE4OTA3NS1hNzI0LWJmNGItOTFjYS01YTJiMTU3N2U1ZTciIHN0RXZ0OndoZW49IjIwMjMtMTEtMDNUMDA6MzE6MzArMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4LH1UYAAAAHklEQVQIHWP4LyhoCMR+UNqQAZkDEzBEwn7IAmCVAPCsFZXLivthAAAAAElFTkSuQmCC)}html.celebration .card{border-radius:0}html.celebration .card:hover{background:#b81213}html.celebration .hljs{background:rgba(217,54,54,.8)}html.celebration .main-content .note{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAYAAAA/tpB3AAAAFUlEQVQImWMY7ODr16//CbmRgYEBAJG+A9/jkW/TAAAAAElFTkSuQmCC)}html.celebration .main-content figure figcaption,html.celebration .main-content figure pre>ul{color:#eebfbf;background:rgba(255,132,132,.4)}html.celebration .hljs,html.celebration .main-content figure pre code{color:rgba(244,236,236,.9)}html.celebration .main-content .pwd{background:var(--bg-g);color:var(--bg-g)}html.celebration .tips{background-color:rgba(253,237,237,.9)!important}html.celebration .widget.profile .address{color:#e4e4e4}html.celebration .links:not(.widget) .link-desc{color:#e4e4e4}html.celebration .aplayer .aplayer-info .aplayer-controller .aplayer-time,html.celebration .aplayer .aplayer-info .aplayer-music .aplayer-author,html.celebration .aplayer .aplayer-list ol li .aplayer-list-author,html.celebration .aplayer .aplayer-list ol li .aplayer-list-index,html.celebration .aplayer .aplayer-lrc p{color:#ddd}html.celebration .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path{fill:#ddd} \ No newline at end of file diff --git a/templates/assets/css/cursor.min.css b/templates/assets/css/cursor.min.css index ad58356..5b6d3b6 100644 --- a/templates/assets/css/cursor.min.css +++ b/templates/assets/css/cursor.min.css @@ -1,41 +1 @@ -body { - cursor: var(--cursor-default); -} -a, -button, -.expand-done, -.navbar-above .navbar-nav .item, -.navbar-slideicon, -.navbar-searchicon, -.widget .ad-tag .click-close, -.actions > div, -.main-content figure > figcaption div, -.photos .picture-details { - cursor: var(--cursor-pointer); -} -.aplayer .aplayer-pic, -.aplayer .aplayer-music, -.aplayer .aplayer-bar-wrap, -.aplayer .aplayer-icon { - cursor: var(--cursor-pointer) !important; -} -.main-content :not(.jg-entry) > img:not([class]) { - cursor: var(--cursor-zoom-in); -} -p, -input[type=text], -blockquote, -th, -td, -code, -h1, -h2, -h3, -h4, -h5, -h6, -hr, -li, -textarea { - cursor: var(--cursor-text); -} +body{cursor:var(--cursor-default)}.actions>div,.expand-done,.main-content figure>figcaption div,.navbar-above .navbar-nav .item,.navbar-searchicon,.navbar-slideicon,.photos .picture-details,.widget .ad-tag .click-close,a,button{cursor:var(--cursor-pointer)}.aplayer .aplayer-bar-wrap,.aplayer .aplayer-icon,.aplayer .aplayer-music,.aplayer .aplayer-pic{cursor:var(--cursor-pointer)!important}.main-content :not(.jg-entry)>img:not([class]){cursor:var(--cursor-zoom-in)}blockquote,code,h1,h2,h3,h4,h5,h6,hr,input[type=text],li,p,td,textarea,th{cursor:var(--cursor-text)} \ No newline at end of file diff --git a/templates/assets/css/dshare.min.css b/templates/assets/css/dshare.min.css index f0296cd..057fcce 100644 --- a/templates/assets/css/dshare.min.css +++ b/templates/assets/css/dshare.min.css @@ -1,315 +1 @@ -@charset "utf-8"; -/* CSS Document */ -@font-face { - font-family: "dshare"; - src: url("../font/dshare.woff2") format("woff2"); -} -.dshare-container { - font-family: "dshare" !important; -} -.dshare-container .dshare-icon { - width: 32px; - height: 32px; - margin: 4px; - font-size: 20px; - line-height: 32px; - border: 1px solid; - text-align: center; - vertical-align: middle; - display: inline-block; - border-radius: 50%; - -webkit-transition: background 0.6s ease-out 0s; - transition: background 0.6s ease-out 0s; -} -.dshare-container .dshare-icon:hover { - color: #fff; -} -.dshare-container .icon-qq { - color: #56b6e7; - border-color: #56b6e7; -} -.dshare-container .icon-qq:before { - content: '\f01a'; -} -.dshare-container .icon-qq:hover { - background: #56b6e7; -} -.dshare-container .icon-qzone { - color: #FDBE3D; - border-color: #FDBE3D; -} -.dshare-container .icon-qzone:before { - content: '\f02a'; -} -.dshare-container .icon-qzone:hover { - background: #FDBE3D; -} -.dshare-container .icon-wechat { - position: relative; - color: #7bc549; - border-color: #7bc549; -} -.dshare-container .icon-wechat:before { - content: '\f03a'; -} -.dshare-container .icon-wechat:hover { - background: #7bc549; -} -.dshare-container .icon-wechat:hover .wechat-qrcode { - opacity: 1; - -webkit-transform: translateY(-15px); - transform: translateY(-15px); -} -.dshare-container .icon-weibo { - color: #ff763b; - border-color: #ff763b; -} -.dshare-container .icon-weibo:before { - content: '\f04a'; -} -.dshare-container .icon-weibo:hover { - background: #ff763b; -} -.dshare-container .icon-douban { - color: #33b045; - border-color: #33b045; -} -.dshare-container .icon-douban:before { - content: '\f05a'; -} -.dshare-container .icon-douban:hover { - background: #33b045; -} -.dshare-container .icon-linkedin { - color: #0077B5; - border-color: #0077B5; -} -.dshare-container .icon-linkedin:before { - content: '\f06a'; -} -.dshare-container .icon-linkedin:hover { - background: #0077B5; -} -.dshare-container .icon-facebook { - color: #44619D; - border-color: #44619D; -} -.dshare-container .icon-facebook:before { - content: '\f07a'; -} -.dshare-container .icon-facebook:hover { - background: #44619D; -} -.dshare-container .icon-twitter { - color: #55acee; - border-color: #55acee; -} -.dshare-container .icon-twitter:before { - content: '\f08a'; -} -.dshare-container .icon-twitter:hover { - background: #55acee; -} -.dshare-container .icon-google { - color: #db4437; - border-color: #db4437; -} -.dshare-container .icon-google:before { - content: '\f09a'; -} -.dshare-container .icon-google:hover { - background: #db4437; -} -.dshare-container .icon-link { - color: var(--theme); - border-color: var(--theme); -} -.dshare-container .icon-link:before { - content: '\f10a'; -} -.dshare-container .icon-link:hover { - background: var(--theme); -} -.dshare-container .icon-poster { - color: var(--theme); - border-color: var(--theme); -} -.dshare-container .icon-poster:before { - content: '\f11a'; -} -.dshare-container .icon-poster:hover { - background: var(--theme); -} -.dshare-container .wechat-qrcode { - opacity: 0; - position: absolute; - height: 165px; - width: 140px; - top: -150px; - left: -54px; - font-size: 12px; - border: 1px solid #eee; - border-radius: 5px; - background: #fff; - -webkit-box-shadow: 0 2px 10px #aaa; - box-shadow: 0 2px 10px #aaa; - pointer-events: none; - -webkit-transition: all 0.3s; - transition: all 0.3s; -} -.dshare-container .wechat-qrcode:after { - content: ''; - position: absolute; - left: 50%; - margin-left: -8px; - bottom: -13px; - width: 0; - height: 0; - border-width: 8px 8px 6px 8px; - border-style: solid; - border-color: #fff transparent transparent transparent; -} -.dshare-container .wechat-qrcode h4 { - margin: 0; - padding: 0; - height: 25px; - line-height: 25px; - color: #777; - background-color: #f3f3f3; -} -.dshare-container .wechat-qrcode img { - width: 100%; -} -.dshare-poster { - left: 0; - top: 0; - height: 100%; - width: 100%; - position: fixed; - z-index: 99999; - -webkit-transition: all 0.3s; - transition: all 0.3s; - background: rgba(0, 0, 0, 0.3); -} -.dshare-poster.close-animation { - opacity: 0; -} -.dshare-poster.close-animation .dshare-poster-container > * { - -webkit-transform: scale(0.4); - transform: scale(0.4); -} -.dshare-poster-container { - top: 50%; - left: 50%; - display: grid; - position: absolute; - width: 360px; - max-width: 90%; - -webkit-transform: translate(-50%, -50%); - transform: translate(-50%, -50%); -} -.dshare-poster-download { - width: 50px; - height: 50px; - margin-top: 20px; - line-height: 50px; - font-size: 24px; - cursor: pointer; - background: var(--theme); - border-radius: 50%; - color: #fff; - text-align: center; - -webkit-transition: all 0.3s; - transition: all 0.3s; - justify-self: center; -} -.dshare-poster-crad { - overflow: hidden; - background: #fff; - border-radius: 6px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - -webkit-transition: all 0.3s; - transition: all 0.3s; - font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; -} -.dshare-poster-cover { - position: relative; - margin-bottom: -68px; -} -.dshare-poster-cover:after { - content: ''; - position: absolute; - left: 0; - bottom: -1px; - width: 100%; - height: 140px; - background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff)); - background: linear-gradient(180deg, transparent, #fff); -} -.dshare-poster-cover img { - width: 100%; - min-height: 180px; - max-height: 340px; - -o-object-fit: cover; - object-fit: cover; -} -.dshare-poster-content { - padding: 10px; -} -.dshare-poster-title { - color: #333; - position: relative; - margin-top: 8px; - padding-bottom: 14px; - font-size: 18px; -} -.dshare-poster-title:before { - content: ''; - position: absolute; - width: 20%; - height: 2px; - left: 0; - bottom: 8px; - border-radius: 5px; - background: var(--theme); -} -.dshare-poster-title:after { - content: ''; - position: absolute; - width: 63%; - height: 2px; - left: 0; - bottom: 1px; - border-radius: 5px; - background: var(--theme); -} -.dshare-poster-desc { - margin-top: 12px; - text-indent: 2em; - color: var(--main); - line-height: 1.6em; -} -.dshare-poster-footer { - margin-top: 28px; - border: 1px #ccc dashed; - border-radius: 5px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.dshare-poster-qrcode { - width: 70px; -} -.dshare-poster-qrcode-info { - margin: auto 0 auto 8px; -} -.dshare-poster-qrcode-site { - font-size: 16px; -} -.dshare-poster-qrcode-msg { - margin-top: 4px; - color: #999; -} +@charset "utf-8";@font-face{font-family:"dshare";src:url(../font/dshare.woff2) format("woff2")}.dshare-container{font-family:"dshare"!important}.dshare-container .dshare-icon{width:32px;height:32px;margin:4px;font-size:20px;line-height:32px;border:1px solid;text-align:center;vertical-align:middle;display:inline-block;border-radius:50%;-webkit-transition:background .6s ease-out 0s;transition:background .6s ease-out 0s}.dshare-container .dshare-icon:hover{color:#fff}.dshare-container .icon-qq{color:#56b6e7;border-color:#56b6e7}.dshare-container .icon-qq:before{content:'\f01a'}.dshare-container .icon-qq:hover{background:#56b6e7}.dshare-container .icon-qzone{color:#fdbe3d;border-color:#fdbe3d}.dshare-container .icon-qzone:before{content:'\f02a'}.dshare-container .icon-qzone:hover{background:#fdbe3d}.dshare-container .icon-wechat{position:relative;color:#7bc549;border-color:#7bc549}.dshare-container .icon-wechat:before{content:'\f03a'}.dshare-container .icon-wechat:hover{background:#7bc549}.dshare-container .icon-wechat:hover .wechat-qrcode{opacity:1;-webkit-transform:translateY(-15px);transform:translateY(-15px)}.dshare-container .icon-weibo{color:#ff763b;border-color:#ff763b}.dshare-container .icon-weibo:before{content:'\f04a'}.dshare-container .icon-weibo:hover{background:#ff763b}.dshare-container .icon-douban{color:#33b045;border-color:#33b045}.dshare-container .icon-douban:before{content:'\f05a'}.dshare-container .icon-douban:hover{background:#33b045}.dshare-container .icon-linkedin{color:#0077b5;border-color:#0077b5}.dshare-container .icon-linkedin:before{content:'\f06a'}.dshare-container .icon-linkedin:hover{background:#0077b5}.dshare-container .icon-facebook{color:#44619d;border-color:#44619d}.dshare-container .icon-facebook:before{content:'\f07a'}.dshare-container .icon-facebook:hover{background:#44619d}.dshare-container .icon-twitter{color:#55acee;border-color:#55acee}.dshare-container .icon-twitter:before{content:'\f08a'}.dshare-container .icon-twitter:hover{background:#55acee}.dshare-container .icon-google{color:#db4437;border-color:#db4437}.dshare-container .icon-google:before{content:'\f09a'}.dshare-container .icon-google:hover{background:#db4437}.dshare-container .icon-link,.dshare-container .icon-poster{color:var(--theme);border-color:var(--theme)}.dshare-container .icon-link:before{content:'\f10a'}.dshare-container .icon-link:hover,.dshare-container .icon-poster:hover{background:var(--theme)}.dshare-container .icon-poster:before{content:'\f11a'}.dshare-container .wechat-qrcode{opacity:0;position:absolute;height:165px;width:140px;top:-150px;left:-54px;font-size:12px;border:1px solid #eee;border-radius:5px;background:#fff;-webkit-box-shadow:0 2px 10px #aaa;box-shadow:0 2px 10px #aaa;pointer-events:none;-webkit-transition:all .3s;transition:all .3s}.dshare-container .wechat-qrcode:after{content:'';position:absolute;left:50%;margin-left:-8px;bottom:-13px;width:0;height:0;border-width:8px 8px 6px;border-style:solid;border-color:#fff transparent transparent}.dshare-container .wechat-qrcode h4{margin:0;padding:0;height:25px;line-height:25px;color:#777;background-color:#f3f3f3}.dshare-container .wechat-qrcode img{width:100%}.dshare-poster{left:0;top:0;height:100%;width:100%;position:fixed;z-index:99999;-webkit-transition:all .3s;transition:all .3s;background:rgba(0,0,0,.3)}.dshare-poster.close-animation{opacity:0}.dshare-poster.close-animation .dshare-poster-container>*{-webkit-transform:scale(.4);transform:scale(.4)}.dshare-poster-container{top:50%;left:50%;display:grid;position:absolute;width:360px;max-width:90%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.dshare-poster-crad,.dshare-poster-download{-webkit-transition:all .3s;transition:all .3s}.dshare-poster-download{width:50px;height:50px;margin-top:20px;line-height:50px;font-size:24px;cursor:pointer;background:var(--theme);border-radius:50%;color:#fff;text-align:center;justify-self:center}.dshare-poster-crad{overflow:hidden;background:#fff;border-radius:6px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif}.dshare-poster-cover{position:relative;margin-bottom:-68px}.dshare-poster-cover:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:140px;background:-webkit-gradient(linear,left top,left bottom,from(transparent),to(#fff));background:linear-gradient(180deg,transparent,#fff)}.dshare-poster-cover img{width:100%;min-height:180px;max-height:340px;-o-object-fit:cover;object-fit:cover}.dshare-poster-content{padding:10px}.dshare-poster-title{color:#333;position:relative;margin-top:8px;padding-bottom:14px;font-size:18px}.dshare-poster-title:after,.dshare-poster-title:before{content:'';position:absolute;width:20%;height:2px;left:0;bottom:8px;border-radius:5px;background:var(--theme)}.dshare-poster-title:after{width:63%;bottom:1px}.dshare-poster-desc{margin-top:12px;text-indent:2em;color:var(--main);line-height:1.6em}.dshare-poster-footer{margin-top:28px;border:1px #ccc dashed;border-radius:5px;display:-webkit-box;display:-ms-flexbox;display:flex}.dshare-poster-qrcode{width:70px}.dshare-poster-qrcode-info{margin:auto 0 auto 8px}.dshare-poster-qrcode-site{font-size:16px}.dshare-poster-qrcode-msg{margin-top:4px;color:#999} \ No newline at end of file diff --git a/templates/assets/css/mew-custom.min.css b/templates/assets/css/mew-custom.min.css index 5093e0c..7f0c9a0 100644 --- a/templates/assets/css/mew-custom.min.css +++ b/templates/assets/css/mew-custom.min.css @@ -1,847 +1 @@ -@charset "utf-8"; -/* CSS Document */ -mew-hide { - display: block; - cursor: pointer; - overflow: hidden; - position: relative; - height: 4em; - border-radius: var(--radius-wrap); -} -mew-hide:before { - content: '隐藏内容,评论后可见'; - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - line-height: 4em; - text-align: center; - padding: 0 12px; - background: repeating-linear-gradient(135deg, var(--light-b), var(--light-b) 1rem, var(--background) 0, var(--background) 2rem); -} -mew-subtitle { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - margin: 14px 0; -} -mew-subtitle > span { - position: relative; - color: var(--main); - padding: 0 47px; -} -mew-subtitle > span:hover::before { - left: 12px; -} -mew-subtitle > span:hover::after { - right: 12px; -} -mew-subtitle > span::before { - content: ""; - position: absolute; - top: 50%; - left: 0; - width: 20px; - height: 1px; - background: var(--theme); - -webkit-transition: all 0.35s; - transition: all 0.35s; -} -mew-subtitle > span::after { - content: ""; - position: absolute; - top: 50%; - right: 0; - width: 20px; - height: 1px; - background: var(--theme); - -webkit-transition: all 0.35s; - transition: all 0.35s; -} -mew-music { - display: block; - background-color: var(--bg-d) !important; - max-width: 620px; - margin: auto !important; -} -mew-music:not(.aplayer) { - padding: 10px 20px; - font-size: 1.1em; - border: 1px solid var(--light-b); - border-radius: 5px; -} -mew-music:not(.aplayer):before { - content: "\ef83"; - font-family: 'remixicon'; - color: var(--theme); - margin-right: 10px; -} -mew-music .aplayer-list ol li { - border-top: 1px solid rgba(180, 180, 180, 0.2) !important; -} -mew-music .aplayer-list ol li.aplayer-list-light { - background: rgba(200, 200, 200, 0.2) !important; -} -mew-music .aplayer-list ol li:hover { - background: rgba(200, 200, 200, 0.2) !important; -} -mew-music.aplayer-withlist .aplayer-info { - border-bottom: none; -} -mew-music .aplayer-lrc:before { - background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #c5c5c52b), to(hsla(0, 0%, 100%, 0))) !important; - background: linear-gradient(180deg, #c5c5c52b 0, hsla(0, 0%, 100%, 0)) !important; -} -mew-music .aplayer-lrc:after { - background: -webkit-gradient(linear, left top, left bottom, color-stop(0, hsla(0, 0%, 100%, 0)), to(hsla(0, 0%, 100%, 0.23))) !important; - background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, 0.23)) !important; -} -mew-bilibili { - display: block; - position: relative; -} -mew-bilibili > iframe { - position: absolute; - height: 100%; - top: 0; - bottom: 0; - left: 50%; - right: 0; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - border-radius: var(--radius-inner); -} -mew-tabs { - width: 100%; - overflow: hidden; - display: block; - background: var(--bg-d); - border: 1px solid var(--light-b); - border-radius: var(--radius-inner); - line-height: 26px; - margin-bottom: 14px; -} -mew-tabs .tabs-head { - width: 100%; - overflow-x: auto; - overflow-y: hidden; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - background: var(--bg-h); -} -mew-tabs .tabs-head > div { - position: relative; - padding: 0 14px; - line-height: 40px; - height: 40px; - color: var(--dark-b); - cursor: pointer; - -webkit-transition: color 0.5s; - transition: color 0.5s; - white-space: nowrap; - font-size: 1em; -} -mew-tabs .tabs-head > div::after { - content: ""; - position: absolute; - background: var(--theme); - bottom: 0; - left: 14px; - right: 14px; - height: 2px; - opacity: 0; - border-radius: 2px; - -webkit-transform: scaleX(0.5); - transform: scaleX(0.5); - -webkit-transition: opacity 0.25s, -webkit-transform 0.25s; - transition: opacity 0.25s, -webkit-transform 0.25s; - transition: opacity 0.25s, transform 0.25s; - transition: opacity 0.25s, transform 0.25s, -webkit-transform 0.25s; -} -mew-tabs .tabs-head > div.active { - color: var(--theme); -} -mew-tabs .tabs-head > div.active::after { - opacity: 1; - -webkit-transform: scaleX(1); - transform: scaleX(1); -} -mew-tabs .tabs-body { - padding: 12px 14px; -} -mew-tabs .tabs-body > div { - display: none; -} -mew-tabs .tabs-body > div.active { - display: block; -} -mew-cloud { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 10px; - overflow: hidden; - border: 1px solid var(--light-b); - border-radius: var(--radius-inner); - -webkit-box-shadow: 1px 1px 5px 0 var(--bg-b); - box-shadow: 1px 1px 5px 0 var(--bg-b); - background: var(--background); -} -mew-cloud .mew-cloud-logo { - -ms-flex-negative: 0; - flex-shrink: 0; - width: 2.4em; - height: 2.4em; - margin-right: 10px; - background-size: 100% 100%; -} -mew-cloud .mew-cloud-logo.type-default { - background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjUyMTY1ODk4NzQ2IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjcyNjYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IGZlZWRiYWNrLWljb25mb250OyBzcmM6IHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUud29mZjI/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoIi8vYXQuYWxpY2RuLmNvbS90L2ZvbnRfMTAzMTE1OF91Njl3OHloeGR1LndvZmY/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmIiksIHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUudHRmP3Q9MTYzMDAzMzc1OTk0NCIpIGZvcm1hdCgidHJ1ZXR5cGUiKTsgfQo8L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNMTkwLjU3MTQyODMyIDI1NC44NTcxNDI0OGg2NDIuODU3MTQzMzZjMTkuMjg1NzE0MTYgMCAzMi4xNDI4NTc1MiAxMi44NTcxNDI0OCAzMi4xNDI4NTY2NCAzMi4xNDI4NTc1MnY0ODIuMTQyODU3NTJIMTU4LjQyODU3MTY4VjI4N2MwLTE5LjI4NTcxNDE2IDEyLjg1NzE0MjQ4LTMyLjE0Mjg1NzUyIDMyLjE0Mjg1NjY0LTMyLjE0Mjg1NzUyeiIgZmlsbD0iIzkxRDVGRiIgcC1pZD0iNzI2NyI+PC9wYXRoPjxwYXRoIGQ9Ik0yMjUuOTI4NTcxNjggMTI2LjI4NTcxNDE2aDU0MGMxOS4yODU3MTQxNiAwIDM1LjM1NzE0MjQ4IDE2LjA3MTQyODMyIDM1LjM1NzE0MjQ4IDMyLjE0Mjg1NzUycy0xNi4wNzE0MjgzMiAzMi4xNDI4NTc1Mi0zNS4zNTcxNDI0OCAzMi4xNDI4NTY2NEgyMjUuOTI4NTcxNjhDMjA2LjY0Mjg1NzUyIDE5MC41NzE0MjgzMiAxOTAuNTcxNDI4MzIgMTc0LjUgMTkwLjU3MTQyODMyIDE1OC40Mjg1NzE2OHMxNi4wNzE0MjgzMi0zMi4xNDI4NTc1MiAzNS4zNTcxNDMzNi0zMi4xNDI4NTc1MnoiIGZpbGw9IiNCQUU3RkYiIHAtaWQ9IjcyNjgiPjwvcGF0aD48cGF0aCBkPSJNMTEwLjIxNDI4NTg0IDQ3OS44NTcxNDI0OGgyMDIuNWw2MS4wNzE0MjgzMiAxNDEuNDI4NTcxNjhoMjczLjIxNDI4NTg0bDczLjkyODU3MTY4LTE0MS40Mjg1NzE2OGgxOTIuODU3MTQyNDhjMjUuNzE0Mjg1ODQgMCA0OC4yMTQyODU4NCAyMi41IDQ4LjIxNDI4NTg0IDQ4LjIxNDI4NTg0djM4NS43MTQyODU4NGMwIDI1LjcxNDI4NTg0LTIyLjUgNDguMjE0Mjg1ODQtNDguMjE0Mjg1ODQgNDguMjE0Mjg1ODRoLTgwMy41NzE0MjgzMkM4NC41IDk2MiA2MiA5MzkuNSA2MiA5MTMuNzg1NzE0MTZ2LTM4NS43MTQyODU4NGMzLjIxNDI4NTg0LTI1LjcxNDI4NTg0IDIyLjUtNDguMjE0Mjg1ODQgNDguMjE0Mjg1ODQtNDguMjE0Mjg1ODR6IiBmaWxsPSIjNDBBOUZGIiBwLWlkPSI3MjY5Ij48L3BhdGg+PHBhdGggZD0iTTI4NyA3NjkuMTQyODU3NTJoNDUwYzE5LjI4NTcxNDE2IDAgMzIuMTQyODU3NTIgMTIuODU3MTQyNDggMzIuMTQyODU3NTIgMzIuMTQyODU2NjRzLTEyLjg1NzE0MjQ4IDMyLjE0Mjg1NzUyLTMyLjE0Mjg1NzUyIDMyLjE0Mjg1NzUySDI4N2MtMTkuMjg1NzE0MTYgMC0zMi4xNDI4NTc1Mi0xMi44NTcxNDI0OC0zMi4xNDI4NTc1Mi0zMi4xNDI4NTc1MnMxMi44NTcxNDI0OC0zMi4xNDI4NTc1MiAzMi4xNDI4NTc1Mi0zMi4xNDI4NTY2NHoiIGZpbGw9IiNCQUU3RkYiIHAtaWQ9IjcyNzAiPjwvcGF0aD48L3N2Zz4="); -} -mew-cloud .mew-cloud-logo.type-360 { - background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjxwYXRoIGQ9Ik04NDMuMjk0IDg3MS45MDZjMC00OS42OTQgNDAuNjU5LTkwLjM1MyA5MC4zNTMtOTAuMzUzUzEwMjQgODIyLjIxMiAxMDI0IDg3MS45MDZzLTQwLjY1OSA5MC4zNTMtOTAuMzUzIDkwLjM1My05MC4zNTMtNDAuNjU5LTkwLjM1My05MC4zNTN6IiBmaWxsPSIjRkY5OTMyIi8+PHBhdGggZD0iTTg0NC44IDY4Ni42ODJsLTEzMS4wMTItNTIuNzA2Yy0xMC41NC00LjUxNy0xMC41NC0xMi4wNDctNi4wMjMtMjIuNTg4IDEyLjA0Ny0zMS42MjMgMTguMDctNjYuMjU5IDE4LjA3LTEwMC44OTQgMC0xNDcuNTc2LTEyNC45ODgtMjc0LjA3LTI3NC4wNy0yNzQuMDdzLTI3NC4wNyAxMjYuNDk0LTI3NC4wNyAyNzQuMDdjMCAzNC42MzUgOS4wMzQgNzAuNzc3IDIxLjA4MSAxMDIuNCAzLjAxMiA2LjAyNCAzLjAxMiAxMy41NTMgMCAxOS41NzctMy4wMTEgNC41MTctNi4wMjMgMC0xMC41NCAxLjUwNUw1NS43MTcgNjc3LjY0N2MtMS41MDYgMS41MDYtNC41MTggMS41MDYtNi4wMjQgMS41MDYtOS4wMzUgMC0xNS4wNTktNC41MTgtMTguMDctMTMuNTUzQzEyLjA0NyA2MTQuNCAxLjUwNiA1NjMuMiAxLjUwNiA1MTAuNDk0IDEuNTA2IDI2My41MyAyMDQuOCA2MC4yMzUgNDUzLjI3IDYwLjIzNXM0NTAuMjU4IDIwMS43ODkgNDUwLjI1OCA0NDguNzUzYzAgNTguNzMtMTAuNTQgMTE0LjQ0Ny0zMS42MjMgMTY3LjE1My0xLjUwNiA0LjUxOC02LjAyNCA5LjAzNS0xMi4wNDcgMTAuNTQxLTMuMDEyIDEuNTA2LTQuNTE4IDEuNTA2LTcuNTMgMS41MDZzLTQuNTE3IDAtNy41MjktMS41MDZ6IiBmaWxsPSIjMEZCMjY0Ii8+PHBhdGggZD0iTTUxLjIgNzE4LjMwNmMtNy41My0xNS4wNTktMTMuNTUzLTMxLjYyNC0xOS41NzYtNDYuNjgyLTMuMDEyLTcuNTMtMy4wMTItMTMuNTUzLTMuMDEyLTE2LjU2NSAwLTQ5LjY5NCA0MC42NTktODguODQ3IDkxLjg1OS04OC44NDcgMzcuNjQ3IDAgNjkuMjcgMjIuNTg4IDg0LjMyOSA1NS43MTcgMS41MDYgMy4wMTIgNi4wMjQgMTIuMDQ3IDkuMDM1IDE2LjU2NSA0Ni42ODMgODguODQ3IDEzOC41NDEgMTQ2LjA3IDIzOS40MzYgMTQ2LjA3IDk5LjM4OCAwIDE4OS43NC01NS43MTcgMjM3LjkyOS0xNDEuNTUyIDQuNTE4LTkuMDM2IDE2LjU2NS0zMC4xMTggMTguMDctMzEuNjI0IDE1LjA2LTMwLjExNyA0My42NzEtNDUuMTc2IDc2LjgtNDUuMTc2IDUxLjIgMCA5MS44NiA0MC42NTkgOTEuODYgODguODQ3IDAgNi4wMjMgMCAxMy41NTMtNC41MTggMjIuNTg4bC05LjAzNiAyMi41ODh2MS41MDZjLTEuNTA1IDQuNTE4LTMuMDExIDcuNTMtNi4wMjMgMTIuMDQ3LTc2LjggMTUzLjYtMjMxLjkwNiAyNDguNDctNDAzLjU3NyAyNDguNDdTMTI5LjUwNiA4NjguODk1IDUxLjIgNzE4LjMwN3oiIGZpbGw9IiNGRjk5MzIiLz48L3N2Zz4=); -} -mew-cloud .mew-cloud-logo.type-bd { - background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTI3MS4zOCA0MjkuNjM3YTI0NS41IDI0NS41IDAgMCAxLTMuMzk1LTQwLjc3N2MwLTEzNC42OCAxMDkuMTgtMjQzLjg2IDI0My44Ni0yNDMuODZzMjQzLjg2IDEwOS4xOCAyNDMuODYgMjQzLjg2YTI0NS41IDI0NS41IDAgMCAxLTMuMzk0IDQwLjc3NkM4NzUuOTY3IDQzMC4zMTIgOTc2IDUzMC43NjMgOTc2IDY1NC41NzhjMCAxMjQuMjM1LTEwMC43MTIgMjI0Ljk0Ny0yMjQuOTQ2IDIyNC45NDctNjIuNzQzIDAtMTE5LjQ4Ni0yNS42ODgtMTYwLjI4Ny02Ny4xMmwuMDAzLS4wMDRjLTIxLjQ0LTIxLjgyMi0yMS4zMjItNTYuODkzLjM1NC03OC41NyAyMS43OTYtMjEuNzk1IDU3LjEzMy0yMS43OTUgNzguOTI4IDAgLjY5My42OTQgMS4zNjUgMS40IDIuMDE0IDIuMTIgMjAuNDI3IDE5Ljg3IDQ4LjMxNyAzMi4xMDggNzkuMDY1IDMyLjEwOCA2Mi42MzEgMCAxMTMuNDA0LTUwLjc3MiAxMTMuNDA0LTExMy40MDMgMC02Mi42MzEtNTAuNzczLTExMy40MDMtMTEzLjQwNC0xMTMuNDAzLTI4LjczOSAwLTU0Ljk4MSAxMC42OS03NC45NjcgMjguMzExbC0uMDk2LS4wOTYtMS44ODYgMS44ODZjLTIuMiAyLjAzMy00LjMyIDQuMTUyLTYuMzUzIDYuMzUzbC00LjMwNiA0LjMwNS4wNzYuMDc3LTIyOS44NzYgMjI5Ljg3Ni0uMDMtLjAzYy00MC44MzMgNDEuNzA4LTk3Ljc2NyA2Ny41OS0xNjAuNzQ3IDY3LjU5QzE0OC43MTIgODc5LjUyNSA0OCA3NzguODEzIDQ4IDY1NC41NzhjMC0xMjMuNzExIDk5Ljg2Ni0yMjQuMDk4IDIyMy4zOC0yMjQuOTR6bTEuNjQ0IDMzOC40MjJjNjIuNjMgMCAxMTMuNDAzLTUwLjc3MiAxMTMuNDAzLTExMy40MDMgMC02Mi42MzEtNTAuNzcyLTExMy40MDMtMTEzLjQwMy0xMTMuNDAzLTYyLjYzMSAwLTExMy40MDQgNTAuNzcyLTExMy40MDQgMTEzLjQwMyAwIDYyLjYzIDUwLjc3MyAxMTMuNDAzIDExMy40MDQgMTEzLjQwM3pNNTExLjg0NSA1MjEuMWM3My4wMzQgMCAxMzIuMjQtNTkuMjA2IDEzMi4yNC0xMzIuMjQgMC03My4wMzMtNTkuMjA2LTEzMi4yMzktMTMyLjI0LTEzMi4yMzlzLTEzMi4yNCA1OS4yMDYtMTMyLjI0IDEzMi4yNGMwIDczLjAzMyA1OS4yMDYgMTMyLjIzOSAxMzIuMjQgMTMyLjIzOXoiIGZpbGw9IiMwNkE3RkYiLz48cGF0aCBkPSJNNjQzLjM1MSA0MDIuODY4YTU2Ljk2NiA1Ni45NjYgMCAwIDEtLjM1Mi02LjMzNGMwLTMxLjEyMyAyNS4yMy01Ni4zNTMgNTYuMzUzLTU2LjM1M3M1Ni4zNTMgMjUuMjMgNTYuMzUzIDU2LjM1M2MwIDIuMzktLjE1IDQuNzQ1LS40MzggNy4wNTctNy42MTYgMTI3LjgyLTExMy42ODggMjI5LjEyOC0yNDMuNDIyIDIyOS4xMjgtMTI5LjczNCAwLTIzNS44MDYtMTAxLjMwNy0yNDMuNDIyLTIyOS4xMjhhNTYuOTA4IDU2LjkwOCAwIDAgMS0uNDM4LTcuMDU3YzAtMzEuMTIzIDI1LjIzLTU2LjM1MyA1Ni4zNTMtNTYuMzUzczU2LjM1MyAyNS4yMyA1Ni4zNTMgNTYuMzUzYzAgMi4xNDEtLjEyIDQuMjU1LS4zNTIgNi4zMzQgNi45OTYgNjYuNDQ4IDYzLjIwNCAxMTguMjMgMTMxLjUwNiAxMTguMjMgNjguMzAyIDAgMTI0LjUxLTUxLjc4MiAxMzEuNTA2LTExOC4yM3oiIGZpbGw9IiNGRjQzNkEiLz48L3N2Zz4=); -} -mew-cloud .mew-cloud-logo.type-wy { - background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjxwYXRoIGQ9Ik04ODAuMyA2MzEuOWMtMy40IDAtNi45LS42LTEwLjItMS44LTE2LjEtNS43LTI0LjUtMjMuMy0xOC45LTM5LjQgNi40LTE4LjEgOS42LTM3LjEgOS42LTU2LjUgMC05My4zLTc1LjktMTY5LjItMTY5LjEtMTY5LjItNzcuNiAwLTE0NS4xIDUyLjQtMTY0IDEyNy41LTQuMiAxNi41LTIwLjggMjYuNi0zNy41IDIyLjQtMTYuNS00LjItMjYuNS0yMS0yMi40LTM3LjUgMjUuOS0xMDIuNSAxMTgtMTc0LjEgMjIzLjktMTc0LjEgMTI3LjMgMCAyMzAuOCAxMDMuNiAyMzAuOCAyMzAuOSAwIDI2LjQtNC40IDUyLjMtMTMuMSA3Ny00LjUgMTIuNy0xNi40IDIwLjctMjkuMSAyMC43eiIgZmlsbD0iIzA5RiIvPjxwYXRoIGQ9Ik00NDcuNCA3ODMuM0gzMzIuNmMtMTI3LjMgMC0yMzAuOS05Ny41LTIzMC45LTIxNy4zIDAtOTQuOSA2NS45LTE3OC4zIDE2MC0yMDYuOCAxMC4yLTExNy45IDEwOS41LTIxMC43IDIzMC0yMTAuNyAxMDcuMSAwIDIwMS44IDc1LjggMjI1LjMgMTgwLjEgMy43IDE2LjYtNi44IDMzLjEtMjMuNCAzNi45LTE2LjcgMy45LTMzLjItNi43LTM2LjktMjMuMy0xNy4xLTc2LjQtODYuNS0xMzEuOS0xNjUtMTMxLjktOTMuMyAwLTE2OS4yIDc1LjktMTY5LjIgMTY5LjEgMS43IDguMS4zIDE1LjQtNC40IDIyLjMtNC42IDYuOS0xMS43IDEwLjQtMTkuOSAxMi03OC4yIDE0LjgtMTM0LjkgNzguOS0xMzQuOSAxNTIuNCAwIDg1LjggNzUuOSAxNTUuNiAxNjkuMiAxNTUuNmgxMTQuOGMxNyAwIDMwLjkgMTMuOCAzMC45IDMwLjlzLTEzLjggMzAuNy0zMC44IDMwLjd6bTExMi43LTMxYy04LjIgMC0xNi4zLTMuMi0yMi40LTkuNi0xMS43LTEyLjQtMTEuMy0zMS45IDEuMS00My42bDEyNi43LTEyMC40YzExLjgtMTEuMyAzMC41LTExLjMgNDIuNSAwTDgzNC44IDY5OWMxMi40IDExLjcgMTIuOSAzMS4zIDEuMSA0My42LTExLjcgMTIuMy0zMS4zIDEyLjktNDMuNiAxLjFMNjg2LjggNjQzLjYgNTgxLjMgNzQzLjhjLTUuOSA1LjctMTMuNiA4LjUtMjEuMiA4LjV6IiBmaWxsPSIjMDlGIi8+PHBhdGggZD0iTTY4Ni44IDg3OWMtMTcgMC0zMC45LTEzLjgtMzAuOS0zMC45VjYwMWMwLTE3IDEzLjktMzAuOSAzMC45LTMwLjlzMzAuOSAxMy44IDMwLjkgMzAuOXYyNDcuMWMwIDE3LjEtMTMuOSAzMC45LTMwLjkgMzAuOXoiIGZpbGw9IiMwOUYiLz48L3N2Zz4=); -} -mew-cloud .mew-cloud-logo.type-ali { - background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIyLjAzNSAxMy44MDZhLjUyNy41MjcgMCAwMS0uMzg0LS42MTdjMS4yMjctNS42MzItMi4yLTExLjMxLTcuODQ1LTEyLjgxN0M4LTEuMTc4IDIuMDA4IDIuMjYuNDM4IDguMDM5bC0uMDAyLjAxLS4wMDUuMDE2Yy0uOTU1IDMuNTgzLS4zMTUgNy4zMzggMS44MTMgMTAuNDRhMTIuNjU5IDEyLjY1OSAwIDAwNi4wODYgNC43MTNjNi44ODcgMi41MDggMTQuMzAzLTEuMjUgMTYuNDk1LTcuOTY4YS42NDMuNjQzIDAgMDAtLjQ0OC0uODE5bC0yLjM0My0uNjI1em0tMTEuNDQgNS40NTdBOC4xMjcgOC4xMjcgMCAwMTUuNjIgMTUuNDZhOC4wODMgOC4wODMgMCAwMS0uODItNi4xODdjLjkzNS0zLjQ0MSA0LjUwMi01LjQ5IDcuOTYtNC41NjYgMy4yODUuODc3IDUuMzA5IDQuMTIxIDQuNzIgNy4zOTdhLjYuNiAwIDAwLjQzNC42OWwyLjIwNi41ODljLjI4LjA3NS40MzcuMzcuMzQ0LjY0Mi0xLjM4IDQuMDI1LTUuNjkgNi4zNTYtOS44NyA1LjI0eiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjAiIHkxPSIwIiB4Mj0iMjYuMzY2IiB5Mj0iMjIuMjA4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzQ0NkRGRiIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzYzN0RGRiIgc3RvcC1vcGFjaXR5PSIuNzUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="); -} -mew-cloud .mew-cloud-logo.type-github { - background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjUyMTY0NzM0OTg3IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQ2OTUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IGZlZWRiYWNrLWljb25mb250OyBzcmM6IHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUud29mZjI/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoIi8vYXQuYWxpY2RuLmNvbS90L2ZvbnRfMTAzMTE1OF91Njl3OHloeGR1LndvZmY/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmIiksIHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUudHRmP3Q9MTYzMDAzMzc1OTk0NCIpIGZvcm1hdCgidHJ1ZXR5cGUiKTsgfQo8L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyIDg1LjMzMzMzM0MyNzYuMjY2NjY3IDg1LjMzMzMzMyA4NS4zMzMzMzMgMjc2LjI2NjY2NyA4NS4zMzMzMzMgNTEyYTQyNi40MTA2NjcgNDI2LjQxMDY2NyAwIDAgMCAyOTEuNzU0NjY3IDQwNC44MjEzMzNjMjEuMzMzMzMzIDMuNzEyIDI5LjMxMi05LjA4OCAyOS4zMTItMjAuMzA5MzMzIDAtMTAuMTEyLTAuNTU0NjY3LTQzLjY5MDY2Ny0wLjU1NDY2Ny03OS40NDUzMzMtMTA3LjE3ODY2NyAxOS43NTQ2NjctMTM0LjkxMi0yNi4xMTItMTQzLjQ0NTMzMy01MC4xMzMzMzQtNC44MjEzMzMtMTIuMjg4LTI1LjYtNTAuMTMzMzMzLTQzLjczMzMzMy02MC4yODgtMTQuOTMzMzMzLTcuOTc4NjY3LTM2LjI2NjY2Ny0yNy43MzMzMzMtMC41NTQ2NjctMjguMjQ1MzMzIDMzLjYyMTMzMy0wLjU1NDY2NyA1Ny42IDMwLjkzMzMzMyA2NS42MjEzMzMgNDMuNzMzMzMzIDM4LjQgNjQuNTEyIDk5Ljc1NDY2NyA0Ni4zNzg2NjcgMTI0LjI0NTMzNCAzNS4yIDMuNzU0NjY3LTI3LjczMzMzMyAxNC45MzMzMzMtNDYuMzc4NjY3IDI3LjIyMTMzMy01Ny4wNDUzMzMtOTQuOTMzMzMzLTEwLjY2NjY2Ny0xOTQuMTMzMzMzLTQ3LjQ4OC0xOTQuMTMzMzMzLTIxMC42ODggMC00Ni40MjEzMzMgMTYuNTEyLTg0Ljc3ODY2NyA0My43MzMzMzMtMTE0LjY4OC00LjI2NjY2Ny0xMC42NjY2NjctMTkuMi01NC40IDQuMjY2NjY3LTExMy4wNjY2NjcgMCAwIDM1LjcxMi0xMS4xNzg2NjcgMTE3LjMzMzMzMyA0My43NzZhMzk1Ljk0NjY2NyAzOTUuOTQ2NjY3IDAgMCAxIDEwNi42NjY2NjctMTQuNDIxMzMzYzM2LjI2NjY2NyAwIDcyLjUzMzMzMyA0Ljc3ODY2NyAxMDYuNjY2NjY2IDE0LjM3ODY2NyA4MS41Nzg2NjctNTUuNDY2NjY3IDExNy4zMzMzMzMtNDMuNjkwNjY3IDExNy4zMzMzMzQtNDMuNjkwNjY3IDIzLjQ2NjY2NyA1OC42NjY2NjcgOC41MzMzMzMgMTAyLjQgNC4yNjY2NjYgMTEzLjA2NjY2NyAyNy4xNzg2NjcgMjkuODY2NjY3IDQzLjczMzMzMyA2Ny43MTIgNDMuNzMzMzM0IDExNC42NDUzMzMgMCAxNjMuNzU0NjY3LTk5LjcxMiAyMDAuMDIxMzMzLTE5NC42NDUzMzQgMjEwLjY4OCAxNS40NDUzMzMgMTMuMzEyIDI4LjggMzguOTEyIDI4LjggNzguOTMzMzMzIDAgNTcuMDQ1MzMzLTAuNTU0NjY3IDEwMi45MTItMC41NTQ2NjYgMTE3LjMzMzMzNCAwIDExLjE3ODY2NyA4LjAyMTMzMyAyNC40OTA2NjcgMjkuMzU0NjY2IDIwLjIyNEE0MjcuMzQ5MzMzIDQyNy4zNDkzMzMgMCAwIDAgOTM4LjY2NjY2NyA1MTJjMC0yMzUuNzMzMzMzLTE5MC45MzMzMzMtNDI2LjY2NjY2Ny00MjYuNjY2NjY3LTQyNi42NjY2Njd6IiBmaWxsPSIjMDAwMDAwIiBwLWlkPSI0Njk2Ij48L3BhdGg+PC9zdmc+"); -} -mew-cloud .mew-cloud-logo.type-gitee { - background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjUyMTY1NjgxOTQ2IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQ4NjYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IGZlZWRiYWNrLWljb25mb250OyBzcmM6IHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUud29mZjI/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoIi8vYXQuYWxpY2RuLmNvbS90L2ZvbnRfMTAzMTE1OF91Njl3OHloeGR1LndvZmY/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmIiksIHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUudHRmP3Q9MTYzMDAzMzc1OTk0NCIpIGZvcm1hdCgidHJ1ZXR5cGUiKTsgfQo8L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyIDEwMjRDMjI5LjIyMiAxMDI0IDAgNzk0Ljc3OCAwIDUxMlMyMjkuMjIyIDAgNTEyIDBzNTEyIDIyOS4yMjIgNTEyIDUxMi0yMjkuMjIyIDUxMi01MTIgNTEyeiBtMjU5LjE0OS01NjguODgzaC0yOTAuNzRhMjUuMjkzIDI1LjI5MyAwIDAgMC0yNS4yOTIgMjUuMjkzbC0wLjAyNiA2My4yMDZjMCAxMy45NTIgMTEuMzE1IDI1LjI5MyAyNS4yNjcgMjUuMjkzaDE3Ny4wMjRjMTMuOTc4IDAgMjUuMjkzIDExLjMxNSAyNS4yOTMgMjUuMjY3djEyLjY0NmE3NS44NTMgNzUuODUzIDAgMCAxLTc1Ljg1MyA3NS44NTNoLTI0MC4yM2EyNS4yOTMgMjUuMjkzIDAgMCAxLTI1LjI2Ny0yNS4yOTNWNDE3LjIwM2E3NS44NTMgNzUuODUzIDAgMCAxIDc1LjgyNy03NS44NTNoMzUzLjk0NmEyNS4yOTMgMjUuMjkzIDAgMCAwIDI1LjI2Ny0yNS4yOTJsMC4wNzctNjMuMjA3YTI1LjI5MyAyNS4yOTMgMCAwIDAtMjUuMjY4LTI1LjI5M0g0MTcuMTUyYTE4OS42MiAxODkuNjIgMCAwIDAtMTg5LjYyIDE4OS42NDVWNzcxLjE1YzAgMTMuOTc3IDExLjMxNiAyNS4yOTMgMjUuMjk0IDI1LjI5M2gzNzIuOTRhMTcwLjY1IDE3MC42NSAwIDAgMCAxNzAuNjUtMTcwLjY1VjQ4MC4zODRhMjUuMjkzIDI1LjI5MyAwIDAgMC0yNS4yOTMtMjUuMjY3eiIgZmlsbD0iI0M3MUQyMyIgcC1pZD0iNDg2NyI+PC9wYXRoPjwvc3ZnPg==); -} -mew-cloud .mew-cloud-logo.type-lz { - background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjxwYXRoIGQ9Ik02NzguNjQgNTE0LjAwN2ExNjguNDQ4IDE2OC40NDggMCAxIDAtMTY4LjQ0NyAxNjcuNzA2QTE2OC4wNyAxNjguMDcgMCAwIDAgNjc4LjY0IDUxNC4wMDd6IiBmaWxsPSIjRjRDQTFDIi8+PHBhdGggZD0iTTk4My4wNCA2MDMuNDEyYTI0Mi40ODggMjQyLjQ4OCAwIDAgMC0yODAuMzkyLTIzOC40MDdBMjUzLjMyMiAyNTMuMzIyIDAgMCAwIDI1Ni4yMiAyODcuMThhMjQ5LjEzNCAyNDkuMTM0IDAgMCAwLTQ4Ljk1NyAxNTMuMzg1QTIwMy4zOTcgMjAzLjM5NyAwIDAgMCAyNDAuMTg5IDg0NC44aDUyNy43NzVhMzEuOTkgMzEuOTkgMCAwIDAgMTQuNzUtMy43MTcgMjQyLjAzOCAyNDIuMDM4IDAgMCAwIDIwMC4zMjYtMjM3LjY3ek03NDAuNjA4IDc4MC43MTNIMjQwLjE4OWExMzkuMzg3IDEzOS4zODcgMCAxIDEgMC0yNzguNzY5IDMxLjk3IDMxLjk3IDAgMCAwIDguNzA0LTEuMzQxIDMxLjk2NCAzMS45NjQgMCAwIDAgMjQuODQ4LTM1Ljk5OSAxODcuODEyIDE4Ny44MTIgMCAwIDEgMTU3Ljc0Mi0yMTQuMDE2IDE4OC40NjIgMTg4LjQ2MiAwIDAgMSAyMDkuNTQxIDEzMi44MzkgMjQxLjYyOCAyNDEuNjI4IDAgMCAwLTE0Mi44NDggMjE5Ljk4NSAzMi4xOCAzMi4xOCAwIDAgMCA2NC4zNTggMCAxNzguMDY4IDE3OC4wNjggMCAxIDEgMTc4LjA3NCAxNzcuMzAxeiIgZmlsbD0iIzU5NUJCMyIvPjwvc3ZnPg=="); -} -mew-cloud .mew-cloud-desc { - line-height: normal; - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - overflow: hidden; -} -mew-cloud .mew-cloud-desc-title { - color: var(--theme); - margin-bottom: 3px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -mew-cloud .mew-cloud-desc-type { - font-size: 0.8em; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -mew-cloud .mew-cloud-link { - -ms-flex-negative: 0; - flex-shrink: 0; - margin-left: auto; - background: var(--theme); - color: #fff; - width: 2em; - height: 2em; - line-height: 2em; - border-radius: 50%; - text-align: center; -} -mew-progress { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -mew-progress .mew-progress-bar { - height: 10px; - border-radius: 5px; - overflow: hidden; - background: var(--light-b); - width: 0; - min-width: 0; - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - margin-right: 5px; -} -mew-progress .mew-progress-bar-inner { - height: 100%; - overflow: hidden; - border-radius: 5px; -} -mew-progress .mew-progress-bar-inner:before { - content: ''; - display: block; - height: 100%; - background-size: 30px 30px; - -webkit-animation: progress 750ms linear infinite; - animation: progress 750ms linear infinite; - background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.4) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0.4) 75%, transparent 75%, transparent 100%); -} -mew-progress .mew-progress-value { - width: 38px; - color: var(--main); -} -mew-panel { - display: block; - overflow: hidden; - border-radius: var(--radius-inner); - margin-bottom: 14px; -} -mew-panel .mew-panel-title { - color: #FFF; - padding: 6px 12px; - font-weight: 400; -} -mew-panel .mew-panel-body { - background: rgba(255, 255, 255, 0.88); - padding: 12px 18px; - position: relative; -} -mew-message { - display: block; - padding: 10px; - border-radius: var(--radius-inner); - margin-bottom: 14px; -} -mew-message::before { - font: normal normal normal 1.1em/1 remixicon; - margin-right: 8px; -} -mew-message[type=error] { - color: #f46c6b; - background-color: rgba(255, 228, 226, 0.9); -} -mew-message[type=error]::before { - content: '\eb97'; -} -mew-message[type=warning] { - color: #FEC008; - background-color: rgba(255, 243, 215, 0.9); -} -mew-message[type=warning]::before { - content: '\eca1'; -} -mew-message[type=info] { - color: #1B72F3; - background-color: rgba(232, 240, 255, 0.9); -} -mew-message[type=info]::before { - content: '\ee59'; -} -mew-message[type=success] { - color: #2bde3f; - background-color: rgba(225, 255, 228, 0.9); -} -mew-message[type=success]::before { - content: '\eb81'; -} -mew-hr { - display: block; - height: 4px; - background-size: 50px 4px; - margin: 14px 0; -} -mew-timeline { - display: block; - border-left: 1px solid var(--light-b); - margin-bottom: 14px; -} -mew-timeline > div { - position: relative; - padding-left: 1.2em; -} -mew-timeline > div::before { - content: ''; - position: absolute; - border-radius: 50%; - top: 0.1em; -} -mew-timeline > div + .mew-timeline-title { - margin-top: 16px; -} -mew-timeline .mew-timeline-title { - color: var(--dark-c); - font-weight: 500; - padding-bottom: 5px; -} -mew-timeline .mew-timeline-title::before { - background-color: #50bfff; - -webkit-box-shadow: 0 0 0 0.4em rgba(80, 191, 255, 0.25); - box-shadow: 0 0 0 0.4em rgba(80, 191, 255, 0.25); - left: -0.32em; - height: 0.6em; - width: 0.6em; -} -mew-timeline .mew-timeline-title-elem { - position: relative; - top: -0.4em; -} -mew-timeline .mew-timeline-item { - font-size: 0.95em; -} -mew-timeline .mew-timeline-item::before { - background-color: var(--light-a); - border: 2px solid #50bfff; - left: -5px; - height: 5px; - width: 5px; -} -mew-timeline .mew-timeline-item:not(:last-child) { - padding-bottom: 16px; -} -mew-timeline .mew-timeline-item-title { - display: block; - line-height: 1em; - margin-bottom: 2px; - font-weight: 400; - position: relative; - top: -0.1em; -} -mew-timeline .mew-timeline-item-content { - padding: 8px 12px; - overflow: hidden; - border-radius: 0 6px 6px 6px; - background-color: var(--bg-a); - position: relative; -} -mew-timeline .mew-timeline-item-content * { - margin: 0 !important; -} -mew-timeline .info.mew-timeline-title { - color: #1b72f3; -} -mew-timeline .info.mew-timeline-title::before { - background-color: #73a3eb; - -webkit-box-shadow: 0 0 0 0.4em rgba(115, 163, 235, 0.25); - box-shadow: 0 0 0 0.4em rgba(115, 163, 235, 0.25); -} -mew-timeline .info.mew-timeline-item::before { - border-color: #73a3eb; -} -mew-timeline .info .mew-timeline-item-content { - color: #1b72f3; - background-color: #ecf3ff; -} -mew-timeline .warning.mew-timeline-title { - color: #fec008; -} -mew-timeline .warning.mew-timeline-title::before { - background-color: #ffd350; - -webkit-box-shadow: 0 0 0 0.4em rgba(255, 211, 80, 0.25); - box-shadow: 0 0 0 0.4em rgba(255, 211, 80, 0.25); -} -mew-timeline .warning.mew-timeline-item::before { - border-color: #ffd350; -} -mew-timeline .warning .mew-timeline-item-content { - color: #fec008; - background-color: #fdf6e6; -} -mew-timeline .success.mew-timeline-title { - color: #2bde3f; -} -mew-timeline .success.mew-timeline-title::before { - background-color: #6de37a; - -webkit-box-shadow: 0 0 0 0.4em rgba(109, 227, 122, 0.25); - box-shadow: 0 0 0 0.4em rgba(109, 227, 122, 0.25); -} -mew-timeline .success.mew-timeline-item::before { - border-color: #6de37a; -} -mew-timeline .success .mew-timeline-item-content { - color: #2bde3f; - background-color: #e9fbeb; -} -mew-timeline .error.mew-timeline-title { - color: #f46c6b; -} -mew-timeline .error.mew-timeline-title::before { - background-color: #ff7776; - -webkit-box-shadow: 0 0 0 0.4em rgba(255, 119, 118, 0.25); - box-shadow: 0 0 0 0.4em rgba(255, 119, 118, 0.25); -} -mew-timeline .error.mew-timeline-item::before { - border-color: #ff7776; -} -mew-timeline .error .mew-timeline-item-content { - color: #f46c6b; - background-color: #ffeeed; -} -mew-btn { - display: inline-block; -} -mew-btn > .mew-btn { - color: #fff; - line-height: 1em; - padding: 0.5em 12px; - font-weight: 400; - display: inline-block; - background: var(--theme); - border-radius: var(--radius-inner); -} -mew-btn > .mew-btn:hover { - color: #fff; - -webkit-filter: opacity(0.8); - filter: opacity(0.8); - -webkit-box-shadow: 0 4px 15px -4px rgba(41, 45, 52, 0.3); - box-shadow: 0 4px 15px -4px rgba(41, 45, 52, 0.3); -} -mew-btn > .mew-btn > i { - margin-right: 6px; -} -mew-quote { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin: 0 18px 14px 18px; -} -mew-quote .mew-quote { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin: 0 auto; - padding: 10px; -} -mew-quote .mew-quote:before { - content: '“'; - color: var(--theme); - font-size: 2.8em; - font-family: fantasy; - line-height: 1; - margin-right: 14px; - margin-top: -10px; -} -mew-quote .mew-quote:after { - content: '”'; - color: var(--theme); - font-size: 2.8em; - font-family: fantasy; - line-height: 1; - -ms-flex-item-align: end; - align-self: flex-end; - margin-left: 14px; - margin-bottom: calc(-0.5em - 10px); -} -mew-quote .quote-container { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: start; - -ms-flex-align: start; - align-items: flex-start; -} -mew-quote .mew-quote-href { - padding: 4px; - display: inline-block; - background: var(--bg-a); - -webkit-transition: -webkit-transform 2s; - transition: -webkit-transform 2s; - transition: transform 2s; - transition: transform 2s, -webkit-transform 2s; - margin-right: 8px; - -ms-flex-negative: 0; - flex-shrink: 0; -} -mew-quote .mew-quote-href:hover { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); -} -mew-quote .mew-quote-href, -mew-quote .mew-quote-href .quote-avatar-hexagon { - -webkit-clip-path: polygon(40% 7.67949%, 43.1596% 6.20615%, 46.52704% 5.30384%, 50% 5%, 53.47296% 5.30384%, 56.8404% 6.20615%, 60% 7.67949%, 81.65064% 20.17949%, 84.50639% 22.17911%, 86.97152% 24.64425%, 88.97114% 27.5%, 90.44449% 30.6596%, 91.34679% 34.02704%, 91.65064% 37.5%, 91.65064% 62.5%, 91.34679% 65.97296%, 90.44449% 69.3404%, 88.97114% 72.5%, 86.97152% 75.35575%, 84.50639% 77.82089%, 81.65064% 79.82051%, 60% 92.32051%, 56.8404% 93.79385%, 53.47296% 94.69616%, 50% 95%, 46.52704% 94.69616%, 43.1596% 93.79385%, 40% 92.32051%, 18.34936% 79.82051%, 15.49361% 77.82089%, 13.02848% 75.35575%, 11.02886% 72.5%, 9.55551% 69.3404%, 8.65321% 65.97296%, 8.34936% 62.5%, 8.34936% 37.5%, 8.65321% 34.02704%, 9.55551% 30.6596%, 11.02886% 27.5%, 13.02848% 24.64425%, 15.49361% 22.17911%, 18.34936% 20.17949%); - clip-path: polygon(40% 7.67949%, 43.1596% 6.20615%, 46.52704% 5.30384%, 50% 5%, 53.47296% 5.30384%, 56.8404% 6.20615%, 60% 7.67949%, 81.65064% 20.17949%, 84.50639% 22.17911%, 86.97152% 24.64425%, 88.97114% 27.5%, 90.44449% 30.6596%, 91.34679% 34.02704%, 91.65064% 37.5%, 91.65064% 62.5%, 91.34679% 65.97296%, 90.44449% 69.3404%, 88.97114% 72.5%, 86.97152% 75.35575%, 84.50639% 77.82089%, 81.65064% 79.82051%, 60% 92.32051%, 56.8404% 93.79385%, 53.47296% 94.69616%, 50% 95%, 46.52704% 94.69616%, 43.1596% 93.79385%, 40% 92.32051%, 18.34936% 79.82051%, 15.49361% 77.82089%, 13.02848% 75.35575%, 11.02886% 72.5%, 9.55551% 69.3404%, 8.65321% 65.97296%, 8.34936% 62.5%, 8.34936% 37.5%, 8.65321% 34.02704%, 9.55551% 30.6596%, 11.02886% 27.5%, 13.02848% 24.64425%, 15.49361% 22.17911%, 18.34936% 20.17949%); -} -mew-quote .mew-quote-info { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} -mew-quote .mew-quote-content { - margin-bottom: 8px; - line-height: 1.5em; -} -mew-quote .mew-quote-name { - color: var(--dark-c); - -ms-flex-item-align: self-end; - align-self: self-end; - font-size: 0.9em; - font-style: italic; - font-weight: 400; -} -mew-quote .mew-quote-name:before { - content: ''; - width: 2.8em; - height: 1px; - background: var(--dark-c); - margin-right: 4px; - display: inline-block; - margin-bottom: 0.3em; -} -mew-quote .quote-avatar-hexagon { - height: 5em; - width: 5em; - -o-object-fit: cover; - object-fit: cover; -} -mew-link .mew-link { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin: auto; - max-width: 420px; - background: var(--bg-l); - padding: 12px 12px 9px 12px; - border-radius: 8px; - overflow: hidden; -} -mew-link .mew-link-info { - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} -mew-link .info-title { - margin-bottom: 6px; - color: var(--dark-c); - line-height: 1.3em; - display: -webkit-box; - text-overflow: ellipsis; - overflow: hidden; - -webkit-box-orient: vertical; - -webkit-line-clamp: 2; -} -mew-link .info-desc { - font-size: 0.9em; - line-height: 1.3em; - height: 1.3em; - color: var(--dark-d); - word-break: break-all; - display: -webkit-box; - text-overflow: ellipsis; - overflow: hidden; - -webkit-box-orient: vertical; - -webkit-line-clamp: 1; -} -mew-link .info-desc:before { - content: '\eeb8'; - font-family: 'remixicon'; - margin-right: 4px; -} -mew-link .mew-link-image { - background-color: var(--bg-l); - position: relative; - display: block; - width: 60px; - height: 60px; - margin-left: 16px; - border-radius: 4px; - overflow: hidden; - -ms-flex-negative: 0; - flex-shrink: 0; -} -mew-link .link-image { - width: 100%; - height: 100%; - -o-object-fit: cover; - object-fit: cover; -} -mew-video { - display: block; - text-align: center; -} -mew-video video { - max-width: 100%; - border-radius: var(--radius-inner); -} -mew-photos { - display: block; - width: 100%; - position: relative; - overflow: hidden; - margin-bottom: 14px; -} -mew-photos > div { - position: absolute; - display: inline-block; - overflow: hidden; - opacity: 0.1; - margin: 0; - padding: 0; - border-radius: 8px; - cursor: pointer; -} -mew-photos > div > img { - position: absolute; - -webkit-transition: opacity 500ms ease-in; - transition: opacity 500ms ease-in; - top: 50%; - left: 50%; - margin: 0; - padding: 0; - border: none; - opacity: 0; -} -mew-photos > div > .jg-caption { - opacity: 0; - position: absolute; - bottom: 0; - padding: 5px; - background-color: #000000; - left: 0; - right: 0; - margin: 0; - color: white; - font-size: 0.85em; - font-weight: 300; - font-family: sans-serif; - -webkit-transition: opacity 300ms ease-in; - transition: opacity 300ms ease-in; -} -mew-photos > div > .jg-caption.jg-caption-visible { - opacity: 0.7; -} -mew-photos > .jg-entry-visible { - opacity: 1; - background: none; -} -mew-photos > .jg-entry-visible > img { - opacity: 1; -} -mew-raw { - display: block; - margin-bottom: 14px; -} -mew-hide:not([draw]), -mew-btn:not([draw]), -mew-timeline:not([draw]), -mew-quote:not([draw]), -mew-link:not([draw]), -mew-photos:not([draw]), -mew-raw:not([draw]) { - display: none; -} -mew-bilibili:not([draw]), -mew-cloud:not([draw]), -mew-tabs:not([draw]), -mew-panel:not([draw]), -mew-video:not([draw]) { - display: block; - overflow: hidden; - position: relative; - height: 2.4em; - border: 1px solid var(--light-b); - border-radius: var(--radius-inner); - -webkit-box-shadow: 1px 1px 5px 0 var(--bg-b); - box-shadow: 1px 1px 5px 0 var(--bg-b); -} -mew-bilibili:not([draw]):before, -mew-cloud:not([draw]):before, -mew-tabs:not([draw]):before, -mew-panel:not([draw]):before, -mew-video:not([draw]):before { - content: '加载中...'; - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - line-height: 2.4em; - text-align: left; - padding-left: 12px; - background: var(--light-a); -} -html.night .mew-cloud-logo, -html.night .mew-cloud-link, -html.night .mew-progress-bar-inner, -html.night mew-panel, -html.night mew-message, -html.night mew-hr, -html.night mew-timeline, -html.night mew-btn { - -webkit-filter: brightness(0.8); - filter: brightness(0.8); -} -@-webkit-keyframes progress { - 0% { - background-position: 0 0; - } - to { - background-position: 30px 0; - } -} -@keyframes progress { - 0% { - background-position: 0 0; - } - to { - background-position: 30px 0; - } -} -@media (max-width: 1023px) { - mew-quote .quote-avatar-hexagon { - height: 3.6em; - width: 3.6em; - -o-object-fit: cover; - object-fit: cover; - } -} -@media (max-width: 511px) { - mew-quote { - margin: 0; - } - mew-quote .quote-container { - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - } - mew-quote .mew-quote-avatar { - text-align: center; - } - mew-quote .quote-avatar-hexagon { - height: 3.2em; - width: 3.2em; - } - mew-bilibili { - padding: calc(30%) 0px !important; - } - mew-bilibili iframe, - mew-video video { - width: 100% !important; - } -} +@charset "utf-8";@-webkit-keyframes progress{0%{background-position:0 0}to{background-position:30px 0}}@keyframes progress{0%{background-position:0 0}to{background-position:30px 0}}mew-hide{display:block;cursor:pointer;overflow:hidden;position:relative;height:4em;border-radius:var(--radius-wrap)}mew-hide:before{content:'隐藏内容,评论后可见';position:absolute;top:0;bottom:0;left:0;right:0;line-height:4em;text-align:center;padding:0 12px;background:repeating-linear-gradient(135deg,var(--light-b),var(--light-b) 1rem,var(--background) 0,var(--background) 2rem)}mew-subtitle{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:14px 0}mew-subtitle>span{position:relative;color:var(--main);padding:0 47px}mew-subtitle>span:hover::before{left:12px}mew-subtitle>span:hover::after{right:12px}mew-subtitle>span::after,mew-subtitle>span::before{content:"";position:absolute;top:50%;width:20px;height:1px;background:var(--theme);-webkit-transition:all .35s;transition:all .35s}mew-subtitle>span::before{left:0}mew-subtitle>span::after{right:0}mew-music{display:block;background-color:var(--bg-d)!important;max-width:620px;margin:auto!important}mew-music:not(.aplayer){padding:10px 20px;font-size:1.1em;border:1px solid var(--light-b);border-radius:5px}mew-music:not(.aplayer):before{content:"\ef83";font-family:'remixicon';color:var(--theme);margin-right:10px}mew-music .aplayer-list ol li{border-top:1px solid rgba(180,180,180,.2)!important}mew-music .aplayer-list ol li.aplayer-list-light,mew-music .aplayer-list ol li:hover{background:rgba(200,200,200,.2)!important}mew-music.aplayer-withlist .aplayer-info{border-bottom:none}mew-music .aplayer-lrc:before{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#c5c5c52b),to(rgba(255,255,255,0)))!important;background:linear-gradient(180deg,#c5c5c52b 0,rgba(255,255,255,0))!important}mew-music .aplayer-lrc:after{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,rgba(255,255,255,0)),to(rgba(255,255,255,.23)))!important;background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,.23))!important}mew-bilibili{display:block;position:relative}mew-bilibili>iframe{position:absolute;height:100%;top:0;bottom:0;left:50%;right:0;-webkit-transform:translateX(-50%);transform:translateX(-50%)}mew-cloud,mew-tabs{border:1px solid var(--light-b)}mew-bilibili>iframe,mew-tabs{border-radius:var(--radius-inner)}mew-tabs{width:100%;overflow:hidden;display:block;background:var(--bg-d);line-height:26px;margin-bottom:14px}mew-tabs .tabs-head{width:100%;overflow-x:auto;overflow-y:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;background:var(--bg-h)}mew-tabs .tabs-head>div{position:relative;padding:0 14px;line-height:40px;height:40px;color:var(--dark-b);cursor:pointer;-webkit-transition:color .5s;transition:color .5s;white-space:nowrap;font-size:1em}mew-tabs .tabs-head>div::after{content:"";position:absolute;background:var(--theme);bottom:0;left:14px;right:14px;height:2px;opacity:0;border-radius:2px;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transition:opacity .25s,-webkit-transform .25s;transition:opacity .25s,transform .25s;transition:opacity .25s,transform .25s,-webkit-transform .25s}mew-tabs .tabs-head>div.active{color:var(--theme)}mew-tabs .tabs-head>div.active::after{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}mew-tabs .tabs-body{padding:12px 14px}mew-tabs .tabs-body>div{display:none}mew-hr,mew-tabs .tabs-body>div.active{display:block}mew-cloud{padding:10px;-webkit-box-shadow:1px 1px 5px 0 var(--bg-b);box-shadow:1px 1px 5px 0 var(--bg-b);background:var(--background)}mew-cloud .mew-cloud-logo{-ms-flex-negative:0;flex-shrink:0;width:2.4em;height:2.4em;margin-right:10px;background-size:100% 100%}mew-cloud .mew-cloud-logo.type-default{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjUyMTY1ODk4NzQ2IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjcyNjYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IGZlZWRiYWNrLWljb25mb250OyBzcmM6IHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUud29mZjI/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoIi8vYXQuYWxpY2RuLmNvbS90L2ZvbnRfMTAzMTE1OF91Njl3OHloeGR1LndvZmY/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmIiksIHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUudHRmP3Q9MTYzMDAzMzc1OTk0NCIpIGZvcm1hdCgidHJ1ZXR5cGUiKTsgfQo8L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNMTkwLjU3MTQyODMyIDI1NC44NTcxNDI0OGg2NDIuODU3MTQzMzZjMTkuMjg1NzE0MTYgMCAzMi4xNDI4NTc1MiAxMi44NTcxNDI0OCAzMi4xNDI4NTY2NCAzMi4xNDI4NTc1MnY0ODIuMTQyODU3NTJIMTU4LjQyODU3MTY4VjI4N2MwLTE5LjI4NTcxNDE2IDEyLjg1NzE0MjQ4LTMyLjE0Mjg1NzUyIDMyLjE0Mjg1NjY0LTMyLjE0Mjg1NzUyeiIgZmlsbD0iIzkxRDVGRiIgcC1pZD0iNzI2NyI+PC9wYXRoPjxwYXRoIGQ9Ik0yMjUuOTI4NTcxNjggMTI2LjI4NTcxNDE2aDU0MGMxOS4yODU3MTQxNiAwIDM1LjM1NzE0MjQ4IDE2LjA3MTQyODMyIDM1LjM1NzE0MjQ4IDMyLjE0Mjg1NzUycy0xNi4wNzE0MjgzMiAzMi4xNDI4NTc1Mi0zNS4zNTcxNDI0OCAzMi4xNDI4NTY2NEgyMjUuOTI4NTcxNjhDMjA2LjY0Mjg1NzUyIDE5MC41NzE0MjgzMiAxOTAuNTcxNDI4MzIgMTc0LjUgMTkwLjU3MTQyODMyIDE1OC40Mjg1NzE2OHMxNi4wNzE0MjgzMi0zMi4xNDI4NTc1MiAzNS4zNTcxNDMzNi0zMi4xNDI4NTc1MnoiIGZpbGw9IiNCQUU3RkYiIHAtaWQ9IjcyNjgiPjwvcGF0aD48cGF0aCBkPSJNMTEwLjIxNDI4NTg0IDQ3OS44NTcxNDI0OGgyMDIuNWw2MS4wNzE0MjgzMiAxNDEuNDI4NTcxNjhoMjczLjIxNDI4NTg0bDczLjkyODU3MTY4LTE0MS40Mjg1NzE2OGgxOTIuODU3MTQyNDhjMjUuNzE0Mjg1ODQgMCA0OC4yMTQyODU4NCAyMi41IDQ4LjIxNDI4NTg0IDQ4LjIxNDI4NTg0djM4NS43MTQyODU4NGMwIDI1LjcxNDI4NTg0LTIyLjUgNDguMjE0Mjg1ODQtNDguMjE0Mjg1ODQgNDguMjE0Mjg1ODRoLTgwMy41NzE0MjgzMkM4NC41IDk2MiA2MiA5MzkuNSA2MiA5MTMuNzg1NzE0MTZ2LTM4NS43MTQyODU4NGMzLjIxNDI4NTg0LTI1LjcxNDI4NTg0IDIyLjUtNDguMjE0Mjg1ODQgNDguMjE0Mjg1ODQtNDguMjE0Mjg1ODR6IiBmaWxsPSIjNDBBOUZGIiBwLWlkPSI3MjY5Ij48L3BhdGg+PHBhdGggZD0iTTI4NyA3NjkuMTQyODU3NTJoNDUwYzE5LjI4NTcxNDE2IDAgMzIuMTQyODU3NTIgMTIuODU3MTQyNDggMzIuMTQyODU3NTIgMzIuMTQyODU2NjRzLTEyLjg1NzE0MjQ4IDMyLjE0Mjg1NzUyLTMyLjE0Mjg1NzUyIDMyLjE0Mjg1NzUySDI4N2MtMTkuMjg1NzE0MTYgMC0zMi4xNDI4NTc1Mi0xMi44NTcxNDI0OC0zMi4xNDI4NTc1Mi0zMi4xNDI4NTc1MnMxMi44NTcxNDI0OC0zMi4xNDI4NTc1MiAzMi4xNDI4NTc1Mi0zMi4xNDI4NTY2NHoiIGZpbGw9IiNCQUU3RkYiIHAtaWQ9IjcyNzAiPjwvcGF0aD48L3N2Zz4=)}mew-cloud .mew-cloud-logo.type-360{background-image:url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjxwYXRoIGQ9Ik04NDMuMjk0IDg3MS45MDZjMC00OS42OTQgNDAuNjU5LTkwLjM1MyA5MC4zNTMtOTAuMzUzUzEwMjQgODIyLjIxMiAxMDI0IDg3MS45MDZzLTQwLjY1OSA5MC4zNTMtOTAuMzUzIDkwLjM1My05MC4zNTMtNDAuNjU5LTkwLjM1My05MC4zNTN6IiBmaWxsPSIjRkY5OTMyIi8+PHBhdGggZD0iTTg0NC44IDY4Ni42ODJsLTEzMS4wMTItNTIuNzA2Yy0xMC41NC00LjUxNy0xMC41NC0xMi4wNDctNi4wMjMtMjIuNTg4IDEyLjA0Ny0zMS42MjMgMTguMDctNjYuMjU5IDE4LjA3LTEwMC44OTQgMC0xNDcuNTc2LTEyNC45ODgtMjc0LjA3LTI3NC4wNy0yNzQuMDdzLTI3NC4wNyAxMjYuNDk0LTI3NC4wNyAyNzQuMDdjMCAzNC42MzUgOS4wMzQgNzAuNzc3IDIxLjA4MSAxMDIuNCAzLjAxMiA2LjAyNCAzLjAxMiAxMy41NTMgMCAxOS41NzctMy4wMTEgNC41MTctNi4wMjMgMC0xMC41NCAxLjUwNUw1NS43MTcgNjc3LjY0N2MtMS41MDYgMS41MDYtNC41MTggMS41MDYtNi4wMjQgMS41MDYtOS4wMzUgMC0xNS4wNTktNC41MTgtMTguMDctMTMuNTUzQzEyLjA0NyA2MTQuNCAxLjUwNiA1NjMuMiAxLjUwNiA1MTAuNDk0IDEuNTA2IDI2My41MyAyMDQuOCA2MC4yMzUgNDUzLjI3IDYwLjIzNXM0NTAuMjU4IDIwMS43ODkgNDUwLjI1OCA0NDguNzUzYzAgNTguNzMtMTAuNTQgMTE0LjQ0Ny0zMS42MjMgMTY3LjE1My0xLjUwNiA0LjUxOC02LjAyNCA5LjAzNS0xMi4wNDcgMTAuNTQxLTMuMDEyIDEuNTA2LTQuNTE4IDEuNTA2LTcuNTMgMS41MDZzLTQuNTE3IDAtNy41MjktMS41MDZ6IiBmaWxsPSIjMEZCMjY0Ii8+PHBhdGggZD0iTTUxLjIgNzE4LjMwNmMtNy41My0xNS4wNTktMTMuNTUzLTMxLjYyNC0xOS41NzYtNDYuNjgyLTMuMDEyLTcuNTMtMy4wMTItMTMuNTUzLTMuMDEyLTE2LjU2NSAwLTQ5LjY5NCA0MC42NTktODguODQ3IDkxLjg1OS04OC44NDcgMzcuNjQ3IDAgNjkuMjcgMjIuNTg4IDg0LjMyOSA1NS43MTcgMS41MDYgMy4wMTIgNi4wMjQgMTIuMDQ3IDkuMDM1IDE2LjU2NSA0Ni42ODMgODguODQ3IDEzOC41NDEgMTQ2LjA3IDIzOS40MzYgMTQ2LjA3IDk5LjM4OCAwIDE4OS43NC01NS43MTcgMjM3LjkyOS0xNDEuNTUyIDQuNTE4LTkuMDM2IDE2LjU2NS0zMC4xMTggMTguMDctMzEuNjI0IDE1LjA2LTMwLjExNyA0My42NzEtNDUuMTc2IDc2LjgtNDUuMTc2IDUxLjIgMCA5MS44NiA0MC42NTkgOTEuODYgODguODQ3IDAgNi4wMjMgMCAxMy41NTMtNC41MTggMjIuNTg4bC05LjAzNiAyMi41ODh2MS41MDZjLTEuNTA1IDQuNTE4LTMuMDExIDcuNTMtNi4wMjMgMTIuMDQ3LTc2LjggMTUzLjYtMjMxLjkwNiAyNDguNDctNDAzLjU3NyAyNDguNDdTMTI5LjUwNiA4NjguODk1IDUxLjIgNzE4LjMwN3oiIGZpbGw9IiNGRjk5MzIiLz48L3N2Zz4=)}mew-cloud .mew-cloud-logo.type-bd{background-image:url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTI3MS4zOCA0MjkuNjM3YTI0NS41IDI0NS41IDAgMCAxLTMuMzk1LTQwLjc3N2MwLTEzNC42OCAxMDkuMTgtMjQzLjg2IDI0My44Ni0yNDMuODZzMjQzLjg2IDEwOS4xOCAyNDMuODYgMjQzLjg2YTI0NS41IDI0NS41IDAgMCAxLTMuMzk0IDQwLjc3NkM4NzUuOTY3IDQzMC4zMTIgOTc2IDUzMC43NjMgOTc2IDY1NC41NzhjMCAxMjQuMjM1LTEwMC43MTIgMjI0Ljk0Ny0yMjQuOTQ2IDIyNC45NDctNjIuNzQzIDAtMTE5LjQ4Ni0yNS42ODgtMTYwLjI4Ny02Ny4xMmwuMDAzLS4wMDRjLTIxLjQ0LTIxLjgyMi0yMS4zMjItNTYuODkzLjM1NC03OC41NyAyMS43OTYtMjEuNzk1IDU3LjEzMy0yMS43OTUgNzguOTI4IDAgLjY5My42OTQgMS4zNjUgMS40IDIuMDE0IDIuMTIgMjAuNDI3IDE5Ljg3IDQ4LjMxNyAzMi4xMDggNzkuMDY1IDMyLjEwOCA2Mi42MzEgMCAxMTMuNDA0LTUwLjc3MiAxMTMuNDA0LTExMy40MDMgMC02Mi42MzEtNTAuNzczLTExMy40MDMtMTEzLjQwNC0xMTMuNDAzLTI4LjczOSAwLTU0Ljk4MSAxMC42OS03NC45NjcgMjguMzExbC0uMDk2LS4wOTYtMS44ODYgMS44ODZjLTIuMiAyLjAzMy00LjMyIDQuMTUyLTYuMzUzIDYuMzUzbC00LjMwNiA0LjMwNS4wNzYuMDc3LTIyOS44NzYgMjI5Ljg3Ni0uMDMtLjAzYy00MC44MzMgNDEuNzA4LTk3Ljc2NyA2Ny41OS0xNjAuNzQ3IDY3LjU5QzE0OC43MTIgODc5LjUyNSA0OCA3NzguODEzIDQ4IDY1NC41NzhjMC0xMjMuNzExIDk5Ljg2Ni0yMjQuMDk4IDIyMy4zOC0yMjQuOTR6bTEuNjQ0IDMzOC40MjJjNjIuNjMgMCAxMTMuNDAzLTUwLjc3MiAxMTMuNDAzLTExMy40MDMgMC02Mi42MzEtNTAuNzcyLTExMy40MDMtMTEzLjQwMy0xMTMuNDAzLTYyLjYzMSAwLTExMy40MDQgNTAuNzcyLTExMy40MDQgMTEzLjQwMyAwIDYyLjYzIDUwLjc3MyAxMTMuNDAzIDExMy40MDQgMTEzLjQwM3pNNTExLjg0NSA1MjEuMWM3My4wMzQgMCAxMzIuMjQtNTkuMjA2IDEzMi4yNC0xMzIuMjQgMC03My4wMzMtNTkuMjA2LTEzMi4yMzktMTMyLjI0LTEzMi4yMzlzLTEzMi4yNCA1OS4yMDYtMTMyLjI0IDEzMi4yNGMwIDczLjAzMyA1OS4yMDYgMTMyLjIzOSAxMzIuMjQgMTMyLjIzOXoiIGZpbGw9IiMwNkE3RkYiLz48cGF0aCBkPSJNNjQzLjM1MSA0MDIuODY4YTU2Ljk2NiA1Ni45NjYgMCAwIDEtLjM1Mi02LjMzNGMwLTMxLjEyMyAyNS4yMy01Ni4zNTMgNTYuMzUzLTU2LjM1M3M1Ni4zNTMgMjUuMjMgNTYuMzUzIDU2LjM1M2MwIDIuMzktLjE1IDQuNzQ1LS40MzggNy4wNTctNy42MTYgMTI3LjgyLTExMy42ODggMjI5LjEyOC0yNDMuNDIyIDIyOS4xMjgtMTI5LjczNCAwLTIzNS44MDYtMTAxLjMwNy0yNDMuNDIyLTIyOS4xMjhhNTYuOTA4IDU2LjkwOCAwIDAgMS0uNDM4LTcuMDU3YzAtMzEuMTIzIDI1LjIzLTU2LjM1MyA1Ni4zNTMtNTYuMzUzczU2LjM1MyAyNS4yMyA1Ni4zNTMgNTYuMzUzYzAgMi4xNDEtLjEyIDQuMjU1LS4zNTIgNi4zMzQgNi45OTYgNjYuNDQ4IDYzLjIwNCAxMTguMjMgMTMxLjUwNiAxMTguMjMgNjguMzAyIDAgMTI0LjUxLTUxLjc4MiAxMzEuNTA2LTExOC4yM3oiIGZpbGw9IiNGRjQzNkEiLz48L3N2Zz4=)}mew-cloud .mew-cloud-logo.type-wy{background-image:url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjxwYXRoIGQ9Ik04ODAuMyA2MzEuOWMtMy40IDAtNi45LS42LTEwLjItMS44LTE2LjEtNS43LTI0LjUtMjMuMy0xOC45LTM5LjQgNi40LTE4LjEgOS42LTM3LjEgOS42LTU2LjUgMC05My4zLTc1LjktMTY5LjItMTY5LjEtMTY5LjItNzcuNiAwLTE0NS4xIDUyLjQtMTY0IDEyNy41LTQuMiAxNi41LTIwLjggMjYuNi0zNy41IDIyLjQtMTYuNS00LjItMjYuNS0yMS0yMi40LTM3LjUgMjUuOS0xMDIuNSAxMTgtMTc0LjEgMjIzLjktMTc0LjEgMTI3LjMgMCAyMzAuOCAxMDMuNiAyMzAuOCAyMzAuOSAwIDI2LjQtNC40IDUyLjMtMTMuMSA3Ny00LjUgMTIuNy0xNi40IDIwLjctMjkuMSAyMC43eiIgZmlsbD0iIzA5RiIvPjxwYXRoIGQ9Ik00NDcuNCA3ODMuM0gzMzIuNmMtMTI3LjMgMC0yMzAuOS05Ny41LTIzMC45LTIxNy4zIDAtOTQuOSA2NS45LTE3OC4zIDE2MC0yMDYuOCAxMC4yLTExNy45IDEwOS41LTIxMC43IDIzMC0yMTAuNyAxMDcuMSAwIDIwMS44IDc1LjggMjI1LjMgMTgwLjEgMy43IDE2LjYtNi44IDMzLjEtMjMuNCAzNi45LTE2LjcgMy45LTMzLjItNi43LTM2LjktMjMuMy0xNy4xLTc2LjQtODYuNS0xMzEuOS0xNjUtMTMxLjktOTMuMyAwLTE2OS4yIDc1LjktMTY5LjIgMTY5LjEgMS43IDguMS4zIDE1LjQtNC40IDIyLjMtNC42IDYuOS0xMS43IDEwLjQtMTkuOSAxMi03OC4yIDE0LjgtMTM0LjkgNzguOS0xMzQuOSAxNTIuNCAwIDg1LjggNzUuOSAxNTUuNiAxNjkuMiAxNTUuNmgxMTQuOGMxNyAwIDMwLjkgMTMuOCAzMC45IDMwLjlzLTEzLjggMzAuNy0zMC44IDMwLjd6bTExMi43LTMxYy04LjIgMC0xNi4zLTMuMi0yMi40LTkuNi0xMS43LTEyLjQtMTEuMy0zMS45IDEuMS00My42bDEyNi43LTEyMC40YzExLjgtMTEuMyAzMC41LTExLjMgNDIuNSAwTDgzNC44IDY5OWMxMi40IDExLjcgMTIuOSAzMS4zIDEuMSA0My42LTExLjcgMTIuMy0zMS4zIDEyLjktNDMuNiAxLjFMNjg2LjggNjQzLjYgNTgxLjMgNzQzLjhjLTUuOSA1LjctMTMuNiA4LjUtMjEuMiA4LjV6IiBmaWxsPSIjMDlGIi8+PHBhdGggZD0iTTY4Ni44IDg3OWMtMTcgMC0zMC45LTEzLjgtMzAuOS0zMC45VjYwMWMwLTE3IDEzLjktMzAuOSAzMC45LTMwLjlzMzAuOSAxMy44IDMwLjkgMzAuOXYyNDcuMWMwIDE3LjEtMTMuOSAzMC45LTMwLjkgMzAuOXoiIGZpbGw9IiMwOUYiLz48L3N2Zz4=)}mew-cloud .mew-cloud-logo.type-ali{background-image:url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIyLjAzNSAxMy44MDZhLjUyNy41MjcgMCAwMS0uMzg0LS42MTdjMS4yMjctNS42MzItMi4yLTExLjMxLTcuODQ1LTEyLjgxN0M4LTEuMTc4IDIuMDA4IDIuMjYuNDM4IDguMDM5bC0uMDAyLjAxLS4wMDUuMDE2Yy0uOTU1IDMuNTgzLS4zMTUgNy4zMzggMS44MTMgMTAuNDRhMTIuNjU5IDEyLjY1OSAwIDAwNi4wODYgNC43MTNjNi44ODcgMi41MDggMTQuMzAzLTEuMjUgMTYuNDk1LTcuOTY4YS42NDMuNjQzIDAgMDAtLjQ0OC0uODE5bC0yLjM0My0uNjI1em0tMTEuNDQgNS40NTdBOC4xMjcgOC4xMjcgMCAwMTUuNjIgMTUuNDZhOC4wODMgOC4wODMgMCAwMS0uODItNi4xODdjLjkzNS0zLjQ0MSA0LjUwMi01LjQ5IDcuOTYtNC41NjYgMy4yODUuODc3IDUuMzA5IDQuMTIxIDQuNzIgNy4zOTdhLjYuNiAwIDAwLjQzNC42OWwyLjIwNi41ODljLjI4LjA3NS40MzcuMzcuMzQ0LjY0Mi0xLjM4IDQuMDI1LTUuNjkgNi4zNTYtOS44NyA1LjI0eiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjAiIHkxPSIwIiB4Mj0iMjYuMzY2IiB5Mj0iMjIuMjA4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzQ0NkRGRiIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzYzN0RGRiIgc3RvcC1vcGFjaXR5PSIuNzUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4=)}mew-cloud .mew-cloud-logo.type-github{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjUyMTY0NzM0OTg3IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQ2OTUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IGZlZWRiYWNrLWljb25mb250OyBzcmM6IHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUud29mZjI/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoIi8vYXQuYWxpY2RuLmNvbS90L2ZvbnRfMTAzMTE1OF91Njl3OHloeGR1LndvZmY/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmIiksIHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUudHRmP3Q9MTYzMDAzMzc1OTk0NCIpIGZvcm1hdCgidHJ1ZXR5cGUiKTsgfQo8L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyIDg1LjMzMzMzM0MyNzYuMjY2NjY3IDg1LjMzMzMzMyA4NS4zMzMzMzMgMjc2LjI2NjY2NyA4NS4zMzMzMzMgNTEyYTQyNi40MTA2NjcgNDI2LjQxMDY2NyAwIDAgMCAyOTEuNzU0NjY3IDQwNC44MjEzMzNjMjEuMzMzMzMzIDMuNzEyIDI5LjMxMi05LjA4OCAyOS4zMTItMjAuMzA5MzMzIDAtMTAuMTEyLTAuNTU0NjY3LTQzLjY5MDY2Ny0wLjU1NDY2Ny03OS40NDUzMzMtMTA3LjE3ODY2NyAxOS43NTQ2NjctMTM0LjkxMi0yNi4xMTItMTQzLjQ0NTMzMy01MC4xMzMzMzQtNC44MjEzMzMtMTIuMjg4LTI1LjYtNTAuMTMzMzMzLTQzLjczMzMzMy02MC4yODgtMTQuOTMzMzMzLTcuOTc4NjY3LTM2LjI2NjY2Ny0yNy43MzMzMzMtMC41NTQ2NjctMjguMjQ1MzMzIDMzLjYyMTMzMy0wLjU1NDY2NyA1Ny42IDMwLjkzMzMzMyA2NS42MjEzMzMgNDMuNzMzMzMzIDM4LjQgNjQuNTEyIDk5Ljc1NDY2NyA0Ni4zNzg2NjcgMTI0LjI0NTMzNCAzNS4yIDMuNzU0NjY3LTI3LjczMzMzMyAxNC45MzMzMzMtNDYuMzc4NjY3IDI3LjIyMTMzMy01Ny4wNDUzMzMtOTQuOTMzMzMzLTEwLjY2NjY2Ny0xOTQuMTMzMzMzLTQ3LjQ4OC0xOTQuMTMzMzMzLTIxMC42ODggMC00Ni40MjEzMzMgMTYuNTEyLTg0Ljc3ODY2NyA0My43MzMzMzMtMTE0LjY4OC00LjI2NjY2Ny0xMC42NjY2NjctMTkuMi01NC40IDQuMjY2NjY3LTExMy4wNjY2NjcgMCAwIDM1LjcxMi0xMS4xNzg2NjcgMTE3LjMzMzMzMyA0My43NzZhMzk1Ljk0NjY2NyAzOTUuOTQ2NjY3IDAgMCAxIDEwNi42NjY2NjctMTQuNDIxMzMzYzM2LjI2NjY2NyAwIDcyLjUzMzMzMyA0Ljc3ODY2NyAxMDYuNjY2NjY2IDE0LjM3ODY2NyA4MS41Nzg2NjctNTUuNDY2NjY3IDExNy4zMzMzMzMtNDMuNjkwNjY3IDExNy4zMzMzMzQtNDMuNjkwNjY3IDIzLjQ2NjY2NyA1OC42NjY2NjcgOC41MzMzMzMgMTAyLjQgNC4yNjY2NjYgMTEzLjA2NjY2NyAyNy4xNzg2NjcgMjkuODY2NjY3IDQzLjczMzMzMyA2Ny43MTIgNDMuNzMzMzM0IDExNC42NDUzMzMgMCAxNjMuNzU0NjY3LTk5LjcxMiAyMDAuMDIxMzMzLTE5NC42NDUzMzQgMjEwLjY4OCAxNS40NDUzMzMgMTMuMzEyIDI4LjggMzguOTEyIDI4LjggNzguOTMzMzMzIDAgNTcuMDQ1MzMzLTAuNTU0NjY3IDEwMi45MTItMC41NTQ2NjYgMTE3LjMzMzMzNCAwIDExLjE3ODY2NyA4LjAyMTMzMyAyNC40OTA2NjcgMjkuMzU0NjY2IDIwLjIyNEE0MjcuMzQ5MzMzIDQyNy4zNDkzMzMgMCAwIDAgOTM4LjY2NjY2NyA1MTJjMC0yMzUuNzMzMzMzLTE5MC45MzMzMzMtNDI2LjY2NjY2Ny00MjYuNjY2NjY3LTQyNi42NjY2Njd6IiBmaWxsPSIjMDAwMDAwIiBwLWlkPSI0Njk2Ij48L3BhdGg+PC9zdmc+)}mew-cloud .mew-cloud-logo.type-gitee{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjUyMTY1NjgxOTQ2IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQ4NjYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IGZlZWRiYWNrLWljb25mb250OyBzcmM6IHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUud29mZjI/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoIi8vYXQuYWxpY2RuLmNvbS90L2ZvbnRfMTAzMTE1OF91Njl3OHloeGR1LndvZmY/dD0xNjMwMDMzNzU5OTQ0IikgZm9ybWF0KCJ3b2ZmIiksIHVybCgiLy9hdC5hbGljZG4uY29tL3QvZm9udF8xMDMxMTU4X3U2OXc4eWh4ZHUudHRmP3Q9MTYzMDAzMzc1OTk0NCIpIGZvcm1hdCgidHJ1ZXR5cGUiKTsgfQo8L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTEyIDEwMjRDMjI5LjIyMiAxMDI0IDAgNzk0Ljc3OCAwIDUxMlMyMjkuMjIyIDAgNTEyIDBzNTEyIDIyOS4yMjIgNTEyIDUxMi0yMjkuMjIyIDUxMi01MTIgNTEyeiBtMjU5LjE0OS01NjguODgzaC0yOTAuNzRhMjUuMjkzIDI1LjI5MyAwIDAgMC0yNS4yOTIgMjUuMjkzbC0wLjAyNiA2My4yMDZjMCAxMy45NTIgMTEuMzE1IDI1LjI5MyAyNS4yNjcgMjUuMjkzaDE3Ny4wMjRjMTMuOTc4IDAgMjUuMjkzIDExLjMxNSAyNS4yOTMgMjUuMjY3djEyLjY0NmE3NS44NTMgNzUuODUzIDAgMCAxLTc1Ljg1MyA3NS44NTNoLTI0MC4yM2EyNS4yOTMgMjUuMjkzIDAgMCAxLTI1LjI2Ny0yNS4yOTNWNDE3LjIwM2E3NS44NTMgNzUuODUzIDAgMCAxIDc1LjgyNy03NS44NTNoMzUzLjk0NmEyNS4yOTMgMjUuMjkzIDAgMCAwIDI1LjI2Ny0yNS4yOTJsMC4wNzctNjMuMjA3YTI1LjI5MyAyNS4yOTMgMCAwIDAtMjUuMjY4LTI1LjI5M0g0MTcuMTUyYTE4OS42MiAxODkuNjIgMCAwIDAtMTg5LjYyIDE4OS42NDVWNzcxLjE1YzAgMTMuOTc3IDExLjMxNiAyNS4yOTMgMjUuMjk0IDI1LjI5M2gzNzIuOTRhMTcwLjY1IDE3MC42NSAwIDAgMCAxNzAuNjUtMTcwLjY1VjQ4MC4zODRhMjUuMjkzIDI1LjI5MyAwIDAgMC0yNS4yOTMtMjUuMjY3eiIgZmlsbD0iI0M3MUQyMyIgcC1pZD0iNDg2NyI+PC9wYXRoPjwvc3ZnPg==)}mew-cloud .mew-cloud-logo.type-lz{background-image:url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjxwYXRoIGQ9Ik02NzguNjQgNTE0LjAwN2ExNjguNDQ4IDE2OC40NDggMCAxIDAtMTY4LjQ0NyAxNjcuNzA2QTE2OC4wNyAxNjguMDcgMCAwIDAgNjc4LjY0IDUxNC4wMDd6IiBmaWxsPSIjRjRDQTFDIi8+PHBhdGggZD0iTTk4My4wNCA2MDMuNDEyYTI0Mi40ODggMjQyLjQ4OCAwIDAgMC0yODAuMzkyLTIzOC40MDdBMjUzLjMyMiAyNTMuMzIyIDAgMCAwIDI1Ni4yMiAyODcuMThhMjQ5LjEzNCAyNDkuMTM0IDAgMCAwLTQ4Ljk1NyAxNTMuMzg1QTIwMy4zOTcgMjAzLjM5NyAwIDAgMCAyNDAuMTg5IDg0NC44aDUyNy43NzVhMzEuOTkgMzEuOTkgMCAwIDAgMTQuNzUtMy43MTcgMjQyLjAzOCAyNDIuMDM4IDAgMCAwIDIwMC4zMjYtMjM3LjY3ek03NDAuNjA4IDc4MC43MTNIMjQwLjE4OWExMzkuMzg3IDEzOS4zODcgMCAxIDEgMC0yNzguNzY5IDMxLjk3IDMxLjk3IDAgMCAwIDguNzA0LTEuMzQxIDMxLjk2NCAzMS45NjQgMCAwIDAgMjQuODQ4LTM1Ljk5OSAxODcuODEyIDE4Ny44MTIgMCAwIDEgMTU3Ljc0Mi0yMTQuMDE2IDE4OC40NjIgMTg4LjQ2MiAwIDAgMSAyMDkuNTQxIDEzMi44MzkgMjQxLjYyOCAyNDEuNjI4IDAgMCAwLTE0Mi44NDggMjE5Ljk4NSAzMi4xOCAzMi4xOCAwIDAgMCA2NC4zNTggMCAxNzguMDY4IDE3OC4wNjggMCAxIDEgMTc4LjA3NCAxNzcuMzAxeiIgZmlsbD0iIzU5NUJCMyIvPjwvc3ZnPg==)}mew-cloud .mew-cloud-desc{line-height:normal;-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden}mew-cloud .mew-cloud-desc-title{color:var(--theme);margin-bottom:3px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}mew-cloud .mew-cloud-desc-type{font-size:.8em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}mew-cloud .mew-cloud-link{-ms-flex-negative:0;flex-shrink:0;margin-left:auto;background:var(--theme);color:#fff;width:2em;height:2em;line-height:2em;border-radius:50%;text-align:center}mew-cloud,mew-progress{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}mew-progress .mew-progress-bar{height:10px;border-radius:5px;overflow:hidden;background:var(--light-b);width:0;min-width:0;-webkit-box-flex:1;-ms-flex:1;flex:1;margin-right:5px}mew-progress .mew-progress-bar-inner{height:100%;overflow:hidden;border-radius:5px}mew-progress .mew-progress-bar-inner:before{content:'';display:block;height:100%;background-size:30px 30px;-webkit-animation:progress 750ms linear infinite;animation:progress 750ms linear infinite;background-image:linear-gradient(135deg,rgba(255,255,255,.4) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.4) 50%,rgba(255,255,255,.4) 75%,transparent 75%,transparent 100%)}mew-progress .mew-progress-value{width:38px;color:var(--main)}mew-cloud,mew-panel{overflow:hidden;border-radius:var(--radius-inner)}mew-panel .mew-panel-title{color:#fff;padding:6px 12px;font-weight:400}mew-panel .mew-panel-body{background:rgba(255,255,255,.88);padding:12px 18px;position:relative}mew-message,mew-panel,mew-timeline{display:block;margin-bottom:14px}mew-message{padding:10px;border-radius:var(--radius-inner)}mew-message::before{font:1.1em/1 remixicon;margin-right:8px}mew-message[type=error]{color:#f46c6b;background-color:rgba(255,228,226,.9)}mew-message[type=error]::before{content:'\eb97'}mew-message[type=warning]{color:#fec008;background-color:rgba(255,243,215,.9)}mew-message[type=warning]::before{content:'\eca1'}mew-message[type=info]{color:#1b72f3;background-color:rgba(232,240,255,.9)}mew-message[type=info]::before{content:'\ee59'}mew-message[type=success]{color:#2bde3f;background-color:rgba(225,255,228,.9)}mew-message[type=success]::before{content:'\eb81'}mew-hr{height:4px;background-size:50px 4px;margin:14px 0}mew-timeline{border-left:1px solid var(--light-b)}mew-timeline>div{position:relative;padding-left:1.2em}mew-timeline>div::before{content:'';position:absolute;border-radius:50%;top:.1em}mew-timeline>div+.mew-timeline-title{margin-top:16px}mew-timeline .mew-timeline-title{color:var(--dark-c);font-weight:500;padding-bottom:5px}mew-timeline .mew-timeline-title::before{background-color:#50bfff;-webkit-box-shadow:0 0 0 .4em rgba(80,191,255,.25);box-shadow:0 0 0 .4em rgba(80,191,255,.25);left:-.32em;height:.6em;width:.6em}mew-timeline .mew-timeline-title-elem{position:relative;top:-.4em}mew-timeline .mew-timeline-item{font-size:.95em}mew-timeline .mew-timeline-item::before{background-color:var(--light-a);border:2px solid #50bfff;left:-5px;height:5px;width:5px}mew-timeline .mew-timeline-item:not(:last-child){padding-bottom:16px}mew-timeline .mew-timeline-item-title{display:block;line-height:1em;margin-bottom:2px;font-weight:400;position:relative;top:-.1em}mew-timeline .mew-timeline-item-content{padding:8px 12px;overflow:hidden;border-radius:0 6px 6px 6px;background-color:var(--bg-a);position:relative}mew-timeline .mew-timeline-item-content *{margin:0!important}mew-timeline .info.mew-timeline-title{color:#1b72f3}mew-timeline .info.mew-timeline-title::before{background-color:#73a3eb;-webkit-box-shadow:0 0 0 .4em rgba(115,163,235,.25);box-shadow:0 0 0 .4em rgba(115,163,235,.25)}mew-timeline .info.mew-timeline-item::before{border-color:#73a3eb}mew-timeline .info .mew-timeline-item-content{color:#1b72f3;background-color:#ecf3ff}mew-timeline .warning.mew-timeline-title{color:#fec008}mew-timeline .warning.mew-timeline-title::before{background-color:#ffd350;-webkit-box-shadow:0 0 0 .4em rgba(255,211,80,.25);box-shadow:0 0 0 .4em rgba(255,211,80,.25)}mew-timeline .warning.mew-timeline-item::before{border-color:#ffd350}mew-timeline .warning .mew-timeline-item-content{color:#fec008;background-color:#fdf6e6}mew-timeline .success.mew-timeline-title{color:#2bde3f}mew-timeline .success.mew-timeline-title::before{background-color:#6de37a;-webkit-box-shadow:0 0 0 .4em rgba(109,227,122,.25);box-shadow:0 0 0 .4em rgba(109,227,122,.25)}mew-timeline .success.mew-timeline-item::before{border-color:#6de37a}mew-timeline .success .mew-timeline-item-content{color:#2bde3f;background-color:#e9fbeb}mew-timeline .error.mew-timeline-title{color:#f46c6b}mew-timeline .error.mew-timeline-title::before{background-color:#ff7776;-webkit-box-shadow:0 0 0 .4em rgba(255,119,118,.25);box-shadow:0 0 0 .4em rgba(255,119,118,.25)}mew-timeline .error.mew-timeline-item::before{border-color:#ff7776}mew-timeline .error .mew-timeline-item-content{color:#f46c6b;background-color:#ffeeed}mew-btn,mew-btn>.mew-btn{display:inline-block}mew-btn>.mew-btn{color:#fff;line-height:1em;padding:.5em 12px;font-weight:400;background:var(--theme);border-radius:var(--radius-inner)}mew-btn>.mew-btn:hover{color:#fff;-webkit-filter:opacity(.8);filter:opacity(.8);-webkit-box-shadow:0 4px 15px -4px rgba(41,45,52,.3);box-shadow:0 4px 15px -4px rgba(41,45,52,.3)}mew-btn>.mew-btn>i{margin-right:6px}mew-quote{margin:0 18px 14px}mew-quote,mew-quote .mew-quote,mew-quote .quote-container{display:-webkit-box;display:-ms-flexbox;display:flex}mew-quote .mew-quote{margin:0 auto;padding:10px}mew-quote .mew-quote:after,mew-quote .mew-quote:before{color:var(--theme);font-size:2.8em;font-family:fantasy;line-height:1}mew-quote .mew-quote:before{content:'“';margin-right:14px;margin-top:-10px}mew-quote .mew-quote:after{content:'”';-ms-flex-item-align:end;align-self:flex-end;margin-left:14px;margin-bottom:calc(-.5em - 10px)}mew-quote .quote-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}mew-quote .mew-quote-href{padding:4px;display:inline-block;background:var(--bg-a);-webkit-transition:-webkit-transform 2s;transition:transform 2s;transition:transform 2s,-webkit-transform 2s;margin-right:8px;-ms-flex-negative:0;flex-shrink:0}mew-quote .mew-quote-href:hover{-webkit-transform:rotate(360deg);transform:rotate(360deg)}mew-quote .mew-quote-href,mew-quote .mew-quote-href .quote-avatar-hexagon{-webkit-clip-path:polygon(40% 7.67949%,43.1596% 6.20615%,46.52704% 5.30384%,50% 5%,53.47296% 5.30384%,56.8404% 6.20615%,60% 7.67949%,81.65064% 20.17949%,84.50639% 22.17911%,86.97152% 24.64425%,88.97114% 27.5%,90.44449% 30.6596%,91.34679% 34.02704%,91.65064% 37.5%,91.65064% 62.5%,91.34679% 65.97296%,90.44449% 69.3404%,88.97114% 72.5%,86.97152% 75.35575%,84.50639% 77.82089%,81.65064% 79.82051%,60% 92.32051%,56.8404% 93.79385%,53.47296% 94.69616%,50% 95%,46.52704% 94.69616%,43.1596% 93.79385%,40% 92.32051%,18.34936% 79.82051%,15.49361% 77.82089%,13.02848% 75.35575%,11.02886% 72.5%,9.55551% 69.3404%,8.65321% 65.97296%,8.34936% 62.5%,8.34936% 37.5%,8.65321% 34.02704%,9.55551% 30.6596%,11.02886% 27.5%,13.02848% 24.64425%,15.49361% 22.17911%,18.34936% 20.17949%);clip-path:polygon(40% 7.67949%,43.1596% 6.20615%,46.52704% 5.30384%,50% 5%,53.47296% 5.30384%,56.8404% 6.20615%,60% 7.67949%,81.65064% 20.17949%,84.50639% 22.17911%,86.97152% 24.64425%,88.97114% 27.5%,90.44449% 30.6596%,91.34679% 34.02704%,91.65064% 37.5%,91.65064% 62.5%,91.34679% 65.97296%,90.44449% 69.3404%,88.97114% 72.5%,86.97152% 75.35575%,84.50639% 77.82089%,81.65064% 79.82051%,60% 92.32051%,56.8404% 93.79385%,53.47296% 94.69616%,50% 95%,46.52704% 94.69616%,43.1596% 93.79385%,40% 92.32051%,18.34936% 79.82051%,15.49361% 77.82089%,13.02848% 75.35575%,11.02886% 72.5%,9.55551% 69.3404%,8.65321% 65.97296%,8.34936% 62.5%,8.34936% 37.5%,8.65321% 34.02704%,9.55551% 30.6596%,11.02886% 27.5%,13.02848% 24.64425%,15.49361% 22.17911%,18.34936% 20.17949%)}mew-quote .mew-quote-info{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}mew-quote .mew-quote-content{margin-bottom:8px;line-height:1.5em}mew-quote .mew-quote-name{color:var(--dark-c);-ms-flex-item-align:self-end;align-self:self-end;font-size:.9em;font-style:italic;font-weight:400}mew-quote .mew-quote-name:before{content:'';width:2.8em;height:1px;background:var(--dark-c);margin-right:4px;display:inline-block;margin-bottom:.3em}mew-quote .quote-avatar-hexagon{height:5em;width:5em;-o-object-fit:cover;object-fit:cover}mew-link .mew-link,mew-link .mew-link-info{display:-webkit-box;display:-ms-flexbox;display:flex}mew-link .mew-link{margin:auto;max-width:420px;background:var(--bg-l);padding:12px 12px 9px;border-radius:8px;overflow:hidden}mew-link .mew-link-info{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}mew-link .info-desc,mew-link .info-title{line-height:1.3em;display:-webkit-box;text-overflow:ellipsis;overflow:hidden;-webkit-box-orient:vertical}mew-link .info-title{margin-bottom:6px;color:var(--dark-c);-webkit-line-clamp:2}mew-link .info-desc{font-size:.9em;height:1.3em;color:var(--dark-d);word-break:break-all;-webkit-line-clamp:1}mew-link .info-desc:before{content:'\eeb8';font-family:'remixicon';margin-right:4px}mew-link .mew-link-image{background-color:var(--bg-l);position:relative;display:block;width:60px;height:60px;margin-left:16px;border-radius:4px;overflow:hidden;-ms-flex-negative:0;flex-shrink:0}mew-link .link-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}mew-video{display:block;text-align:center}mew-video video{max-width:100%;border-radius:var(--radius-inner)}mew-photos{width:100%;position:relative;overflow:hidden}mew-photos>div,mew-photos>div>img{position:absolute;margin:0;padding:0}mew-photos>div{display:inline-block;overflow:hidden;opacity:.1;border-radius:8px;cursor:pointer}mew-photos>div>img{-webkit-transition:opacity 500ms ease-in;transition:opacity 500ms ease-in;top:50%;left:50%;border:0;opacity:0}mew-photos>div>.jg-caption{opacity:0;position:absolute;bottom:0;padding:5px;background-color:#000;left:0;right:0;margin:0;color:#fff;font-size:.85em;font-weight:300;font-family:sans-serif;-webkit-transition:opacity 300ms ease-in;transition:opacity 300ms ease-in}mew-photos>div>.jg-caption.jg-caption-visible{opacity:.7}mew-photos>.jg-entry-visible{opacity:1;background:0 0}mew-photos>.jg-entry-visible>img{opacity:1}mew-photos,mew-raw{display:block;margin-bottom:14px}mew-btn:not([draw]),mew-hide:not([draw]),mew-link:not([draw]),mew-photos:not([draw]),mew-quote:not([draw]),mew-raw:not([draw]),mew-timeline:not([draw]){display:none}mew-bilibili:not([draw]),mew-cloud:not([draw]),mew-panel:not([draw]),mew-tabs:not([draw]),mew-video:not([draw]){display:block;overflow:hidden;position:relative;height:2.4em;border:1px solid var(--light-b);border-radius:var(--radius-inner);-webkit-box-shadow:1px 1px 5px 0 var(--bg-b);box-shadow:1px 1px 5px 0 var(--bg-b)}mew-bilibili:not([draw]):before,mew-cloud:not([draw]):before,mew-panel:not([draw]):before,mew-tabs:not([draw]):before,mew-video:not([draw]):before{content:'加载中...';position:absolute;top:0;bottom:0;left:0;right:0;line-height:2.4em;text-align:left;padding-left:12px;background:var(--light-a)}html.night .mew-cloud-link,html.night .mew-cloud-logo,html.night .mew-progress-bar-inner,html.night mew-btn,html.night mew-hr,html.night mew-message,html.night mew-panel,html.night mew-timeline{-webkit-filter:brightness(.8);filter:brightness(.8)}@media (max-width:1023px){mew-quote .quote-avatar-hexagon{height:3.6em;width:3.6em;-o-object-fit:cover;object-fit:cover}}@media (max-width:511px){mew-quote{margin:0}mew-quote .quote-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}mew-quote .mew-quote-avatar{text-align:center}mew-quote .quote-avatar-hexagon{height:3.2em;width:3.2em}mew-bilibili{padding:calc(30%) 0!important}mew-bilibili iframe,mew-video video{width:100%!important}} \ No newline at end of file diff --git a/templates/assets/css/post.min.css b/templates/assets/css/post.min.css index 5dba551..5ba1a56 100644 --- a/templates/assets/css/post.min.css +++ b/templates/assets/css/post.min.css @@ -1,702 +1 @@ -@charset "utf-8"; -/* CSS Document */ -.admire { - margin: 30px 0 18px 0; - text-align: center; -} -.admire-content { - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - margin-bottom: 15px; -} -.admire-content button { - border-radius: 50px; - padding: 8px 18px; - border: none; - color: var(--light-a); - -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); - box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); -} -.admire-content button i { - margin-right: 5px; -} -.admire-content .donate { - background: #c0a46b; - -webkit-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; - position: relative; - margin-right: 10px; -} -.admire-content .donate-list { - display: block !important; - position: absolute; - bottom: 40px; - right: 50%; - border-radius: 5px; - background: var(--background); - -webkit-box-shadow: var(--box-shadow); - box-shadow: var(--box-shadow); - padding: 12px; - -webkit-transition: all 0.5s; - transition: all 0.5s; - pointer-events: none; - opacity: 0; -} -.admire-content .donate-list ol { - border-radius: 5px; - overflow: hidden; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.admire-content .donate-list ol li { - margin-right: 10px; -} -.admire-content .donate-list ol li:last-child { - margin-right: 0; -} -.admire-content .donate-list ol img { - max-width: 200px; - max-height: 260px; - -o-object-fit: cover; - object-fit: cover; -} -.admire-content .donate-list .qr-code { - border: 1px solid var(--theme); - border-radius: 10px; - width: 150px; - height: 150px; - position: relative; - overflow: hidden; -} -.admire-content .donate-list .qr-code img { - position: absolute; - top: 50%; - left: 50%; - display: block; - width: 100%; - height: 100%; - -webkit-transform: translate(-50%, -50%); - transform: translate(-50%, -50%); -} -.admire-content .donate-list .qr-type { - margin-top: 10px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.admire-content .donate-list .qr-type svg { - width: 1.6rem; - height: 1.6rem; - margin-right: 5px; -} -.admire-content .donate-list .qr-type span { - font-weight: bold; - font-size: 1.05rem; - color: var(--main); -} -.admire-content .donate:hover i { - -webkit-animation: dong ease 0.5s 0.2s infinite alternate; - animation: dong ease 0.5s 0.2s infinite alternate; -} -.admire-content .donate:hover .donate-list { - -webkit-transform: translateX(50%); - transform: translateX(50%); - pointer-events: unset; - opacity: 1; -} -.admire-content .agree { - background: #cf4750; -} -.admire-content .agree i { - font-size: 1.2em; -} -.admire-content .agree span > span { - margin-left: 3px; -} -.admire-content .agree.like { - background: var(--background); - color: var(--dark-e); -} -.admire-content .agree.like:hover i { - -webkit-animation: shake-little ease-in-out 4s infinite; - animation: shake-little ease-in-out 4s infinite; -} -.admire-content .agree:not(.like) i:before { - content: '\f206'; -} -.admire > span { - color: var(--dark-d); - font-size: 0.9em; -} -.article-operation { - margin: 18px 0; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.article-operation .level-item { - -ms-flex-negative: 1 !important; - flex-shrink: 1 !important; - -webkit-box-pack: left !important; - -ms-flex-pack: left !important; - justify-content: left !important; - overflow-x: auto; -} -.article-operation .level-item::-webkit-scrollbar { - display: none; -} -.article-operation a { - color: var(--dark-b); - font-size: 0.9em; - background: var(--bg-b); - border: 1px solid var(--bg-b); - position: relative; - padding: 0 8px 0 29px; - height: 26px; - line-height: 24px; - border-radius: 13px; - max-width: 125px; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - margin-right: 10px; - -ms-flex-negative: 0; - flex-shrink: 0; -} -.article-operation a:before { - content: ""; - position: absolute; - top: 0; - left: 0; - width: 24px; - height: 24px; - background: var(--background); - border-radius: 50%; -} -.article-operation a:after { - content: '\eae5'; - position: absolute; - font-family: 'remixicon'; - top: 50%; - left: 12px; - font-size: 1.2em; - color: var(--theme); - -webkit-transform: translate(-50%, -50%); - transform: translate(-50%, -50%); -} -.article-operation a:hover { - color: var(--main); - border: 1px solid var(--light-b); -} -.copyright { - margin: 18px 0; - position: relative; - background: var(--bg-h); - overflow: hidden; - border-radius: 6px; - display: block; - padding: 17px; -} -.copyright:after { - position: absolute; - right: -70px; - top: -70px; - content: '\ebf4'; - font-size: 240px; - font-family: 'remixicon'; - color: var(--theme); - opacity: 0.1; -} -.copyright .copyright-title { - line-height: 1.2; - margin-bottom: 14px; -} -.copyright .copyright-title *:not(:last-child) { - margin-bottom: 0.25em; -} -.copyright .copyright-title a { - font-size: 0.85em; - color: var(--dark-d); -} -.copyright .copyright-meta { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: start; - -ms-flex-pack: start; - justify-content: flex-start; - -ms-flex-wrap: wrap; - flex-wrap: wrap; -} -.copyright .copyright-meta .icon { - width: 1.2em; - height: 1.2em; -} -.copyright .copyright-meta .level-item { - margin-right: 1.4em !important; - display: block; -} -.copyright .copyright-meta .level-item h6 { - margin: 0; -} -.copyright .copyright-meta .level-item p, -.copyright .copyright-meta .level-item a { - color: var(--dark-e); -} -@media (max-width: 520px) { - .admire .donate-list ol { - -ms-flex-wrap: wrap; - flex-wrap: wrap; - } - .admire .donate-list ol li { - margin-bottom: 10px; - margin-right: 0; - } - .admire .donate-list ol li:last-child { - margin-bottom: 0; - } - .admire .donate-list ol img { - width: 200px; - } -} -@-webkit-keyframes dong { - 0% { - -webkit-transform: translateY(3px) scaleY(0.95); - transform: translateY(3px) scaleY(0.95); - } - 100% { - -webkit-transform: translateY(-3px) scaleY(1); - transform: translateY(-3px) scaleY(1); - } -} -@keyframes dong { - 0% { - -webkit-transform: translateY(3px) scaleY(0.95); - transform: translateY(3px) scaleY(0.95); - } - 100% { - -webkit-transform: translateY(-3px) scaleY(1); - transform: translateY(-3px) scaleY(1); - } -} -@-webkit-keyframes shake-little { - 0% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 2% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 4% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 6% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 8% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 10% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 12% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 14% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 16% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 18% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 20% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 22% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 24% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 26% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 28% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 30% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 32% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 34% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 36% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 38% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 40% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 42% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 44% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 46% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 48% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 50% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 52% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 54% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 56% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 58% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 60% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 62% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 64% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 66% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 68% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 70% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 72% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 74% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 76% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 78% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 80% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 82% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 84% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 86% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 88% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 90% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 92% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 94% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 96% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 98% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 100% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } -} -@keyframes shake-little { - 0% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 2% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 4% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 6% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 8% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 10% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 12% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 14% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 16% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 18% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 20% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 22% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 24% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 26% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 28% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 30% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 32% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 34% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 36% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 38% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 40% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 42% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 44% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 46% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 48% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 50% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 52% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 54% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 56% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 58% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 60% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 62% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 64% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 66% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 68% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 70% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 72% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 74% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 76% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 78% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 80% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 82% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 84% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 86% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 88% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } - 90% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 92% { - -webkit-transform: translate(1px, 1px); - transform: translate(1px, 1px); - } - 94% { - -webkit-transform: translate(1px, -1px); - transform: translate(1px, -1px); - } - 96% { - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - } - 98% { - -webkit-transform: translate(-1px, 1px); - transform: translate(-1px, 1px); - } - 100% { - -webkit-transform: translate(-1px, -1px); - transform: translate(-1px, -1px); - } -} +@charset "utf-8";@-webkit-keyframes dong{0%{-webkit-transform:translateY(3px) scaleY(.95);transform:translateY(3px) scaleY(.95)}to{-webkit-transform:translateY(-3px) scaleY(1);transform:translateY(-3px) scaleY(1)}}@keyframes dong{0%{-webkit-transform:translateY(3px) scaleY(.95);transform:translateY(3px) scaleY(.95)}to{-webkit-transform:translateY(-3px) scaleY(1);transform:translateY(-3px) scaleY(1)}}@-webkit-keyframes shake-little{0%,12%,18%,24%,30%,36%,42%,48%,54%,6%,60%,66%,72%,78%,84%,90%,96%{-webkit-transform:translate(0,0);transform:translate(0,0)}14%,2%,26%,38%,50%,62%,74%,86%,98%{-webkit-transform:translate(-1px,1px);transform:translate(-1px,1px)}16%,28%,4%,40%,52%,64%,76%,88%,to{-webkit-transform:translate(-1px,-1px);transform:translate(-1px,-1px)}20%,32%,44%,56%,68%,8%,80%,92%{-webkit-transform:translate(1px,1px);transform:translate(1px,1px)}10%,22%,34%,46%,58%,70%,82%,94%{-webkit-transform:translate(1px,-1px);transform:translate(1px,-1px)}}@keyframes shake-little{0%,12%,18%,24%,30%,36%,42%,48%,54%,6%,60%,66%,72%,78%,84%,90%,96%{-webkit-transform:translate(0,0);transform:translate(0,0)}14%,2%,26%,38%,50%,62%,74%,86%,98%{-webkit-transform:translate(-1px,1px);transform:translate(-1px,1px)}16%,28%,4%,40%,52%,64%,76%,88%,to{-webkit-transform:translate(-1px,-1px);transform:translate(-1px,-1px)}20%,32%,44%,56%,68%,8%,80%,92%{-webkit-transform:translate(1px,1px);transform:translate(1px,1px)}10%,22%,34%,46%,58%,70%,82%,94%{-webkit-transform:translate(1px,-1px);transform:translate(1px,-1px)}}.admire{margin:30px 0 18px;text-align:center}.admire-content{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;margin-bottom:15px}.admire-content button{border-radius:50px;padding:8px 18px;border:0;color:var(--light-a);-webkit-box-shadow:0 2px 10px rgba(0,0,0,.1);box-shadow:0 2px 10px rgba(0,0,0,.1)}.admire-content button i{margin-right:5px}.admire-content .donate{background:#c0a46b;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;position:relative;margin-right:10px}.admire-content .donate-list{display:block!important;position:absolute;bottom:40px;right:50%;border-radius:5px;background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);padding:12px;-webkit-transition:all .5s;transition:all .5s;pointer-events:none;opacity:0}.admire-content .donate-list ol{border-radius:5px;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex}.admire-content .donate-list ol li{margin-right:10px}.admire-content .donate-list ol li:last-child{margin-right:0}.admire-content .donate-list ol img{max-width:200px;max-height:260px;-o-object-fit:cover;object-fit:cover}.admire-content .donate-list .qr-code{border:1px solid var(--theme);border-radius:10px;width:150px;height:150px;position:relative;overflow:hidden}.admire-content .donate-list .qr-code img{position:absolute;top:50%;left:50%;display:block;width:100%;height:100%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.admire-content .donate-list .qr-type{margin-top:10px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.admire-content .donate-list .qr-type svg{width:1.6rem;height:1.6rem;margin-right:5px}.admire-content .donate-list .qr-type span{font-weight:700;font-size:1.05rem;color:var(--main)}.admire-content .donate:hover i{-webkit-animation:dong ease .5s .2s infinite alternate;animation:dong ease .5s .2s infinite alternate}.admire-content .donate:hover .donate-list{-webkit-transform:translateX(50%);transform:translateX(50%);pointer-events:unset;opacity:1}.admire-content .agree{background:#cf4750}.admire-content .agree i{font-size:1.2em}.admire-content .agree span>span{margin-left:3px}.admire-content .agree.like{background:var(--background);color:var(--dark-e)}.admire-content .agree.like:hover i{-webkit-animation:shake-little ease-in-out 4s infinite;animation:shake-little ease-in-out 4s infinite}.admire-content .agree:not(.like) i:before{content:'\f206'}.admire>span{color:var(--dark-d);font-size:.9em}.article-operation{margin:18px 0;display:-webkit-box;display:-ms-flexbox;display:flex}.article-operation .level-item{-ms-flex-negative:1!important;flex-shrink:1!important;-webkit-box-pack:left!important;-ms-flex-pack:left!important;justify-content:left!important;overflow-x:auto}.article-operation .level-item::-webkit-scrollbar{display:none}.article-operation a,.copyright{position:relative;overflow:hidden}.article-operation a{color:var(--dark-b);font-size:.9em;background:var(--bg-b);border:1px solid var(--bg-b);padding:0 8px 0 29px;height:26px;line-height:24px;border-radius:13px;max-width:125px;white-space:nowrap;text-overflow:ellipsis;margin-right:10px;-ms-flex-negative:0;flex-shrink:0}.article-operation a:before{content:"";position:absolute;top:0;left:0;width:24px;height:24px;background:var(--background);border-radius:50%}.article-operation a:after,.copyright:after{position:absolute;font-family:'remixicon';color:var(--theme)}.article-operation a:after{content:'\eae5';top:50%;left:12px;font-size:1.2em;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.article-operation a:hover{color:var(--main);border:1px solid var(--light-b)}.copyright{margin:18px 0;background:var(--bg-h);border-radius:6px;display:block;padding:17px}.copyright:after{right:-70px;top:-70px;content:'\ebf4';font-size:240px;opacity:.1}.copyright .copyright-title{line-height:1.2;margin-bottom:14px}.copyright .copyright-title :not(:last-child){margin-bottom:.25em}.copyright .copyright-title a{font-size:.85em;color:var(--dark-d)}.copyright .copyright-meta{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-wrap:wrap;flex-wrap:wrap}.copyright .copyright-meta .icon{width:1.2em;height:1.2em}.copyright .copyright-meta .level-item{margin-right:1.4em!important;display:block}.copyright .copyright-meta .level-item h6{margin:0}.copyright .copyright-meta .level-item a,.copyright .copyright-meta .level-item p{color:var(--dark-e)}@media (max-width:520px){.admire .donate-list ol{-ms-flex-wrap:wrap;flex-wrap:wrap}.admire .donate-list ol li{margin-bottom:10px;margin-right:0}.admire .donate-list ol li:last-child{margin-bottom:0}.admire .donate-list ol img{width:200px}} \ No newline at end of file diff --git a/templates/assets/css/security-link.min.css b/templates/assets/css/security-link.min.css index 14a00e2..1afa871 100644 --- a/templates/assets/css/security-link.min.css +++ b/templates/assets/css/security-link.min.css @@ -1,122 +1 @@ -@charset "utf-8"; -html { - background-color: var(--bg-f); - color: var(--main); - font-family: "Dream Font", serif; -} -html halo-contact-form-auto-loader, -html #live2d-plugin, -html #live2d-toggle { - display: none; -} -html body { - width: 100%; - height: 100%; - overflow: hidden; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - position: absolute; -} -@media (max-width: 767px) { - html body .content { - max-width: 90% !important; - min-width: auto !important; - } - html body .content .others-end { - -webkit-box-pack: center !important; - -ms-flex-pack: center !important; - justify-content: center !important; - } -} -html body .content { - max-width: 500px; - min-width: 360px; - margin-bottom: 10%; -} -html body .content-title { - padding: 24px; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; -} -html body .content-title img { - height: 3rem; - min-width: 3rem; - width: auto; -} -html body .content-title span { - font-size: 1.5rem; - margin-left: 10px; - font-weight: bold; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} -html body .content .others { - padding: 24px; - border-radius: 15px; - border: var(--theme) solid 1px; - background-color: var(--background); -} -html body .content .others-tip { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - padding: 20px; - background-color: var(--theme); - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - border-radius: 10px; -} -html body .content .others-tip img { - height: 2rem; - width: 2rem; -} -html body .content .others-tip span { - margin-left: 10px; - color: #fafafa; - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; - overflow: hidden; - text-overflow: ellipsis; -} -html body .content .others-topic { - margin-top: 20px; - word-break: break-all; -} -html body .content .others-topic span { - color: var(--theme); -} -html body .content .others-end { - -webkit-box-pack: end; - -ms-flex-pack: end; - justify-content: flex-end; - margin-top: 20px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -html body .content .others-end a { - border-radius: 2rem; - width: 4rem; - padding: 5px; - text-align: center; - color: var(--theme); - border: var(--theme) solid 1px; - text-decoration: none; -} +@charset "utf-8";html{background-color:var(--bg-f);color:var(--main);font-family:"Dream Font",serif}html #live2d-plugin,html #live2d-toggle,html halo-contact-form-auto-loader{display:none}html body{width:100%;height:100%;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute}@media (max-width:767px){html body .content{max-width:90%!important;min-width:auto!important}html body .content .others-end{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}}html body .content{max-width:500px;min-width:360px;margin-bottom:10%}html body .content-title{padding:24px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}html body .content-title img{height:3rem;min-width:3rem;width:auto}html body .content-title span{font-size:1.5rem;margin-left:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html body .content .others{padding:24px;border-radius:15px;border:var(--theme) solid 1px;background-color:var(--background)}html body .content .others-tip,html body .content-title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}html body .content .others-tip{padding:20px;background-color:var(--theme);border-radius:10px}html body .content .others-tip img{height:2rem;width:2rem}html body .content .others-tip span{margin-left:10px;color:#fafafa;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}html body .content .others-topic{margin-top:20px;word-break:break-all}html body .content .others-topic span{color:var(--theme)}html body .content .others-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-top:20px;display:-webkit-box;display:-ms-flexbox;display:flex}html body .content .others-end a{border-radius:2rem;width:4rem;padding:5px;text-align:center;color:var(--theme);border:var(--theme) solid 1px;text-decoration:none} \ No newline at end of file diff --git a/templates/assets/css/style.min.css b/templates/assets/css/style.min.css index b55ed53..2ece0d2 100644 --- a/templates/assets/css/style.min.css +++ b/templates/assets/css/style.min.css @@ -1,5030 +1 @@ -@charset "utf-8"; -/* CSS Document */ -* { - margin: 0; - padding: 0; - -webkit-box-sizing: border-box; - box-sizing: border-box; - outline: 0; - -webkit-tap-highlight-color: transparent; -} -.comment-wrapper-z-index { - z-index: 99; - position: relative; -} -lit-toast-container, -halo-contact-form-toast-container { - z-index: 100; -} -.gray-mode { - -webkit-filter: grayscale(1) !important; - filter: grayscale(1) !important; -} -body > .footer, -body > .navbar, -body > .section { - opacity: 0; - -webkit-transition: opacity 0.3s ease-out, -webkit-transform 0.3s ease-out; - transition: opacity 0.3s ease-out, -webkit-transform 0.3s ease-out; - transition: opacity 0.3s ease-out, transform 0.3s ease-out; - transition: opacity 0.3s ease-out, transform 0.3s ease-out, -webkit-transform 0.3s ease-out; -} -.navbar-above { - -webkit-transform: translateY(-100%); - transform: translateY(-100%); -} -.load-block { - -webkit-transition: opacity 0.3s ease-out, -webkit-transform 0.3s ease-out; - transition: opacity 0.3s ease-out, -webkit-transform 0.3s ease-out; - transition: opacity 0.3s ease-out, transform 0.3s ease-out; - transition: opacity 0.3s ease-out, transform 0.3s ease-out, -webkit-transform 0.3s ease-out; -} -.card, -.load-block { - opacity: 0; - -webkit-transform: scale(0.8); - transform: scale(0.8); - -webkit-transform-origin: center top; - transform-origin: center top; -} -.tips { - margin-bottom: -0.6rem; - background-color: rgba(221, 234, 255, 0.9) !important; - padding: 0.8rem; - border: none !important; - color: var(--theme) !important; - font-size: 1.15em; -} -.tips::before { - content: "\f2a2"; - font: normal normal normal 14px/1 remixicon; - margin-right: 0.5rem; - font-size: 1.2em; -} -.tips .click-close { - margin-left: 5px; - cursor: pointer; - font-size: 18px; - line-height: 1.2em; - float: right; -} -.tips .click-close:hover { - color: #333; -} -html { - -webkit-box-sizing: border-box; - box-sizing: border-box; - font-size: 14px; - background-color: var(--bg-f); - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - min-width: 300px; - text-rendering: optimizeLegibility; - -webkit-text-size-adjust: 100%; - -moz-text-size-adjust: 100%; - -ms-text-size-adjust: 100%; - text-size-adjust: 100%; -} -html.loaded body > .footer, -html.loaded body > .navbar, -html.loaded body > .section { - opacity: 1; -} -html.loaded .navbar-above { - -webkit-transform: translateY(0); - transform: translateY(0); - z-index: 100; -} -html.loaded .card, -html.loaded .load-block { - opacity: 1; - -webkit-transform: none; - transform: none; -} -html.pjax-loading .column-main .card, -html.pjax-loading .load-block { - opacity: 0.8; - -webkit-transform: scale(0.8); - transform: scale(0.8); - -webkit-transform-origin: center top; - transform-origin: center top; -} -html.disable-scroll { - overflow: hidden; -} -html:not(.disable-scroll) body.move-up .navbar-above { - -webkit-transform: translate3d(0, -100%, 0); - transform: translate3d(0, -100%, 0); -} -html:not(.disable-scroll) .actions.show { - right: 16px; -} -html.clean { - background-color: var(--style-a); -} -html.clean .card { - -webkit-box-shadow: none; - box-shadow: none; - border: 1px solid var(--light-b); - background: none; -} -html.clean .card:hover { - background: none; -} -html.clean .footer { - -webkit-backdrop-filter: none; - backdrop-filter: none; -} -html.clean .footer:before { - content: none; -} -html.clean .pagination-link:not(.is-current), -html.clean .pagination-previous, -html.clean .pagination-next { - -webkit-box-shadow: none; - box-shadow: none; - border: 1px solid var(--light-b); -} -body { - margin: 0 !important; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-orient: vertical; - -ms-flex-direction: column; - flex-direction: column; - min-height: 100vh; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - font-size: 1em; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - padding-bottom: env(safe-area-inset-bottom); - scroll-behavior: smooth; - overflow-x: hidden; - overflow-y: overlay; -} -body::-webkit-scrollbar-thumb { - background: var(--theme); - background-image: -webkit-linear-gradient(45deg, hsla(0, 0%, 100%, 0.4) 25%, transparent 0, transparent 50%, hsla(0, 0%, 100%, 0.4) 0, hsla(0, 0%, 100%, 0.4) 75%, transparent 0, transparent); -} -body:before { - content: ''; - position: fixed; - z-index: -1; - top: 0; - right: 0; - bottom: 0; - left: 0; - -webkit-transition: opacity 1s; - transition: opacity 1s; - background-size: cover !important; -} -body:after { - content: ""; - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - z-index: -10; - pointer-events: none; -} -::-webkit-scrollbar { - height: 8px; - width: 8px; -} -::-webkit-scrollbar-thumb { - background: rgba(160, 160, 160, 0.2); - border-radius: 2em; -} -::-webkit-scrollbar-track { - background: 0 0; - border-radius: 2em; -} -::-moz-selection { - color: #fff; - background: var(--theme); -} -::selection { - color: #fff; - background: var(--theme); -} -input[type=text] { - -webkit-appearance: none; - border-radius: 0; - font-size: 13px; - font-weight: 500; -} -iframe { - display: block; - border: 0; - margin: 0 auto; -} -textarea { - font-size: 14px; - resize: none; - -webkit-appearance: none; -} -li, -ol, -ul { - list-style: none; -} -img { - border: 0; - vertical-align: middle; -} -img:not([src]), -img[src=""] { - border: 0; - opacity: 0; -} -canvas, -svg { - vertical-align: middle; -} -button { - cursor: pointer; - -webkit-appearance: none; - font-size: 13px; -} -table { - border-collapse: collapse; - border-spacing: 0; -} -blockquote, -body, -dd, -dl, -dt, -fieldset, -figure, -h1, -h2, -h3, -h4, -h5, -h6, -hr, -html, -iframe, -legend, -li, -ol, -p, -pre, -textarea, -ul { - margin: 0; - padding: 0; -} -h1, -h2, -h3, -h4, -h5, -h6 { - font-size: 100%; - font-weight: 500; - margin-bottom: 10px; -} -button, -input, -select { - margin: 0; -} -audio { - max-width: 100%; -} -body, -button, -input, -select, -textarea { - font-family: "Dream Font", BlinkMacSystemFont, -apple-system, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; -} -code, -pre { - -moz-osx-font-smoothing: auto; - font-family: monospace; -} -section { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; -} -a { - color: var(--theme); - cursor: pointer; - text-decoration: none; - word-break: break-all; -} -a:hover { - color: var(--dark-c); -} -code { - background-color: #f5f5f5; - color: #ff3860; - font-size: 0.875em; - font-weight: 400; - padding: 0.25em 0.5em; -} -hr { - background-color: var(--light-b); - border: none; - display: block; - height: 1px; - margin: 11.2px 0; -} -input[type=checkbox], -input[type=radio] { - vertical-align: baseline; -} -small { - font-size: 0.875em; -} -span { - font-style: inherit; - font-weight: inherit; -} -strong { - font-weight: 700; -} -fieldset { - border: none; -} -pre { - -webkit-overflow-scrolling: touch; - background-color: #f5f5f5; - color: var(--main); - font-size: 0.875em; - overflow-x: auto; - white-space: pre; - word-wrap: normal; - padding: 1.25rem 1.5rem; -} -pre code { - background-color: transparent; - color: currentColor; - font-size: 1em; - padding: 0; -} -table td, -table th { - vertical-align: middle; -} -table td > p, -table th > p { - margin: auto !important; -} -.container { - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - margin: 0 auto; - position: relative; - width: auto; -} -.canvas_effects { - position: fixed; - margin: 0; - padding: 0; - border: 0; - outline: 0; - left: 0; - top: 0; - width: 100%; - height: 100%; - pointer-events: none; -} -.canvas_effects.universe { - background: radial-gradient(1600px at 70% 120%, #212750 10%, #020409 100%); -} -.canvas_effects.night { - display: none; -} -/** 通用样式 开始 */ -.tag { - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: var(--bg-c); - border-radius: 4px; - color: var(--dark-c); - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - font-size: 0.75em; - height: 2em; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - line-height: 1.5; - padding-left: 0.75em; - padding-right: 0.75em; - white-space: nowrap; -} -.button { - -moz-appearance: none; - -webkit-appearance: none; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - border: 1px solid transparent; - border-radius: 4px; - -webkit-box-shadow: none; - box-shadow: none; - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - font-size: 1rem; - height: 2.25em; - -webkit-box-pack: start; - -ms-flex-pack: start; - justify-content: flex-start; - line-height: 1.5; - padding: calc(0.375em - 1px) calc(0.625em - 1px); - position: relative; - vertical-align: top; -} -.button.is-link { - border-color: transparent; - color: #fff; - background-color: var(--theme); -} -.button.is-link:hover { - opacity: 0.8; -} -.button.is-rounded { - border-radius: 290486px; - padding-left: 1em; - padding-right: 1em; -} -.button.is-transparent { - background: 0 0; - border-color: transparent; - color: var(--dark-c); -} -.button.is-transparent.is-hovered, -.button.is-transparent:hover { - background-color: var(--bg-c); -} -.button.is-large { - font-size: 1.5rem; -} -.level { - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; -} -.level-item { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-preferred-size: auto; - flex-basis: auto; - -webkit-box-flex: 0; - -ms-flex-positive: 0; - flex-grow: 0; - -ms-flex-negative: 0; - flex-shrink: 0; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; -} -.title { - color: var(--dark-c); - font-size: 1.6rem; - font-weight: 400; - line-height: 1.25; -} -.title .top { - background-image: -webkit-linear-gradient(0deg, rgba(57, 169, 255, 0.8) 0, rgba(155, 79, 255, 0.8) 100%); - border-radius: 2px 6px; - color: #fff; - padding: 0 6px; - font-size: 12px; - line-height: 20px; - vertical-align: 3px; - margin-right: 5px; - display: inline-block; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -.is-invisible { - visibility: hidden !important; -} -.image { - display: block; - position: relative; -} -.breadcrumb { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: start; - -ms-flex-pack: start; - justify-content: flex-start; - font-size: 0.8rem; - -ms-flex-negative: 0; - flex-shrink: 0; -} -.breadcrumb li i { - margin-right: 3px; -} -.breadcrumb li:not(:first-child)::before { - content: "/"; - color: var(--light-d); - padding: 0 5px; -} -.has-link-grey { - line-height: 1.85rem; - color: var(--theme); - background-image: linear-gradient(transparent calc(100% - 1px), var(--theme) 1px); - background-repeat: no-repeat; - background-size: 0 100%; - -webkit-transition: all 0.35s ease-in-out; - transition: all 0.35s ease-in-out; -} -.has-link-grey:hover { - color: var(--theme) !important; - background-size: 100% 100%; -} -.is-hidden-all { - display: none !important; -} -.card:not(.is-hidden-all) ~ .card { - margin-top: 1.4rem !important; -} -.indent { - text-indent: 2em; -} -.dream-emoji { - width: 1.4em; - height: 1.4em; - margin: auto 1px; - vertical-align: text-bottom; -} -.menu-list { - line-height: 1.25; -} -.menu-list a { - border-radius: 2px; - color: var(--main); - display: block; - padding: 0.5em 0.75em; -} -.menu-list a:hover { - background-color: var(--bg-c); -} -.menu-list a.level { - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.menu-list a.is-active { - background-color: var(--bg-e); - color: var(--light-z); -} -.menu-list i { - margin-right: 0.5em; -} -.menu-list li ul { - margin: 0.5em 0 0.75em 0.75em; - padding-left: 0.5em; - border-left: 1px solid var(--light-d); -} -.menu-list > li > a:not(.is-active) + .menu-list { - display: none; -} -.expand-done { - background: var(--bg-k); - position: absolute; - bottom: 0; - left: 0; - right: 0; - text-align: center; - height: 1.8rem; - cursor: pointer; -} -.expand-done i { - display: inline-block; - color: var(--dark-b); - font-size: 1.6rem; - -webkit-animation: code-expand 2.4s infinite; - animation: code-expand 2.4s infinite; - text-shadow: 0 -1px 5px var(--light-d); - -webkit-transition: all 0.3s; - transition: all 0.3s; -} -.fold { - max-height: 320px; -} -.fold .expand-done { - background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(77, 77, 77, 0.4))); - background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(77, 77, 77, 0.4)); -} -.fold .expand-done i { - -webkit-transform: rotatex(180deg); - transform: rotatex(180deg); -} -.loading::after { - content: ''; - display: block; - width: 70px; - height: 70px; - margin: 12px auto; - background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTciIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCA1NyA1NyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBzdHJva2U9IiM0MDllZmYiPg0KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEgMSkiIHN0cm9rZS13aWR0aD0iMiI+DQogICAgICAgICAgICA8Y2lyY2xlIGN4PSI1IiBjeT0iNTAiIHI9IjUiPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN5Ig0KICAgICAgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjIuMnMiDQogICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9IjUwOzU7NTA7NTAiDQogICAgICAgICAgICAgICAgICAgICBjYWxjTW9kZT0ibGluZWFyIg0KICAgICAgICAgICAgICAgICAgICAgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiIC8+DQogICAgICAgICAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iY3giDQogICAgICAgICAgICAgICAgICAgICBiZWdpbj0iMHMiIGR1cj0iMi4ycyINCiAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz0iNTsyNzs0OTs1Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgPC9jaXJjbGU+DQogICAgICAgICAgICA8Y2lyY2xlIGN4PSIyNyIgY3k9IjUiIHI9IjUiPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN5Ig0KICAgICAgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjIuMnMiDQogICAgICAgICAgICAgICAgICAgICBmcm9tPSI1IiB0bz0iNSINCiAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz0iNTs1MDs1MDs1Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4Ig0KICAgICAgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjIuMnMiDQogICAgICAgICAgICAgICAgICAgICBmcm9tPSIyNyIgdG89IjI3Ig0KICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPSIyNzs0OTs1OzI3Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgPC9jaXJjbGU+DQogICAgICAgICAgICA8Y2lyY2xlIGN4PSI0OSIgY3k9IjUwIiByPSI1Ij4NCiAgICAgICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJjeSINCiAgICAgICAgICAgICAgICAgICAgIGJlZ2luPSIwcyIgZHVyPSIyLjJzIg0KICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPSI1MDs1MDs1OzUwIg0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4Ig0KICAgICAgICAgICAgICAgICAgICAgZnJvbT0iNDkiIHRvPSI0OSINCiAgICAgICAgICAgICAgICAgICAgIGJlZ2luPSIwcyIgZHVyPSIyLjJzIg0KICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPSI0OTs1OzI3OzQ5Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgPC9jaXJjbGU+DQogICAgICAgIDwvZz4NCiAgICA8L2c+DQo8L3N2Zz4=); - background-repeat: no-repeat; - background-size: 100% 100%; -} -.bg-shadow:before { - content: ''; - display: block; - width: 100%; - height: 100%; - position: absolute; - top: 0; - left: 0; - background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0.05))); - background: linear-gradient(to top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05)); -} -/** 通用样式 结束 */ -#dprogress { - pointer-events: none; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - z-index: 2000; - position: fixed; - top: 0; - left: 0; - right: 0; - width: 100%; - height: 2px; -} -#dprogress .bar { - background: var(--theme); - -webkit-box-shadow: 0 0 10px 1px var(--theme); - box-shadow: 0 0 10px 1px var(--theme); - height: 100%; -} -.logo-title { - font-size: 1.5em; - color: var(--theme) !important; -} -.logo-title img { - max-height: 2rem; -} -.logo-img-dark { - display: none; -} -.navbar-above { - position: fixed; - top: 0; - z-index: 6; - width: 100%; - background-color: var(--background); - -webkit-transition: all 0.5s; - transition: all 0.5s; - -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05), 0 0 1px rgba(0, 0, 0, 0.1); - box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05), 0 0 1px rgba(0, 0, 0, 0.1); -} -.navbar-above .container { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.navbar-above .navbar-item { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding-right: 0.75rem; - -webkit-box-flex: 0; - -ms-flex-positive: 0; - flex-grow: 0; - -ms-flex-negative: 0; - flex-shrink: 0; - color: #4a4a4a; - line-height: 1.5; - position: relative; -} -.navbar-above .navbar-nav { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.navbar-above .navbar-nav .item { - cursor: pointer; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - position: relative; - height: 3.5rem; - line-height: 3.5rem; - font-size: 15px; - padding: 0 8px; - margin-right: 10px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - white-space: nowrap; - color: var(--title); - -webkit-transition: color 0.35s; - transition: color 0.35s; -} -.navbar-above .navbar-nav .item > i { - display: inline-block; - margin-right: 4px; - font-size: 18px; - -webkit-transition: -webkit-transform 0.5s; - transition: -webkit-transform 0.5s; - transition: transform 0.5s; - transition: transform 0.5s, -webkit-transform 0.5s; -} -.navbar-above .navbar-nav .item:last-child { - margin-right: 0; -} -.navbar-above .navbar-nav .item::after { - opacity: 0; - position: absolute; - bottom: 0; - left: 6px; - right: 6px; - content: ""; - height: 3px; - -webkit-transform: scaleX(0.25); - transform: scaleX(0.25); - background: var(--theme); - border-radius: 6px 6px 0 0; - -webkit-transition: opacity 0.5s, -webkit-transform 0.5s; - transition: opacity 0.5s, -webkit-transform 0.5s; - transition: opacity 0.5s, transform 0.5s; - transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s; -} -.navbar-above .navbar-nav .item.current { - color: var(--theme); -} -.navbar-above .navbar-nav .item.current::after { - opacity: 1; - -webkit-transform: scaleX(1); - transform: scaleX(1); -} -.navbar-above .navbar-nav .item.current:hover::after { - opacity: 1; - -webkit-transform: scaleX(1); - transform: scaleX(1); -} -.navbar-above .navbar-nav .item:hover { - color: var(--theme); -} -.navbar-above .navbar-nav .item:hover::after { - opacity: 0.3; - -webkit-transform: scaleX(0.7); - transform: scaleX(0.7); -} -.navbar-above .navbar-nav .item:hover + .joe-icon-arrow-down { - color: var(--theme) !important; -} -.navbar-above .navbar-nav.active-shadow .item.current { - text-shadow: 0 4px 20px var(--theme); -} -.navbar-above .navbar-nav.active-animate .item:hover .m-icon { - -webkit-animation: dung 0.3s 0.12s ease; - animation: dung 0.3s 0.12s ease; -} -.navbar-above .navbar-nav .item-dropdown { - margin-right: 15px; -} -.navbar-above .navbar-nav .item-dropdown-link a { - height: 50px; - line-height: 50px; - font-size: 15px; - padding-left: 8px; - padding-right: 3px; - -webkit-transition: color 0.35s; - transition: color 0.35s; - white-space: nowrap; - color: var(--main); -} -.navbar-above .navbar-nav .item-dropdown-menu { - min-width: 90px; - max-width: 200px; - text-align: center; -} -.navbar-above .navbar-nav .item-dropdown-menu a { - display: block; - height: 34px; - margin-right: 0; - line-height: 34px; - color: var(--main); - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - padding: 0 15px; - -webkit-transition: color 0.35s, background 0.35s; - transition: color 0.35s, background 0.35s; -} -.navbar-above .navbar-nav .item-dropdown-menu a::after { - display: none; -} -.navbar-above .navbar-nav .item-dropdown-menu a:hover, -.navbar-above .navbar-nav .item-dropdown-menu a.current { - color: var(--theme); - background: var(--bg-a); -} -.navbar-above .navbar-nav .item-dropdown .item:hover:after { - display: none; -} -.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link a, -.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link i { - color: var(--theme) !important; -} -.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link a::after, -.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link i::after { - display: none; -} -.navbar-above .navbar-nav .item-sub-li { - position: relative; - height: 34px; -} -.navbar-above .navbar-nav .item-sub-li:hover .item-sub { - visibility: visible; - opacity: 1; - -webkit-transform: translateX(0) perspective(600px) rotateY(0); - transform: translateX(0) perspective(600px) rotateY(0); -} -.navbar-above .navbar-nav .item-sub { - visibility: hidden; - z-index: 10; - -webkit-transform-origin: top; - transform-origin: top; - opacity: 0; - position: relative; - left: 100%; - top: -34px; - padding-left: 7px; - -webkit-box-shadow: 7px 3px 8px 0px rgba(0, 0, 0, 0.15); - box-shadow: 7px 3px 8px 0px rgba(0, 0, 0, 0.15); - border-radius: 0 var(--radius-inner) var(--radius-inner) 0; - -webkit-transform: translateX(-20%) perspective(600px) rotateY(-45deg); - transform: translateX(-20%) perspective(600px) rotateY(-45deg); - -webkit-transition: opacity 0.35s, visibility 0.35s, -webkit-transform 0.35s; - transition: opacity 0.35s, visibility 0.35s, -webkit-transform 0.35s; - transition: opacity 0.35s, visibility 0.35s, transform 0.35s; - transition: opacity 0.35s, visibility 0.35s, transform 0.35s, -webkit-transform 0.35s; -} -.navbar-above .navbar-nav .item-sub::before { - position: absolute; - top: 10px; - left: 0; - content: ""; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - width: 0; - height: 0; - border: 7px solid transparent; - border-right-color: var(--theme); -} -.navbar-above .navbar-nav .item-sub::after { - position: absolute; - top: 0; - left: 7px; - content: ""; - width: 2px; - height: 100%; - background: var(--theme); -} -.navbar-above .navbar-nav .item-sub li { - background: var(--bg-d); -} -.navbar-above .navbar-console { - float: right; - margin-left: 5px; - background: var(--theme); - border-radius: 50%; - height: 34px; - width: 34px; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.navbar-above .navbar-console > i { - font-size: 18px; - color: #fff; -} -.navbar-above.solid { - -webkit-backdrop-filter: unset; - backdrop-filter: unset; - -webkit-box-shadow: unset; - box-shadow: unset; - border-bottom: 1px solid var(--light-b); -} -.navbar .navbar-search .submit { - width: 50px; -} -.navbar .navbar-search-mobile .submit { - width: 80px; -} -.navbar .navbar-search .result { - position: absolute; - z-index: 2; - top: 55px; - left: 0; - right: 0; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - visibility: hidden; - overflow: hidden; - opacity: 0; - background: var(--bg-d); - -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.15); - box-shadow: 0 0 10px rgba(0, 0, 0, 0.15); - border-radius: var(--radius-inner); - -webkit-transition: visibility 0.35s, opacity 0.35s, -webkit-transform 0.35s; - transition: visibility 0.35s, opacity 0.35s, -webkit-transform 0.35s; - transition: visibility 0.35s, opacity 0.35s, transform 0.35s; - transition: visibility 0.35s, opacity 0.35s, transform 0.35s, -webkit-transform 0.35s; - -webkit-transform: translate3d(0, 15px, 0); - transform: translate3d(0, 15px, 0); -} -.navbar .navbar-search .result.active { - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); - opacity: 1; - visibility: visible; -} -.navbar .navbar-search .result .item { - height: 40px; - line-height: 40px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - overflow: hidden; - padding: 0 10px; - border-bottom: 1px solid var(--light-b); - -webkit-transition: background 0.35s; - transition: background 0.35s; -} -.navbar .navbar-search .result .item:last-child { - border-bottom: none; -} -.navbar .navbar-search .result .item:nth-child(1) .sort { - background: #fe2d46; -} -.navbar .navbar-search .result .item:nth-child(2) .sort { - background: #f60; -} -.navbar .navbar-search .result .item:nth-child(3) .sort { - background: #faa90e; -} -.navbar .navbar-search .result .item:hover { - background: var(--bg-a); -} -.navbar .navbar-search .result .item .sort { - color: #fff; - background: #7f7f8c; - width: 18px; - height: 18px; - line-height: 18px; - border-radius: 2px; - text-align: center; - margin-right: 8px; - font-weight: 500; -} -.navbar .navbar-search .result .item .text { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - min-width: 0; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - color: var(--dark-a); - font-size: 12px; -} -.navbar .navbar-search .result .item .views { - color: var(--seat); - font-size: 12px; - margin-left: 5px; -} -.navbar .navbar-search, -.navbar .navbar-search-mobile { - position: relative; - margin-left: auto; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.navbar .navbar-search .input, -.navbar .navbar-search-mobile .input { - background: var(--bg-a); - width: 170px; - height: 34px; - border: 1px solid transparent; - padding: 0 14px 0 16px; - color: var(--dark-a); - -webkit-transition: width 0.35s, border-color 0.35s, padding-right 0.35s; - transition: width 0.35s, border-color 0.35s, padding-right 0.35s; - border-radius: 17px 0 0 17px; -} -.navbar .navbar-search .input:focus, -.navbar .navbar-search-mobile .input:focus { - background: var(--light-a); - border-color: var(--theme); - padding-right: 28px; - width: 170px; -} -.navbar .navbar-search .input:focus ~ .icon, -.navbar .navbar-search-mobile .input:focus ~ .icon { - -webkit-transform: translate3d(0, -50%, 0) rotateY(180deg); - transform: translate3d(0, -50%, 0) rotateY(180deg); -} -@-webkit-keyframes swag { - 0% { - -webkit-transform: rotate(-10deg); - transform: rotate(-10deg); - } - 50% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - 100% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); - } -} -@keyframes swag { - 0% { - -webkit-transform: rotate(-10deg); - transform: rotate(-10deg); - } - 50% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - 100% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); - } -} -.navbar .navbar-search .submit, -.navbar .navbar-search-mobile .submit { - position: relative; - z-index: 1; - height: 34px; - color: #fff; - border: none; - background: var(--theme); - border-radius: 0 17px 17px 0; -} -.navbar .navbar-search .submit i, -.navbar .navbar-search-mobile .submit i { - -webkit-transform-origin: right bottom; - transform-origin: right bottom; - font-size: 18px; -} -.navbar .navbar-search .submit:hover i, -.navbar .navbar-search-mobile .submit:hover i { - -webkit-animation: swag 0.3s ease infinite alternate; - animation: swag 0.3s ease infinite alternate; -} -.navbar .navbar-search .icon, -.navbar .navbar-search-mobile .icon { - position: absolute; - top: 50%; - right: 44px; - width: 28px; - height: 38px; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAmCAYAAADX7PtfAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAHKElEQVRYw93Xe3DNdxrH8ecXiSK7i1qWFWW3rekiE2x3VEemtkkVVbWy4jY6atma2YpS6rJoozvbpRF1qW1EEYIk5xZE5EKE3CQi0SB30VwEIeeWnDi3nPf+kUNTE1R3mNn945n5nZkz8zrP53y/39/3EUCeZsn/HCgi80Rky1MDn/H2vjB6SpBVRMb9V6CI+InIBhE58bOez5b9xm9E0wu//0NTr/4+9SKyX0TGicjiP320kpBd+xCRv/0kUFEUf49OnfJGBwWzWn3UcfCGSa8xO1zxFoi3gLbJyZb8S/QeOIhRb0/hiA1GvjkREfF9bFBEQv0C3ySyrIaEO5DjaCXFYkdttKEyWFEbrKiNNjRmBztLrrIqVsfAYb507tJVryjKi48FisiK8Qs/IL4FVEYbOTY7l3FSjJNCp4PDpnZoOzi+BSKKq+j3wostiqK8/KPBv27+6pja9H03uXYHl3FwyeWgGCcFTscPwXalMdnZU1VPn4GDTCLS90eB2ibHHpXRhtpgRWWwkmqxU4yTEpwcvaUno7kZ7f1dtitds4tVcYcRkZMiskhRlCEPBdUG2/a7oNpoQ2Oyc8zUwrsp+QREp7CxpA6N0YbaaENtvBtrW2lMdsIy8xn00u/4aPly9h04QEBgICKy+oGgymiNUBltaN2xflxwlUmqdArKvyX0RBZf1ejbge5y/zi10cbg4SO4Ul3N8dRUqmprcQETJ01CUZQxHXdotH+jMtpYdLact9RniMzOxX6rDAzlrEzOIKLO+EPMXRqTnbCs88yePQuA18aOpWuPXuyIiKCouBgROfQA0Bq1tqiGsPRsMFbiaigBfQXoy1mZnMnOa6YOMBsHb7ewKbuAWTNnAhAQGEjPPn3JyMmh2W5HUZScDkGd0b5/RuoFqmtLiNj8GSLCxcwEMFTw95RM/l1ruBepxtTW2YKMYiYdPouuycHg4SOpqa8nTqPhclkZDuBcYSEiEtMxaLZHByXmU1qUiYeHByLCsZhIMFayPfMs/yy9TrzZQZzByqeX6pigzSLqbB5z4k+jNTvYcCqbvj4++i/Cwi7kFZxvidq/3+UzYAAi8l6HYLzZfiAoIZfoiHBEBBGhNDcZ9BXkln5LoCaLoMR8punOsCM7j8b6EjBWsDjxDHtuNKE1O9h95RrT14QyJngm01at48u8IkTktPtg6da9e/dffb8PTXbVVG0mqRva4pw8PgBMV6CxHBrLuVhZRMO1Ypw3LrPt8zXYrl8CfTmrUzL5ut2C0jY50TW3om1yEm+B/oNf0rvBYfPff//59pEefUd9BtKPU5oQS+vtMmgsx3W7DJf7GfNV5kyfgoiQpNoNxko+Tsog8u6Cuu8wiLfAb/2Gt7hBRUR6tAdTpmozQV/etjrbYXfBxspzKEpb3MU5x8FYwUxdOirDfXvTvT+1TU569vt17YP+w+RJ0ae4WdUWlcsdJfqKtmd9BWcSDiIijHvdH8xVVFdfYmpiPjqznQP1BmIamu6dRBqTnfCcQkQkukPQPyZdNToqzfZWaLKzuvwiGCpoLcrAnqS917G1/iKfL5iLMUkH3xWiK8hnWX4Vhy0uJi9ayqpYHRqzo+1stbgIePc9u4i83iE4O7128cvRp1mRZ2Hy+qRWQ25aW2d1RW0x3+04/zScTITcNJYmZxFxzcj+2lsM8vUjrrHlXrRR1Q107tLlYodnqaIo2iHDhlp8g+bzaSkcqbO0xiXn80boCdbtOkXuuUJuVRdjqbuI42YxNXmpLFkwh6FvTOCoDdeYP09nVazOpWtuRW20oWtu5Z0PlyMiwR2CIrJbG7WNyPD1DBrxCoEh61snhEYwcc1WXvnLelffgOX6gcE7VN1+3sM2cuwfEU9PRCRtftgWQnbupVf/AQSvXMta3TE0ZgeHbprx7tGz6oGvJxHx8vDyOr35sxWYrp4n8VAEsZGbiNsVTvy+7TzXr0+j+3sHRkx4G1GUnc90885bGhWDh4dHlqIo10Xk9oqDanQWF/M3bUVEPnjo+/CTEkJeXbgOX9+h/GPlIrR7t3I8difHYiLp3evZanf03iIyQkR6iKcXnl6dTymK0lVRFD8RmTpj7XqO2mDIq/6ISM+HgicbnPM+r4TVhS1M26IhYNlGxixcg4hiFpHnOrjd/fL+z8P8XyPmtoVOXl6Zj7xinLrpnLux3EXaDQff1ED4dxD8ZRwisvYxbuHquf8KR0Q2PRJcdcm5JL3BwR2blRablVZg1KhRLkVRej8GOFg6dUJEFj0S3F3NYpPVRrPNSovDweGEBERkx0+YNWYoivL8I8E7Tue8O04nFrsdBzDG3x8R8Xli01NISMiSrdu2kZGTzd7oaERk7xMd12ZFJC0b/8nX9Brsh4ikiUj3Jwpes/Ph3qzLeHb7RbGIeD7xgfRIQsIyH5/+RkVR+j+VCXjkyJHdFEXx/r+b8f8DZyW8Jd6/P38AAAAldEVYdGRhdGU6Y3JlYXRlADIwMjEtMDItMjBUMTE6NTI6MjQrMDA6MDA4bfPmAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIxLTAyLTIwVDExOjUyOjI0KzAwOjAwSTBLWgAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAASUVORK5CYII=); - background-size: 100% 100%; - -webkit-transition: -webkit-transform 0.35s; - transition: -webkit-transform 0.35s; - transition: transform 0.35s; - transition: transform 0.35s, -webkit-transform 0.35s; - -webkit-transform: translate3d(100%, -50%, 0) rotateY(180deg); - transform: translate3d(100%, -50%, 0) rotateY(180deg); -} -.navbar .navbar-search-mobile input { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - width: 100%; -} -.navbar-slideicon { - display: none; - cursor: pointer; - font-size: 23px !important; - color: var(--main); -} -.navbar-searchicon { - display: none; - cursor: pointer; - font-size: 23px !important; - color: var(--main); - margin-left: auto; -} -.navbar-searchicon span { - margin-left: 4px; - font-size: 15px; -} -.navbar-mask { - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - z-index: 4; - background: rgba(0, 0, 0, 0.5); - -webkit-backdrop-filter: blur(5px); - backdrop-filter: blur(5px); - opacity: 0; - visibility: hidden; - -webkit-transition: visibility 0.35s, opacity 0.35s; - transition: visibility 0.35s, opacity 0.35s; -} -.navbar-mask.active { - visibility: visible; - opacity: 1; -} -.navbar-mask.slideout { - z-index: 6; -} -.navbar-slideout { - visibility: hidden; - position: fixed; - top: 0; - bottom: 0; - left: 0; - z-index: 120; - width: 78%; - max-width: 480px; - background: var(--bg-b); - -webkit-transform: translate3d(-100%, 0, 0); - transform: translate3d(-100%, 0, 0); - -webkit-transition: visibility 0.35s, -webkit-transform 0.35s; - transition: visibility 0.35s, -webkit-transform 0.35s; - transition: transform 0.35s, visibility 0.35s; - transition: transform 0.35s, visibility 0.35s, -webkit-transform 0.35s; -} -.navbar-slideout-wrap { - position: relative; - padding: 35px 15px 15px; - height: 100%; - overflow-y: auto; - -webkit-overflow-scrolling: touch; - -ms-scroll-chaining: none; - overscroll-behavior: contain; -} -.navbar-slideout-wrap::-webkit-scrollbar { - display: none; -} -.navbar-slideout.active { - visibility: visible; - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); -} -.navbar-slideout-image { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 150px; - -o-object-fit: cover; - object-fit: cover; - z-index: -1; -} -.navbar-slideout-author { - margin-bottom: 15px; -} -.navbar-slideout-author .avatar { - width: 50px; - height: 50px; - margin: 10px auto; - display: block; - border-radius: var(--radius-inner); -} -.navbar-slideout-author .info { - overflow: hidden; - line-height: 25px; - text-align: center; - display: block; -} -.navbar-slideout-author .info .level { - height: 23px; - margin-left: 2px; -} -.navbar-slideout-author .info .link, -.navbar-slideout-author .info .motto { - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; -} -.navbar-slideout-author .info .link { - display: block; - font-size: 15px; - font-weight: 500; - color: var(--main); -} -.navbar-slideout-author .info .motto { - font-size: 12px; - color: var(--main); -} -.navbar-slideout-menu { - background: var(--light-a); - padding: 10px 15px; - border-radius: var(--radius-wrap); - overflow: hidden; - -webkit-box-shadow: var(--box-shadow); - box-shadow: var(--box-shadow); -} -.navbar-slideout-menu:not(:last-child) { - margin-bottom: 15px; -} -.navbar-slideout-menu.is-toc { - display: none; -} -.navbar-slideout-menu .menu-list > li > a:not(.is-active) + .menu-list { - display: block; -} -.navbar-slideout-menu .item { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - color: var(--main); - padding: 5px 0; -} -.navbar-slideout-menu .item i { - color: var(--main); - margin-right: 5px; -} -.navbar-slideout-menu .item strong { - font-weight: 500; - color: var(--theme); -} -.navbar-slideout-menu .link { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - padding: 10px 0; - color: var(--main); - -webkit-transition: color 0.15s; - transition: color 0.15s; -} -.navbar-slideout-menu .link a { - -webkit-transition: color 0.15s; - transition: color 0.15s; - color: var(--main); -} -.navbar-slideout-menu .link i { - color: var(--dark-b); - -webkit-transition: fill 0.15s, -webkit-transform 0.15s; - transition: fill 0.15s, -webkit-transform 0.15s; - transition: transform 0.15s, fill 0.15s; - transition: transform 0.15s, fill 0.15s, -webkit-transform 0.15s; -} -.navbar-slideout-menu .link.in { - color: var(--theme); -} -.navbar-slideout-menu .link.in a { - color: var(--theme); -} -.navbar-slideout-menu .link.in i { - color: var(--theme); - -webkit-transform: rotate(90deg); - transform: rotate(90deg); -} -.navbar-slideout-menu .current a { - color: var(--theme); - font-weight: 500; - font-size: 15px; -} -.navbar-slideout-menu .slides { - display: none; - border-left: 1px solid var(--light-b); - padding-left: 15px; -} -.navbar-slideout-menu .slides .link { - color: var(--main); -} -.navbar-slideout-menu .slides .current { - color: var(--theme); - font-weight: 500; - font-size: 15px; -} -.navbar-slideout.slideout-toc .not-toc { - display: none; -} -.navbar-slideout.slideout-toc .is-toc { - display: block; -} -.navbar-searchout { - position: fixed; - top: 3.5rem; - left: 0; - right: 0; - z-index: 5; - background: var(--background); - -webkit-transform: translate3d(0, -100%, 0); - transform: translate3d(0, -100%, 0); - -webkit-transition: visibility 0.35s, -webkit-transform 0.35s; - transition: visibility 0.35s, -webkit-transform 0.35s; - transition: transform 0.35s, visibility 0.35s; - transition: transform 0.35s, visibility 0.35s, -webkit-transform 0.35s; - visibility: hidden; -} -.navbar-searchout .search-container { - padding: 10px 15px !important; - -webkit-box-orient: horizontal; - -webkit-box-direction: normal; - -ms-flex-direction: row; - flex-direction: row; -} -.navbar-searchout.active { - visibility: visible; - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); -} -.navbar-searchout-inner { - padding: 15px 0; - width: 100%; -} -.navbar-searchout-inner .search { - width: 100%; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.navbar-searchout-inner .search input { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - height: 36px; - padding: 0 10px; - border: 1px solid var(--light-b); - border-right: none; - border-radius: 2px 0 0 2px; - color: var(--main); - background: var(--bg-a); -} -.navbar-searchout-inner .search button { - padding: 0 16px; - height: 36px; - border: none; - background: var(--theme); - color: #fff; - border-radius: 0 2px 2px 0; -} -.navbar-searchout-inner .tag-search { - color: var(--main); - padding: 14px 0 10px; - font-size: 14px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.navbar-searchout-inner .tag-search i { - margin-right: 5px; -} -.navbar-searchout-inner .cloud { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - margin: 0 -5px -5px; - max-height: 250px; - overflow-y: auto; - -webkit-overflow-scrolling: touch; - -ms-scroll-chaining: none; - overscroll-behavior: contain; -} -.navbar-searchout-inner .cloud .item { - padding: 4px; -} -.navbar-searchout-inner .cloud .item a { - display: block; - padding: 0 10px; - height: 24px; - line-height: 24px; - border-radius: 2px; - font-size: 12px; - color: #fff; -} -.swiper { - border: none !important; -} -.swiper-initialized:hover .swiper-button-next { - opacity: 1; - right: 10px; -} -.swiper-initialized:hover .swiper-button-prev { - opacity: 1; - left: 10px; -} -.swiper-vertical > .swiper-wrapper { - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} -.swiper-wrapper { - position: relative; - width: 100%; - height: 100%; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-transition-property: -webkit-transform; - transition-property: -webkit-transform; - transition-property: transform; - transition-property: transform, -webkit-transform; - -webkit-box-sizing: content-box; - box-sizing: content-box; -} -.swiper-android .swiper-slide, -.swiper-wrapper { - -webkit-transform: translate3d(0px, 0, 0); - transform: translate3d(0px, 0, 0); -} -.swiper-pointer-events { - -ms-touch-action: pan-y; - touch-action: pan-y; -} -.swiper-pointer-events.swiper-vertical { - -ms-touch-action: pan-x; - touch-action: pan-x; -} -.swiper-slide { - -ms-flex-negative: 0; - flex-shrink: 0; - position: relative; - padding-bottom: 40%; - overflow: hidden; - -webkit-transition: none !important; - transition: none !important; -} -.swiper-slide-details { - width: 100%; - position: absolute; - bottom: 15%; - padding: 0 50px; - color: #f5f5f5; -} -.swiper-slide-details-title { - text-align: center; - font-size: 1.5rem; - font-weight: 600; - text-shadow: 0 0 5px rgba(0, 0, 0, 0.3); - line-height: 1.5; - word-break: break-all; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-box-orient: vertical; - -webkit-line-clamp: 2; - overflow: hidden; -} -.swiper-slide-details .breadcrumb { - font-size: 1rem; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; -} -.swiper-slide-invisible-blank { - visibility: hidden; -} -/* Auto Height */ -.swiper-autoheight, -.swiper-autoheight .swiper-slide { - height: auto; -} -.swiper-autoheight .swiper-wrapper { - -webkit-box-align: start; - -ms-flex-align: start; - align-items: flex-start; - -webkit-transition-property: height, -webkit-transform; - transition-property: height, -webkit-transform; - transition-property: transform, height; - transition-property: transform, height, -webkit-transform; -} -.swiper-css-mode > .swiper-wrapper { - overflow: auto; - scrollbar-width: none; - -ms-overflow-style: none; -} -.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar { - display: none; -} -.swiper-css-mode > .swiper-wrapper > .swiper-slide { - scroll-snap-align: start start; -} -.swiper-horizontal.swiper-css-mode > .swiper-wrapper { - -ms-scroll-snap-type: x mandatory; - scroll-snap-type: x mandatory; -} -.swiper-vertical.swiper-css-mode > .swiper-wrapper { - -ms-scroll-snap-type: y mandatory; - scroll-snap-type: y mandatory; -} -.swiper-centered > .swiper-wrapper::before { - content: ''; - -ms-flex-negative: 0; - flex-shrink: 0; - -webkit-box-ordinal-group: 10000; - -ms-flex-order: 9999; - order: 9999; -} -.swiper-centered > .swiper-wrapper > .swiper-slide { - scroll-snap-align: center center; -} -.swiper-virtual.swiper-css-mode .swiper-wrapper::after { - content: ''; - position: absolute; - left: 0; - top: 0; - pointer-events: none; -} -.swiper-button-prev, -.swiper-button-next { - position: absolute; - top: 50%; - width: 27px; - height: 44px; - margin-top: -22px; - cursor: pointer; - text-align: center; - color: #fff; - background: rgba(0, 0, 0, 0.1); - border-radius: 2px; - opacity: 0; - overflow: hidden; - -webkit-transition: all 0.3s; - transition: all 0.3s; -} -.swiper-button-prev:after, -.swiper-button-next:after { - font-family: remixicon; - font-size: 36px; - margin-left: -4px; - letter-spacing: 0; - text-transform: none; - font-variant: initial; - line-height: 44px; -} -.swiper-button-prev:hover, -.swiper-button-next:hover { - background: rgba(0, 0, 0, 0.3); -} -.swiper-button-prev.swiper-button-disabled, -.swiper-button-next.swiper-button-disabled { - opacity: 0.35; - cursor: auto; - pointer-events: none; -} -.swiper-button-prev, -.swiper-rtl .swiper-button-next { - left: -15px; - right: auto; -} -.swiper-button-prev:after, -.swiper-rtl .swiper-button-next:after { - content: '\ea64'; -} -.swiper-button-next, -.swiper-rtl .swiper-button-prev { - right: -15px; - left: auto; -} -.swiper-button-next:after, -.swiper-rtl .swiper-button-prev:after { - content: '\ea6e'; -} -.swiper-button-lock { - display: none; -} -.swiper-pagination { - position: absolute; - text-align: center; - -webkit-transition: 300ms opacity; - transition: 300ms opacity; - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); -} -.swiper-pagination.swiper-pagination-hidden { - opacity: 0; -} -/* Common Styles */ -.swiper-pagination-fraction, -.swiper-pagination-custom, -.swiper-horizontal > .swiper-pagination-bullets, -.swiper-pagination-bullets.swiper-pagination-horizontal { - bottom: 10px; - left: 0; - width: 100%; -} -/* Bullets */ -.swiper-pagination-bullets-dynamic { - overflow: hidden; - font-size: 0; -} -.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { - -webkit-transform: scale(0.33); - transform: scale(0.33); - position: relative; -} -.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active { - -webkit-transform: scale(1); - transform: scale(1); -} -.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main { - -webkit-transform: scale(1); - transform: scale(1); -} -.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev { - -webkit-transform: scale(0.66); - transform: scale(0.66); -} -.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev { - -webkit-transform: scale(0.33); - transform: scale(0.33); -} -.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next { - -webkit-transform: scale(0.66); - transform: scale(0.66); -} -.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next { - -webkit-transform: scale(0.33); - transform: scale(0.33); -} -.swiper-pagination-bullet { - width: 15px; - height: 6px; - display: inline-block; - border-radius: 8px; - background: #f6f6f6; - opacity: 0.2; - -webkit-transition: all 0.3s; - transition: all 0.3s; -} -.swiper-pagination-bullet:only-child { - display: none !important; -} -.swiper-pagination-bullet-active { - width: 30px; - opacity: 1; - background: #fff; -} -button.swiper-pagination-bullet { - border: none; - margin: 0; - padding: 0; - -webkit-box-shadow: none; - box-shadow: none; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; -} -.swiper-pagination-clickable .swiper-pagination-bullet { - cursor: pointer; -} -.swiper-vertical > .swiper-pagination-bullets, -.swiper-pagination-vertical.swiper-pagination-bullets { - right: 10px; - top: 50%; - -webkit-transform: translate3d(0px, -50%, 0); - transform: translate3d(0px, -50%, 0); -} -.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet, -.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet { - margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0; - display: block; -} -.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, -.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic { - top: 50%; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - width: 8px; -} -.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, -.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { - display: inline-block; - -webkit-transition: 200ms top, 200ms -webkit-transform; - transition: 200ms top, 200ms -webkit-transform; - transition: 200ms transform, 200ms top; - transition: 200ms transform, 200ms top, 200ms -webkit-transform; -} -.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, -.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet { - margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px); -} -.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, -.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic { - left: 50%; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - white-space: nowrap; -} -.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, -.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { - -webkit-transition: 200ms left, 200ms -webkit-transform; - transition: 200ms left, 200ms -webkit-transform; - transition: 200ms transform, 200ms left; - transition: 200ms transform, 200ms left, 200ms -webkit-transform; -} -.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet { - -webkit-transition: 200ms right, 200ms -webkit-transform; - transition: 200ms right, 200ms -webkit-transform; - transition: 200ms transform, 200ms right; - transition: 200ms transform, 200ms right, 200ms -webkit-transform; -} -/* Progress */ -.swiper-pagination-progressbar { - background: rgba(0, 0, 0, 0.25); - position: absolute; -} -.swiper-pagination-progressbar .swiper-pagination-progressbar-fill { - background: var(--theme); - position: absolute; - left: 0; - top: 0; - width: 100%; - height: 100%; - -webkit-transform: scale(0); - transform: scale(0); - -webkit-transform-origin: left top; - transform-origin: left top; -} -.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { - -webkit-transform-origin: right top; - transform-origin: right top; -} -.swiper-horizontal > .swiper-pagination-progressbar, -.swiper-pagination-progressbar.swiper-pagination-horizontal, -.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, -.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite { - width: 100%; - height: 4px; - left: 0; - top: 0; -} -.swiper-vertical > .swiper-pagination-progressbar, -.swiper-pagination-progressbar.swiper-pagination-vertical, -.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, -.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite { - width: 4px; - height: 100%; - left: 0; - top: 0; -} -.swiper-pagination-lock { - display: none; -} -/* Scrollbar */ -.swiper-scrollbar { - border-radius: 10px; - position: relative; - -ms-touch-action: none; - background: rgba(0, 0, 0, 0.1); -} -.swiper-horizontal > .swiper-scrollbar { - position: absolute; - left: 1%; - bottom: 3px; - z-index: 50; - height: 5px; - width: 98%; -} -.swiper-vertical > .swiper-scrollbar { - position: absolute; - right: 3px; - top: 1%; - z-index: 50; - width: 5px; - height: 98%; -} -.swiper-scrollbar-drag { - height: 100%; - width: 100%; - position: relative; - background: rgba(0, 0, 0, 0.5); - border-radius: 10px; - left: 0; - top: 0; -} -.swiper-scrollbar-cursor-drag { - cursor: move; -} -.swiper-scrollbar-lock { - display: none; -} -.swiper-zoom-container { - width: 100%; - height: 100%; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - text-align: center; -} -.swiper-zoom-container > img, -.swiper-zoom-container > svg, -.swiper-zoom-container > canvas { - max-width: 100%; - max-height: 100%; - -o-object-fit: contain; - object-fit: contain; -} -.swiper-slide-zoomed { - cursor: move; -} -.swiper-lazy-preloader { - width: 42px; - height: 42px; - position: absolute; - left: 50%; - top: 50%; - margin-left: -21px; - margin-top: -21px; - z-index: 10; - -webkit-transform-origin: 50%; - transform-origin: 50%; - -webkit-animation: swiper-preloader-spin 1s infinite linear; - animation: swiper-preloader-spin 1s infinite linear; - -webkit-box-sizing: border-box; - box-sizing: border-box; - border: 4px solid var(--theme); - border-radius: 50%; - border-top-color: transparent; -} -.swiper-lazy-preloader-white { - --swiper-preloader-color: #fff; -} -.swiper-lazy-preloader-black { - --swiper-preloader-color: #000; -} -@-webkit-keyframes swiper-preloader-spin { - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } -} -@keyframes swiper-preloader-spin { - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } -} -/* a11y */ -.swiper .swiper-notification { - position: absolute; - left: 0; - top: 0; - pointer-events: none; - opacity: 0; - z-index: -1000; -} -.swiper-free-mode > .swiper-wrapper { - -webkit-transition-timing-function: ease-out; - transition-timing-function: ease-out; - margin: 0 auto; -} -.swiper-grid > .swiper-wrapper { - -ms-flex-wrap: wrap; - flex-wrap: wrap; -} -.swiper-grid-column > .swiper-wrapper { - -ms-flex-wrap: wrap; - flex-wrap: wrap; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} -.swiper-fade.swiper-free-mode .swiper-slide { - -webkit-transition-timing-function: ease-out; - transition-timing-function: ease-out; -} -.swiper-fade .swiper-slide { - pointer-events: none; - -webkit-transition-property: opacity; - transition-property: opacity; -} -.swiper-fade .swiper-slide .swiper-slide { - pointer-events: none; -} -.swiper-fade .swiper-slide-active, -.swiper-fade .swiper-slide-active .swiper-slide-active { - pointer-events: auto; -} -.swiper-cube { - overflow: visible; -} -.swiper-cube .swiper-slide { - pointer-events: none; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - z-index: 1; - visibility: hidden; - -webkit-transform-origin: 0 0; - transform-origin: 0 0; - width: 100%; - height: 100%; -} -.swiper-cube .swiper-slide .swiper-slide { - pointer-events: none; -} -.swiper-cube.swiper-rtl .swiper-slide { - -webkit-transform-origin: 100% 0; - transform-origin: 100% 0; -} -.swiper-cube .swiper-slide-active, -.swiper-cube .swiper-slide-active .swiper-slide-active { - pointer-events: auto; -} -.swiper-cube .swiper-slide-active, -.swiper-cube .swiper-slide-next, -.swiper-cube .swiper-slide-prev, -.swiper-cube .swiper-slide-next + .swiper-slide { - pointer-events: auto; - visibility: visible; -} -.swiper-cube .swiper-slide-shadow-top, -.swiper-cube .swiper-slide-shadow-bottom, -.swiper-cube .swiper-slide-shadow-left, -.swiper-cube .swiper-slide-shadow-right { - z-index: 0; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; -} -.swiper-cube .swiper-cube-shadow { - position: absolute; - left: 0; - bottom: 0px; - width: 100%; - height: 100%; - opacity: 0.6; - z-index: 0; -} -.swiper-cube .swiper-cube-shadow:before { - content: ''; - background: #000; - position: absolute; - left: 0; - top: 0; - bottom: 0; - right: 0; - -webkit-filter: blur(50px); - filter: blur(50px); -} -.swiper-flip { - overflow: visible; -} -.swiper-flip .swiper-slide { - pointer-events: none; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - z-index: 1; -} -.swiper-flip .swiper-slide .swiper-slide { - pointer-events: none; -} -.swiper-flip .swiper-slide-active, -.swiper-flip .swiper-slide-active .swiper-slide-active { - pointer-events: auto; -} -.swiper-flip .swiper-slide-shadow-top, -.swiper-flip .swiper-slide-shadow-bottom, -.swiper-flip .swiper-slide-shadow-left, -.swiper-flip .swiper-slide-shadow-right { - z-index: 0; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; -} -.swiper-creative .swiper-slide { - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - overflow: hidden; - -webkit-transition-property: opacity, height, -webkit-transform; - transition-property: opacity, height, -webkit-transform; - transition-property: transform, opacity, height; - transition-property: transform, opacity, height, -webkit-transform; -} -.swiper-cards { - overflow: visible; -} -.swiper-cards .swiper-slide { - -webkit-transform-origin: center bottom; - transform-origin: center bottom; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - overflow: hidden; -} -.banner { - width: 100%; - height: 54vh; - position: relative; - margin-bottom: -4rem; - background-position: center; - background-size: cover; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.banner:before { - content: ""; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAKUlEQVQImU3IMREAIAgAwJfNkQCEsH8cijjpMf6vnXlQaIiJFx+omEBfmqIEZLe2jzcAAAAASUVORK5CYII=); -} -.banner .banner-info { - position: absolute; - color: #fff; - text-align: center; - margin: 0 18px; -} -.banner .banner-info-title { - font-size: 2.4rem; - font-weight: bold; - line-height: 2; - letter-spacing: 0.6rem; - text-shadow: #1c1f21 -3px 2px 6px; -} -.banner .banner-info-desc { - font-size: 1.4rem; - line-height: 1.4; - max-width: 600px; -} -.banner .banner-info-desc:after { - content: '_'; - margin-left: 0.3rem; - -webkit-animation: flicker 1s steps(2, jump-none) infinite; - animation: flicker 1s steps(2, jump-none) infinite; -} -.banner .banner-waves { - width: 100%; - height: 4rem; - position: absolute; - left: 0; - bottom: 0; - fill: var(--background); -} -.banner .banner-waves .parallax > use { - -webkit-animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite; - animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite; -} -.banner .banner-waves .parallax > use:first-child { - -webkit-animation-delay: -2s; - animation-delay: -2s; - -webkit-animation-duration: 7s; - animation-duration: 7s; - opacity: 0.9; -} -.banner .banner-waves .parallax > use:nth-child(2) { - -webkit-animation-delay: -3s; - animation-delay: -3s; - -webkit-animation-duration: 10s; - animation-duration: 10s; - opacity: 0.8; -} -.banner .banner-waves .parallax > use:nth-child(3) { - -webkit-animation-delay: -4s; - animation-delay: -4s; - -webkit-animation-duration: 13s; - animation-duration: 13s; - opacity: 0.9; -} -.banner .banner-waves .parallax > use:nth-child(4) { - -webkit-animation-delay: -5s; - animation-delay: -5s; - -webkit-animation-duration: 20s; - animation-duration: 20s; -} -.item-dropdown { - position: relative; -} -.item-dropdown-link { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.item-dropdown-link-icon { - -webkit-transition: -webkit-transform 0.35s; - transition: -webkit-transform 0.35s; - transition: transform 0.35s; - transition: transform 0.35s, -webkit-transform 0.35s; - margin-left: -10px; -} -.item-dropdown-menu { - position: absolute; - left: 50%; - visibility: hidden; - z-index: 5; - border-top: 3px solid var(--theme); - -webkit-transform-origin: top; - transform-origin: top; - background: var(--bg-d); - -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.15); - box-shadow: 0 0 10px rgba(0, 0, 0, 0.15); - border-radius: 0 0 var(--radius-inner) var(--radius-inner); - padding: 10px 0; - opacity: 0; - -webkit-transform: translateX(-50%) perspective(600px) rotateX(-45deg); - transform: translateX(-50%) perspective(600px) rotateX(-45deg); - -webkit-transition: opacity 0.35s, visibility 0.35s, -webkit-transform 0.35s; - transition: opacity 0.35s, visibility 0.35s, -webkit-transform 0.35s; - transition: opacity 0.35s, visibility 0.35s, transform 0.35s; - transition: opacity 0.35s, visibility 0.35s, transform 0.35s, -webkit-transform 0.35s; -} -.item-dropdown-menu::before { - content: ""; - position: absolute; - top: -10px; - left: 50%; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - width: 0; - height: 0; - border-left: 7px solid transparent; - border-right: 7px solid transparent; - border-bottom: 7px solid var(--theme); -} -.item-dropdown.active .item-dropdown-link-icon { - -webkit-transform: rotate(-180deg); - transform: rotate(-180deg); -} -.item-dropdown.active .item-dropdown-menu { - visibility: visible; - opacity: 1; - -webkit-transform: translateX(-50%) perspective(600px) rotateX(0); - transform: translateX(-50%) perspective(600px) rotateX(0); -} -.section { - padding: 6rem 0.75rem 3rem 0.75rem; -} -.section .container > .tips { - margin-bottom: 1rem; -} -.section .card { - -webkit-transition: background-color 0.5s ease, opacity 0.3s ease-out, -webkit-transform 0.3s ease-out, -webkit-backdrop-filter 0.3s ease-out; - transition: background-color 0.5s ease, opacity 0.3s ease-out, -webkit-transform 0.3s ease-out, -webkit-backdrop-filter 0.3s ease-out; - transition: background-color 0.5s ease, opacity 0.3s ease-out, transform 0.3s ease-out, backdrop-filter 0.3s ease-out; - transition: background-color 0.5s ease, opacity 0.3s ease-out, transform 0.3s ease-out, backdrop-filter 0.3s ease-out, -webkit-transform 0.3s ease-out, -webkit-backdrop-filter 0.3s ease-out; - color: var(--dark-c); - max-width: 100%; - position: relative; - word-wrap: break-word; - word-break: break-all; - -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05), 0 0 1px rgba(0, 0, 0, 0.1); - box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05), 0 0 1px rgba(0, 0, 0, 0.1); - background-color: var(--background); - border-radius: var(--radius-wrap); -} -.section .card:hover { - background-color: var(--background-hover); -} -.section .card:hover .thumbnail-image, -.section .card:hover.card-cover .cover-image, -.section .card:hover .small-image { - -webkit-transform: scale(1.1); - transform: scale(1.1); - -webkit-filter: brightness(0.9); - filter: brightness(0.9); -} -.section .card + .column-right-shadow { - margin-top: 1.4rem; -} -.section .card[style="height: 0px;"] { - display: none; -} -.section .card.card-transparent { - -webkit-box-shadow: none !important; - box-shadow: none !important; - background: 0 0 !important; - -webkit-backdrop-filter: none !important; - backdrop-filter: none !important; - border: none !important; -} -.section .card-image { - border-radius: var(--radius-wrap) var(--radius-wrap) 0 0; -} -.section .card-tab { - height: 52px; - border-bottom: 1px solid var(--light-b); - margin-bottom: 15px; -} -.section .card-tab div { - position: absolute; - top: 15px; - left: -10px; - background: var(--theme); - color: #fff; - padding: 0 12px; - height: 30px; - line-height: 30px; - font-size: 1.1rem; - font-weight: 500; - border-radius: 2px 2px 2px 0; - -webkit-box-shadow: 2px 5px 10px rgba(49, 58, 70, 0.15); - box-shadow: 2px 5px 10px rgba(49, 58, 70, 0.15); - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -.section .card-tab div::before { - content: ''; - position: absolute; - bottom: -10px; - left: -10px; - border-style: solid; - border-width: 10px; - border-color: var(--theme) transparent transparent; - -webkit-transform: rotate(90deg); - transform: rotate(90deg); -} -.section .card-title { - font-size: 15.4px; - text-transform: uppercase; - font-weight: 500; - border-bottom: 1px solid var(--light-b); - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - height: 45px; - line-height: 45px; - padding: 0 15px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.section .card-title .card-title-label { - margin-right: 5px; - font-size: 1.2em; - color: var(--theme); -} -.section .card-title span { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; -} -.section .card-title .card-more { - font-size: 0.9em; - font-weight: 400; - color: var(--dark-b); -} -.section .card-title .card-more i { - font-size: 1.1em; -} -.section .card-title .card-more:hover { - color: var(--theme); -} -.section .card-title .card-more:hover i { - color: var(--theme); -} -.section .card-content { - padding: 0.6rem 1rem 1rem 1rem; -} -.section .card-content.main-title { - padding: 0.75rem 1.2rem; - font-size: 1.3rem; -} -.section .card-content.main-title .breadcrumb { - font-size: 0.9em; -} -.section .card-empty { - text-align: center; - font-size: 1.2em; - padding: 60px 0; - color: var(--dark-d); -} -.section .card-empty i { - display: block; - font-size: 7em; -} -.section .card .thumbnail { - display: block; - overflow: hidden; -} -.section .card .thumbnail-image { - min-height: 280px; - width: 100%; - margin: auto; - display: block; - background-position: 50% 50%; - background-size: cover; - -webkit-transition: all 0.5s; - transition: all 0.5s; -} -.section .card .cover-image { - min-height: 360px; - width: 100%; - margin: auto; - position: relative; - display: block; - background-position: 50% 50%; - background-size: cover; - -webkit-transition: all 0.5s; - transition: all 0.5s; -} -.section .card.card-cover .category, -.section .card .cover-image .category { - position: absolute; - font-size: 0.85rem; - right: 0.7em; - top: 10px; -} -.section .card.card-cover .category a, -.section .card .cover-image .category a { - color: #fff; - background: rgba(0, 0, 0, 0.3); - padding: 4px 10px; - border-radius: var(--radius-inner); -} -.section .card.card-cover .category a:hover, -.section .card .cover-image .category a:hover { - color: var(--theme); -} -.section .card.card-cover .details, -.section .card .cover-image .details { - position: absolute; - width: 100%; - bottom: 0; - top: auto; - color: #fff; - background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(29, 41, 49, 0.5)), to(rgba(255, 255, 255, 0))); - background-image: linear-gradient(0deg, rgba(29, 41, 49, 0.5), rgba(255, 255, 255, 0)); - padding: 2em 15px 15px; -} -.section .card.card-cover .title, -.section .card .cover-image .title { - color: inherit; - position: relative; - padding-bottom: 8px; -} -.section .card.card-cover .title:hover:before, -.section .card .cover-image .title:hover:before { - width: 60px; -} -.section .card.card-cover .title:before, -.section .card .cover-image .title:before { - content: ''; - position: absolute; - width: 40px; - height: 3px; - top: auto; - left: 0; - bottom: 3px; - -webkit-transition: 0.4s; - transition: 0.4s; - border-radius: 5px; - background: var(--theme); - -webkit-box-shadow: 1px 1px 3px -1px var(--theme); - box-shadow: 1px 1px 3px -1px var(--theme); -} -.section .card-fold { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - padding: 0.5em 0.75em; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - margin-bottom: -0.7rem; - border: 1px solid var(--background); -} -.section .card-fold:hover { - border: 1px solid var(--theme); -} -.section .card-fold .title { - margin: 0; - font-size: 1.2rem; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} -.section .card-fold .title p { - display: inline; -} -.section .card-fold > p { - color: var(--dark-b); - font-size: 0.8rem; - min-width: 60px; - text-align: end; - -ms-flex-item-align: center; - align-self: center; - -ms-flex-negative: 0; - flex-shrink: 0; -} -.section .card-small { - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.section .card-small > a { - width: 34%; - overflow: hidden; -} -.section .card-small > a:first-child { - -webkit-clip-path: polygon(0 0, 90% 0, 100% 100%, 0 100%); - clip-path: polygon(0 0, 90% 0, 100% 100%, 0 100%); -} -.section .card-small > a:last-child { - -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 10% 100%); - clip-path: polygon(0 0, 100% 0, 100% 100%, 10% 100%); -} -.section .card-small .small-image { - height: 100%; - width: 100%; - margin: auto; - background-position: 50% 50%; - background-size: cover; - -webkit-transition: all 0.5s; - transition: all 0.5s; -} -.section .card-small .card-content { - width: 66%; -} -.section .card-small .title { - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; - overflow: hidden; - text-overflow: ellipsis; - word-break: break-word; -} -.section .card-small .main-content { - -webkit-line-clamp: 2 !important; - min-height: 2.5em; - max-height: 3.3em; -} -.section .card .title a { - color: inherit; -} -.section .card .meta { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - color: var(--dark-b); - font-size: 0.8rem; - overflow-x: auto; -} -.section .card .meta::-webkit-scrollbar { - display: none; -} -.section .card .meta .level-item a { - color: inherit; -} -.section .card .meta .level-item a:hover { - color: var(--theme); -} -.section .card .main { - padding-top: 1.5rem; -} -.section .card .post-navigation { - padding-top: 1rem; - -ms-flex-pack: distribute; - justify-content: space-around; - -ms-flex-wrap: wrap; - flex-wrap: wrap; -} -.section .card .post-navigation a { - -ms-flex-negative: 1; - flex-shrink: 1; - color: var(--main); -} -.section .card .post-navigation a:last-child { - text-align: right; -} -.section .card .post-navigation a:hover { - color: var(--theme); -} -.section .card .post-navigation a i { - font-size: 1.3em; - margin: 0 0.5rem; -} -.section .card .comment-title { - margin-top: 6px; - font-size: 1.3em; - font-weight: 700; -} -.section .card .comment-title:before { - content: "\ef46"; - font-family: 'remixicon'; - margin-right: 4px; - color: var(--theme); - font-weight: 400; - font-size: 1.15em; -} -.section .columns { - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - margin: -0.75rem; -} -.section .columns .column { - padding: 0.75rem; - display: block; -} -.section .columns .column-left { - -webkit-box-ordinal-group: 2; - -ms-flex-order: 1; - order: 1; -} -.section .columns .column-main { - -webkit-box-ordinal-group: 3; - -ms-flex-order: 2; - order: 2; -} -.section .columns .column-main-grid { - margin: 1rem 0 1.4rem 0; - display: grid; - grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); - gap: 1rem; -} -.section .columns .column-main-grid:first-child { - margin-top: 0; -} -.section .columns .column-main-grid .breadcrumb { - margin: 15px 0 0 0; - color: var(--dark-b); - overflow-x: auto; -} -.section .columns .column-main-grid .breadcrumb::-webkit-scrollbar { - display: none; -} -.section .columns .column-main-grid .breadcrumb li { - -ms-flex-negative: 0; - flex-shrink: 0; -} -.section .columns .column-main-grid .card { - padding: 10px; -} -.section .columns .column-main-grid .card.widget + .card.widget { - margin-top: 0 !important; -} -.section .columns .column-main-grid .thumbnail { - border-radius: var(--radius-img); -} -.section .columns .column-main-grid .title { - margin: 8px 0 0 0; - font-size: 1.3rem; - line-height: 1.8rem; - word-break: break-all; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-box-orient: vertical; - -webkit-line-clamp: 2; - overflow: hidden; -} -.section .columns .column-right { - -webkit-box-ordinal-group: 4; - -ms-flex-order: 3; - order: 3; -} -.widget { - overflow: hidden !important; - /*人生计时器*/ - /*微信公众号*/ -} -.widget.card .card-empty { - font-size: 1em; - font-style: italic; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - padding: 24px 0; - background-color: var(--bg-a); -} -.widget.card .main .main-content { - display: -webkit-box; - -webkit-line-clamp: 4; - -webkit-box-orient: vertical; - overflow: hidden; - text-overflow: ellipsis; - text-indent: 1.5em; - line-height: 1.5em; -} -.widget.profile figure { - width: 98px; - height: 98px; - padding: 4px; - border-radius: 50%; - background: var(--light-b); - margin: 2em auto 0.5em auto; -} -.widget.profile figure .avatar { - -webkit-transition: all 2s; - transition: all 2s; - height: 100%; - width: 100%; - border-radius: 50%; -} -.widget.profile figure .avatar:hover { - -webkit-transform: rotate(-360deg); - transform: rotate(-360deg); -} -.widget.profile .nickname { - font-size: 1.5rem; - margin-bottom: 5px; -} -.widget.profile .motto { - font-size: 1rem; - line-height: 1.4; -} -.widget.profile .address { - color: #7a7a7a; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - font-size: 1rem; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.widget.profile .address i { - margin-right: 0.25em; -} -.widget.profile .level { - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.widget.profile .level-item { - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - -ms-flex-negative: 1; - flex-shrink: 1; - -ms-flex: 1; - flex: 1; - margin: 0 !important; - text-align: center !important; -} -.widget.profile .level-item .heading { - display: block; - font-size: 11px; - letter-spacing: 1px; - margin-bottom: 5px; - text-transform: uppercase; -} -.widget.profile .level-item .value { - color: var(--dark-c); - font-size: 2rem; - line-height: 1.125; - margin-bottom: 0; - font-weight: 400 !important; -} -.widget.profile .level:not(:first-child):not(:empty) { - margin-top: 1.5rem; -} -.widget.profile .level .button i { - font-size: 16px; -} -.widget .ad-tag { - position: absolute; - top: 6px; - right: 6px; - background: rgba(0, 0, 0, 0.25); - color: #ebebeb; - padding: 2px 5px; - border-radius: 2px; - font-size: 12px; - line-height: 16px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -.widget .ad-tag .click-close { - height: 15px; - width: 15px; - stroke: #ebebeb; - fill: #ebebeb; - stroke-width: 1.25; - margin-right: -4px; - vertical-align: bottom; - cursor: pointer; -} -.widget .ad-tag .click-close:hover { - stroke: var(--theme); - stroke-width: 1.5; -} -.widget .aplayer { - background: #00000000; - -webkit-box-shadow: none; - box-shadow: none; - padding: 0.5rem 0; - margin: 5px 0 0 5px; -} -.widget .aplayer .aplayer-list ol li { - border-top: 1px solid rgba(180, 180, 180, 0.2) !important; -} -.widget .aplayer .aplayer-list ol li.aplayer-list-light { - background: rgba(200, 200, 200, 0.2); -} -.widget .aplayer .aplayer-list ol li:hover { - background: rgba(200, 200, 200, 0.2); -} -.widget .aplayer.aplayer-withlist .aplayer-info { - border-bottom: none; -} -.widget .aplayer .aplayer-lrc:before { - background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #c5c5c52b), to(hsla(0, 0%, 100%, 0))) !important; - background: linear-gradient(180deg, #c5c5c52b 0, hsla(0, 0%, 100%, 0)) !important; -} -.widget .aplayer .aplayer-lrc:after { - background: -webkit-gradient(linear, left top, left bottom, color-stop(0, hsla(0, 0%, 100%, 0)), to(hsla(0, 0%, 100%, 0.23))) !important; - background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, 0.23)) !important; -} -.widget.recent-comments li:not(:last-child) { - margin-bottom: 10px; - border-bottom: 1px dashed var(--light-b); - padding-bottom: 10px; -} -.widget.recent-comments .user { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin-bottom: 8px; -} -.widget.recent-comments .user > img { - width: 40px; - height: 40px; - min-width: 40px; - min-height: 40px; - margin-right: 8px; - border-radius: 50%; - border: 1px solid var(--light-d); - padding: 3px; -} -.widget.recent-comments .user > .no-avatar { - width: 40px; - height: 40px; - /* min-width: 40px; */ - /* min-height: 40px; */ - margin-right: 8px; - background: var(--light-b); - border-radius: 50%; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.widget.recent-comments .user > .no-avatar > .avatar-info { - font-size: 1em; - color: var(--dark-c); -} -.widget.recent-comments .user .info { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; -} -.widget.recent-comments .user .info .author { - max-width: 150px; - margin-bottom: 4px; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - font-weight: 600; - color: var(--main); -} -.widget.recent-comments .user .info .date { - font-size: 12px; - color: var(--dark-b); -} -.widget.recent-comments .reply { - position: relative; - padding: 5px 10px; - background: var(--bg-a); - border-radius: 6px; -} -.widget.recent-comments .reply::before { - content: ""; - width: 0; - height: 0; - border-bottom: 6px solid var(--bg-a); - border-left: 6px solid transparent; - border-right: 6px solid transparent; - position: absolute; - left: 15px; - bottom: 100%; -} -.widget.recent-comments .reply .link { - display: -webkit-box; - -webkit-line-clamp: 2; - /*! autoprefixer: ignore next */ - -webkit-box-orient: vertical; - overflow: hidden; - text-overflow: ellipsis; - word-break: break-word; - color: var(--dark-b); - font-size: 13px; - font-weight: 500; - line-height: 24px; - -webkit-transition: all 0.35s; - transition: all 0.35s; - max-height: 48px; -} -.widget.recent-comments .reply .link:hover { - color: var(--theme); -} -.widget.recent-posts .card-content .list { - padding-top: 1px; -} -.widget.recent-posts .card-content .list .item { - margin-bottom: 15px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - line-height: 20px; -} -.widget.recent-posts .card-content .list .item i { - color: var(--main); - -webkit-transition: -webkit-transform 0.3s; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; - transition: transform 0.3s, -webkit-transform 0.3s; -} -.widget.recent-posts .card-content .list .item:hover .link { - color: var(--theme); -} -.widget.recent-posts .card-content .list .item:hover .link:after { - opacity: 1; - -webkit-transform: scaleX(1); - transform: scaleX(1); -} -.widget.recent-posts .card-content .list .item:hover i { - -webkit-transform: rotate(225deg); - transform: rotate(225deg); - color: var(--theme); -} -.widget.recent-posts .card-content .list .item:last-child { - margin-bottom: 0; -} -.widget.recent-posts .card-content .list .item .link { - display: inline-block; - position: relative; - color: var(--main); - max-width: 85%; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} -.widget.recent-posts .card-content .list .item .link:after { - content: ""; - position: absolute; - bottom: 2px; - left: 0; - width: 100%; - height: 1px; - background: var(--theme); - opacity: 0; - -webkit-transform: scaleX(0.25); - transform: scaleX(0.25); - -webkit-transition: all 0.35s; - transition: all 0.35s; -} -.widget.tags .card-content { - font-size: 0; -} -.widget.tags .card-content a { - width: unset; - margin: 4px; - line-height: 1.2; - overflow: unset; - text-overflow: unset; - white-space: unset; - text-align: left; - display: inline-block; - padding: 5px; - font-size: 13px; - color: var(--dark-b); - text-decoration: none; - background: var(--bg-d); - border: 1px solid var(--light-c); - border-radius: 3px; -} -.widget.tags .card-content a:hover { - color: var(--theme) !important; - border-color: var(--theme) !important; -} -.widget.tagcloud .card-content a:hover { - color: var(--dark-c) !important; -} -.widget.love { - position: relative; - color: #fff; - background: none !important; -} -.widget.love:before { - content: ''; - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - z-index: -1; - -webkit-transition: all 0.3s ease-out; - transition: all 0.3s ease-out; - background-image: -webkit-gradient(linear, left top, right top, from(rgba(255, 209, 218, 0.94)), to(rgba(255, 162, 178, 0.94))); - background-image: linear-gradient(to right, rgba(255, 209, 218, 0.94), rgba(255, 162, 178, 0.94)); -} -.widget.love:after { - content: 'LOVE'; - position: absolute; - left: 0; - top: 0; - bottom: 0; - z-index: -1; - color: #ffe0e5; - font-size: 84px; - line-height: 84px; - text-align: center; - font-weight: 600; - white-space: nowrap; - -webkit-transform: rotate(90deg) translateY(75%); - transform: rotate(90deg) translateY(75%); - -webkit-transition: all 0.3s ease-out; - transition: all 0.3s ease-out; -} -.widget.love:hover:before { - background-image: -webkit-gradient(linear, left top, right top, from(#ffd1da), to(#ffa2b2)); - background-image: linear-gradient(to right, #ffd1da, #ffa2b2); -} -.widget.love:hover:after { - -webkit-transform: rotate(90deg) translateY(60%); - transform: rotate(90deg) translateY(60%); -} -.widget.love .card-title { - border-bottom: 1px solid rgba(255, 209, 218, 0.94); -} -.widget.love .love-content { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin: 16px 0; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; -} -.widget.love .level { - -webkit-box-flex: 1; - -ms-flex: auto; - flex: auto; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - max-width: 520px; -} -.widget.love .level-item { - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; -} -.widget.love svg { - width: 36px; - -webkit-filter: none; - filter: none; -} -.widget.love .avatar { - width: 84px; - height: 84px; - padding: 4px; - display: block; - border-radius: 50%; - background: #ffd6de; -} -.widget.love .avatar-image { - -webkit-transition: all 2s; - transition: all 2s; - height: 100%; - width: 100%; - border-radius: 50%; -} -.widget.love .avatar-image:hover { - -webkit-transform: rotate(-360deg); - transform: rotate(-360deg); -} -.widget.love .love-time { - font-size: 1.1em; - text-align: center; - font-weight: 600; - height: 1.4em; - line-height: 1.4em; -} -.widget.timelife .item { - margin-bottom: 15px; -} -.widget.timelife .item:last-child { - margin-bottom: 0; -} -.widget.timelife .item .title { - font-size: 1rem !important; - color: var(--main); - margin-bottom: 5px; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.widget.timelife .item .title .text { - color: var(--theme); - font-weight: 500; - font-size: 1.1rem !important; - margin: 0 5px; -} -.widget.timelife .item .progress { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} -.widget.timelife .item .progress-bar { - height: 10px; - border-radius: 5px; - overflow: hidden; - background: var(--dark-b); - width: 0; - min-width: 0; - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - margin-right: 5px; -} -.widget.timelife .item .progress-bar-inner { - width: 0; - height: 100%; - border-radius: 5px; - -webkit-transition: width 0.35s; - transition: width 0.35s; - -webkit-animation: progress 750ms linear infinite; - animation: progress 750ms linear infinite; -} -.widget.timelife .item .progress-bar-inner-0 { - background: #bde6ff; - background-image: linear-gradient(135deg, #50bfff 25%, transparent 25%, transparent 50%, #50bfff 50%, #50bfff 75%, transparent 75%, transparent 100%); - background-size: 30px 30px; -} -.widget.timelife .item .progress-bar-inner-1 { - background: #ffd980; - background-image: linear-gradient(135deg, #f7ba2a 25%, transparent 25%, transparent 50%, #f7ba2a 50%, #f7ba2a 75%, transparent 75%, transparent 100%); - background-size: 30px 30px; -} -.widget.timelife .item .progress-bar-inner-2 { - background: #ffa9a9; - background-image: linear-gradient(135deg, #ff4949 25%, transparent 25%, transparent 50%, #ff4949 50%, #ff4949 75%, transparent 75%, transparent 100%); - background-size: 30px 30px; -} -.widget.timelife .item .progress-bar-inner-3 { - background: #67c23a; - background-image: linear-gradient(135deg, #4f9e28 25%, transparent 25%, transparent 50%, #4f9e28 50%, #4f9e28 75%, transparent 75%, transparent 100%); - background-size: 30px 30px; -} -.widget.timelife .item .progress-percentage { - width: 2.5rem; - color: var(--main); -} -.widget.wechat { - /* 微信公众号翻转 */ -} -.widget.wechat .flip-wrapper { - position: relative; - width: 100%; - height: auto; - z-index: 1; - cursor: var(--cursor-default); -} -.widget.wechat .flip-wrapper.pointer { - cursor: var(--cursor-pointer); -} -.widget.wechat .flip-wrapper:hover .animation { - -webkit-transform: rotateY(180deg); - transform: rotateY(180deg); -} -.widget.wechat .flip-wrapper:hover .animation .wechatBack { - display: block; -} -.widget.wechat .flip-wrapper:hover .animation .wechatFace { - display: none; -} -.widget.wechat .flip-content { - width: 100%; - height: auto; -} -.widget.wechat .flip-content.animation { - -webkit-transform-style: preserve-3d; - transform-style: preserve-3d; - -webkit-transition: cubic-bezier(0, 0, 0, 1.29) 0.3s; - transition: cubic-bezier(0, 0, 0, 1.29) 0.3s; -} -.widget.wechat .wechatFace { - width: 100%; - height: auto; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - background-size: 100%; -} -.widget.wechat .wechatBack { - display: none; - -webkit-box-sizing: border-box; - box-sizing: border-box; - background-size: 100%; -} -.widget.wechat .wechatBack.animation { - -webkit-transform: rotateY(180deg); - transform: rotateY(180deg); -} -.widget.wechat .wechatBack.show { - display: block; -} -.widget.wechat img { - width: 100%; - height: auto; -} -.main-content { - word-break: break-word; - color: var(--main); - font-size: 1.1rem; - font-weight: 300; -} -.main-content.article { - padding-bottom: 30px; -} -.main-content *:not(pre) > code { - font-size: 0.9em; - color: var(--color-a); - margin: 0 3px; - padding: 3px 6px; - white-space: normal; - vertical-align: baseline; - word-break: break-word; - background: var(--bg-g); - border-radius: var(--radius-inner); -} -.main-content h1, -.main-content h2, -.main-content h3, -.main-content h4, -.main-content h5, -.main-content h6 { - color: var(--dark-c); - margin-bottom: 18px; - -webkit-transition: all 0.2s ease-out; - transition: all 0.2s ease-out; -} -.main-content h1:before, -.main-content h2:before, -.main-content h1:after, -.main-content h2:after { - content: ''; - display: block; -} -.main-content h1:before, -.main-content h2:before { - margin-top: 30px; -} -.main-content h1:after, -.main-content h2:after { - margin-bottom: 20px; -} -.main-content h1 { - font-size: 1.45em; - font-weight: 700; -} -.main-content h2 { - font-size: 1.25em; - font-weight: 600; -} -.main-content h3, -.main-content h4, -.main-content h5 { - position: relative; - padding-left: 12px; -} -.main-content h3:before, -.main-content h4:before, -.main-content h5:before { - content: ''; - position: absolute; - top: 10%; - bottom: 10%; - left: 0; - width: 4px; - border-radius: 2px; - background: var(--theme); -} -.main-content h3:hover, -.main-content h4:hover, -.main-content h5:hover { - padding-left: 16px; -} -.main-content h3 { - margin: 25px 0 18px 0; - font-size: 1.2em; - font-weight: 600; -} -.main-content h4 { - font-size: 1.1em; -} -.main-content h5, -.main-content h6 { - font-size: 1em; -} -.main-content h6:before, -.main-content h6:after { - color: var(--theme); - font-weight: 600; - -webkit-transition: all 0.2s ease-out; - transition: all 0.2s ease-out; -} -.main-content h6:before { - content: '「'; - margin-right: 5px; -} -.main-content h6:after { - content: '」'; - margin-left: 5px; -} -.main-content h6:hover:before { - margin-left: -3px; - margin-right: 8px; -} -.main-content h6:hover:after { - margin-left: 8px; -} -.main-content p { - line-height: 1.7em; - margin-bottom: 14px; -} -.main-content .pwd { - color: var(--main); - border-radius: 2px; - -webkit-transition: all 0.3s; - transition: all 0.3s; - background: var(--main); - font-family: Ubuntu, sans-serif; -} -.main-content .pwd:hover { - color: #FFF; -} -.main-content .note { - text-indent: 2em; - background: url(../img/wordline.webp); - background-size: auto 2.5rem; - line-height: 2.5rem; -} -.main-content blockquote { - line-height: 1.7em; - margin-bottom: 14px; - padding: 8px 15px; - color: var(--dark-c); - background: var(--bg-h); - border-left: 5px solid var(--theme); - border-radius: var(--radius-inner); -} -.main-content blockquote > :not(:last-child) { - margin-bottom: 4px !important; -} -.main-content blockquote > figure { - margin-top: 0 !important; -} -.main-content blockquote > :last-child { - margin: 0 !important; -} -.main-content blockquote > :last-child > li:last-child { - margin-bottom: 0 !important; -} -.main-content blockquote > :last-child > li:last-child > p:last-child { - margin-bottom: 0 !important; -} -.main-content blockquote ol li ol:not(:last-child), -.main-content blockquote ul li ol:not(:last-child), -.main-content blockquote ol li ul:not(:last-child), -.main-content blockquote ul li ul:not(:last-child) { - margin-bottom: 4px !important; -} -.main-content blockquote ol li ol:last-child, -.main-content blockquote ul li ol:last-child, -.main-content blockquote ol li ul:last-child, -.main-content blockquote ul li ul:last-child { - margin-bottom: 0 !important; -} -.main-content blockquote ol li p:not(:last-child), -.main-content blockquote ul li p:not(:last-child) { - margin-bottom: 4px !important; -} -.main-content blockquote ol li p:last-child, -.main-content blockquote ul li p:last-child { - margin-bottom: 0 !important; -} -.main-content a:not([class]) { - line-height: 1.7em; - color: var(--theme); - background-image: linear-gradient(transparent calc(100% - 1px), var(--theme) 1px); - background-repeat: no-repeat; - background-size: 0 100%; - -webkit-transition: all 0.35s ease-in-out; - transition: all 0.35s ease-in-out; -} -.main-content a:not([class]):hover { - color: var(--theme); - background-size: 100% 100%; -} -.main-content ol, -.main-content ul { - margin-bottom: 14px; - padding-left: 16px; -} -.main-content ol li, -.main-content ul li { - line-height: 1.6em; - margin-bottom: 4px; -} -.main-content ol li:last-child, -.main-content ul li:last-child { - margin-bottom: 0 !important; -} -.main-content ol li.task-list-item, -.main-content ul li.task-list-item { - list-style: none; -} -.main-content ol li.task-list-item input, -.main-content ul li.task-list-item input { - position: relative; - top: 1px; -} -.main-content ol:not([class]):not([style])[start] { - padding-left: 34px; -} -.main-content ol:not([class]):not([style])[start] > li:not([class]):not([style]) { - list-style: decimal; -} -.main-content ol:not([class]):not([style])[start] > li:not([class]):not([style])::marker { - font-weight: 400; - color: var(--theme); - -webkit-transition: all 0.5s; - transition: all 0.5s; -} -.main-content ol:not([class]):not([style])[start] > li:not([class]):not([style]):hover::marker { - color: #e67700; -} -.main-content ol:not([class]):not([style]):not([start]) { - counter-reset: li; -} -.main-content ol:not([class]):not([style]):not([start]) > li:not([class]):not([style]) { - list-style: none; - position: relative; - padding-left: 1.2em; -} -.main-content ol:not([class]):not([style]):not([start]) > li:not([class]):not([style]):before { - position: absolute; - width: -webkit-max-content; - width: -moz-max-content; - width: max-content; - right: calc(100% - 1em); - content: counter(li) '.'; - counter-increment: li; - text-align: center; - font-weight: 400; - color: var(--theme); - -webkit-transition: all 0.5s; - transition: all 0.5s; -} -.main-content ol:not([class]):not([style]):not([start]) > li:not([class]):not([style]):hover:before { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - color: #e67700; - font-size: 1.1em; -} -.main-content ul:not([class]):not([style]) > li:not([class]):not([style]) { - list-style: none; - position: relative; - padding-left: 1.2em; -} -.main-content ul:not([class]):not([style]) > li:not([class]):not([style]):before { - content: ""; - width: 0.5em; - height: 0.5em; - left: 0; - top: 0.5em; - position: absolute; - border: 1px solid var(--theme); - background: 0 0; - -webkit-transition: all 0.5s; - transition: all 0.5s; - -webkit-transform: rotateZ(45deg); - transform: rotateZ(45deg); -} -.main-content ul:not([class]):not([style]) > li:not([class]):not([style]):hover:before { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - border-color: #e67700; -} -.main-content table { - width: 100%; - border-collapse: collapse; - background: var(--bg-d); - margin-bottom: 14px; - margin-left: auto; - margin-right: auto; - overflow: hidden; - font-size: 0.95em; -} -.main-content table td, -.main-content table th { - padding: 8px; - border: 1px solid var(--light-x); -} -.main-content table tbody tr { - -webkit-transition: background 0.35s; - transition: background 0.35s; -} -.main-content table tbody tr th { - font-weight: 500; - background: var(--bg-z); -} -.main-content table tbody tr:hover { - background: rgba(179, 179, 179, 0.15); -} -.main-content figure { - margin: 18px 0; - padding: 0; - border-radius: var(--radius-inner); - overflow: hidden; - position: relative; -} -.main-content figure > figcaption { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - background: rgba(153, 153, 153, 0.08); - padding: 0; - height: 2.2em; - line-height: 2.2em; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - font-size: 0.95em; - font-weight: 400; -} -.main-content figure > figcaption:before { - content: ''; - display: inline-block; - margin: auto 44px auto 8px; - border-radius: 50%; - background: #ff0800 no-repeat 10px 10px; - width: 12px; - height: 12px; - -webkit-box-shadow: 18px 0 #fdbc40, 36px 0 #35cd4b; - box-shadow: 18px 0 #fdbc40, 36px 0 #35cd4b; -} -.main-content figure > figcaption div { - margin-left: auto !important; - display: inline-block; - cursor: pointer; - text-align: center; -} -.main-content figure > figcaption div i { - -webkit-transition: all 0.25s; - transition: all 0.25s; - margin-right: 10px !important; -} -.main-content figure > figcaption div i.ri-arrow-down-s-line { - display: inline-block; - font-size: 1.2em; -} -.main-content figure > figcaption div i:hover { - opacity: 0.5; -} -.main-content figure > figcaption div i.close { - -webkit-transform: rotate(90deg); - transform: rotate(90deg); -} -.main-content figure pre { - margin: 0; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - overflow-y: hidden; - overflow-x: auto; - padding: 0; - border: none; - color: inherit !important; - background: transparent !important; - font-family: "Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace; - font-size: 1em; -} -.main-content figure pre > ul { - margin: 0; - padding: 0 8px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background: rgba(153, 153, 153, 0.08); -} -.main-content figure pre > ul li { - list-style: none; - line-height: 1.5em; - padding: 0 !important; - margin: 0 !important; -} -.main-content figure pre > ul li:before { - content: none !important; -} -.main-content figure pre > ul li.code-select:after { - content: ''; - width: 100%; - height: 1.5em; - left: 0; - background: rgba(151, 151, 151, 0.08); - position: absolute; - pointer-events: none; -} -.main-content figure pre li + li { - margin-top: 0; -} -.main-content figure pre code { - padding: 0 0 7px 5px; - line-height: 1.5em; - overflow-y: hidden; - font-family: "Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace; - width: 100%; -} -.main-content figure pre code:not(:last-child) { - margin-bottom: 1.8em; -} -.main-content figure .expand-done i { - color: inherit !important; -} -.main-content figure:not(.fold) .expand-done { - background: rgba(153, 153, 153, 0.08); -} -.main-content .gallery-item { - text-align: center; -} -.main-content .gallery-item > div { - position: relative; - overflow: hidden; - display: inline-block; -} -.main-content .gallery-item > p { - text-align: center; - color: var(--dark-d); - line-height: 1em; - font-size: 0.9em; -} -.main-content .gallery-item .fold { - border-radius: var(--radius-img); -} -.main-content :not(.jg-entry) > img { - max-width: 100%; -} -.main-content :not(.jg-entry) > img:not([class]) { - -webkit-transition: all 0.35s; - transition: all 0.35s; - margin: 5px 0; - border-radius: var(--radius-img); - cursor: -webkit-zoom-in; - cursor: zoom-in; -} -.main-content :not(.jg-entry) > img:not([class]):hover { - -webkit-transform: translateY(-5px); - transform: translateY(-5px); - -webkit-box-shadow: 0 34px 20px -24px rgba(136, 161, 206, 0.3); - box-shadow: 0 34px 20px -24px rgba(136, 161, 206, 0.3); -} -.main-content .mermaid { - text-align: center; - margin-bottom: 12px; -} -.main-content .mermaid > svg { - border-radius: var(--radius-inner); - background: #FFF; - -webkit-transition: all 0.35s; - transition: all 0.35s; - border: 1px solid var(--light-b); -} -.main-content .mermaid > svg:hover { - -webkit-transform: translateY(-5px); - transform: translateY(-5px); - -webkit-box-shadow: 0 34px 20px -24px rgba(136, 161, 206, 0.3); - box-shadow: 0 34px 20px -24px rgba(136, 161, 206, 0.3); -} -.main-content .katex { - line-height: 1.4; - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - overflow-x: auto; - overflow-y: hidden; - max-width: 100%; - padding: 0 2px; -} -.main-content.literature-content { - font-size: 1.3em; -} -.main-content.literature-content .note { - line-height: 40px; - background-size: auto; -} -.pagination { - font-size: 1rem; - margin: -0.25rem; -} -.pagination, -.pagination-list { - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - text-align: center; -} -.pagination-link.is-current { - background-color: var(--bg-e); - border: 0; - color: #fff; -} -.pagination .pagination .pagination-list { - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-ordinal-group: 3; - -ms-flex-order: 2; - order: 2; - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - -ms-flex-negative: 1; - flex-shrink: 1; -} -.pagination-link:not(.is-current), -.pagination .pagination-previous, -.pagination .pagination-next { - background: var(--background); - border: none; -} -.pagination-link, -.pagination-next, -.pagination-previous { - color: var(--dark-c); - min-width: 2.25em; - font-size: 1em; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - margin: 0.25rem; - text-align: center; - padding: calc(0.375em - 1px) 0.5em; - position: relative; - vertical-align: top; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - border-radius: 4px; - line-height: 1.5; - height: 2.25em; - -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); - box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; -} -.pagination-ellipsis { - color: var(--dark-d); - margin: 0.25rem; - padding: 0 0.5em; -} -.actions { - position: fixed; - right: -48px; - bottom: 40px; - z-index: 200; - -webkit-transition: all 0.5s; - transition: all 0.5s; - opacity: 0.9; -} -.actions > div { - display: block; - margin-bottom: 5px; - width: 35px; - height: 35px; - border-radius: 5px; - background-color: var(--theme); - color: #fff; - text-align: center; - font-size: 20px; - line-height: 32px; - border: none; - cursor: pointer; -} -.actions > .bullet-screen span { - display: inline-block; - line-height: 1; - font-weight: 600; - font-family: ui-serif, serif !important; -} -.actions > .stop-bullet-screen span { - background-image: linear-gradient(45deg, transparent 46%, #fff 46%, #fff 54%, transparent 54%); -} -.footer { - background-color: transparent; - -webkit-backdrop-filter: blur(10px); - backdrop-filter: blur(10px); - padding: 1.5rem; - position: relative; -} -.footer:before { - content: ''; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background-color: var(--background); -} -.footer-container .logo-title { - margin: 15px 15px 15px 0; - display: block; -} -.footer-container > li { - display: inline-block; - vertical-align: middle; - padding: 0 5px; - color: var(--dark-b); - line-height: 1.6em; -} -.footer-container > li > p:not(:first-child) { - font-size: 0.9em; -} -.footer-container > li:last-child { - float: right; -} -.footer-container .icon-spot:first-child > *:not(:first-child):before { - content: ""; - width: 4px; - height: 4px; - margin: 0 0.4em; - border-radius: 50%; - display: inline-block; - background: var(--dark-b); - opacity: 0.5; - vertical-align: 0.2em; -} -.footer-container .icon-spot:not(:first-child) > *:not(:first-child):before { - content: ""; - width: 4px; - height: 4px; - margin: 0 0.4em; - border-radius: 50%; - display: inline-block; - background: var(--dark-b); - opacity: 0.5; - vertical-align: 0.2em; -} -.footer-container .icon-spot i { - font-size: 1.1em; -} -.footer-container a:not([class]) { - color: var(--dark-b); -} -.footer-container a:not([class]):hover { - color: var(--theme); -} -.footer-container a.record { - color: var(--dark-b); -} -.footer-container a.record:hover { - color: var(--theme); -} -.footer-container .stand { - color: var(--theme); - margin: 0 4px; -} -.footer-container .powered { - color: var(--theme); - font-weight: 600; -} -.footer-container .cloud-driven { - margin: 0 3px; -} -.footer-container .cloud-driven img { - height: 16px; - vertical-align: text-bottom; -} -@media (min-width: 767px) { - .footer-center { - text-align: center; - } - .footer-center > li { - text-align: left; - } -} -@media (max-width: 1215px) { - .navbar .navbar-search .input { - width: 100px; - } - .container:not(.two-column) .column-right { - display: none !important; - } - .is-hidden-not-desktop { - display: none !important; - } - .card:not(.is-hidden-not-desktop):not(.is-hidden-all) ~ .card { - margin-top: 1.4rem !important; - } -} -@media (max-width: 1215px) { - .navbar-above .navbar-nav .item .m-icon { - display: none !important; - } -} -@media (max-width: 1023px) { - .section .card .cover-image { - min-height: 24vw; - } - .section .card .thumbnail-image { - min-height: 20vw; - } - .swiper-slide-details-title { - font-size: 1.3rem; - } - .swiper-slide-details .breadcrumb { - display: none; - } - .swiper-pagination-bullet { - width: 8px; - height: 4px; - } - .swiper-pagination-bullet-active { - width: 20px; - } - .navbar .container { - padding: 0 0.75rem; - } - .navbar .container .navbar-searchicon { - display: block; - } - .navbar .container .navbar-search { - display: none; - } - .navbar .container .navbar-console { - float: right; - margin-left: 5px; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - background: transparent !important; - } - .navbar .container .navbar-console > i { - font-size: 23px; - color: var(--main); - } -} -@media (max-width: 768px) { - .title { - font-size: 1.3rem !important; - } - .container .column-side, - .container .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 100%; - } - .navbar .container { - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - padding: 0 1.5rem; - min-height: 3.5rem; - } - .navbar .container .navbar-slideicon { - display: block; - } - .navbar .container .navbar-nav { - display: none; - } - .navbar .container .navbar-searchicon { - margin-left: 0; - } - .navbar .container .navbar-console { - display: none; - } - .swiper-button-prev, - .swiper-button-next { - display: none !important; - } - .is-hidden-mobile { - display: none !important; - } - .card:not(.is-hidden-mobile):not(.is-hidden-all) ~ .card { - margin-top: 1.4rem !important; - } - .pagination-next, - .pagination-previous { - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - -ms-flex-negative: 1; - flex-shrink: 1; - } - .section { - padding-top: 5rem; - } - .section .container > .tips { - margin-left: -0.25rem; - margin-right: -0.25rem; - max-width: none; - } - .section .columns .column { - padding: 0.5rem; - } - .section .card .cover-image { - height: 40vw; - min-height: 130px; - } - .section .card .thumbnail-image { - height: 32vw; - min-height: 95px; - } - .footer-container { - text-align: center; - } - .footer-container > li { - display: block; - } - .footer-container > li:last-child { - float: none; - } - .footer-container > li .footer-truncation { - display: block; - } - .footer-container > li .footer-truncation:before { - content: none !important; - } - html:not(.disable-scroll) .actions.show { - right: 8px; - } -} -@media (min-width: 769px) { - .container .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 33%; - } - .container .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 67%; - } - .container .columns, - .container .level { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - } - .container .column-left, - .container .column-right { - -webkit-transition: all 0.5s; - transition: all 0.5s; - } - .container .column-left.top-sticky, - .container .column-right.top-sticky { - -ms-flex-item-align: start; - align-self: flex-start; - position: sticky; - top: 5rem; - } - .container .column-left.bottom-sticky, - .container .column-right.bottom-sticky { - -ms-flex-item-align: end; - align-self: flex-end; - position: sticky; - bottom: 1rem; - } - .container .pagination .pagination-previous { - -webkit-box-ordinal-group: 2; - -ms-flex-order: 1; - order: 1; - } - .container .pagination .pagination-list { - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - -ms-flex-negative: 1; - flex-shrink: 1; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-ordinal-group: 3; - -ms-flex-order: 2; - order: 2; - } - .container .pagination .pagination-next { - -webkit-box-ordinal-group: 4; - -ms-flex-order: 3; - order: 3; - } - body.move-up .container .column-left.top-sticky, - body.move-up .container .column-right.top-sticky { - top: 1rem; - } -} -@media (min-width: 1024px) { - .section .card .cover-image { - min-height: 250px; - } - .section .card .thumbnail-image { - min-height: 195px; - } - .container { - max-width: 960px; - } - .container .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 28%; - } - .container .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 72%; - } -} -@media (min-width: 1216px) { - .section .card .cover-image { - min-height: 240px; - } - .section .card .thumbnail-image { - min-height: 185px; - } - .container { - max-width: 1152px; - } - .container .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 25%; - } - .container .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 50%; - } - .two-column .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 26%; - } - .two-column .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 74%; - } - .is-hidden-desktop { - display: none !important; - } - .card:not(.is-hidden-desktop):not(.is-hidden-all) ~ .card { - margin-top: 1.4rem !important; - } -} -@media (min-width: 1408px) { - .section .card-small .main-content { - -webkit-line-clamp: 3 !important; - min-height: 4em; - max-height: 4.8em; - } - .section .card .cover-image { - min-height: 260px; - } - .section .card .thumbnail-image { - min-height: 210px; - } - .container { - max-width: 1344px; - } - .container .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 22%; - } - .container .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 56%; - } - .container.two-column .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 25%; - } - .container.two-column .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 75%; - } -} -@media (min-width: 1700px) { - .section .card .cover-image { - min-height: 320px; - } - .section .card .thumbnail-image { - min-height: 240px; - } - .container { - max-width: 1600px; - } - .container .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 20%; - } - .container .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 60%; - } - .container.two-column { - max-width: 1400px; - } - .container.two-column .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 24%; - } - .container.two-column .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 76%; - } -} -@media (min-width: 2200px) { - html { - font-size: 15px; - } - .section .card .cover-image { - min-height: 340px; - } - .section .card .thumbnail-image { - min-height: 260px; - } - .container { - max-width: 1800px; - } - .container .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 18%; - } - .container .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 64%; - } - .container.two-column { - max-width: 1500px; - } - .container.two-column .column-side { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 22%; - } - .container.two-column .column-main { - -webkit-box-flex: 0; - -ms-flex: none; - flex: none; - width: 78%; - } -} -@-webkit-keyframes move-forever { - 0% { - -webkit-transform: translate3d(-90px, 0, 0); - transform: translate3d(-90px, 0, 0); - } - to { - -webkit-transform: translate3d(85px, 0, 0); - transform: translate3d(85px, 0, 0); - } -} -@keyframes move-forever { - 0% { - -webkit-transform: translate3d(-90px, 0, 0); - transform: translate3d(-90px, 0, 0); - } - to { - -webkit-transform: translate3d(85px, 0, 0); - transform: translate3d(85px, 0, 0); - } -} -@-webkit-keyframes flicker { - 0% { - opacity: 1; - } - 100% { - opacity: 0; - } -} -@keyframes flicker { - 0% { - opacity: 1; - } - 100% { - opacity: 0; - } -} -@-webkit-keyframes code-expand { - 0% { - opacity: 0.8; - } - 50% { - opacity: 0.1; - } - 100% { - opacity: 0.8; - } -} -@keyframes code-expand { - 0% { - opacity: 0.8; - } - 50% { - opacity: 0.1; - } - 100% { - opacity: 0.8; - } -} -@-webkit-keyframes dung { - 0% { - -webkit-transform: translateY(0); - transform: translateY(0); - } - 30% { - -webkit-transform: translateY(-2px); - transform: translateY(-2px); - } - 60% { - -webkit-transform: translateY(2px); - transform: translateY(2px); - } - 80% { - -webkit-transform: translateY(-1px); - transform: translateY(-1px); - } - 90% { - -webkit-transform: translateY(1px); - transform: translateY(1px); - } - 100% { - -webkit-transform: translateY(0); - transform: translateY(0); - } -} -@keyframes dung { - 0% { - -webkit-transform: translateY(0); - transform: translateY(0); - } - 30% { - -webkit-transform: translateY(-2px); - transform: translateY(-2px); - } - 60% { - -webkit-transform: translateY(2px); - transform: translateY(2px); - } - 80% { - -webkit-transform: translateY(-1px); - transform: translateY(-1px); - } - 90% { - -webkit-transform: translateY(1px); - transform: translateY(1px); - } - 100% { - -webkit-transform: translateY(0); - transform: translateY(0); - } -} -/* 时间戳界面 */ -.timeline { - margin-left: 16px; - padding-left: 24px; - padding-top: 16px; - border-left: 1px solid var(--light-b); -} -.timeline-title { - background: var(--bg-e); - color: var(--light-a); - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - font-size: 0.75em; - height: 2em; - padding: 0 8px; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - white-space: nowrap; - border-radius: var(--radius-inner); - margin-bottom: 0; -} -.timeline .media { - position: relative; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - border: none; -} -.timeline .media:not(:last-child) { - margin-bottom: 21px; -} -.timeline .media + .media { - padding-top: 14px; - margin-top: 0; -} -.timeline .media-content time { - font-size: 0.85em; - display: block; - color: var(--dark-b); -} -.timeline .media-content .title { - color: var(--dark-c); - font-size: 1.1em !important; -} -.timeline .media-content p a { - font-size: 0.9em; - color: var(--dark-e); -} -.timeline .media-left { - margin-right: 14px; -} -.timeline .media-left img { - height: 64px; - width: 64px; - -o-object-fit: cover; - object-fit: cover; -} -.timeline .media:before { - width: 9px; - height: 9px; - top: 18px; - background: var(--light-d); - border-radius: 50%; -} -.timeline .media:before, -.timeline .media:last-child:after { - content: ''; - display: block; - position: absolute; - left: -29px; -} -.timeline .media:first-child:before { - top: 4px; -} -.timeline .media:first-child:last-child:after { - top: 11px; -} -.timeline .media:last-child:after { - top: 27px; - width: 9px; - bottom: 0; - background: var(--bg-b); -} -/* 瞬间界面 */ -.journal-teams { - display: grid; - gap: 15px; - grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); -} -.journal-teams .item { - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; - background: var(--bg-b); - height: 28px; - line-height: 28px; - border-radius: 14px; - cursor: pointer; - color: var(--main); - font-size: 12px; - padding: 0 15px; - text-align: center; - -webkit-transition: color 0.35s, background 0.35s, -webkit-box-shadow 0.35s, -webkit-transform 0.35s; - transition: color 0.35s, background 0.35s, -webkit-box-shadow 0.35s, -webkit-transform 0.35s; - transition: color 0.35s, background 0.35s, box-shadow 0.35s, transform 0.35s; - transition: color 0.35s, background 0.35s, box-shadow 0.35s, transform 0.35s, -webkit-box-shadow 0.35s, -webkit-transform 0.35s; -} -.journal-teams .item.active { - -webkit-transform: translateY(-2px); - transform: translateY(-2px); - color: #fff; - background: var(--theme); - -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05); - box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05); -} -.journal em { - font-style: normal; -} -.journal-date { - line-height: 34px; - color: var(--dark-c); -} -.journal-date i { - margin-right: 4px; - font-size: 16px; -} -.journal-content { - padding: 10px 12px; - overflow: hidden; - border-radius: 0 6px 6px 6px; - background-color: var(--bg-c); - position: relative; -} -.journal-content .main-content :last-child { - margin-bottom: 0; -} -.journal-content.fold { - max-height: 240px; -} -.journal-content.unfold { - padding: 10px 12px 40px 12px; -} -.journal-content .tag { - color: var(--theme); -} -.journal-content .tag:before { - content: "#"; -} -.journal-operation { - padding: 12px 0 2px 0; -} -.journal-operation-item { - margin-left: 10px; - -webkit-transition: all 0.2s; - transition: all 0.2s; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - color: var(--main); -} -.journal-operation-item a { - color: var(--main); -} -.journal-operation-item a i { - margin-right: 5px; - font-size: 1.2em; -} -.journal-operation-item a:hover { - color: var(--theme); -} -.journal-operation-item a:hover i { - -webkit-transform: scale(1.1); - transform: scale(1.1); -} -.journal-operation-item a:not(.like) .ri-heart-3-line { - color: #f55448; - -webkit-transform: none; - transform: none; -} -.journal-operation-item a:not(.like) .ri-heart-3-line:before { - content: '\ee0a'; -} -.journal-operation-owner { - float: right; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; -} -.journal-operation-owner > .avatar { - height: 1.5em; - width: 1.5em; - border-radius: 50%; -} -.journal-operation-owner > .no-avatar { - height: 1.5em; - width: 1.5em; - background: var(--light-b); - border-radius: 50%; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.journal-operation-owner > .no-avatar > .avatar-info { - font-size: 0.8em; - color: var(--dark-c); -} -.journal-operation-owner > .name { - margin-left: 5px; - font-size: 1em; - color: var(--main); - max-width: 8em; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -.journal-comment { - padding: 12px 0 2px 0; - display: none; -} -/* 友链界面 */ -.links:not(.widget) { - margin-bottom: 20px; -} -.links:not(.widget) .link-title { - margin-bottom: 10px; -} -.links:not(.widget) ul { - margin: 0; - list-style: none; - padding: 0; - width: 100%; - display: inline-block; -} -.links:not(.widget) ul li { - width: 32%; - float: left; - border: 1px solid var(--light-b); - padding: 10px 30px; - margin: 4px; - position: relative; - overflow: hidden; - -webkit-transition: all 0.3s; - transition: all 0.3s; - border-radius: 10px; - height: 100px; - -webkit-box-sizing: border-box; - box-sizing: border-box; - background: var(--bg-d); -} -.links:not(.widget) ul li:hover { - border: 1px solid var(--theme); -} -.links:not(.widget) ul li:hover:before { - width: 180%; -} -.links:not(.widget) ul li:hover img { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); -} -.links:not(.widget) ul li:hover .link-name { - opacity: 0.9; -} -.links:not(.widget) ul li:hover .link-desc { - opacity: 0.6; -} -.links:not(.widget) ul li:before { - content: ""; - background-color: var(--theme); - -webkit-transform: skew(45deg, 0); - transform: skew(45deg, 0); - width: 0; - height: 100%; - position: absolute; - top: 0; - left: -60px; - -webkit-transition: all 0.5s; - transition: all 0.5s; - opacity: 0.2; -} -.links:not(.widget) ul li img { - float: right; - -webkit-box-shadow: inset 0 0 10px var(--theme); - box-shadow: inset 0 0 10px var(--theme); - opacity: 1; - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - -webkit-transition: all ease 1s; - transition: all ease 1s; - margin-top: 5px; - width: 65px; - height: 65px; - padding: 2px; - border-radius: 100%; -} -.links:not(.widget) .link-name { - color: var(--theme); - padding-bottom: 6px; - display: block; - -webkit-transition: all 0.3s; - transition: all 0.3s; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} -.links:not(.widget) .link-desc { - color: #949494; - font-size: 13px; - border-top: 1px dashed var(--light-d); - line-height: 25px; - -webkit-transition: all 0.5s; - transition: all 0.5s; - text-indent: 1em; - overflow: hidden; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; -} -@media (max-width: 630px) { - .links:not(.widget) ul li { - width: 100% !important; - } -} -@media (max-width: 768px) { - .links:not(.widget) ul li:before { - display: none; - } -} -@media (max-width: 1600px) { - .links:not(.widget) ul li { - width: 48%; - } -} -/* 相册界面 */ -.photos-teams { - display: grid; - gap: 15px; - grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); -} -.photos-teams .item { - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; - background: var(--bg-b); - height: 28px; - line-height: 28px; - border-radius: 14px; - cursor: pointer; - color: var(--main); - font-size: 12px; - padding: 0 15px; - text-align: center; - -webkit-transition: color 0.35s, background 0.35s, -webkit-box-shadow 0.35s, -webkit-transform 0.35s; - transition: color 0.35s, background 0.35s, -webkit-box-shadow 0.35s, -webkit-transform 0.35s; - transition: color 0.35s, background 0.35s, box-shadow 0.35s, transform 0.35s; - transition: color 0.35s, background 0.35s, box-shadow 0.35s, transform 0.35s, -webkit-box-shadow 0.35s, -webkit-transform 0.35s; -} -.photos-teams .item.active { - -webkit-transform: translateY(-2px); - transform: translateY(-2px); - color: #fff; - background: var(--theme); - -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05); - box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05); -} -.photos-gallery { - display: block; - width: 100%; - position: relative; - margin-top: 12px; -} -.photos-gallery.loading { - margin-bottom: 80px; -} -.photos-gallery.loading:empty { - height: 0 !important; -} -.photos-gallery.loading:after { - width: 100%; - position: absolute; - bottom: -80px; -} -.photos-gallery > div { - position: absolute; - display: inline-block; - overflow: hidden; - opacity: 0.1; - margin: 0; - padding: 0; - border-radius: 8px; - cursor: pointer; -} -.photos-gallery > div > img { - position: absolute; - -webkit-transition: -webkit-transform 1s ease; - transition: -webkit-transform 1s ease; - transition: transform 1s ease; - transition: transform 1s ease, -webkit-transform 1s ease; - top: 50%; - left: 50%; - margin: 0; - padding: 0; - border: none; - opacity: 0; -} -.photos-gallery > div > .jg-caption { - opacity: 0; - position: absolute; - bottom: 0; - padding: 5px; - background-color: #000000; - left: 0; - right: 0; - margin: 0; - color: white; - font-size: 0.85em; - font-weight: 300; - font-family: sans-serif; - -webkit-transition: opacity 300ms ease-in; - transition: opacity 300ms ease-in; -} -.photos-gallery > div > .jg-caption.jg-caption-visible { - opacity: 0.7; -} -.photos-gallery > div .info { - position: absolute; - right: 0; - bottom: 0; - left: 0; - color: #fff; - padding: 20px; - max-height: 100%; - -webkit-transform: translateY(calc(100% - 45px)); - transform: translateY(calc(100% - 45px)); - -webkit-transition: -webkit-transform 0.35s ease-in; - transition: -webkit-transform 0.35s ease-in; - transition: transform 0.35s ease-in; - transition: transform 0.35s ease-in, -webkit-transform 0.35s ease-in; - background: -webkit-gradient(linear, left bottom, left top, from(#151515cc), to(transparent)); - background: linear-gradient(0deg, #151515cc, transparent 100%); -} -.photos-gallery > div .info svg { - width: 1.3em; - height: 1.3em; - fill: #fff; - vertical-align: text-bottom; - stroke-width: 40; - stroke: #fff; - margin-right: 6px; - float: left; -} -.photos-gallery > div .info > :not(:first-child) { - margin-top: 5px; -} -.photos-gallery > div .info > div:first-child { - margin-left: -16px; - -webkit-transition: all 0.35s ease-in; - transition: all 0.35s ease-in; -} -.photos-gallery > div .info > div:first-child svg { - width: 0; - -webkit-transition: all 0.35s ease-in; - transition: all 0.35s ease-in; -} -.photos-gallery > div .info > div:first-child p { - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -.photos-gallery > div:hover img { - -webkit-transform: scale(1.2); - transform: scale(1.2); -} -.photos-gallery > div:hover .info { - overflow-y: scroll; - -webkit-transform: translateY(0); - transform: translateY(0); -} -.photos-gallery > div:hover .info > div:first-child { - margin-left: 0; -} -.photos-gallery > div:hover .info > div:first-child svg { - width: 1.3em; -} -.photos-gallery > div:hover .info > div:first-child p { - overflow: inherit; - white-space: inherit; - text-overflow: inherit; -} -.photos-gallery > .jg-entry-visible { - opacity: 1; - background: none; -} -.photos-gallery > .jg-entry-visible > img { - opacity: 1; -} -/* 标签界面 */ -.tags-field { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - font-size: 1.3em; -} -.tags-field .tags { - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} -.tags-field .tags:not(:last-child) { - margin: 0 0.75rem 0.75rem 0; -} -.tags-field .tags .tag:not(.is-grey) { - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} -.tags-field .tags .tag.is-grey { - background: var(--bg-e); - color: rgba(255, 255, 255, 0.8); - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} -/* 朋友圈界面 */ -.friends .level { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin-top: 1.5rem; -} -.friends .level-item { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - margin: 0 !important; - text-align: center !important; -} -.friends .level-item .heading { - display: block; - letter-spacing: 1px; - margin-bottom: 5px; - text-transform: uppercase; -} -.friends .level-item .value { - color: var(--dark-c); - font-size: 2rem; - line-height: 1.125; - margin-bottom: 0; - font-weight: 400 !important; -} -.friends .meta { - font-size: 1em !important; -} -.friends .meta a { - line-height: 1.1em; - color: var(--dark-a); -} -.friends .meta img { - height: 1.5em; - width: 1.5em; -} +@charset "utf-8";@-webkit-keyframes swag{0%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}50%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes swag{0%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}50%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes move-forever{0%{-webkit-transform:translate3d(-90px,0,0);transform:translate3d(-90px,0,0)}to{-webkit-transform:translate3d(85px,0,0);transform:translate3d(85px,0,0)}}@keyframes move-forever{0%{-webkit-transform:translate3d(-90px,0,0);transform:translate3d(-90px,0,0)}to{-webkit-transform:translate3d(85px,0,0);transform:translate3d(85px,0,0)}}@-webkit-keyframes flicker{0%{opacity:1}to{opacity:0}}@keyframes flicker{0%{opacity:1}to{opacity:0}}@-webkit-keyframes code-expand{0%,to{opacity:.8}50%{opacity:.1}}@keyframes code-expand{0%,to{opacity:.8}50%{opacity:.1}}@-webkit-keyframes dung{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}30%{-webkit-transform:translateY(-2px);transform:translateY(-2px)}60%{-webkit-transform:translateY(2px);transform:translateY(2px)}80%{-webkit-transform:translateY(-1px);transform:translateY(-1px)}90%{-webkit-transform:translateY(1px);transform:translateY(1px)}}@keyframes dung{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}30%{-webkit-transform:translateY(-2px);transform:translateY(-2px)}60%{-webkit-transform:translateY(2px);transform:translateY(2px)}80%{-webkit-transform:translateY(-1px);transform:translateY(-1px)}90%{-webkit-transform:translateY(1px);transform:translateY(1px)}}*,html{-webkit-box-sizing:border-box;box-sizing:border-box}*{margin:0;padding:0;outline:0;-webkit-tap-highlight-color:transparent}.comment-wrapper-z-index{z-index:99;position:relative}halo-contact-form-toast-container,lit-toast-container{z-index:100}.gray-mode{-webkit-filter:grayscale(1)!important;filter:grayscale(1)!important}body>.footer,body>.navbar,body>.section{opacity:0}.navbar-above{-webkit-transform:translateY(-100%);transform:translateY(-100%)}.load-block,body>.footer,body>.navbar,body>.section{-webkit-transition:opacity .3s ease-out,-webkit-transform .3s ease-out;transition:opacity .3s ease-out,transform .3s ease-out;transition:opacity .3s ease-out,transform .3s ease-out,-webkit-transform .3s ease-out}.card,.load-block{opacity:0;-webkit-transform:scale(.8);transform:scale(.8);-webkit-transform-origin:center top;transform-origin:center top}.tips{margin-bottom:-.6rem;background-color:rgba(221,234,255,.9)!important;padding:.8rem;border:0!important;color:var(--theme)!important;font-size:1.15em}.tips::before{content:"\f2a2";font:14px/1 remixicon;margin-right:.5rem;font-size:1.2em}.tips .click-close{margin-left:5px;cursor:pointer;font-size:18px;line-height:1.2em;float:right}.tips .click-close:hover{color:#333}html{font-size:14px;background-color:var(--bg-f);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-width:300px;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}html.loaded body>.footer,html.loaded body>.navbar,html.loaded body>.section{opacity:1}html.loaded .navbar-above{-webkit-transform:translateY(0);transform:translateY(0);z-index:100}html.loaded .card,html.loaded .load-block{opacity:1;-webkit-transform:none;transform:none}html.pjax-loading .column-main .card,html.pjax-loading .load-block{opacity:.8;-webkit-transform:scale(.8);transform:scale(.8);-webkit-transform-origin:center top;transform-origin:center top}html.disable-scroll{overflow:hidden}html:not(.disable-scroll) body.move-up .navbar-above{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}html:not(.disable-scroll) .actions.show{right:16px}html.clean{background-color:var(--style-a)}html.clean .card{-webkit-box-shadow:none;box-shadow:none;border:1px solid var(--light-b);background:0 0}html.clean .card:hover{background:0 0}html.clean .footer{-webkit-backdrop-filter:none;backdrop-filter:none}html.clean .footer:before{content:none}html.clean .pagination-link:not(.is-current),html.clean .pagination-next,html.clean .pagination-previous{-webkit-box-shadow:none;box-shadow:none;border:1px solid var(--light-b)}body{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-orient:vertical;-ms-flex-direction:column;flex-direction:column;min-height:100vh;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:1em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-bottom:env(safe-area-inset-bottom);scroll-behavior:smooth;overflow-x:hidden;overflow-y:overlay}body::-webkit-scrollbar-thumb{background:var(--theme);background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.4) 25%,transparent 0,transparent 50%,rgba(255,255,255,.4) 0,rgba(255,255,255,.4) 75%,transparent 0,transparent)}body:after,body:before{position:fixed;top:0;left:0;right:0;bottom:0}body:before{content:'';z-index:-1;-webkit-transition:opacity 1s;transition:opacity 1s;background-size:cover!important}body:after{content:"";z-index:-10;pointer-events:none}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-thumb{background:rgba(160,160,160,.2);border-radius:2em}::-webkit-scrollbar-track{background:0 0;border-radius:2em}::-moz-selection{color:#fff;background:var(--theme)}::selection{color:#fff;background:var(--theme)}input[type=text]{-webkit-appearance:none;border-radius:0;font-size:13px;font-weight:500}iframe{display:block;border:0}textarea{font-size:14px;resize:none;-webkit-appearance:none}li,ol,ul{list-style:none}img{border:0;vertical-align:middle}img:not([src]),img[src=""]{border:0;opacity:0}canvas,svg,table td,table th{vertical-align:middle}a,button{cursor:pointer}button{-webkit-appearance:none;font-size:13px}table{border-collapse:collapse;border-spacing:0}blockquote,dd,dl,dt,fieldset,figure,html,iframe,legend,li,ol,p,pre,textarea,ul{margin:0;padding:0}body{margin:0!important}body,h1,h2,h3,h4,h5,h6,hr,pre code{padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:500;margin:0 0 10px}button,input,select{margin:0}audio{max-width:100%}body,button,input,select,textarea{font-family:"Dream Font",BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif}code,pre{-moz-osx-font-smoothing:auto;font-family:monospace}.section .card-title span,section{-webkit-box-flex:1;-ms-flex:1;flex:1}a{color:var(--theme);text-decoration:none;word-break:break-all}a:hover{color:var(--dark-c)}code{color:#ff3860;font-weight:400;padding:.25em .5em}hr{background-color:var(--light-b);display:block;height:1px;margin:11.2px 0}input[type=checkbox],input[type=radio]{vertical-align:baseline}code,pre,small{font-size:.875em}span{font-style:inherit;font-weight:inherit}strong{font-weight:700}fieldset,hr{border:0}code,pre{background-color:#f5f5f5}pre{-webkit-overflow-scrolling:touch;color:var(--main);overflow-x:auto;white-space:pre;word-wrap:normal;padding:1.25rem 1.5rem}pre code{background-color:transparent;color:currentColor;font-size:1em}table td>p,table th>p{margin:auto!important}.container{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;margin:0 auto;position:relative;width:auto}.canvas_effects{position:fixed;margin:0;padding:0;border:0;outline:0;left:0;top:0;width:100%;height:100%;pointer-events:none}.canvas_effects.universe{background:radial-gradient(1600px at 70% 120%,#212750 10%,#020409 100%)}.canvas_effects.night{display:none}.tag{background-color:var(--bg-c);border-radius:4px;color:var(--dark-c);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:.75em;height:2em;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;line-height:1.5;padding-left:.75em;padding-right:.75em;white-space:nowrap}.button,.level,.tag{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.button{-moz-appearance:none;-webkit-appearance:none;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:none;box-shadow:none;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:1rem;height:2.25em;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;line-height:1.5;padding:calc(.375em - 1px) calc(.625em - 1px);position:relative;vertical-align:top}.button.is-link{border-color:transparent;color:#fff;background-color:var(--theme)}.button.is-link:hover{opacity:.8}.button.is-rounded{border-radius:290486px;padding-left:1em;padding-right:1em}.button.is-transparent{background:0 0;border-color:transparent;color:var(--dark-c)}.button.is-transparent.is-hovered,.button.is-transparent:hover,.menu-list a:hover{background-color:var(--bg-c)}.button.is-large{font-size:1.5rem}.level{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.level-item{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-preferred-size:auto;flex-basis:auto;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.title{color:var(--dark-c);font-size:1.6rem;font-weight:400;line-height:1.25}.title .top{background-image:-webkit-linear-gradient(0deg,rgba(57,169,255,.8) 0,rgba(155,79,255,.8) 100%);border-radius:2px 6px;color:#fff;padding:0 6px;font-size:12px;line-height:20px;vertical-align:3px;margin-right:5px;display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.is-invisible{visibility:hidden!important}.image{display:block;position:relative}.breadcrumb{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;font-size:.8rem;-ms-flex-negative:0;flex-shrink:0}.breadcrumb li i{margin-right:3px}.breadcrumb li:not(:first-child)::before{content:"/";color:var(--light-d);padding:0 5px}.has-link-grey{line-height:1.85rem;color:var(--theme);background-image:linear-gradient(transparent calc(100% - 1px),var(--theme) 1px);background-repeat:no-repeat;background-size:0 100%;-webkit-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.has-link-grey:hover{color:var(--theme)!important;background-size:100% 100%}.is-hidden-all{display:none!important}.card:not(.is-hidden-all)~.card{margin-top:1.4rem!important}.indent{text-indent:2em}.dream-emoji{width:1.4em;height:1.4em;margin:auto 1px;vertical-align:text-bottom}.menu-list{line-height:1.25}.menu-list a{border-radius:2px;color:var(--main);display:block;padding:.5em .75em}.menu-list a.level{display:-webkit-box;display:-ms-flexbox;display:flex}.menu-list a.is-active{background-color:var(--bg-e);color:var(--light-z)}.menu-list i{margin-right:.5em}.menu-list li ul{margin:.5em 0 .75em .75em;padding-left:.5em;border-left:1px solid var(--light-d)}.menu-list>li>a:not(.is-active)+.menu-list{display:none}.expand-done{background:var(--bg-k);position:absolute;bottom:0;left:0;right:0;text-align:center;height:1.8rem;cursor:pointer}.expand-done i{display:inline-block;color:var(--dark-b);font-size:1.6rem;-webkit-animation:code-expand 2.4s infinite;animation:code-expand 2.4s infinite;text-shadow:0 -1px 5px var(--light-d);-webkit-transition:all .3s;transition:all .3s}.fold{max-height:320px}.fold .expand-done{background:-webkit-gradient(linear,left top,left bottom,from(transparent),to(rgba(77,77,77,.4)));background:linear-gradient(180deg,transparent,rgba(77,77,77,.4))}.fold .expand-done i{-webkit-transform:rotatex(180deg);transform:rotatex(180deg)}.loading::after{content:'';display:block;width:70px;height:70px;margin:12px auto;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTciIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCA1NyA1NyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBzdHJva2U9IiM0MDllZmYiPg0KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEgMSkiIHN0cm9rZS13aWR0aD0iMiI+DQogICAgICAgICAgICA8Y2lyY2xlIGN4PSI1IiBjeT0iNTAiIHI9IjUiPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN5Ig0KICAgICAgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjIuMnMiDQogICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9IjUwOzU7NTA7NTAiDQogICAgICAgICAgICAgICAgICAgICBjYWxjTW9kZT0ibGluZWFyIg0KICAgICAgICAgICAgICAgICAgICAgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiIC8+DQogICAgICAgICAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iY3giDQogICAgICAgICAgICAgICAgICAgICBiZWdpbj0iMHMiIGR1cj0iMi4ycyINCiAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz0iNTsyNzs0OTs1Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgPC9jaXJjbGU+DQogICAgICAgICAgICA8Y2lyY2xlIGN4PSIyNyIgY3k9IjUiIHI9IjUiPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN5Ig0KICAgICAgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjIuMnMiDQogICAgICAgICAgICAgICAgICAgICBmcm9tPSI1IiB0bz0iNSINCiAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz0iNTs1MDs1MDs1Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4Ig0KICAgICAgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjIuMnMiDQogICAgICAgICAgICAgICAgICAgICBmcm9tPSIyNyIgdG89IjI3Ig0KICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPSIyNzs0OTs1OzI3Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgPC9jaXJjbGU+DQogICAgICAgICAgICA8Y2lyY2xlIGN4PSI0OSIgY3k9IjUwIiByPSI1Ij4NCiAgICAgICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJjeSINCiAgICAgICAgICAgICAgICAgICAgIGJlZ2luPSIwcyIgZHVyPSIyLjJzIg0KICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPSI1MDs1MDs1OzUwIg0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4Ig0KICAgICAgICAgICAgICAgICAgICAgZnJvbT0iNDkiIHRvPSI0OSINCiAgICAgICAgICAgICAgICAgICAgIGJlZ2luPSIwcyIgZHVyPSIyLjJzIg0KICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPSI0OTs1OzI3OzQ5Ig0KICAgICAgICAgICAgICAgICAgICAgY2FsY01vZGU9ImxpbmVhciINCiAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICAgICAgICAgICAgPC9jaXJjbGU+DQogICAgICAgIDwvZz4NCiAgICA8L2c+DQo8L3N2Zz4=);background-repeat:no-repeat;background-size:100% 100%}.bg-shadow:before{content:'';display:block;width:100%;height:100%;position:absolute;top:0;left:0;background:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.2)),to(rgba(0,0,0,.05)));background:linear-gradient(to top,rgba(0,0,0,.2),rgba(0,0,0,.05))}#dprogress{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2000;position:fixed;top:0;left:0;right:0;width:100%;height:2px}#dprogress .bar{background:var(--theme);-webkit-box-shadow:0 0 10px 1px var(--theme);box-shadow:0 0 10px 1px var(--theme);height:100%}.logo-title{font-size:1.5em;color:var(--theme)!important}.logo-title img{max-height:2rem}.logo-img-dark,.navbar-above .navbar-nav .item-dropdown-menu a::after{display:none}.navbar-above{position:fixed;top:0;z-index:6;width:100%;background-color:var(--background);-webkit-transition:all .5s;transition:all .5s;-webkit-box-shadow:0 4px 10px rgba(0,0,0,.05),0 0 1px rgba(0,0,0,.1);box-shadow:0 4px 10px rgba(0,0,0,.05),0 0 1px rgba(0,0,0,.1)}.navbar-above .container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-above .navbar-item{padding-right:.75rem;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;color:#4a4a4a;line-height:1.5;position:relative}.navbar-above .navbar-item,.navbar-above .navbar-nav,.navbar-above .navbar-nav .item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-above .navbar-nav .item{cursor:pointer;position:relative;height:3.5rem;line-height:3.5rem;font-size:15px;padding:0 8px;margin-right:10px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;color:var(--title);-webkit-transition:color .35s;transition:color .35s}.navbar-above .navbar-nav .item>i{display:inline-block;margin-right:4px;font-size:18px;-webkit-transition:-webkit-transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.navbar-above .navbar-nav .item:last-child{margin-right:0}.navbar-above .navbar-nav .item::after{opacity:0;position:absolute;bottom:0;left:6px;right:6px;content:"";height:3px;-webkit-transform:scaleX(.25);transform:scaleX(.25);background:var(--theme);border-radius:6px 6px 0 0;-webkit-transition:opacity .5s,-webkit-transform .5s;transition:opacity .5s,transform .5s;transition:opacity .5s,transform .5s,-webkit-transform .5s}.navbar-above .navbar-nav .item.current,.navbar-above .navbar-nav .item:hover{color:var(--theme)}.navbar-above .navbar-nav .item.current::after,.navbar-above .navbar-nav .item.current:hover::after,.widget.recent-posts .card-content .list .item:hover .link:after{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}.navbar-above .navbar-nav .item:hover::after{opacity:.3;-webkit-transform:scaleX(.7);transform:scaleX(.7)}.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link a,.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link i,.navbar-above .navbar-nav .item:hover+.joe-icon-arrow-down{color:var(--theme)!important}.navbar-above .navbar-nav.active-shadow .item.current{text-shadow:0 4px 20px var(--theme)}.navbar-above .navbar-nav.active-animate .item:hover .m-icon{-webkit-animation:dung .3s .12s ease;animation:dung .3s .12s ease}.navbar-above .navbar-nav .item-dropdown{margin-right:15px}.navbar-above .navbar-nav .item-dropdown-link a{height:50px;line-height:50px;font-size:15px;padding-left:8px;padding-right:3px;-webkit-transition:color .35s;transition:color .35s;white-space:nowrap;color:var(--main)}.navbar-above .navbar-nav .item-dropdown-menu{min-width:90px;max-width:200px;text-align:center}.navbar-above .navbar-nav .item-dropdown-menu a{display:block;height:34px;margin-right:0;line-height:34px;color:var(--main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 15px;-webkit-transition:color .35s,background .35s;transition:color .35s,background .35s}.navbar-above .navbar-nav .item-dropdown-menu a.current,.navbar-above .navbar-nav .item-dropdown-menu a:hover{color:var(--theme);background:var(--bg-a)}.navbar-above .navbar-nav .item-dropdown .item:hover:after,.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link a::after,.navbar-above .navbar-nav .item-dropdown.active .item-dropdown-link i::after{display:none}.navbar-above .navbar-nav .item-sub-li{position:relative;height:34px}.navbar-above .navbar-nav .item-sub-li:hover .item-sub{visibility:visible;opacity:1;-webkit-transform:translateX(0) perspective(600px) rotateY(0);transform:translateX(0) perspective(600px) rotateY(0)}.navbar-above .navbar-nav .item-sub{visibility:hidden;z-index:10;-webkit-transform-origin:top;transform-origin:top;opacity:0;position:relative;left:100%;top:-34px;padding-left:7px;-webkit-box-shadow:7px 3px 8px 0 rgba(0,0,0,.15);box-shadow:7px 3px 8px 0 rgba(0,0,0,.15);border-radius:0 var(--radius-inner) var(--radius-inner) 0;-webkit-transform:translateX(-20%) perspective(600px) rotateY(-45deg);transform:translateX(-20%) perspective(600px) rotateY(-45deg);-webkit-transition:opacity .35s,visibility .35s,-webkit-transform .35s;transition:opacity .35s,visibility .35s,transform .35s;transition:opacity .35s,visibility .35s,transform .35s,-webkit-transform .35s}.navbar-above .navbar-nav .item-sub::before{position:absolute;top:10px;left:0;content:"";-webkit-transform:translateX(-50%);transform:translateX(-50%);width:0;height:0;border:7px solid transparent;border-right-color:var(--theme)}.navbar-above .navbar-nav .item-sub::after{position:absolute;top:0;left:7px;content:"";width:2px;height:100%;background:var(--theme)}.navbar-above .navbar-nav .item-sub li{background:var(--bg-d)}.navbar-above .navbar-console{float:right;margin-left:5px;background:var(--theme);border-radius:50%;height:34px;width:34px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;display:-webkit-box;display:-ms-flexbox;display:flex}.navbar-above .navbar-console>i{font-size:18px;color:#fff}.navbar-above.solid{-webkit-backdrop-filter:unset;backdrop-filter:unset;-webkit-box-shadow:unset;box-shadow:unset;border-bottom:1px solid var(--light-b)}.navbar .navbar-search .submit{width:50px}.navbar .navbar-search-mobile .submit{width:80px}.navbar .navbar-search .result{position:absolute;z-index:2;top:55px;left:0;right:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;visibility:hidden;overflow:hidden;opacity:0;background:var(--bg-d);-webkit-box-shadow:0 0 10px rgba(0,0,0,.15);box-shadow:0 0 10px rgba(0,0,0,.15);border-radius:var(--radius-inner);-webkit-transition:visibility .35s,opacity .35s,-webkit-transform .35s;transition:visibility .35s,opacity .35s,transform .35s;transition:visibility .35s,opacity .35s,transform .35s,-webkit-transform .35s;-webkit-transform:translate3d(0,15px,0);transform:translate3d(0,15px,0)}.navbar .navbar-search .result.active{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1;visibility:visible}.navbar .navbar-search .result .item{height:40px;line-height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;overflow:hidden;padding:0 10px;border-bottom:1px solid var(--light-b);-webkit-transition:background .35s;transition:background .35s}.navbar .navbar-search .result .item:last-child{border-bottom:none}.navbar .navbar-search .result .item:nth-child(1) .sort{background:#fe2d46}.navbar .navbar-search .result .item:nth-child(2) .sort{background:#f60}.navbar .navbar-search .result .item:nth-child(3) .sort{background:#faa90e}.navbar .navbar-search .result .item:hover{background:var(--bg-a)}.navbar .navbar-search .result .item .sort{color:#fff;background:#7f7f8c;width:18px;height:18px;line-height:18px;border-radius:2px;text-align:center;margin-right:8px;font-weight:500}.navbar .navbar-search .result .item .text{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--dark-a);font-size:12px}.navbar .navbar-search .result .item .views{color:var(--seat);font-size:12px;margin-left:5px}.navbar .navbar-search,.navbar .navbar-search-mobile{position:relative;margin-left:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar .navbar-search .input,.navbar .navbar-search-mobile .input{background:var(--bg-a);width:170px;height:34px;border:1px solid transparent;padding:0 14px 0 16px;color:var(--dark-a);-webkit-transition:width .35s,border-color .35s,padding-right .35s;transition:width .35s,border-color .35s,padding-right .35s;border-radius:17px 0 0 17px}.navbar .navbar-search .input:focus,.navbar .navbar-search-mobile .input:focus{background:var(--light-a);border-color:var(--theme);padding-right:28px;width:170px}.navbar .navbar-search .input:focus~.icon,.navbar .navbar-search-mobile .input:focus~.icon{-webkit-transform:translate3d(0,-50%,0) rotateY(180deg);transform:translate3d(0,-50%,0) rotateY(180deg)}.navbar .navbar-search .submit,.navbar .navbar-search-mobile .submit{position:relative;z-index:1;height:34px;color:#fff;border:0;background:var(--theme);border-radius:0 17px 17px 0}.navbar .navbar-search .submit i,.navbar .navbar-search-mobile .submit i{-webkit-transform-origin:right bottom;transform-origin:right bottom;font-size:18px}.navbar .navbar-search .submit:hover i,.navbar .navbar-search-mobile .submit:hover i{-webkit-animation:swag .3s ease infinite alternate;animation:swag .3s ease infinite alternate}.navbar .navbar-search .icon,.navbar .navbar-search-mobile .icon{position:absolute;top:50%;right:44px;width:28px;height:38px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAmCAYAAADX7PtfAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAHKElEQVRYw93Xe3DNdxrH8ecXiSK7i1qWFWW3rekiE2x3VEemtkkVVbWy4jY6atma2YpS6rJoozvbpRF1qW1EEYIk5xZE5EKE3CQi0SB30VwEIeeWnDi3nPf+kUNTE1R3mNn945n5nZkz8zrP53y/39/3EUCeZsn/HCgi80Rky1MDn/H2vjB6SpBVRMb9V6CI+InIBhE58bOez5b9xm9E0wu//0NTr/4+9SKyX0TGicjiP320kpBd+xCRv/0kUFEUf49OnfJGBwWzWn3UcfCGSa8xO1zxFoi3gLbJyZb8S/QeOIhRb0/hiA1GvjkREfF9bFBEQv0C3ySyrIaEO5DjaCXFYkdttKEyWFEbrKiNNjRmBztLrrIqVsfAYb507tJVryjKi48FisiK8Qs/IL4FVEYbOTY7l3FSjJNCp4PDpnZoOzi+BSKKq+j3wostiqK8/KPBv27+6pja9H03uXYHl3FwyeWgGCcFTscPwXalMdnZU1VPn4GDTCLS90eB2ibHHpXRhtpgRWWwkmqxU4yTEpwcvaUno7kZ7f1dtitds4tVcYcRkZMiskhRlCEPBdUG2/a7oNpoQ2Oyc8zUwrsp+QREp7CxpA6N0YbaaENtvBtrW2lMdsIy8xn00u/4aPly9h04QEBgICKy+oGgymiNUBltaN2xflxwlUmqdArKvyX0RBZf1ejbge5y/zi10cbg4SO4Ul3N8dRUqmprcQETJ01CUZQxHXdotH+jMtpYdLact9RniMzOxX6rDAzlrEzOIKLO+EPMXRqTnbCs88yePQuA18aOpWuPXuyIiKCouBgROfQA0Bq1tqiGsPRsMFbiaigBfQXoy1mZnMnOa6YOMBsHb7ewKbuAWTNnAhAQGEjPPn3JyMmh2W5HUZScDkGd0b5/RuoFqmtLiNj8GSLCxcwEMFTw95RM/l1ruBepxtTW2YKMYiYdPouuycHg4SOpqa8nTqPhclkZDuBcYSEiEtMxaLZHByXmU1qUiYeHByLCsZhIMFayPfMs/yy9TrzZQZzByqeX6pigzSLqbB5z4k+jNTvYcCqbvj4++i/Cwi7kFZxvidq/3+UzYAAi8l6HYLzZfiAoIZfoiHBEBBGhNDcZ9BXkln5LoCaLoMR8punOsCM7j8b6EjBWsDjxDHtuNKE1O9h95RrT14QyJngm01at48u8IkTktPtg6da9e/dffb8PTXbVVG0mqRva4pw8PgBMV6CxHBrLuVhZRMO1Ypw3LrPt8zXYrl8CfTmrUzL5ut2C0jY50TW3om1yEm+B/oNf0rvBYfPff//59pEefUd9BtKPU5oQS+vtMmgsx3W7DJf7GfNV5kyfgoiQpNoNxko+Tsog8u6Cuu8wiLfAb/2Gt7hBRUR6tAdTpmozQV/etjrbYXfBxspzKEpb3MU5x8FYwUxdOirDfXvTvT+1TU569vt17YP+w+RJ0ae4WdUWlcsdJfqKtmd9BWcSDiIijHvdH8xVVFdfYmpiPjqznQP1BmIamu6dRBqTnfCcQkQkukPQPyZdNToqzfZWaLKzuvwiGCpoLcrAnqS917G1/iKfL5iLMUkH3xWiK8hnWX4Vhy0uJi9ayqpYHRqzo+1stbgIePc9u4i83iE4O7128cvRp1mRZ2Hy+qRWQ25aW2d1RW0x3+04/zScTITcNJYmZxFxzcj+2lsM8vUjrrHlXrRR1Q107tLlYodnqaIo2iHDhlp8g+bzaSkcqbO0xiXn80boCdbtOkXuuUJuVRdjqbuI42YxNXmpLFkwh6FvTOCoDdeYP09nVazOpWtuRW20oWtu5Z0PlyMiwR2CIrJbG7WNyPD1DBrxCoEh61snhEYwcc1WXvnLelffgOX6gcE7VN1+3sM2cuwfEU9PRCRtftgWQnbupVf/AQSvXMta3TE0ZgeHbprx7tGz6oGvJxHx8vDyOr35sxWYrp4n8VAEsZGbiNsVTvy+7TzXr0+j+3sHRkx4G1GUnc90885bGhWDh4dHlqIo10Xk9oqDanQWF/M3bUVEPnjo+/CTEkJeXbgOX9+h/GPlIrR7t3I8difHYiLp3evZanf03iIyQkR6iKcXnl6dTymK0lVRFD8RmTpj7XqO2mDIq/6ISM+HgicbnPM+r4TVhS1M26IhYNlGxixcg4hiFpHnOrjd/fL+z8P8XyPmtoVOXl6Zj7xinLrpnLux3EXaDQff1ED4dxD8ZRwisvYxbuHquf8KR0Q2PRJcdcm5JL3BwR2blRablVZg1KhRLkVRej8GOFg6dUJEFj0S3F3NYpPVRrPNSovDweGEBERkx0+YNWYoivL8I8E7Tue8O04nFrsdBzDG3x8R8Xli01NISMiSrdu2kZGTzd7oaERk7xMd12ZFJC0b/8nX9Brsh4ikiUj3Jwpes/Ph3qzLeHb7RbGIeD7xgfRIQsIyH5/+RkVR+j+VCXjkyJHdFEXx/r+b8f8DZyW8Jd6/P38AAAAldEVYdGRhdGU6Y3JlYXRlADIwMjEtMDItMjBUMTE6NTI6MjQrMDA6MDA4bfPmAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIxLTAyLTIwVDExOjUyOjI0KzAwOjAwSTBLWgAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAASUVORK5CYII=);background-size:100% 100%;-webkit-transition:-webkit-transform .35s;transition:transform .35s;transition:transform .35s,-webkit-transform .35s;-webkit-transform:translate3d(100%,-50%,0) rotateY(180deg);transform:translate3d(100%,-50%,0) rotateY(180deg)}.navbar .navbar-search-mobile input{-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%}.navbar-searchicon,.navbar-slideicon{display:none;cursor:pointer;font-size:23px!important;color:var(--main)}.navbar-searchicon{margin-left:auto}.navbar-searchicon span{margin-left:4px;font-size:15px}.navbar-mask,.navbar-slideout{visibility:hidden;position:fixed;top:0;bottom:0;left:0}.navbar-mask{right:0;z-index:4;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;-webkit-transition:visibility .35s,opacity .35s;transition:visibility .35s,opacity .35s}.navbar-mask.active{visibility:visible;opacity:1}.navbar-mask.slideout{z-index:6}.navbar-slideout{z-index:120;width:78%;max-width:480px;background:var(--bg-b);-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);-webkit-transition:visibility .35s,-webkit-transform .35s;transition:transform .35s,visibility .35s;transition:transform .35s,visibility .35s,-webkit-transform .35s}.navbar-slideout-wrap{position:relative;padding:35px 15px 15px;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-scroll-chaining:none;overscroll-behavior:contain}.navbar-slideout-wrap::-webkit-scrollbar,.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.navbar-slideout.active{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.navbar-slideout-image{position:absolute;top:0;left:0;width:100%;height:150px;-o-object-fit:cover;object-fit:cover;z-index:-1}.navbar-slideout-author{margin-bottom:15px}.navbar-slideout-author .avatar{width:50px;height:50px;margin:10px auto;display:block;border-radius:var(--radius-inner)}.navbar-slideout-author .info{overflow:hidden;line-height:25px;text-align:center;display:block}.navbar-slideout-author .info .level{height:23px;margin-left:2px}.navbar-slideout-author .info .link,.navbar-slideout-author .info .motto{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.navbar-slideout-author .info .link{display:block;font-size:15px;font-weight:500;color:var(--main)}.navbar-slideout-author .info .motto{font-size:12px;color:var(--main)}.navbar-slideout-menu{background:var(--light-a);padding:10px 15px;border-radius:var(--radius-wrap);overflow:hidden;-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}.navbar-slideout-menu:not(:last-child){margin-bottom:15px}.navbar-slideout-menu.is-toc{display:none}.navbar-slideout-menu .menu-list>li>a:not(.is-active)+.menu-list{display:block}.navbar-slideout-menu .item,.navbar-slideout-menu .link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-slideout-menu .item{color:var(--main);padding:5px 0}.navbar-slideout-menu .item i{color:var(--main);margin-right:5px}.navbar-slideout-menu .item strong{font-weight:500;color:var(--theme)}.navbar-slideout-menu .link{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:10px 0}.navbar-slideout-menu .link,.navbar-slideout-menu .link a{-webkit-transition:color .15s;transition:color .15s;color:var(--main)}.navbar-slideout-menu .link i{color:var(--dark-b);-webkit-transition:fill .15s,-webkit-transform .15s;transition:transform .15s,fill .15s;transition:transform .15s,fill .15s,-webkit-transform .15s}.navbar-slideout-menu .link.in,.navbar-slideout-menu .link.in a{color:var(--theme)}.navbar-slideout-menu .link.in i{color:var(--theme);-webkit-transform:rotate(90deg);transform:rotate(90deg)}.navbar-slideout-menu .slides{display:none;border-left:1px solid var(--light-b);padding-left:15px}.journal-operation-item a,.navbar-slideout-menu .slides .link{color:var(--main)}.navbar-slideout-menu .current a,.navbar-slideout-menu .slides .current{color:var(--theme);font-weight:500;font-size:15px}.navbar-slideout.slideout-toc .not-toc{display:none}.navbar-slideout.slideout-toc .is-toc{display:block}.navbar-searchout{position:fixed;top:3.5rem;left:0;right:0;z-index:5;background:var(--background);-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);-webkit-transition:visibility .35s,-webkit-transform .35s;transition:transform .35s,visibility .35s;transition:transform .35s,visibility .35s,-webkit-transform .35s;visibility:hidden}.navbar-searchout .search-container{padding:10px 15px!important;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-searchout.active{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.navbar-searchout-inner{padding:15px 0;width:100%}.navbar-searchout-inner .search,.navbar-searchout-inner .tag-search{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-searchout-inner .search{width:100%}.navbar-searchout-inner .search input{-webkit-box-flex:1;-ms-flex:1;flex:1;height:36px;padding:0 10px;border:1px solid var(--light-b);border-right:none;border-radius:2px 0 0 2px;color:var(--main);background:var(--bg-a)}.navbar-searchout-inner .search button{padding:0 16px;height:36px;border:0;background:var(--theme);color:#fff;border-radius:0 2px 2px 0}.navbar-searchout-inner .tag-search{color:var(--main);padding:14px 0 10px;font-size:14px}.navbar-searchout-inner .tag-search i{margin-right:5px}.navbar-searchout-inner .cloud{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 -5px -5px;max-height:250px;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-scroll-chaining:none;overscroll-behavior:contain}.navbar-searchout-inner .cloud .item{padding:4px}.navbar-searchout-inner .cloud .item a{display:block;padding:0 10px;height:24px;line-height:24px;border-radius:2px;font-size:12px;color:#fff}.swiper{border:0!important}.swiper-initialized:hover .swiper-button-next{opacity:1;right:10px}.swiper-initialized:hover .swiper-button-prev{opacity:1;left:10px}.swiper-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.swiper-pointer-events{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-pointer-events.swiper-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;position:relative;padding-bottom:40%;overflow:hidden;-webkit-transition:none!important;transition:none!important}.swiper-slide-details{width:100%;position:absolute;bottom:15%;padding:0 50px;color:#f5f5f5}.swiper-slide-details-title{text-align:center;font-size:1.5rem;font-weight:600;text-shadow:0 0 5px rgba(0,0,0,.3);line-height:1.5;word-break:break-all;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.swiper-slide-details .breadcrumb{font-size:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';-ms-flex-negative:0;flex-shrink:0;-webkit-box-ordinal-group:10000;-ms-flex-order:9999;order:9999}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;cursor:pointer;text-align:center;color:#fff;background:rgba(0,0,0,.1);border-radius:2px;opacity:0;overflow:hidden;-webkit-transition:all .3s;transition:all .3s}.swiper-button-next:after,.swiper-button-prev:after{font-family:remixicon;font-size:36px;margin-left:-4px;letter-spacing:0;text-transform:none;font-variant:initial;line-height:44px}.swiper-button-next:hover,.swiper-button-prev:hover{background:rgba(0,0,0,.3)}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:-15px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'\ea64'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:-15px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'\ea6e'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:300ms opacity;transition:300ms opacity;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transform:scale(.33);transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{-webkit-transform:scale(1);transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{-webkit-transform:scale(.66);transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{-webkit-transform:scale(.33);transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{-webkit-transform:scale(.66);transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{-webkit-transform:scale(.33);transform:scale(.33)}.swiper-pagination-bullet{width:15px;height:6px;display:inline-block;border-radius:8px;background:#f6f6f6;opacity:.2;-webkit-transition:all .3s;transition:all .3s}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{width:30px;opacity:1;background:#fff}button.swiper-pagination-bullet{border:0;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;-webkit-transition:200ms top,200ms -webkit-transform;transition:200ms transform,200ms top;transition:200ms transform,200ms top,200ms -webkit-transform}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:200ms left,200ms -webkit-transform;transition:200ms transform,200ms left;transition:200ms transform,200ms left,200ms -webkit-transform}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:200ms right,200ms -webkit-transform;transition:200ms transform,200ms right;transition:200ms transform,200ms right,200ms -webkit-transform}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--theme);position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.banner:before,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s infinite linear;animation:swiper-preloader-spin 1s infinite linear;-webkit-box-sizing:border-box;box-sizing:border-box;border:4px solid var(--theme);border-radius:50%;border-top-color:transparent}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cards,.swiper-cube,.swiper-flip{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;-webkit-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{-webkit-transform-origin:100% 0;transform-origin:100% 0}.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;-webkit-filter:blur(50px);filter:blur(50px)}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cards .swiper-slide,.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}.swiper-creative .swiper-slide{-webkit-transition-property:opacity,height,-webkit-transform;transition-property:transform,opacity,height;transition-property:transform,opacity,height,-webkit-transform}.swiper-cards .swiper-slide{-webkit-transform-origin:center bottom;transform-origin:center bottom}.banner{width:100%;height:54vh;position:relative;margin-bottom:-4rem;background-position:center;background-size:cover;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.banner:before{content:"";position:absolute;width:100%;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAKUlEQVQImU3IMREAIAgAwJfNkQCEsH8cijjpMf6vnXlQaIiJFx+omEBfmqIEZLe2jzcAAAAASUVORK5CYII=)}.banner .banner-info{position:absolute;color:#fff;text-align:center;margin:0 18px}.banner .banner-info-title{font-size:2.4rem;font-weight:700;line-height:2;letter-spacing:.6rem;text-shadow:#1c1f21 -3px 2px 6px}.banner .banner-info-desc{font-size:1.4rem;line-height:1.4;max-width:600px}.banner .banner-info-desc:after{content:'_';margin-left:.3rem;-webkit-animation:flicker 1s steps(2,jump-none) infinite;animation:flicker 1s steps(2,jump-none) infinite}.banner .banner-waves{width:100%;height:4rem;position:absolute;left:0;bottom:0;fill:var(--background)}.banner .banner-waves .parallax>use{-webkit-animation:move-forever 25s cubic-bezier(.55,.5,.45,.5) infinite;animation:move-forever 25s cubic-bezier(.55,.5,.45,.5) infinite}.banner .banner-waves .parallax>use:first-child{-webkit-animation-delay:-2s;animation-delay:-2s;-webkit-animation-duration:7s;animation-duration:7s;opacity:.9}.banner .banner-waves .parallax>use:nth-child(2){-webkit-animation-delay:-3s;animation-delay:-3s;-webkit-animation-duration:10s;animation-duration:10s;opacity:.8}.banner .banner-waves .parallax>use:nth-child(3){-webkit-animation-delay:-4s;animation-delay:-4s;-webkit-animation-duration:13s;animation-duration:13s;opacity:.9}.banner .banner-waves .parallax>use:nth-child(4){-webkit-animation-delay:-5s;animation-delay:-5s;-webkit-animation-duration:20s;animation-duration:20s}.item-dropdown,.section .card{position:relative}.item-dropdown-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.item-dropdown-link-icon{-webkit-transition:-webkit-transform .35s;transition:transform .35s;transition:transform .35s,-webkit-transform .35s;margin-left:-10px}.item-dropdown-menu{position:absolute;left:50%;visibility:hidden;z-index:5;border-top:3px solid var(--theme);-webkit-transform-origin:top;transform-origin:top;background:var(--bg-d);-webkit-box-shadow:0 0 10px rgba(0,0,0,.15);box-shadow:0 0 10px rgba(0,0,0,.15);border-radius:0 0 var(--radius-inner) var(--radius-inner);padding:10px 0;opacity:0;-webkit-transform:translateX(-50%) perspective(600px) rotateX(-45deg);transform:translateX(-50%) perspective(600px) rotateX(-45deg);-webkit-transition:opacity .35s,visibility .35s,-webkit-transform .35s;transition:opacity .35s,visibility .35s,transform .35s;transition:opacity .35s,visibility .35s,transform .35s,-webkit-transform .35s}.item-dropdown-menu::before{content:"";position:absolute;top:-10px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid var(--theme)}.item-dropdown.active .item-dropdown-link-icon{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.item-dropdown.active .item-dropdown-menu{visibility:visible;opacity:1;-webkit-transform:translateX(-50%) perspective(600px) rotateX(0);transform:translateX(-50%) perspective(600px) rotateX(0)}.section{padding:6rem .75rem 3rem}.section .container>.tips{margin-bottom:1rem}.section .card{-webkit-transition:background-color .5s ease,opacity .3s ease-out,-webkit-transform .3s ease-out,-webkit-backdrop-filter .3s ease-out;transition:background-color .5s ease,opacity .3s ease-out,transform .3s ease-out,backdrop-filter .3s ease-out;transition:background-color .5s ease,opacity .3s ease-out,transform .3s ease-out,backdrop-filter .3s ease-out,-webkit-transform .3s ease-out,-webkit-backdrop-filter .3s ease-out;color:var(--dark-c);max-width:100%;word-wrap:break-word;word-break:break-all;-webkit-box-shadow:0 4px 10px rgba(0,0,0,.05),0 0 1px rgba(0,0,0,.1);box-shadow:0 4px 10px rgba(0,0,0,.05),0 0 1px rgba(0,0,0,.1);background-color:var(--background);border-radius:var(--radius-wrap)}.section .card:hover{background-color:var(--background-hover)}.section .card:hover .small-image,.section .card:hover .thumbnail-image,.section .card:hover.card-cover .cover-image{-webkit-transform:scale(1.1);transform:scale(1.1);-webkit-filter:brightness(.9);filter:brightness(.9)}.section .card+.column-right-shadow{margin-top:1.4rem}.section .card[style="height: 0px;"]{display:none}.section .card.card-transparent{-webkit-box-shadow:none!important;box-shadow:none!important;background:0 0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:0!important}.section .card-image{border-radius:var(--radius-wrap) var(--radius-wrap) 0 0}.section .card-tab{height:52px;border-bottom:1px solid var(--light-b);margin-bottom:15px}.section .card-tab div{position:absolute;top:15px;left:-10px;background:var(--theme);color:#fff;padding:0 12px;height:30px;line-height:30px;font-size:1.1rem;font-weight:500;border-radius:2px 2px 2px 0;-webkit-box-shadow:2px 5px 10px rgba(49,58,70,.15);box-shadow:2px 5px 10px rgba(49,58,70,.15);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.section .card-tab div::before{content:'';position:absolute;bottom:-10px;left:-10px;border-style:solid;border-width:10px;border-color:var(--theme) transparent transparent;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.section .card-title{font-size:15.4px;text-transform:uppercase;font-weight:500;border-bottom:1px solid var(--light-b);-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:45px;line-height:45px;padding:0 15px;display:-webkit-box;display:-ms-flexbox;display:flex}.section .card-title .card-title-label{margin-right:5px;font-size:1.2em;color:var(--theme)}.section .card-title .card-more{font-size:.9em;font-weight:400;color:var(--dark-b)}.section .card-title .card-more i{font-size:1.1em}.section .card .cover-image .category a:hover,.section .card .meta .level-item a:hover,.section .card-title .card-more:hover,.section .card-title .card-more:hover i,.section .card.card-cover .category a:hover{color:var(--theme)}.section .card-content{padding:.6rem 1rem 1rem}.section .card-content.main-title{padding:.75rem 1.2rem;font-size:1.3rem}.section .card-content.main-title .breadcrumb{font-size:.9em}.section .card-empty{text-align:center;font-size:1.2em;padding:60px 0;color:var(--dark-d)}.section .card-empty i{display:block;font-size:7em}.section .card .thumbnail{display:block;overflow:hidden}.section .card .cover-image,.section .card .thumbnail-image{min-height:280px;width:100%;margin:auto;display:block;background-position:50% 50%;background-size:cover;-webkit-transition:all .5s;transition:all .5s}.section .card .cover-image{min-height:360px;position:relative}.section .card .cover-image .category,.section .card.card-cover .category{position:absolute;font-size:.85rem;right:.7em;top:10px}.section .card .cover-image .category a,.section .card.card-cover .category a{color:#fff;background:rgba(0,0,0,.3);padding:4px 10px;border-radius:var(--radius-inner)}.section .card .cover-image .details,.section .card.card-cover .details{position:absolute;width:100%;bottom:0;top:auto;color:#fff;background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(29,41,49,.5)),to(rgba(255,255,255,0)));background-image:linear-gradient(0deg,rgba(29,41,49,.5),rgba(255,255,255,0));padding:2em 15px 15px}.section .card .cover-image .title,.section .card.card-cover .title{color:inherit;position:relative;padding-bottom:8px}.section .card .cover-image .title:hover:before,.section .card.card-cover .title:hover:before{width:60px}.section .card .cover-image .title:before,.section .card.card-cover .title:before{content:'';position:absolute;width:40px;height:3px;top:auto;left:0;bottom:3px;-webkit-transition:.4s;transition:.4s;border-radius:5px;background:var(--theme);-webkit-box-shadow:1px 1px 3px -1px var(--theme);box-shadow:1px 1px 3px -1px var(--theme)}.section .card-fold{padding:.5em .75em;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:-.7rem;border:1px solid var(--background)}.section .card-fold:hover{border:1px solid var(--theme)}.section .card-fold .title{margin:0;font-size:1.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.section .card-fold .title p{display:inline}.section .card-fold>p{color:var(--dark-b);font-size:.8rem;min-width:60px;text-align:end;-ms-flex-item-align:center;align-self:center;-ms-flex-negative:0;flex-shrink:0}.section .card-fold,.section .card-small{display:-webkit-box;display:-ms-flexbox;display:flex}.section .card-small>a{width:34%;overflow:hidden}.section .card-small>a:first-child{-webkit-clip-path:polygon(0 0,90% 0,100% 100%,0 100%);clip-path:polygon(0 0,90% 0,100% 100%,0 100%)}.section .card-small>a:last-child{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,10% 100%);clip-path:polygon(0 0,100% 0,100% 100%,10% 100%)}.section .card-small .small-image{height:100%;width:100%;margin:auto;background-position:50% 50%;background-size:cover;-webkit-transition:all .5s;transition:all .5s}.section .card-small .card-content{width:66%}.section .card-small .title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.section .card-small .main-content{-webkit-line-clamp:2!important;min-height:2.5em;max-height:3.3em}.section .card .meta .level-item a,.section .card .title a{color:inherit}.section .card .meta{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;color:var(--dark-b);font-size:.8rem;overflow-x:auto}.section .card .meta::-webkit-scrollbar,.section .columns .column-main-grid .breadcrumb::-webkit-scrollbar{display:none}.section .card .main{padding-top:1.5rem}.section .card .post-navigation{padding-top:1rem;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-wrap:wrap;flex-wrap:wrap}.section .card .post-navigation a{-ms-flex-negative:1;flex-shrink:1;color:var(--main)}.section .card .post-navigation a:last-child{text-align:right}.section .card .post-navigation a:hover{color:var(--theme)}.section .card .post-navigation a i{font-size:1.3em;margin:0 .5rem}.section .card .comment-title{margin-top:6px;font-size:1.3em;font-weight:700}.section .card .comment-title:before{content:"\ef46";font-family:'remixicon';margin-right:4px;color:var(--theme);font-weight:400;font-size:1.15em}.section .columns{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:-.75rem}.section .columns .column{padding:.75rem;display:block}.section .columns .column-left{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.section .columns .column-main{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.section .columns .column-main-grid{margin:1rem 0 1.4rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}.section .columns .column-main-grid:first-child{margin-top:0}.section .columns .column-main-grid .breadcrumb{margin:15px 0 0;color:var(--dark-b);overflow-x:auto}.section .columns .column-main-grid .breadcrumb li{-ms-flex-negative:0;flex-shrink:0}.section .columns .column-main-grid .card{padding:10px}.main-content blockquote>figure,.section .columns .column-main-grid .card.widget+.card.widget{margin-top:0!important}.section .columns .column-main-grid .thumbnail{border-radius:var(--radius-img)}.section .columns .column-main-grid .title,.widget.card .main .main-content{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.section .columns .column-main-grid .title{margin:8px 0 0;font-size:1.3rem;line-height:1.8rem;word-break:break-all;-webkit-line-clamp:2}.section .columns .column-right{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.widget{overflow:hidden!important}.widget.card .card-empty{font-size:1em;font-style:italic;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:24px 0;background-color:var(--bg-a)}.widget.card .main .main-content{-webkit-line-clamp:4;text-indent:1.5em;line-height:1.5em}.widget.profile figure{width:98px;height:98px;padding:4px;border-radius:50%;background:var(--light-b);margin:2em auto .5em}.widget.profile figure .avatar{-webkit-transition:all 2s;transition:all 2s;height:100%;width:100%;border-radius:50%}.widget.profile figure .avatar:hover{-webkit-transform:rotate(-360deg);transform:rotate(-360deg)}.widget.profile .nickname{font-size:1.5rem;margin-bottom:5px}.widget.profile .motto{font-size:1rem;line-height:1.4}.widget.profile .address{color:#7a7a7a;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:1rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.widget.profile .address i{margin-right:.25em}.widget.profile .address,.widget.profile .level{display:-webkit-box;display:-ms-flexbox;display:flex}.widget.profile .level-item{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;-ms-flex:1;flex:1;margin:0!important;text-align:center!important}.widget.profile .level-item .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.widget.profile .level-item .value{color:var(--dark-c);font-size:2rem;line-height:1.125;margin-bottom:0;font-weight:400!important}.widget.profile .level:not(:first-child):not(:empty){margin-top:1.5rem}.widget.profile .level .button i{font-size:16px}.widget .ad-tag{position:absolute;top:6px;right:6px;background:rgba(0,0,0,.25);color:#ebebeb;padding:2px 5px;border-radius:2px;font-size:12px;line-height:16px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.widget .ad-tag .click-close{height:15px;width:15px;stroke:#ebebeb;fill:#ebebeb;stroke-width:1.25;margin-right:-4px;vertical-align:bottom;cursor:pointer}.widget .ad-tag .click-close:hover{stroke:var(--theme);stroke-width:1.5}.widget .aplayer{background:#00000000;-webkit-box-shadow:none;box-shadow:none;padding:.5rem 0;margin:5px 0 0 5px}.widget .aplayer .aplayer-list ol li{border-top:1px solid rgba(180,180,180,.2)!important}.widget .aplayer .aplayer-list ol li.aplayer-list-light,.widget .aplayer .aplayer-list ol li:hover{background:rgba(200,200,200,.2)}.widget .aplayer.aplayer-withlist .aplayer-info{border-bottom:none}.widget .aplayer .aplayer-lrc:before{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#c5c5c52b),to(rgba(255,255,255,0)))!important;background:linear-gradient(180deg,#c5c5c52b 0,rgba(255,255,255,0))!important}.widget .aplayer .aplayer-lrc:after{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,rgba(255,255,255,0)),to(rgba(255,255,255,.23)))!important;background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,.23))!important}.widget.recent-comments li:not(:last-child){margin-bottom:10px;border-bottom:1px dashed var(--light-b);padding-bottom:10px}.widget.recent-comments .user{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:8px}.widget.recent-comments .user>img{width:40px;height:40px;min-width:40px;min-height:40px;margin-right:8px;border-radius:50%;border:1px solid var(--light-d);padding:3px}.widget.recent-comments .user>.no-avatar{width:40px;height:40px;margin-right:8px;background:var(--light-b);border-radius:50%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;display:-webkit-box;display:-ms-flexbox;display:flex}.widget.recent-comments .user>.no-avatar>.avatar-info{font-size:1em;color:var(--dark-c)}.widget.recent-comments .user .info{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.widget.recent-comments .user .info .author{max-width:150px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:var(--main)}.widget.recent-comments .user .info .date{font-size:12px;color:var(--dark-b)}.widget.recent-comments .reply{position:relative;padding:5px 10px;background:var(--bg-a);border-radius:6px}.widget.recent-comments .reply::before{content:"";width:0;height:0;border-bottom:6px solid var(--bg-a);border-left:6px solid transparent;border-right:6px solid transparent;position:absolute;left:15px;bottom:100%}.widget.recent-comments .reply .link{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word;color:var(--dark-b);font-size:13px;font-weight:500;line-height:24px;-webkit-transition:all .35s;transition:all .35s;max-height:48px}.widget.recent-comments .reply .link:hover,.widget.recent-posts .card-content .list .item:hover .link{color:var(--theme)}.widget.recent-posts .card-content .list{padding-top:1px}.widget.recent-posts .card-content .list .item{margin-bottom:15px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;line-height:20px}.widget.recent-posts .card-content .list .item i{color:var(--main);-webkit-transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.widget.recent-posts .card-content .list .item:hover i{-webkit-transform:rotate(225deg);transform:rotate(225deg);color:var(--theme)}.widget.recent-posts .card-content .list .item:last-child{margin-bottom:0}.widget.recent-posts .card-content .list .item .link{display:inline-block;position:relative;color:var(--main);max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget.recent-posts .card-content .list .item .link:after{content:"";position:absolute;bottom:2px;left:0;width:100%;height:1px;background:var(--theme);opacity:0;-webkit-transform:scaleX(.25);transform:scaleX(.25);-webkit-transition:all .35s;transition:all .35s}.widget.tags .card-content{font-size:0}.widget.tags .card-content a{width:unset;margin:4px;line-height:1.2;overflow:unset;text-overflow:unset;white-space:unset;text-align:left;display:inline-block;padding:5px;font-size:13px;color:var(--dark-b);text-decoration:none;background:var(--bg-d);border:1px solid var(--light-c);border-radius:3px}.widget.tags .card-content a:hover{color:var(--theme)!important;border-color:var(--theme)!important}.widget.tagcloud .card-content a:hover{color:var(--dark-c)!important}.widget.love{position:relative;color:#fff;background:0 0!important}.widget.love:after,.widget.love:before{position:absolute;left:0;top:0;bottom:0;z-index:-1;-webkit-transition:all .3s ease-out;transition:all .3s ease-out}.widget.love:before{content:'';right:0;background-image:-webkit-gradient(linear,left top,right top,from(rgba(255,209,218,.94)),to(rgba(255,162,178,.94)));background-image:linear-gradient(to right,rgba(255,209,218,.94),rgba(255,162,178,.94))}.widget.love:after{content:'LOVE';color:#ffe0e5;font-size:84px;line-height:84px;text-align:center;font-weight:600;white-space:nowrap;-webkit-transform:rotate(90deg) translateY(75%);transform:rotate(90deg) translateY(75%)}.widget.love:hover:before{background-image:-webkit-gradient(linear,left top,right top,from(#ffd1da),to(#ffa2b2));background-image:linear-gradient(to right,#ffd1da,#ffa2b2)}.widget.love:hover:after{-webkit-transform:rotate(90deg) translateY(60%);transform:rotate(90deg) translateY(60%)}.widget.love .card-title{border-bottom:1px solid rgba(255,209,218,.94)}.widget.love .level,.widget.love .love-content{display:-webkit-box;display:-ms-flexbox;display:flex}.widget.love .love-content{margin:16px 0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.widget.love .level{-webkit-box-flex:1;-ms-flex:auto;flex:auto;max-width:520px}.widget.love .level-item{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.widget.love svg{width:36px;-webkit-filter:none;filter:none}.widget.love .avatar{width:84px;height:84px;padding:4px;display:block;border-radius:50%;background:#ffd6de}.widget.love .avatar-image{-webkit-transition:all 2s;transition:all 2s;height:100%;width:100%;border-radius:50%}.widget.love .avatar-image:hover{-webkit-transform:rotate(-360deg);transform:rotate(-360deg)}.widget.love .love-time{font-size:1.1em;text-align:center;font-weight:600;height:1.4em;line-height:1.4em}.widget.timelife .item{margin-bottom:15px}.widget.timelife .item:last-child{margin-bottom:0}.widget.timelife .item .title{font-size:1rem!important;color:var(--main);margin-bottom:5px}.widget.timelife .item .title .text{color:var(--theme);font-weight:500;font-size:1.1rem!important;margin:0 5px}.widget.timelife .item .progress,.widget.timelife .item .title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.widget.timelife .item .progress-bar{height:10px;border-radius:5px;overflow:hidden;background:var(--dark-b);width:0;min-width:0;-webkit-box-flex:1;-ms-flex:1;flex:1;margin-right:5px}.widget.timelife .item .progress-bar-inner{width:0;height:100%;border-radius:5px;-webkit-transition:width .35s;transition:width .35s;-webkit-animation:progress 750ms linear infinite;animation:progress 750ms linear infinite}.widget.timelife .item .progress-bar-inner-0{background:#bde6ff;background-image:linear-gradient(135deg,#50bfff 25%,transparent 25%,transparent 50%,#50bfff 50%,#50bfff 75%,transparent 75%,transparent 100%);background-size:30px 30px}.widget.timelife .item .progress-bar-inner-1{background:#ffd980;background-image:linear-gradient(135deg,#f7ba2a 25%,transparent 25%,transparent 50%,#f7ba2a 50%,#f7ba2a 75%,transparent 75%,transparent 100%);background-size:30px 30px}.widget.timelife .item .progress-bar-inner-2{background:#ffa9a9;background-image:linear-gradient(135deg,#ff4949 25%,transparent 25%,transparent 50%,#ff4949 50%,#ff4949 75%,transparent 75%,transparent 100%);background-size:30px 30px}.widget.timelife .item .progress-bar-inner-3{background:#67c23a;background-image:linear-gradient(135deg,#4f9e28 25%,transparent 25%,transparent 50%,#4f9e28 50%,#4f9e28 75%,transparent 75%,transparent 100%);background-size:30px 30px}.widget.timelife .item .progress-percentage{width:2.5rem;color:var(--main)}.widget.wechat .flip-wrapper{position:relative;width:100%;height:auto;z-index:1;cursor:var(--cursor-default)}.widget.wechat .flip-wrapper.pointer{cursor:var(--cursor-pointer)}.widget.wechat .flip-wrapper:hover .animation{-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}.widget.wechat .flip-wrapper:hover .animation .wechatBack{display:block}.widget.wechat .flip-wrapper:hover .animation .wechatFace{display:none}.widget.wechat .flip-content,.widget.wechat img{width:100%;height:auto}.widget.wechat .flip-content.animation{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition:cubic-bezier(0,0,0,1.29) .3s;transition:cubic-bezier(0,0,0,1.29) .3s}.widget.wechat .wechatFace{width:100%;height:auto;-webkit-backface-visibility:hidden;backface-visibility:hidden;background-size:100%}.widget.wechat .wechatBack{display:none;-webkit-box-sizing:border-box;box-sizing:border-box;background-size:100%}.widget.wechat .wechatBack.animation{-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}.widget.wechat .wechatBack.show{display:block}.main-content{word-break:break-word;color:var(--main);font-size:1.1rem;font-weight:300}.main-content.article{padding-bottom:30px}.main-content :not(pre)>code{font-size:.9em;color:var(--color-a);margin:0 3px;padding:3px 6px;white-space:normal;vertical-align:baseline;word-break:break-word;background:var(--bg-g);border-radius:var(--radius-inner)}.main-content h1,.main-content h2,.main-content h4,.main-content h5,.main-content h6{color:var(--dark-c);margin-bottom:18px;-webkit-transition:all .2s ease-out;transition:all .2s ease-out}.main-content h3,.main-content h6:after,.main-content h6:before{color:var(--dark-c);-webkit-transition:all .2s ease-out;transition:all .2s ease-out}.main-content h1:after,.main-content h1:before,.main-content h2:after,.main-content h2:before{content:'';display:block}.main-content h1:before,.main-content h2:before{margin-top:30px}.main-content h1:after,.main-content h2:after{margin-bottom:20px}.main-content h1{font-size:1.45em;font-weight:700}.main-content h2{font-size:1.25em;font-weight:600}.main-content h3,.main-content h4,.main-content h5{position:relative;padding-left:12px}.main-content h3:before,.main-content h4:before,.main-content h5:before{content:'';position:absolute;top:10%;bottom:10%;left:0;width:4px;border-radius:2px;background:var(--theme)}.main-content h3:hover,.main-content h4:hover,.main-content h5:hover{padding-left:16px}.main-content h3{margin:25px 0 18px;font-size:1.2em;font-weight:600}.footer-container .icon-spot i,.main-content h4{font-size:1.1em}.main-content h5,.main-content h6{font-size:1em}.main-content h6:after,.main-content h6:before{color:var(--theme);font-weight:600}.main-content h6:before{content:'「';margin-right:5px}.main-content h6:after{content:'」';margin-left:5px}.main-content h6:hover:before{margin-left:-3px;margin-right:8px}.main-content h6:hover:after{margin-left:8px}.main-content blockquote,.main-content p{line-height:1.7em;margin-bottom:14px}.main-content .pwd{color:var(--main);border-radius:2px;-webkit-transition:all .3s;transition:all .3s;background:var(--main);font-family:Ubuntu,sans-serif}.main-content .pwd:hover{color:#fff}.main-content .note{text-indent:2em;background:url(../img/wordline.webp);background-size:auto 2.5rem;line-height:2.5rem}.main-content blockquote{padding:8px 15px;color:var(--dark-c);background:var(--bg-h);border-left:5px solid var(--theme);border-radius:var(--radius-inner)}.main-content blockquote ol li ol:not(:last-child),.main-content blockquote ol li p:not(:last-child),.main-content blockquote ol li ul:not(:last-child),.main-content blockquote ul li ol:not(:last-child),.main-content blockquote ul li p:not(:last-child),.main-content blockquote ul li ul:not(:last-child),.main-content blockquote>:not(:last-child){margin-bottom:4px!important}.main-content blockquote>:last-child{margin:0!important}.main-content blockquote ol li ol:last-child,.main-content blockquote ol li p:last-child,.main-content blockquote ol li ul:last-child,.main-content blockquote ul li ol:last-child,.main-content blockquote ul li p:last-child,.main-content blockquote ul li ul:last-child,.main-content blockquote>:last-child>li:last-child,.main-content blockquote>:last-child>li:last-child>p:last-child,.main-content ol li:last-child,.main-content ul li:last-child{margin-bottom:0!important}.main-content a:not([class]){line-height:1.7em;color:var(--theme);background-image:linear-gradient(transparent calc(100% - 1px),var(--theme) 1px);background-repeat:no-repeat;background-size:0 100%;-webkit-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.main-content a:not([class]):hover{color:var(--theme);background-size:100% 100%}.main-content ol,.main-content ul{margin-bottom:14px;padding-left:16px}.main-content ol li,.main-content ul li{line-height:1.6em;margin-bottom:4px}.main-content ol li.task-list-item,.main-content ul li.task-list-item{list-style:none}.main-content ol li.task-list-item input,.main-content ul li.task-list-item input{position:relative;top:1px}.main-content ol:not([class]):not([style])[start]{padding-left:34px}.main-content ol:not([class]):not([style])[start]>li:not([class]):not([style]){list-style:decimal}.main-content ol:not([class]):not([style])[start]>li:not([class]):not([style])::marker{font-weight:400;color:var(--theme);-webkit-transition:all .5s;transition:all .5s}.main-content ol:not([class]):not([style])[start]>li:not([class]):not([style]):hover::marker{color:#e67700}.main-content ol:not([class]):not([style]):not([start]){counter-reset:li}.main-content ol:not([class]):not([style]):not([start])>li:not([class]):not([style]),.main-content ul:not([class]):not([style])>li:not([class]):not([style]){list-style:none;position:relative;padding-left:1.2em}.main-content ol:not([class]):not([style]):not([start])>li:not([class]):not([style]):before{position:absolute;width:-webkit-max-content;width:-moz-max-content;width:max-content;right:calc(100% - 1em);content:counter(li) '.';counter-increment:li;text-align:center;font-weight:400;color:var(--theme);-webkit-transition:all .5s;transition:all .5s}.main-content ol:not([class]):not([style]):not([start])>li:not([class]):not([style]):hover:before{-webkit-transform:rotate(360deg);transform:rotate(360deg);color:#e67700;font-size:1.1em}.main-content ul:not([class]):not([style])>li:not([class]):not([style]):before{content:"";width:.5em;height:.5em;left:0;top:.5em;position:absolute;border:1px solid var(--theme);background:0 0;-webkit-transition:all .5s;transition:all .5s;-webkit-transform:rotateZ(45deg);transform:rotateZ(45deg)}.main-content ul:not([class]):not([style])>li:not([class]):not([style]):hover:before{-webkit-transform:rotate(360deg);transform:rotate(360deg);border-color:#e67700}.main-content table{width:100%;border-collapse:collapse;background:var(--bg-d);margin-bottom:14px;margin-left:auto;margin-right:auto;overflow:hidden;font-size:.95em}.main-content table td,.main-content table th{padding:8px;border:1px solid var(--light-x)}.main-content table tbody tr{-webkit-transition:background .35s;transition:background .35s}.main-content table tbody tr th{font-weight:500;background:var(--bg-z)}.main-content table tbody tr:hover{background:rgba(179,179,179,.15)}.main-content figure{margin:18px 0;padding:0;border-radius:var(--radius-inner);overflow:hidden;position:relative}.main-content figure pre>ul,.main-content figure>figcaption{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background:rgba(153,153,153,.08)}.main-content figure>figcaption{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0;height:2.2em;line-height:2.2em;font-size:.95em;font-weight:400}.main-content figure>figcaption:before{content:'';display:inline-block;margin:auto 44px auto 8px;border-radius:50%;background:#ff0800 no-repeat 10px 10px;width:12px;height:12px;-webkit-box-shadow:18px 0 #fdbc40,36px 0 #35cd4b;box-shadow:18px 0 #fdbc40,36px 0 #35cd4b}.main-content figure>figcaption div{margin-left:auto!important;display:inline-block;cursor:pointer;text-align:center}.main-content figure>figcaption div i{-webkit-transition:all .25s;transition:all .25s;margin-right:10px!important}.main-content figure>figcaption div i.ri-arrow-down-s-line{display:inline-block;font-size:1.2em}.main-content figure>figcaption div i:hover{opacity:.5}.main-content figure>figcaption div i.close{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.main-content figure pre,.main-content figure pre code{overflow-y:hidden;font-family:"Fira Code","Fira Mono",Menlo,Consolas,"DejaVu Sans Mono",monospace}.main-content figure pre{margin:0;display:-webkit-box;display:-ms-flexbox;display:flex;overflow-x:auto;padding:0;border:0;color:inherit!important;background:0 0!important;font-size:1em}.main-content figure pre>ul{margin:0;padding:0 8px}.main-content figure pre>ul li{list-style:none;line-height:1.5em;padding:0!important;margin:0!important}.main-content figure pre>ul li:before{content:none!important}.main-content figure pre>ul li.code-select:after{content:'';width:100%;height:1.5em;left:0;background:rgba(151,151,151,.08);position:absolute;pointer-events:none}.main-content figure pre li+li{margin-top:0}.main-content figure pre code{padding:0 0 7px 5px;line-height:1.5em;width:100%}.main-content figure pre code:not(:last-child){margin-bottom:1.8em}.main-content figure .expand-done i{color:inherit!important}.main-content figure:not(.fold) .expand-done{background:rgba(153,153,153,.08)}.main-content .gallery-item{text-align:center}.main-content .gallery-item>div{position:relative;overflow:hidden;display:inline-block}.main-content .gallery-item>p{text-align:center;color:var(--dark-d);line-height:1em;font-size:.9em}.main-content .gallery-item .fold{border-radius:var(--radius-img)}.main-content :not(.jg-entry)>img{max-width:100%}.main-content :not(.jg-entry)>img:not([class]){-webkit-transition:all .35s;transition:all .35s;margin:5px 0;border-radius:var(--radius-img);cursor:-webkit-zoom-in;cursor:zoom-in}.main-content :not(.jg-entry)>img:not([class]):hover{-webkit-transform:translateY(-5px);transform:translateY(-5px);-webkit-box-shadow:0 34px 20px -24px rgba(136,161,206,.3);box-shadow:0 34px 20px -24px rgba(136,161,206,.3)}.main-content .mermaid{text-align:center;margin-bottom:12px}.main-content .mermaid>svg{border-radius:var(--radius-inner);background:#fff;-webkit-transition:all .35s;transition:all .35s;border:1px solid var(--light-b)}.main-content .mermaid>svg:hover{-webkit-transform:translateY(-5px);transform:translateY(-5px);-webkit-box-shadow:0 34px 20px -24px rgba(136,161,206,.3);box-shadow:0 34px 20px -24px rgba(136,161,206,.3)}.main-content .katex{line-height:1.4;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;overflow-x:auto;overflow-y:hidden;max-width:100%;padding:0 2px}.main-content.literature-content{font-size:1.3em}.main-content.literature-content .note{line-height:40px;background-size:auto}.pagination{font-size:1rem;margin:-.25rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;text-align:center}.pagination,.pagination .pagination .pagination-list,.pagination-list{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-list{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;text-align:center}.pagination-link.is-current{background-color:var(--bg-e);border:0;color:#fff}.pagination .pagination .pagination-list{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1}.pagination .pagination-next,.pagination .pagination-previous,.pagination-link:not(.is-current){background:var(--background);border:0}.pagination-link,.pagination-next,.pagination-previous{color:var(--dark-c);min-width:2.25em;font-size:1em;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:.25rem;text-align:center;padding:calc(.375em - 1px) .5em;position:relative;vertical-align:top;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:4px;line-height:1.5;height:2.25em;-webkit-box-shadow:0 4px 10px rgba(0,0,0,.05);box-shadow:0 4px 10px rgba(0,0,0,.05);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.pagination-ellipsis{color:var(--dark-d);margin:.25rem;padding:0 .5em}.actions{position:fixed;right:-48px;bottom:40px;z-index:200;-webkit-transition:all .5s;transition:all .5s;opacity:.9}.actions>div{display:block;margin-bottom:5px;width:35px;height:35px;border-radius:5px;background-color:var(--theme);color:#fff;text-align:center;font-size:20px;line-height:32px;border:0;cursor:pointer}.actions>.bullet-screen span{display:inline-block;line-height:1;font-weight:600;font-family:ui-serif,serif!important}.actions>.stop-bullet-screen span{background-image:linear-gradient(45deg,transparent 46%,#fff 46%,#fff 54%,transparent 54%)}.footer{background-color:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem;position:relative}.footer:before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--background)}.footer-container .logo-title{margin:15px 15px 15px 0;display:block}.footer-container>li{display:inline-block;vertical-align:middle;padding:0 5px;color:var(--dark-b);line-height:1.6em}.footer-container>li>p:not(:first-child){font-size:.9em}.footer-container>li:last-child{float:right}.footer-container .icon-spot:first-child>:not(:first-child):before{content:"";width:4px;height:4px;margin:0 .4em;border-radius:50%;display:inline-block;background:var(--dark-b);opacity:.5;vertical-align:.2em}.footer-container .icon-spot:not(:first-child)>:not(:first-child):before{content:"";width:4px;height:4px;margin:0 .4em;border-radius:50%;display:inline-block;background:var(--dark-b);opacity:.5;vertical-align:.2em}.footer-container a:not([class]){color:var(--dark-b)}.footer-container a:not([class]):hover{color:var(--theme)}.footer-container a.record{color:var(--dark-b)}.footer-container a.record:hover{color:var(--theme)}.footer-container .stand{color:var(--theme);margin:0 4px}.footer-container .powered{color:var(--theme);font-weight:600}.footer-container .cloud-driven{margin:0 3px}.footer-container .cloud-driven img{height:16px;vertical-align:text-bottom}@media (min-width:767px){.footer-center{text-align:center}.footer-center>li{text-align:left}}@media (max-width:1215px){.navbar .navbar-search .input{width:100px}.container:not(.two-column) .column-right{display:none!important}.is-hidden-not-desktop{display:none!important}.card:not(.is-hidden-not-desktop):not(.is-hidden-all)~.card{margin-top:1.4rem!important}.navbar-above .navbar-nav .item .m-icon{display:none!important}}@media (max-width:1023px){.section .card .cover-image{min-height:24vw}.section .card .thumbnail-image{min-height:20vw}.swiper-slide-details-title{font-size:1.3rem}.swiper-slide-details .breadcrumb{display:none}.swiper-pagination-bullet{width:8px;height:4px}.swiper-pagination-bullet-active{width:20px}.navbar .container{padding:0 .75rem}.navbar .container .navbar-searchicon{display:block}.navbar .container .navbar-search{display:none}.navbar .container .navbar-console{float:right;margin-left:5px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;display:-webkit-box;display:-ms-flexbox;display:flex;background:0 0!important}.navbar .container .navbar-console>i{font-size:23px;color:var(--main)}}@media (max-width:768px){.title{font-size:1.3rem!important}.container .column-main,.container .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:100%}.navbar .container{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 1.5rem;min-height:3.5rem}.footer-container>li,.footer-container>li .footer-truncation,.navbar .container .navbar-slideicon{display:block}.navbar .container .navbar-nav{display:none}.navbar .container .navbar-searchicon{margin-left:0}.navbar .container .navbar-console{display:none}.is-hidden-mobile,.swiper-button-next,.swiper-button-prev{display:none!important}.card:not(.is-hidden-mobile):not(.is-hidden-all)~.card{margin-top:1.4rem!important}.pagination-next,.pagination-previous{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1}.section{padding-top:5rem}.section .container>.tips{margin-left:-.25rem;margin-right:-.25rem;max-width:none}.section .columns .column{padding:.5rem}.section .card .cover-image{height:40vw;min-height:130px}.section .card .thumbnail-image{height:32vw;min-height:95px}.footer-container{text-align:center}.footer-container>li:last-child{float:none}.footer-container>li .footer-truncation:before{content:none!important}html:not(.disable-scroll) .actions.show{right:8px}}@media (min-width:769px){.container .column-main,.container .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:33%}.container .column-main{width:67%}.container .columns,.container .level{display:-webkit-box;display:-ms-flexbox;display:flex}.container .column-left,.container .column-right{-webkit-transition:all .5s;transition:all .5s}.container .column-left.top-sticky,.container .column-right.top-sticky{-ms-flex-item-align:start;align-self:flex-start;position:sticky;top:5rem}.container .column-left.bottom-sticky,.container .column-right.bottom-sticky{-ms-flex-item-align:end;align-self:flex-end;position:sticky;bottom:1rem}.container .pagination .pagination-previous{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.container .pagination .pagination-list{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.container .pagination .pagination-next{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}body.move-up .container .column-left.top-sticky,body.move-up .container .column-right.top-sticky{top:1rem}}@media (min-width:1024px){.section .card .cover-image{min-height:250px}.section .card .thumbnail-image{min-height:195px}.container{max-width:960px}.container .column-main,.container .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:28%}.container .column-main{width:72%}}@media (min-width:1216px){.section .card .cover-image{min-height:240px}.section .card .thumbnail-image{min-height:185px}.container{max-width:1152px}.container .column-main,.container .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:25%}.container .column-main{width:50%}.two-column .column-main,.two-column .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:26%}.two-column .column-main{width:74%}.is-hidden-desktop{display:none!important}.card:not(.is-hidden-desktop):not(.is-hidden-all)~.card{margin-top:1.4rem!important}}@media (min-width:1408px){.section .card-small .main-content{-webkit-line-clamp:3!important;min-height:4em;max-height:4.8em}.section .card .cover-image{min-height:260px}.section .card .thumbnail-image{min-height:210px}.container{max-width:1344px}.container .column-main,.container .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:22%}.container .column-main{width:56%}.container.two-column .column-main,.container.two-column .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:25%}.container.two-column .column-main{width:75%}}@media (min-width:1700px){.section .card .cover-image{min-height:320px}.section .card .thumbnail-image{min-height:240px}.container{max-width:1600px}.container .column-main,.container .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:20%}.container .column-main{width:60%}.container.two-column{max-width:1400px}.container.two-column .column-main,.container.two-column .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:24%}.container.two-column .column-main{width:76%}}@media (min-width:2200px){html{font-size:15px}.section .card .cover-image{min-height:340px}.section .card .thumbnail-image{min-height:260px}.container{max-width:1800px}.container .column-main,.container .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:18%}.container .column-main{width:64%}.container.two-column{max-width:1500px}.container.two-column .column-main,.container.two-column .column-side{-webkit-box-flex:0;-ms-flex:none;flex:none;width:22%}.container.two-column .column-main{width:78%}}.timeline{margin-left:16px;padding-left:24px;padding-top:16px;border-left:1px solid var(--light-b)}.timeline-title{background:var(--bg-e);color:var(--light-a);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:.75em;height:2em;padding:0 8px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;white-space:nowrap;border-radius:var(--radius-inner);margin-bottom:0}.timeline .media{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;border:0}.timeline .media:not(:last-child){margin-bottom:21px}.timeline .media+.media{padding-top:14px;margin-top:0}.timeline .media-content time{font-size:.85em;display:block;color:var(--dark-b)}.timeline .media-content .title{color:var(--dark-c);font-size:1.1em!important}.timeline .media-content p a{font-size:.9em;color:var(--dark-e)}.timeline .media-left{margin-right:14px}.timeline .media-left img{height:64px;width:64px;-o-object-fit:cover;object-fit:cover}.timeline .media:before{width:9px;height:9px;top:18px;background:var(--light-d);border-radius:50%}.timeline .media:before,.timeline .media:last-child:after{content:'';display:block;position:absolute;left:-29px}.timeline .media:first-child:before{top:4px}.timeline .media:first-child:last-child:after{top:11px}.timeline .media:last-child:after{top:27px;width:9px;bottom:0;background:var(--bg-b)}.journal-teams{display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.journal-teams .item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background:var(--bg-b);height:28px;line-height:28px;border-radius:14px;cursor:pointer;color:var(--main);font-size:12px;padding:0 15px;text-align:center;-webkit-transition:color .35s,background .35s,-webkit-box-shadow .35s,-webkit-transform .35s;transition:color .35s,background .35s,box-shadow .35s,transform .35s;transition:color .35s,background .35s,box-shadow .35s,transform .35s,-webkit-box-shadow .35s,-webkit-transform .35s}.journal-teams .item.active{-webkit-transform:translateY(-2px);transform:translateY(-2px);color:#fff;background:var(--theme);-webkit-box-shadow:0 5px 5px rgba(0,0,0,.05);box-shadow:0 5px 5px rgba(0,0,0,.05)}.journal em{font-style:normal}.journal-date{line-height:34px;color:var(--dark-c)}.journal-date i{margin-right:4px;font-size:16px}.journal-content{padding:10px 12px;overflow:hidden;border-radius:0 6px 6px 6px;background-color:var(--bg-c);position:relative}.journal-content .main-content :last-child{margin-bottom:0}.journal-content.fold{max-height:240px}.journal-content.unfold{padding:10px 12px 40px}.journal-content .tag,.journal-operation-item a:hover{color:var(--theme)}.journal-content .tag:before{content:"#"}.journal-operation{padding:12px 0 2px}.journal-operation-item{margin-left:10px;-webkit-transition:all .2s;transition:all .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--main)}.journal-operation-item a i{margin-right:5px;font-size:1.2em}.journal-operation-item a:hover i{-webkit-transform:scale(1.1);transform:scale(1.1)}.journal-operation-item a:not(.like) .ri-heart-3-line{color:#f55448;-webkit-transform:none;transform:none}.journal-operation-item a:not(.like) .ri-heart-3-line:before{content:'\ee0a'}.journal-operation-owner{float:right}.journal-operation-owner>.avatar,.journal-operation-owner>.no-avatar{height:1.5em;width:1.5em;border-radius:50%}.journal-operation-owner,.journal-operation-owner>.no-avatar{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;display:-webkit-box;display:-ms-flexbox;display:flex}.journal-operation-owner>.no-avatar{background:var(--light-b)}.journal-operation-owner>.no-avatar>.avatar-info{font-size:.8em;color:var(--dark-c)}.journal-operation-owner>.name{margin-left:5px;font-size:1em;color:var(--main);max-width:8em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.journal-comment{padding:12px 0 2px;display:none}.links:not(.widget){margin-bottom:20px}.links:not(.widget) .link-title{margin-bottom:10px}.links:not(.widget) ul{margin:0;list-style:none;padding:0;width:100%;display:inline-block}.links:not(.widget) .link-name,.links:not(.widget) ul li{-webkit-transition:all .3s;transition:all .3s;overflow:hidden}.links:not(.widget) ul li{width:32%;float:left;border:1px solid var(--light-b);padding:10px 30px;margin:4px;position:relative;border-radius:10px;height:100px;-webkit-box-sizing:border-box;box-sizing:border-box;background:var(--bg-d)}.links:not(.widget) ul li:hover{border:1px solid var(--theme)}.links:not(.widget) ul li:hover:before{width:180%}.links:not(.widget) ul li:hover img{-webkit-transform:rotate(360deg);transform:rotate(360deg)}.links:not(.widget) ul li:hover .link-name{opacity:.9}.links:not(.widget) ul li:hover .link-desc{opacity:.6}.links:not(.widget) ul li:before{content:"";background-color:var(--theme);-webkit-transform:skew(45deg,0);transform:skew(45deg,0);width:0;height:100%;position:absolute;top:0;left:-60px;-webkit-transition:all .5s;transition:all .5s;opacity:.2}.links:not(.widget) ul li img{float:right;-webkit-box-shadow:inset 0 0 10px var(--theme);box-shadow:inset 0 0 10px var(--theme);opacity:1;-webkit-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:all ease 1s;transition:all ease 1s;margin-top:5px;width:65px;height:65px;padding:2px;border-radius:100%}.links:not(.widget) .link-name{color:var(--theme);padding-bottom:6px;display:block;text-overflow:ellipsis;white-space:nowrap}.links:not(.widget) .link-desc{color:#949494;font-size:13px;border-top:1px dashed var(--light-d);line-height:25px;-webkit-transition:all .5s;transition:all .5s;text-indent:1em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (max-width:630px){.links:not(.widget) ul li{width:100%!important}}@media (max-width:768px){.links:not(.widget) ul li:before{display:none}}@media (max-width:1600px){.links:not(.widget) ul li{width:48%}}.photos-teams{display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.photos-teams .item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background:var(--bg-b);height:28px;line-height:28px;border-radius:14px;cursor:pointer;color:var(--main);font-size:12px;padding:0 15px;text-align:center;-webkit-transition:color .35s,background .35s,-webkit-box-shadow .35s,-webkit-transform .35s;transition:color .35s,background .35s,box-shadow .35s,transform .35s;transition:color .35s,background .35s,box-shadow .35s,transform .35s,-webkit-box-shadow .35s,-webkit-transform .35s}.photos-teams .item.active{-webkit-transform:translateY(-2px);transform:translateY(-2px);color:#fff;background:var(--theme);-webkit-box-shadow:0 5px 5px rgba(0,0,0,.05);box-shadow:0 5px 5px rgba(0,0,0,.05)}.photos-gallery{display:block;width:100%;position:relative;margin-top:12px}.photos-gallery.loading{margin-bottom:80px}.photos-gallery.loading:empty{height:0!important}.photos-gallery.loading:after{width:100%;position:absolute;bottom:-80px}.photos-gallery>div{position:absolute;display:inline-block;overflow:hidden;opacity:.1;margin:0;padding:0;border-radius:8px;cursor:pointer}.photos-gallery>div>img{position:absolute;-webkit-transition:-webkit-transform 1s ease;transition:transform 1s ease;transition:transform 1s ease,-webkit-transform 1s ease;top:50%;left:50%;margin:0;padding:0;border:0;opacity:0}.photos-gallery>div>.jg-caption{opacity:0;position:absolute;bottom:0;padding:5px;background-color:#000;left:0;right:0;margin:0;color:#fff;font-size:.85em;font-weight:300;font-family:sans-serif;-webkit-transition:opacity 300ms ease-in;transition:opacity 300ms ease-in}.photos-gallery>div>.jg-caption.jg-caption-visible{opacity:.7}.photos-gallery>div .info{position:absolute;right:0;bottom:0;left:0;color:#fff;padding:20px;max-height:100%;-webkit-transform:translateY(calc(100% - 45px));transform:translateY(calc(100% - 45px));-webkit-transition:-webkit-transform .35s ease-in;transition:transform .35s ease-in;transition:transform .35s ease-in,-webkit-transform .35s ease-in;background:-webkit-gradient(linear,left bottom,left top,from(#151515cc),to(transparent));background:linear-gradient(0deg,#151515cc,transparent 100%)}.photos-gallery>div .info svg{width:1.3em;height:1.3em;fill:#fff;vertical-align:text-bottom;stroke-width:40;stroke:#fff;margin-right:6px;float:left}.photos-gallery>div .info>:not(:first-child){margin-top:5px}.photos-gallery>div .info>div:first-child{margin-left:-16px;-webkit-transition:all .35s ease-in;transition:all .35s ease-in}.photos-gallery>div .info>div:first-child svg{width:0;-webkit-transition:all .35s ease-in;transition:all .35s ease-in}.photos-gallery>div .info>div:first-child p{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.photos-gallery>div:hover img{-webkit-transform:scale(1.2);transform:scale(1.2)}.photos-gallery>div:hover .info{overflow-y:scroll;-webkit-transform:translateY(0);transform:translateY(0)}.photos-gallery>div:hover .info>div:first-child{margin-left:0}.photos-gallery>div:hover .info>div:first-child svg{width:1.3em}.photos-gallery>div:hover .info>div:first-child p{overflow:inherit;white-space:inherit;text-overflow:inherit}.photos-gallery>.jg-entry-visible{opacity:1;background:0 0}.photos-gallery>.jg-entry-visible>img{opacity:1}.tags-field{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:1.3em}.tags-field,.tags-field .tags{display:-webkit-box;display:-ms-flexbox;display:flex}.tags-field .tags:not(:last-child){margin:0 .75rem .75rem 0}.tags-field .tags .tag:not(.is-grey){border-bottom-right-radius:0;border-top-right-radius:0}.tags-field .tags .tag.is-grey{background:var(--bg-e);color:rgba(255,255,255,.8);border-bottom-left-radius:0;border-top-left-radius:0}.friends .level{display:-webkit-box;display:-ms-flexbox;display:flex;margin-top:1.5rem}.friends .level-item{-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0!important;text-align:center!important}.friends .level-item .heading{display:block;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.friends .level-item .value{color:var(--dark-c);font-size:2rem;line-height:1.125;margin-bottom:0;font-weight:400!important}.friends .meta{font-size:1em!important}.friends .meta a{line-height:1.1em;color:var(--dark-a)}.friends .meta img{height:1.5em;width:1.5em} \ No newline at end of file diff --git a/templates/assets/css/theme.min.css b/templates/assets/css/theme.min.css index b3bad5b..6f6051f 100644 --- a/templates/assets/css/theme.min.css +++ b/templates/assets/css/theme.min.css @@ -1,136 +1 @@ -@charset "utf-8"; -/* CSS Document */ -html { - --theme: #50bfff; - --main: #505050; - --title: #444; - --background: rgba(255, 255, 255, 0.94); - --background-hover: #fff; - --style-a: #fff; - --light-a: #ffffff; - --light-b: #ebeef5; - --light-c: #dcdcdc; - --light-d: #c0c4cc; - --light-x: #d6d6d6; - --light-y: #1f1f1f; - --light-z: #ffffff; - --dark-a: #4a4a4a; - --dark-b: #909399; - --dark-c: #333; - --dark-d: #9a9a9a; - --dark-e: #7a7a7a; - --color-a: #409eff; - --bg-a: rgba(242, 246, 252, 0.8); - --bg-b: #f2f6fc; - --bg-c: #f5f5f5; - --bg-d: rgba(255, 255, 255, 0.8); - --bg-e: var(--theme); - --bg-f: #f7f7f7; - --bg-g: #e8f3ff; - --bg-h: rgba(237, 244, 253, 0.75); - --bg-i: #50bfff; - --bg-j: rgba(243, 244, 245, 0.25); - --bg-k: rgba(250, 250, 250, 0.8); - --bg-l: rgba(243, 243, 243, 0.8); - --bg-z: rgba(230, 240, 250, 0.75); - --radius-wrap: 8px; - --radius-inner: 4px; - --radius-img: 5px; - --box-shadow: 0 0px 10px -5px #949494; - --cursor-pointer: pointer; - --cursor-default: default; - /*插件配置*/ - /*搜索組件*/ - --halo-search-widget-base-font-size: 1rem !important; - --halo-search-widget-base-font-family: "Dream Font" !important; - /*评论组件:https://github.com/halo-dev/plugin-comment-widget*/ - --halo-comment-widget-base-color: var(--light-y) !important; - --halo-comment-widget-base-font-size: 1rem !important; - --halo-comment-widget-base-font-family: "Dream Font" !important; - --halo-comment-widget-component-form-input-border-color-focus: var(--theme) !important; - --halo-comment-widget-component-form-button-login-border-color: var(--light-c) !important; - --halo-comment-widget-component-form-button-submit-bg-color: var(--theme) !important; - --halo-comment-widget-component-form-button-submit-border-color: var(--theme) !important; - --halo-comment-widget-component-form-button-submit-border-color-hover: var(--theme) !important; - /*联系表单:https://app-docs.halo.run/docs/plugin-contact-form/development/custom-styles*/ - --halo-contact-form-font-family: "Dream Font" !important; - --halo-contact-form-font-size: 1rem !important; - --halo-contact-form-width-submit: 100% !important; - --halo-contact-form-color-primary: var(--theme) !important; - --halo-contact-form-color-label: var(--light-y) !important; - --halo-contact-form-color-input: var(--light-y) !important; - --halo-contact-form-color-danger: #ff5656 !important; -} -html.night { - --theme: #5d93db; - --main: #b0b0b0; - --title: #c4c4c4; - --background: rgba(40, 44, 52, 0.6); - --background-hover: rgba(40, 44, 52, 0.8); - --style-a: #080c28; - --light-a: #232323; - --light-b: #414243; - --light-c: #303030; - --light-d: #666; - --light-x: #6e6e6e; - --light-y: #fafafa; - --light-z: #c2c2c2; - --dark-a: #888; - --dark-b: #777; - --dark-c: silver; - --dark-d: #aaa; - --dark-e: #c0c0c0; - --color-a: #cbba7d; - --bg-a: rgba(65, 66, 67, 0.8); - --bg-b: #303030; - --bg-c: #373d48; - --bg-d: rgba(40, 44, 52, 0.8); - --bg-e: #434a56; - --bg-f: #080c28; - --bg-g: rgba(210, 210, 210, 0.2); - --bg-h: rgba(65, 68, 74, 0.6); - --bg-i: #276b92; - --bg-j: rgba(36, 36, 36, 0.15); - --bg-k: rgba(30, 33, 41, 0.8); - --bg-l: rgba(63, 65, 75, 0.8); - --bg-z: rgba(65, 68, 74, 0.6); - --box-shadow: 1px 1px 3px 1px #1b1b1b; -} -html.night body::before { - -webkit-filter: brightness(0.3); - filter: brightness(0.3); -} -html.night .logo-img { - display: none; -} -html.night .logo-img-dark { - display: inline-block; -} -html.night .waifu, -html.night iframe, -html.night img, -html.night video, -html.night svg, -html.night .thumbnail-image, -html.night .cover-image, -html.night .small-image, -html.night .aplayer-pic, -html.night .brightness, -html.night comment-widget { - -webkit-filter: brightness(0.8); - filter: brightness(0.8); -} -html.night .canvas_effects.night { - display: block; -} -html.night .canvas_effects.day { - display: none; -} -html.night .main-content figure { - color: var(--main); - background: var(--bg-k); -} -html.night .main-content figure pre code { - color: var(--color-a); - background: 0 0; -} +@charset "utf-8";html{--theme:#50bfff;--main:#505050;--title:#444;--background:rgba(255, 255, 255, 0.94);--background-hover:#fff;--style-a:#fff;--light-a:#ffffff;--light-b:#ebeef5;--light-c:#dcdcdc;--light-d:#c0c4cc;--light-x:#d6d6d6;--light-y:#1f1f1f;--light-z:#ffffff;--dark-a:#4a4a4a;--dark-b:#909399;--dark-c:#333;--dark-d:#9a9a9a;--dark-e:#7a7a7a;--color-a:#409eff;--bg-a:rgba(242, 246, 252, 0.8);--bg-b:#f2f6fc;--bg-c:#f5f5f5;--bg-d:rgba(255, 255, 255, 0.8);--bg-e:var(--theme);--bg-f:#f7f7f7;--bg-g:#e8f3ff;--bg-h:rgba(237, 244, 253, 0.75);--bg-i:#50bfff;--bg-j:rgba(243, 244, 245, 0.25);--bg-k:rgba(250, 250, 250, 0.8);--bg-l:rgba(243, 243, 243, 0.8);--bg-z:rgba(230, 240, 250, 0.75);--radius-wrap:8px;--radius-inner:4px;--radius-img:5px;--box-shadow:0 0px 10px -5px #949494;--cursor-pointer:pointer;--cursor-default:default;--halo-search-widget-base-font-size:1rem!important;--halo-search-widget-base-font-family:"Dream Font"!important;--halo-comment-widget-base-color:var(--light-y)!important;--halo-comment-widget-base-font-size:1rem!important;--halo-comment-widget-base-font-family:"Dream Font"!important;--halo-comment-widget-component-form-input-border-color-focus:var(--theme)!important;--halo-comment-widget-component-form-button-login-border-color:var(--light-c)!important;--halo-comment-widget-component-form-button-submit-bg-color:var(--theme)!important;--halo-comment-widget-component-form-button-submit-border-color:var(--theme)!important;--halo-comment-widget-component-form-button-submit-border-color-hover:var(--theme)!important;--halo-contact-form-font-family:"Dream Font"!important;--halo-contact-form-font-size:1rem!important;--halo-contact-form-width-submit:100%!important;--halo-contact-form-color-primary:var(--theme)!important;--halo-contact-form-color-label:var(--light-y)!important;--halo-contact-form-color-input:var(--light-y)!important;--halo-contact-form-color-danger:#ff5656!important}html.night{--theme:#5d93db;--main:#b0b0b0;--title:#c4c4c4;--background:rgba(40, 44, 52, 0.6);--background-hover:rgba(40, 44, 52, 0.8);--style-a:#080c28;--light-a:#232323;--light-b:#414243;--light-c:#303030;--light-d:#666;--light-x:#6e6e6e;--light-y:#fafafa;--light-z:#c2c2c2;--dark-a:#888;--dark-b:#777;--dark-c:silver;--dark-d:#aaa;--dark-e:#c0c0c0;--color-a:#cbba7d;--bg-a:rgba(65, 66, 67, 0.8);--bg-b:#303030;--bg-c:#373d48;--bg-d:rgba(40, 44, 52, 0.8);--bg-e:#434a56;--bg-f:#080c28;--bg-g:rgba(210, 210, 210, 0.2);--bg-h:rgba(65, 68, 74, 0.6);--bg-i:#276b92;--bg-j:rgba(36, 36, 36, 0.15);--bg-k:rgba(30, 33, 41, 0.8);--bg-l:rgba(63, 65, 75, 0.8);--bg-z:rgba(65, 68, 74, 0.6);--box-shadow:1px 1px 3px 1px #1b1b1b}html.night body::before{-webkit-filter:brightness(.3);filter:brightness(.3)}html.night .logo-img{display:none}html.night .logo-img-dark{display:inline-block}html.night .aplayer-pic,html.night .brightness,html.night .cover-image,html.night .small-image,html.night .thumbnail-image,html.night .waifu,html.night comment-widget,html.night iframe,html.night img,html.night svg,html.night video{-webkit-filter:brightness(.8);filter:brightness(.8)}html.night .canvas_effects.night{display:block}html.night .canvas_effects.day{display:none}html.night .main-content figure{color:var(--main);background:var(--bg-k)}html.night .main-content figure pre code{color:var(--color-a);background:0 0} \ No newline at end of file diff --git a/templates/assets/js/btoc.min.js b/templates/assets/js/btoc.min.js index 99f8db5..1545943 100644 --- a/templates/assets/js/btoc.min.js +++ b/templates/assets/js/btoc.min.js @@ -1 +1 @@ -(()=>{var __webpack_modules__={"./src/js/btoc.js":()=>{eval("function Btoc(tocList, contentElement) {\r\n this.tocList = tocList\r\n this.elementList = getChild(contentElement, this.tocList)\r\n // 当前解析到第几个标签\r\n this.eIndex = 0\r\n\r\n /**\r\n * 递归读取目标标签中所有的符合要求的标签\r\n * @param element\r\n * @param tocList\r\n * @returns {any[]|null}\r\n */\r\n function getChild(element, tocList) {\r\n if (element == null) {\r\n return null\r\n }\r\n // 获取所有子元素\r\n var child = element.children\r\n if (child.length === 0) {\r\n return null\r\n }\r\n var childs = []\r\n for (var i = 0; i < child.length; i++) {\r\n var elem = child[i]\r\n if (tocList.indexOf(elem.tagName) !== -1) {\r\n childs.push(elem)\r\n }\r\n childs.push.apply(childs, getChild(elem, tocList))\r\n }\r\n return childs\r\n }\r\n\r\n /**\r\n * 生成目录\r\n */\r\n this.build = function () {\r\n if (this.elementList == null || this.elementList.length === 0) {\r\n return ''\r\n }\r\n // 解析获取到的标签元素为目录\r\n // 设置当前元素的最小度为-1表示当前元素为最外层目录元素,防止后续出现比当前元素序号更小的标签\r\n return this.analysis(-1, this.tocList.indexOf(this.elementList[this.eIndex].tagName))\r\n }\r\n\r\n /**\r\n * 解析目录\r\n * @param last 最小的标签(即上级目录的标签)\r\n * @param depth 当前标签\r\n * @returns {string} 解析的目录内容\r\n */\r\n this.analysis = function (last, depth) {\r\n var tocStr = ''\r\n }\r\n}\r\nconst observers = []\r\nfunction register($toc) {\r\n // toc滚动时间和偏移量\r\n const time = 20\r\n const headingsOffset = 50\r\n const currentInView = new Set()\r\n const headingToMenu = new Map()\r\n const $menus = Array.from($toc.querySelectorAll('.menu-list > li > a'))\r\n\r\n for (const $menu of $menus) {\r\n const elementId = $menu.getAttribute('data-id').trim().slice(1)\r\n const $heading = document.getElementById(elementId)\r\n if ($heading) {\r\n headingToMenu.set($heading, $menu)\r\n }\r\n }\r\n\r\n const $headings = Array.from(headingToMenu.keys())\r\n\r\n const callback = (entries) => {\r\n for (const entry of entries) {\r\n if (entry.isIntersecting) {\r\n currentInView.add(entry.target)\r\n } else {\r\n currentInView.delete(entry.target)\r\n }\r\n }\r\n let $heading\r\n if (currentInView.size) {\r\n // heading is the first in-view heading\r\n $heading = [...currentInView].sort(($el1, $el2) => $el1.offsetTop - $el2.offsetTop)[0]\r\n } else if ($headings.length) {\r\n // heading is the closest heading above the viewport top\r\n $heading = $headings\r\n .filter(($heading) => $heading.offsetTop < window.scrollY)\r\n .sort(($el1, $el2) => $el2.offsetTop - $el1.offsetTop)[0]\r\n }\r\n if ($heading && headingToMenu.has($heading)) {\r\n $menus.forEach(($menu) => $menu.classList.remove('is-active'))\r\n\r\n const $menu = headingToMenu.get($heading)\r\n $menu.classList.add('is-active')\r\n let $menuList = $menu.parentElement.parentElement\r\n while (\r\n $menuList.classList.contains('menu-list') &&\r\n $menuList.parentElement.tagName.toLowerCase() === 'li'\r\n ) {\r\n $menuList.parentElement.children[0].classList.add('is-active')\r\n $menuList = $menuList.parentElement.parentElement\r\n }\r\n }\r\n }\r\n const observer = new IntersectionObserver(callback, { threshold: 0 })\r\n\r\n for (const $heading of $headings) {\r\n observer.observe($heading)\r\n // smooth scroll to the heading\r\n if (headingToMenu.has($heading)) {\r\n const $menu = headingToMenu.get($heading)\r\n $menu.addEventListener('click', () => {\r\n var element = document.getElementById($menu.getAttribute('data-id').substring(1))\r\n let rect = element.getBoundingClientRect()\r\n let currentY = window.pageYOffset\r\n let targetY = currentY + rect.top - headingsOffset\r\n let speed = (targetY - currentY) / time\r\n let offset = currentY > targetY ? -1 : 1\r\n let requestId\r\n function step(timestamp) {\r\n currentY+=speed\r\n if(currentY * offset < targetY * offset){\r\n window.scrollTo(0,currentY)\r\n requestId=window.requestAnimationFrame(step)\r\n }else{\r\n window.scrollTo(0,targetY)\r\n window.cancelAnimationFrame(requestId)\r\n }\r\n }\r\n window.requestAnimationFrame(step)\r\n })\r\n }\r\n if (headingToMenu.has($heading)) {\r\n $heading.style.scrollMargin = '1em'\r\n }\r\n }\r\n observers.push(observer)\r\n}\r\nBtoc.init = function (params) {\r\n const tocList = params['tocList']\r\n const contentElement = params['contentElement']\r\n const tocSelect = params['tocElement']\r\n if (tocList == null || tocList.length === 0 || contentElement == null) {\r\n $(tocSelect).children().remove()\r\n return false\r\n }\r\n for (var i = 0; i < tocList.length; i++) {\r\n tocList[i] = tocList[i].toUpperCase()\r\n }\r\n let tocContent = new Btoc(tocList, contentElement).build()\r\n $(tocSelect).html(tocContent)\r\n}\r\n\r\nwindow.tocPjax = function () {\r\n observers.forEach(observer => {\r\n observer.disconnect()\r\n })\r\n observers.splice(0)\r\n Btoc.init({\r\n tocList: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'],\r\n contentElement: $('.main-content:not(.not-toc)')[0],\r\n tocElement: '.toc-content'\r\n })\r\n if (typeof window.IntersectionObserver === 'undefined') {\r\n return\r\n }\r\n document.querySelectorAll('.toc-content').forEach(register)\r\n}\r\n\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/btoc.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/btoc.js"]()})(); \ No newline at end of file +(()=>{function s(t,e){this.tocList=t,this.elementList=function t(e,n){if(null==e)return null;var i=e.children;if(0===i.length)return null;for(var s=[],o=0;o${l}`,this.eIndex++,this.eIndex>=this.elementList.length){n+="";break}(s=this.tocList.indexOf(this.elementList[this.eIndex].tagName))>e&&(n+=this.analysis(e,s)),n+=""}else if(s<=t)break}return n+""}}const r=[];function t(t){const i=new Set,s=new Map,o=Array.from(t.querySelectorAll(".menu-list > li > a"));for(const t of o){const r=t.getAttribute("data-id").trim().slice(1),i=document.getElementById(r);i&&s.set(i,t)}const l=Array.from(s.keys()),e=new IntersectionObserver(e=>{for(const n of e)n.isIntersecting?i.add(n.target):i.delete(n.target);let n;if(i.size?n=[...i].sort((t,e)=>t.offsetTop-e.offsetTop)[0]:l.length&&(n=l.filter(t=>t.offsetTope.offsetTop-t.offsetTop)[0]),n&&s.has(n)){o.forEach(t=>t.classList.remove("is-active"));const e=s.get(n);e.classList.add("is-active");let t=e.parentElement.parentElement;for(;t.classList.contains("menu-list")&&"li"===t.parentElement.tagName.toLowerCase();)t.parentElement.children[0].classList.add("is-active"),t=t.parentElement.parentElement}},{threshold:0});for(const t of l){if(e.observe(t),s.has(t)){const r=s.get(t);r.addEventListener("click",()=>{let n,t=document.getElementById(r.getAttribute("data-id").substring(1)).getBoundingClientRect(),i=window.pageYOffset,s=i+t.top-50,o=(s-i)/20,l=i>s?-1:1;window.requestAnimationFrame(function t(e){(i+=o)*l{t.disconnect()}),r.splice(0),s.init({tocList:["h1","h2","h3","h4","h5","h6"],contentElement:$(".main-content:not(.not-toc)")[0],tocElement:".toc-content"}),void 0!==window.IntersectionObserver&&document.querySelectorAll(".toc-content").forEach(t)}})(); \ No newline at end of file diff --git a/templates/assets/js/common.min.js b/templates/assets/js/common.min.js index 0e8231f..533c751 100644 --- a/templates/assets/js/common.min.js +++ b/templates/assets/js/common.min.js @@ -1 +1,14 @@ -(()=>{var __webpack_modules__={"./src/js/common.js":()=>{eval("window.encrypt = (str) => window.btoa(unescape(encodeURIComponent(str)))\r\nwindow.decrypt = (str) => decodeURIComponent(escape(window.atob(str)))\r\n\r\nconst commonContext = {\r\n /* 初始化widget */\r\n initWidget() {\r\n const $columnRight = $('.columns .column-right')\r\n const $columnRightShadow = $('.columns .column-right-shadow')\r\n // 实现将右边widget拷贝的左边\r\n if ($columnRight.length && $columnRightShadow.length && !$columnRightShadow[0].children.length) {\r\n for (const child of $columnRight[0].children) {\r\n $columnRightShadow[0].append(child.cloneNode(true))\r\n }\r\n }\r\n },\r\n /* 初始化目录和公告模块 */\r\n initTocAndNotice() {\r\n const {pathname} = location\r\n window.tocPjax && window.tocPjax()\r\n let hideToc = $('.widget.toc .card-content ul').length === 0\r\n let hideNotice = (DreamConfig.notice_show_mode === 'toc' && !hideToc)\r\n || (DreamConfig.notice_show_mode === 'index' && pathname !== '/')\r\n if (hideToc) {\r\n $('.widget.toc,.action-toc').addClass('is-hidden-all')\r\n } else {\r\n $('.widget.toc,.action-toc').removeClass('is-hidden-all')\r\n }\r\n if (hideNotice) {\r\n $('.widget.notice').addClass('is-hidden-all')\r\n } else {\r\n $('.widget.notice').removeClass('is-hidden-all')\r\n }\r\n },\r\n /* 更新横幅大图的文字描述 */\r\n initBanner() {\r\n const $bannerInfoDesc = $('.banner-info-desc')\r\n if ($bannerInfoDesc.length === 0) return\r\n const bannerDesc = $bannerInfoDesc.text()\r\n $bannerInfoDesc.text('')\r\n let currentBannerDesc = ''\r\n let isWrite = true\r\n let id\r\n const updateDesc = function () {\r\n let num = currentBannerDesc.length\r\n if (isWrite && num < bannerDesc.length) {\r\n currentBannerDesc += bannerDesc.charAt(num)\r\n $bannerInfoDesc.text(currentBannerDesc)\r\n } else if (!isWrite && num > 0) {\r\n currentBannerDesc = currentBannerDesc.slice(0, num - 1)\r\n $bannerInfoDesc.text(currentBannerDesc)\r\n } else {\r\n clearInterval(id)\r\n isWrite = !isWrite\r\n id = setInterval(updateDesc, isWrite ? 500 : 80)\r\n }\r\n }\r\n id = setInterval(updateDesc, isWrite ? 500 : 80)\r\n },\r\n /* 激活图片预览功能 */\r\n initGallery() {\r\n // 用链接和标题包装图像\r\n $('.main-content img:not(.not-gallery)').each(function () {\r\n if ($(this).parents('[data-fancybox],mew-photos').length === 0) {\r\n $(this).wrap(`
${(this.alt && DreamConfig.show_img_name) ? `

${this.alt}

` : ''}
`)\r\n }\r\n })\r\n },\r\n /* 初始化主题模式(仅用户模式) */\r\n initMode() {\r\n let isNight = localStorage.getItem('night') || false\r\n const applyNight = (isNightValue) => {\r\n if (isNightValue) {\r\n // 配色方案\r\n $('html').addClass('color-scheme-dark').removeClass('color-scheme-light').addClass('night')\r\n } else {\r\n // 配色方案\r\n $('html').addClass('color-scheme-light').removeClass('color-scheme-dark').removeClass('night')\r\n }\r\n localStorage.setItem('night', isNightValue)\r\n isNight = isNightValue\r\n }\r\n //切换按钮\r\n $('#toggle-mode').on('click', () => applyNight(isNight.toString() !== 'true'))\r\n //加载后首选的配色\r\n if (DreamConfig.default_theme === 'system') {\r\n window.matchMedia('(prefers-color-scheme: dark)')\r\n .addListener((event) => applyNight(event.matches))\r\n } else {\r\n applyNight(isNight.toString() === 'true')\r\n }\r\n },\r\n /* 导航条高亮 */\r\n initNavbar() {\r\n const $nav_menus = $('.navbar-nav a')\r\n const $nav_side_menus = $('.panel-side-menu .link')\r\n let activeIndex = 0\r\n const {href, pathname} = location\r\n\r\n if (pathname && pathname !== '/') {\r\n for (let i = 0; i < $nav_menus.length; i++) {\r\n const cur_href = $nav_menus[i].getAttribute('href')\r\n if (pathname.includes(cur_href) || href.includes(cur_href)) {\r\n activeIndex = i\r\n if (pathname === cur_href || href === cur_href) break\r\n }\r\n }\r\n }\r\n\r\n // 高亮PC端\r\n const $curMenu = $nav_menus.eq(activeIndex)\r\n $curMenu.addClass('current')\r\n if ($curMenu.parents('.item-dropdown').length) {\r\n $curMenu\r\n .parents('.item-dropdown')\r\n .find('.item-dropdown-link a')\r\n .addClass('current')\r\n }\r\n\r\n // 高亮移动端\r\n $nav_side_menus.eq(activeIndex).addClass('current')\r\n },\r\n /* 激活导航栏全局下拉框功能 */\r\n initDropMenu() {\r\n $('.item-dropdown').each(function (index, item) {\r\n const menu = $(this).find('.item-dropdown-menu')\r\n const trigger = $(item).attr('trigger') || 'click'\r\n const placement = $(item).attr('placement') || $(this).height() || 0\r\n menu.css('top', placement)\r\n if (trigger === 'hover') {\r\n $(this).hover(\r\n () => $(this).addClass('active'),\r\n () => $(this).removeClass('active')\r\n )\r\n } else {\r\n $(this).on('click', function (e) {\r\n e.stopPropagation()\r\n $(this).toggleClass('active')\r\n $(document).one('click', () => $(this).removeClass('active'))\r\n e.stopPropagation()\r\n })\r\n menu.on('click', (e) => e.stopPropagation())\r\n }\r\n })\r\n },\r\n /* 处理滚动 */\r\n initScroll() {\r\n window.initTop = 0\r\n\r\n // true:上划,false:下滑\r\n function scrollDirection(currentTop) {\r\n const result = currentTop > window.initTop\r\n window.initTop = currentTop\r\n return result\r\n }\r\n\r\n const handleScroll = () => {\r\n const scrollTop = $(document).scrollTop()\r\n const direction = scrollDirection(scrollTop)\r\n const $body = $('body')\r\n const $actions = $('.actions')\r\n if (scrollTop > 50 && direction) {\r\n $body.addClass('move-up')\r\n } else {\r\n $body.removeClass('move-up')\r\n }\r\n if (scrollTop > 100) {\r\n $actions.addClass('show')\r\n } else {\r\n $actions.removeClass('show')\r\n }\r\n }\r\n document.addEventListener('scroll', handleScroll)\r\n },\r\n /* 小屏幕伸缩侧边栏,包含导航或者目录 */\r\n drawerMobile() {\r\n $('.navbar-slideicon').on('click', function (e) {\r\n e.stopPropagation()\r\n /* 关闭搜索框 */\r\n $('.navbar-searchout').removeClass('active')\r\n /* 处理开启关闭状态 */\r\n const $html = $('html')\r\n const $mask = $('.navbar-mask')\r\n const $slide_out = $('.navbar-slideout')\r\n if ($slide_out.hasClass('active')) {\r\n $html.removeClass('disable-scroll')\r\n $mask.removeClass('active slideout')\r\n $slide_out.removeClass('active')\r\n } else {\r\n $html.addClass('disable-scroll')\r\n $mask.addClass('active slideout')\r\n $slide_out.addClass('active')\r\n }\r\n })\r\n $('.action-toc').on('click', function (e) {\r\n e.stopPropagation()\r\n /* 关闭搜索框 */\r\n $('.navbar-searchout').removeClass('active')\r\n /* 处理开启关闭状态 */\r\n const $html = $('html')\r\n const $mask = $('.navbar-mask')\r\n const $slide_out = $('.navbar-slideout')\r\n if ($slide_out.hasClass('active')) {\r\n $html.removeClass('disable-scroll')\r\n $mask.removeClass('active slideout')\r\n $slide_out.removeClass('active slideout-toc')\r\n } else {\r\n $html.addClass('disable-scroll')\r\n $mask.addClass('active slideout')\r\n $slide_out.addClass('active slideout-toc')\r\n }\r\n })\r\n },\r\n /* 激活全局返回顶部功能 */\r\n back2Top() {\r\n $('#back-to-top').on('click', function () {\r\n $('body, html').animate({scrollTop: 0}, 400)\r\n })\r\n },\r\n /* 点击遮罩层关闭 */\r\n maskClose() {\r\n $('.navbar-mask')\r\n .on('click', function (e) {\r\n e.stopPropagation()\r\n $('html').removeClass('disable-scroll')\r\n $('.navbar-mask').removeClass('active slideout')\r\n $('.navbar-searchout').removeClass('active')\r\n $('.navbar-slideout').removeClass('active slideout-toc')\r\n $('.navbar-above').removeClass('solid')\r\n })\r\n .on('touchmove', (e) => e.preventDefault)\r\n $('.navbar .toc-content')\r\n .on('click', function (e) {\r\n e.stopPropagation()\r\n $('html').removeClass('disable-scroll')\r\n $('.navbar-mask').removeClass('active slideout')\r\n $('.navbar-slideout').removeClass('active slideout-toc')\r\n })\r\n },\r\n /* 移动端侧边栏菜单手风琴 */\r\n sideMenuMobile() {\r\n $('.navbar-slideout-menu .current')\r\n .parents('.panel-body')\r\n .show()\r\n .siblings('.panel')\r\n .addClass('in')\r\n $('.navbar-slideout-menu .panel').on('click', function (e) {\r\n e.stopPropagation()\r\n const $this = $(this)\r\n const panelBox = $this.parent().parent()\r\n /* 清除全部内容 */\r\n panelBox.find('.panel').not($this).removeClass('in')\r\n panelBox\r\n .find('.panel-body')\r\n .not($this.siblings('.panel-body'))\r\n .stop()\r\n .hide('fast')\r\n /* 激活当前的内容 */\r\n $this.toggleClass('in').siblings('.panel-body').stop().toggle('fast')\r\n })\r\n },\r\n /* 初始化事件 */\r\n initEvent() {\r\n let $body = $('body')\r\n\r\n function closeSelect(elem) {\r\n let $elem = $(elem)\r\n const closeSelect = $elem.attr('data-close')\r\n return closeSelect && closeSelect.trim() !== '' ? $elem.closest(closeSelect.trim()) : $elem\r\n }\r\n\r\n $body.on('click', '.click-close', function (e) {\r\n e.stopPropagation()\r\n closeSelect(this).remove()\r\n })\r\n $body.on('click', '.click-animation-close', function (e) {\r\n e.stopPropagation()\r\n let selectElem = closeSelect(this)\r\n selectElem.addClass('close-animation')\r\n setTimeout(() => selectElem.remove(), 300)\r\n })\r\n },\r\n /* 离屏提示 */\r\n offscreenTip() {\r\n if (Utils.isMobile() || (!DreamConfig.document_hidden_title && !DreamConfig.document_visible_title)) return\r\n // const originTitle = document.title\r\n let originTitle = document.title\r\n let timer = null\r\n document.addEventListener('visibilitychange', function () {\r\n if (document.hidden) {\r\n if (!DreamConfig.document_visible_title || document.title !== DreamConfig.document_visible_title) {\r\n originTitle = document.title\r\n }\r\n DreamConfig.document_hidden_title && (document.title = DreamConfig.document_hidden_title)\r\n clearTimeout(timer)\r\n } else {\r\n document.title = DreamConfig.document_visible_title || originTitle\r\n DreamConfig.document_visible_title && (timer = setTimeout(function () {\r\n if (document.title === DreamConfig.document_visible_title) {\r\n document.title = originTitle\r\n }\r\n }, 2000))\r\n }\r\n })\r\n },\r\n /** 初始化轮播 **/\r\n initCarousel() {\r\n window.Swiper && new Swiper('.swiper', {\r\n loop: true,\r\n parallax: true,\r\n effect: 'slide',\r\n spaceBetween: 10,\r\n speed: 600,\r\n autoplay: {\r\n delay: 3000,\r\n disableOnInteraction: false,\r\n pauseOnMouseEnter: true,\r\n },\r\n pagination: {\r\n el: '.swiper-pagination',\r\n clickable: true,\r\n },\r\n navigation: {\r\n nextEl: '.swiper-button-next',\r\n prevEl: '.swiper-button-prev',\r\n },\r\n })\r\n },\r\n /* 个人信息界面打印彩字 */\r\n sparkInput() {\r\n const sparkInputContent = DreamConfig.spark_input_content && DreamConfig.spark_input_content.filter(s => s.length > 0)\r\n if (sparkInputContent && sparkInputContent.length > 0) {\r\n Utils.cachedScript(`${DreamConfig.theme_base}/js/spark-input.min.js?mew=${DreamConfig.theme_version}`, function () {\r\n $('.spark-input').each((index, domEle) => sparkInput(domEle, [domEle.innerText, ...sparkInputContent]))\r\n })\r\n }\r\n },\r\n /* 恋爱墙倒计时 */\r\n loveTime() {\r\n let $elem = $('.love .love-time')\r\n if ($elem.length === 0) return\r\n let loveTime = $elem.attr('data-time')\r\n if (!/^\\d{4}\\/\\d{2}\\/\\d{2} \\d{2}:\\d{2}:\\d{2}$/.test(loveTime)) {\r\n $elem.html(loveTime)\r\n return\r\n }\r\n const now = new Date()\r\n const grt = new Date(loveTime)\r\n setInterval(function () {\r\n now.setTime(now.getTime() + 1000)\r\n let difference = parseInt((now - grt) / 1000)\r\n let seconds = difference % 60\r\n difference = parseInt(difference / 60)\r\n let minutes = difference % 60\r\n difference = parseInt(difference / 60)\r\n let hours = difference % 24\r\n let days = parseInt(difference / 24)\r\n let year = 0\r\n let grtYear = grt.getFullYear()\r\n let nowYear = now.getFullYear()\r\n while (grtYear < nowYear) {\r\n if ((grtYear % 4 === 0 && grtYear % 100 !== 0) || grtYear % 400 === 0) {\r\n // 闰年366天\r\n if (days < 366) break\r\n days -= 366\r\n year += 1\r\n grtYear += 1\r\n } else {\r\n // 平年365天\r\n if (days < 365) break\r\n days -= 365\r\n year += 1\r\n grtYear += 1\r\n }\r\n }\r\n if (year !== 0) {\r\n $elem.html(`${year} 年 ${days} 天 ${hours} 时 ${minutes} 分 ${seconds} 秒`)\r\n } else {\r\n $elem.html(`${days} 天 ${hours} 时 ${minutes} 分 ${seconds} 秒`)\r\n }\r\n }, 1000)\r\n },\r\n /* 激活建站倒计时功能 */\r\n websiteTime() {\r\n if (!DreamConfig.website_time) {\r\n return\r\n }\r\n const websiteDate = document.getElementById('websiteDate')\r\n if (DreamConfig.website_time === '') {\r\n return\r\n }\r\n const grt = new Date(DreamConfig.website_time).getTime()\r\n setInterval(function () {\r\n let now = Date.now()\r\n let difference = parseInt((now - grt) / 1000)\r\n let seconds = difference % 60\r\n if (String(seconds).length === 1) {\r\n seconds = '0' + seconds\r\n }\r\n difference = parseInt(difference / 60)\r\n\r\n let minutes = difference % 60\r\n if (String(minutes).length === 1) {\r\n minutes = '0' + minutes\r\n }\r\n difference = parseInt(difference / 60)\r\n\r\n let hours = difference % 24\r\n if (String(hours).length === 1) {\r\n hours = '0' + hours\r\n }\r\n let days = parseInt(difference / 24)\r\n websiteDate.innerHTML = `建站${days}${hours}${minutes}${seconds}秒`\r\n }, 500)\r\n },\r\n /* 显示web版权 */\r\n webCopyright() {\r\n if (!DreamConfig.website_time) {\r\n return\r\n }\r\n const webCopyright = document.getElementById('webCopyright')\r\n const now = new Date()\r\n let nowYear = now.getFullYear()\r\n const grt = new Date(DreamConfig.website_time)\r\n let getYear = grt.getFullYear()\r\n if (nowYear === getYear) {\r\n webCopyright.innerText = '© ' + nowYear\r\n return\r\n }\r\n\r\n webCopyright.innerText = '© ' + getYear + '-' + nowYear\r\n },\r\n /* 激活侧边栏人生倒计时 */\r\n initTimeCount() {\r\n if (!$('.timelife').length) {\r\n return\r\n }\r\n if (timeLifeHour === new Date().getHours()) {\r\n return\r\n }\r\n let timelife = [\r\n {\r\n title: '今日已经过去',\r\n endTitle: '小时',\r\n num: 0,\r\n percent: '0%',\r\n },\r\n {\r\n title: '这周已经过去',\r\n endTitle: '天',\r\n num: 0,\r\n percent: '0%',\r\n },\r\n {\r\n title: '本月已经过去',\r\n endTitle: '天',\r\n num: 0,\r\n percent: '0%',\r\n },\r\n {\r\n title: '今年已经过去',\r\n endTitle: '个月',\r\n num: 0,\r\n percent: '0%',\r\n },\r\n ]\r\n {\r\n let nowDate = +new Date()\r\n let todayStartDate = new Date(new Date().toLocaleDateString()).getTime()\r\n let todayPassHours = (nowDate - todayStartDate) / 1000 / 60 / 60\r\n timeLifeHour = todayPassHours\r\n let todayPassHoursPercent = (todayPassHours / 24) * 100\r\n timelife[0].num = parseInt(todayPassHours)\r\n timelife[0].percent = parseInt(todayPassHoursPercent) + '%'\r\n }\r\n {\r\n let weeks = {\r\n 0: 7,\r\n 1: 1,\r\n 2: 2,\r\n 3: 3,\r\n 4: 4,\r\n 5: 5,\r\n 6: 6,\r\n }\r\n let weekDay = weeks[new Date().getDay()]\r\n let weekDayPassPercent = (weekDay / 7) * 100\r\n timelife[1].num = parseInt(weekDay)\r\n timelife[1].percent = parseInt(weekDayPassPercent) + '%'\r\n }\r\n {\r\n let year = new Date().getFullYear()\r\n let date = new Date().getDate()\r\n let month = new Date().getMonth() + 1\r\n let monthAll = new Date(year, month, 0).getDate()\r\n let monthPassPercent = (date / monthAll) * 100\r\n timelife[2].num = date\r\n timelife[2].percent = parseInt(monthPassPercent) + '%'\r\n }\r\n {\r\n let month = new Date().getMonth() + 1\r\n let yearPass = (month / 12) * 100\r\n timelife[3].num = month\r\n timelife[3].percent = parseInt(yearPass) + '%'\r\n }\r\n let htmlStr = ''\r\n timelife.forEach((item, index) => {\r\n htmlStr += `\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t${item.title}\r\n\t\t\t\t\t\t\t\t${item.num}\r\n\t\t\t\t\t\t\t\t${item.endTitle}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
${item.percent}
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
`\r\n })\r\n $('.aside-timelife').html(htmlStr)\r\n },\r\n /* 安全链接 */\r\n initSecurityLink() {\r\n if (!DreamConfig.enable_security_link || !DreamConfig.security_link_url || DreamConfig.security_link_url.length === 0) {\r\n return\r\n }\r\n $(document).on('click', 'a[target=_blank]', (event) => {\r\n event.preventDefault() // 防止链接默认行为,即打开新页面\r\n var href = $(event.currentTarget).attr('href')\r\n var hostname = window.location.hostname\r\n\r\n const isInternalLink = (url, siteDomain) => {\r\n // 将URL和站点域名转换为小写,去除前导和尾随空格\r\n url = url.toLowerCase().trim()\r\n siteDomain = siteDomain.toLowerCase().trim()\r\n // 如果URL是协议相对路径或者绝对路径,则转换为完整的URL\r\n if (url.startsWith('//')) {\r\n url = window.location.protocol + url\r\n } else if (url.startsWith('/')) {\r\n url = window.location.origin + url\r\n }\r\n // 如果URL以'http://'或'https://'开头,则去除尾部斜杠\r\n if (url.startsWith('http://') || url.startsWith('https://')) {\r\n url = url.replace(/\\/$/, '')\r\n }\r\n // 对比URL和站点域名\r\n return url.includes(siteDomain)\r\n }\r\n\r\n var tempwindow = window.open('_blank')\r\n tempwindow.location = isInternalLink(href, hostname) ? href : (DreamConfig.security_link_url + '?target=' + encodeURIComponent(href))\r\n })\r\n },\r\n /* 灰色模式 */\r\n initGrayMode() {\r\n if (DreamConfig.gray_mode === true) {\r\n $('html').addClass('gray-mode')\r\n } else if (DreamConfig.gray_mode === 'custom') {\r\n var now = new Date().getTime()\r\n var startTime = new Date(DreamConfig.gray_mode_start_time).getTime()\r\n var endTime = new Date(DreamConfig.gray_mode_end_time).getTime()\r\n if (now >= startTime && now <= endTime) {\r\n $('html').addClass('gray-mode')\r\n }\r\n }\r\n },\r\n /* 初始化特效,只需要初始化一次,移动端设备不初始化 */\r\n initEffects() {\r\n if (Utils.isMobile()) return\r\n DreamConfig.cursor_move && Utils.cachedScript(`${DreamConfig.theme_base}/js/cursor/move/${DreamConfig.cursor_move}.min.js?mew=${DreamConfig.theme_version}`)\r\n DreamConfig.cursor_click && Utils.cachedScript(`${DreamConfig.theme_base}/js/cursor/click/${DreamConfig.cursor_click}.min.js?mew=${DreamConfig.theme_version}`)\r\n DreamConfig.enable_live2d && Utils.cachedScript(`${DreamConfig.theme_base}/js/autoload.min.js?mew=${DreamConfig.theme_version}`)\r\n DreamConfig.effects_lantern_mode && Utils.cachedScript(`${DreamConfig.theme_base}/js/effects/lantern.min.js?mew=${DreamConfig.theme_version}`)\r\n DreamConfig.effects_sakura_mode && Utils.cachedScript(`${DreamConfig.theme_base}/js/effects/sakura.min.js?mew=${DreamConfig.theme_version}`)\r\n DreamConfig.effects_snowflake_mode && Utils.cachedScript(`${DreamConfig.theme_base}/js/effects/snowflake.min.js?mew=${DreamConfig.theme_version}`)\r\n DreamConfig.effects_universe_mode && Utils.cachedScript(`${DreamConfig.theme_base}/js/effects/universe.min.js?mew=${DreamConfig.theme_version}`)\r\n DreamConfig.effects_circle_magic_mode && Utils.cachedScript(`${DreamConfig.theme_base}/js/effects/circleMagic.min.js?mew=${DreamConfig.theme_version}`)\r\n },\r\n /*初始化标签云滚动样式*/\r\n initTagCloud() {\r\n if (!$('.tagcloud').length || !DreamConfig.show_tagcloud_style) {\r\n return\r\n }\r\n\r\n tagcloud({\r\n selector: '.tagcloud .card-content', //元素选择器\r\n fontsize: 18, //基本字体大小, 单位px\r\n radius: 75, //滚动半径, 单位px\r\n mspeed: 'slow', //滚动最大速度, 取值: slow, normal(默认), fast\r\n ispeed: 'slow', //滚动初速度, 取值: slow, normal(默认), fast\r\n direction: 45, //初始滚动方向, 取值角度(顺时针360): 0对应top, 90对应left, 135对应right-bottom(默认)...\r\n keep: false //鼠标移出组件后是否继续随鼠标滚动, 取值: false, true(默认) 对应 减速至初速度滚动, 随鼠标滚动\r\n })\r\n },\r\n /* 显示主题版本信息 */\r\n showThemeVersion() {\r\n if (!DreamConfig.enable_console_version_info) {\r\n return\r\n }\r\n window.logger(`%c页面加载耗时:${Math.round(performance.now())}ms | Theme By Dream2 Plus ${DreamConfig.theme_version}`,\r\n 'color:#fff; background: linear-gradient(270deg, #986fee, #8695e6, #68b7dd, #18d7d3); padding: 8px 15px; border-radius: 0 15px 0 15px')\r\n }\r\n}\r\n\r\nwindow.commonContext = commonContext\r\nlet timeLifeHour = -1\r\n\r\n!(function () {\r\n const loads = ['initCarousel', 'sparkInput', 'websiteTime']\r\n const omits = ['initEffects', 'showThemeVersion']\r\n\r\n Object.keys(commonContext).forEach(\r\n (c) => !loads.includes(c) && !omits.includes(c) && commonContext[c]()\r\n )\r\n\r\n // 当前html加载完执行\r\n document.addEventListener('DOMContentLoaded', function () {\r\n $('html').addClass('loaded')\r\n loads.forEach((c) => commonContext[c] && commonContext[c]())\r\n })\r\n\r\n // 所有内容加载完执行\r\n window.addEventListener('load', function () {\r\n omits.forEach((c) => commonContext[c] && commonContext[c]())\r\n $('html').addClass('ready')\r\n })\r\n})()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/common.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/common.js"]()})(); \ No newline at end of file +(()=>{window.encrypt=e=>window.btoa(unescape(encodeURIComponent(e))),window.decrypt=e=>decodeURIComponent(escape(window.atob(e)));const t={initWidget(){var e=$(".columns .column-right"),t=$(".columns .column-right-shadow");if(e.length&&t.length&&!t[0].children.length)for(const n of e[0].children)t[0].append(n.cloneNode(!0))},initTocAndNotice(){var e=location["pathname"],t=(window.tocPjax&&window.tocPjax(),0===$(".widget.toc .card-content ul").length),e="toc"===DreamConfig.notice_show_mode&&!t||"index"===DreamConfig.notice_show_mode&&"/"!==e;t?$(".widget.toc,.action-toc").addClass("is-hidden-all"):$(".widget.toc,.action-toc").removeClass("is-hidden-all"),e?$(".widget.notice").addClass("is-hidden-all"):$(".widget.notice").removeClass("is-hidden-all")},initBanner(){const a=$(".banner-info-desc");if(0!==a.length){const o=a.text();a.text("");let t,n="",i=!0;const s=function(){var e=n.length;i&&e
${this.alt&&DreamConfig.show_img_name?`

${this.alt}

`:""}`)})},initMode(){let t=localStorage.getItem("night")||!1;const n=e=>{e?$("html").addClass("color-scheme-dark").removeClass("color-scheme-light").addClass("night"):$("html").addClass("color-scheme-light").removeClass("color-scheme-dark").removeClass("night"),localStorage.setItem("night",e),t=e};$("#toggle-mode").on("click",()=>n("true"!==t.toString())),"system"===DreamConfig.default_theme?window.matchMedia("(prefers-color-scheme: dark)").addListener(e=>n(e.matches)):n("true"===t.toString())},initNavbar(){var t=$(".navbar-nav a"),e=$(".panel-side-menu .link");let n=0;var{href:i,pathname:a}=location;if(a&&"/"!==a)for(let e=0;e$(this).addClass("active"),()=>$(this).removeClass("active")):($(this).on("click",function(e){e.stopPropagation(),$(this).toggleClass("active"),$(document).one("click",()=>$(this).removeClass("active")),e.stopPropagation()}),n.on("click",e=>e.stopPropagation()))})},initScroll(){window.initTop=0,document.addEventListener("scroll",()=>{const e=$(document).scrollTop(),t=(a=e>window.initTop,window.initTop=e,a),n=$("body"),i=$(".actions");var a;50e.preventDefault),$(".navbar .toc-content").on("click",function(e){e.stopPropagation(),$("html").removeClass("disable-scroll"),$(".navbar-mask").removeClass("active slideout"),$(".navbar-slideout").removeClass("active slideout-toc")})},sideMenuMobile(){$(".navbar-slideout-menu .current").parents(".panel-body").show().siblings(".panel").addClass("in"),$(".navbar-slideout-menu .panel").on("click",function(e){e.stopPropagation();var e=$(this),t=e.parent().parent();t.find(".panel").not(e).removeClass("in"),t.find(".panel-body").not(e.siblings(".panel-body")).stop().hide("fast"),e.toggleClass("in").siblings(".panel-body").stop().toggle("fast")})},initEvent(){var e=$("body");function n(e){var e=$(e),t=e.attr("data-close");return t&&""!==t.trim()?e.closest(t.trim()):e}e.on("click",".click-close",function(e){e.stopPropagation(),n(this).remove()}),e.on("click",".click-animation-close",function(e){e.stopPropagation();let t=n(this);t.addClass("close-animation"),setTimeout(()=>t.remove(),300)})},offscreenTip(){if(!Utils.isMobile()&&(DreamConfig.document_hidden_title||DreamConfig.document_visible_title)){let e=document.title,t=null;document.addEventListener("visibilitychange",function(){document.hidden?(DreamConfig.document_visible_title&&document.title===DreamConfig.document_visible_title||(e=document.title),DreamConfig.document_hidden_title&&(document.title=DreamConfig.document_hidden_title),clearTimeout(t)):(document.title=DreamConfig.document_visible_title||e,DreamConfig.document_visible_title&&(t=setTimeout(function(){document.title===DreamConfig.document_visible_title&&(document.title=e)},2e3)))})}},initCarousel(){window.Swiper&&new Swiper(".swiper",{loop:!0,parallax:!0,effect:"slide",spaceBetween:10,speed:600,autoplay:{delay:3e3,disableOnInteraction:!1,pauseOnMouseEnter:!0},pagination:{el:".swiper-pagination",clickable:!0},navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}})},sparkInput(){const n=DreamConfig.spark_input_content&&DreamConfig.spark_input_content.filter(e=>0sparkInput(t,[t.innerText,...n]))})},loveTime(){let l=$(".love .love-time");if(0!==l.length){var e=l.attr("data-time");if(/^\d{4}\/\d{2}\/\d{2} \d{2}:\d{2}:\d{2}$/.test(e)){const c=new Date,d=new Date(e);setInterval(function(){c.setTime(c.getTime()+1e3);var e=parseInt((c-d)/1e3),t=e%60,n=(e=parseInt(e/60))%60;let i=(e=parseInt(e/60))%24,a=parseInt(e/24),o=0,s=d.getFullYear(),r=c.getFullYear();for(;s${o}天${a}${i}${n}秒`},500)}}},webCopyright(){var e,t,n;DreamConfig.website_time&&(e=document.getElementById("webCopyright"),t=(new Date).getFullYear(),n=new Date(DreamConfig.website_time).getFullYear(),e.innerText=t!==n?"© "+n+"-"+t:"© "+t)},initTimeCount(){if($(".timelife").length&&o!==(new Date).getHours()){var e=[{title:"今日已经过去",endTitle:"小时",num:0,percent:"0%"},{title:"这周已经过去",endTitle:"天",num:0,percent:"0%"},{title:"本月已经过去",endTitle:"天",num:0,percent:"0%"},{title:"今年已经过去",endTitle:"个月",num:0,percent:"0%"}],t=(+new Date-new Date((new Date).toLocaleDateString()).getTime())/1e3/60/60,i=(o=t)/24*100,t=(e[0].num=parseInt(t),e[0].percent=parseInt(i)+"%",{0:7,1:1,2:2,3:3,4:4,5:5,6:6}[(new Date).getDay()]),i=t/7*100,t=(e[1].num=parseInt(t),e[1].percent=parseInt(i)+"%",(new Date).getFullYear()),i=(new Date).getDate(),a=(new Date).getMonth()+1,t=i/new Date(t,a,0).getDate()*100,a=(e[2].num=i,e[2].percent=parseInt(t)+"%",(new Date).getMonth()+1),i=a/12*100;e[3].num=a,e[3].percent=parseInt(i)+"%";let n="";e.forEach((e,t)=>{n+=` +
+
+ ${e.title} + ${e.num} + ${e.endTitle} +
+
+
+
+
+
${e.percent}
+
+
`}),$(".aside-timelife").html(n)}},initSecurityLink(){DreamConfig.enable_security_link&&DreamConfig.security_link_url&&0!==DreamConfig.security_link_url.length&&$(document).on("click","a[target=_blank]",e=>{e.preventDefault();var t,e=$(e.currentTarget).attr("href"),n=window.location.hostname;window.open("_blank").location=(n=n,t=(t=e).toLowerCase().trim(),n=n.toLowerCase().trim(),t.startsWith("//")?t=window.location.protocol+t:t.startsWith("/")&&(t=window.location.origin+t),(t=t.startsWith("http://")||t.startsWith("https://")?t.replace(/\/$/,""):t).includes(n)?e:DreamConfig.security_link_url+"?target="+encodeURIComponent(e))})},initGrayMode(){var e,t,n;(!0===DreamConfig.gray_mode||"custom"===DreamConfig.gray_mode&&(e=(new Date).getTime(),t=new Date(DreamConfig.gray_mode_start_time).getTime(),n=new Date(DreamConfig.gray_mode_end_time).getTime(),t<=e)&&e<=n)&&$("html").addClass("gray-mode")},initEffects(){Utils.isMobile()||(DreamConfig.cursor_move&&Utils.cachedScript(`${DreamConfig.theme_base}/js/cursor/move/${DreamConfig.cursor_move}.min.js?mew=`+DreamConfig.theme_version),DreamConfig.cursor_click&&Utils.cachedScript(`${DreamConfig.theme_base}/js/cursor/click/${DreamConfig.cursor_click}.min.js?mew=`+DreamConfig.theme_version),DreamConfig.enable_live2d&&Utils.cachedScript(DreamConfig.theme_base+"/js/autoload.min.js?mew="+DreamConfig.theme_version),DreamConfig.effects_lantern_mode&&Utils.cachedScript(DreamConfig.theme_base+"/js/effects/lantern.min.js?mew="+DreamConfig.theme_version),DreamConfig.effects_sakura_mode&&Utils.cachedScript(DreamConfig.theme_base+"/js/effects/sakura.min.js?mew="+DreamConfig.theme_version),DreamConfig.effects_snowflake_mode&&Utils.cachedScript(DreamConfig.theme_base+"/js/effects/snowflake.min.js?mew="+DreamConfig.theme_version),DreamConfig.effects_universe_mode&&Utils.cachedScript(DreamConfig.theme_base+"/js/effects/universe.min.js?mew="+DreamConfig.theme_version),DreamConfig.effects_circle_magic_mode&&Utils.cachedScript(DreamConfig.theme_base+"/js/effects/circleMagic.min.js?mew="+DreamConfig.theme_version))},initTagCloud(){$(".tagcloud").length&&DreamConfig.show_tagcloud_style&&tagcloud({selector:".tagcloud .card-content",fontsize:18,radius:75,mspeed:"slow",ispeed:"slow",direction:45,keep:!1})},showThemeVersion(){DreamConfig.enable_console_version_info&&window.logger(`%c页面加载耗时:${Math.round(performance.now())}ms | Theme By Dream2 Plus `+DreamConfig.theme_version,"color:#fff; background: linear-gradient(270deg, #986fee, #8695e6, #68b7dd, #18d7d3); padding: 8px 15px; border-radius: 0 15px 0 15px")}};window.commonContext=t;let o=-1;{const n=["initCarousel","sparkInput","websiteTime"],i=["initEffects","showThemeVersion"];Object.keys(t).forEach(e=>!n.includes(e)&&!i.includes(e)&&t[e]()),document.addEventListener("DOMContentLoaded",function(){$("html").addClass("loaded"),n.forEach(e=>t[e]&&t[e]())}),window.addEventListener("load",function(){i.forEach(e=>t[e]&&t[e]()),$("html").addClass("ready")})}})(); \ No newline at end of file diff --git a/templates/assets/js/cursor/click/firework.min.js b/templates/assets/js/cursor/click/firework.min.js index 0a0b8a1..3979e88 100644 --- a/templates/assets/js/cursor/click/firework.min.js +++ b/templates/assets/js/cursor/click/firework.min.js @@ -1 +1 @@ -(()=>{var __webpack_modules__={"./src/js/cursor/click/firework.js":()=>{eval("\ufeff/**************** 光标渲染 *******************/\r\n\r\nclass Circle {\r\n constructor({ origin, speed, color, angle, context }) {\r\n this.origin = origin\r\n this.position = { ...this.origin }\r\n this.color = color\r\n this.speed = speed\r\n this.angle = angle\r\n this.context = context\r\n this.renderCount = 0\r\n }\r\n\r\n draw() {\r\n this.context.fillStyle = this.color\r\n this.context.beginPath()\r\n this.context.arc(this.position.x, this.position.y, 2, 0, Math.PI * 2)\r\n this.context.fill()\r\n }\r\n\r\n move() {\r\n this.position.x = (Math.sin(this.angle) * this.speed) + this.position.x\r\n this.position.y = (Math.cos(this.angle) * this.speed) + this.position.y + (this.renderCount * 0.3)\r\n this.renderCount++\r\n }\r\n}\r\n\r\nclass Boom {\r\n constructor({ origin, context, circleCount = 10, area }) {\r\n this.origin = origin\r\n this.context = context\r\n this.circleCount = circleCount\r\n this.area = area\r\n this.stop = false\r\n this.circles = []\r\n }\r\n\r\n randomArray(range) {\r\n const length = range.length\r\n const randomIndex = Math.floor(length * Math.random())\r\n return range[randomIndex]\r\n }\r\n\r\n randomColor() {\r\n const range = ['8', '9', 'A', 'B', 'C', 'D', 'E', 'F']\r\n return '#' + this.randomArray(range) + this.randomArray(range) + this.randomArray(range) + this.randomArray(range) + this.randomArray(range) + this.randomArray(range)\r\n }\r\n\r\n randomRange(start, end) {\r\n return (end - start) * Math.random() + start\r\n }\r\n\r\n init() {\r\n for (let i = 0; i < this.circleCount; i++) {\r\n const circle = new Circle({\r\n context: this.context,\r\n origin: this.origin,\r\n color: this.randomColor(),\r\n angle: this.randomRange(Math.PI - 1, Math.PI + 1),\r\n speed: this.randomRange(1, 6)\r\n })\r\n this.circles.push(circle)\r\n }\r\n }\r\n\r\n move() {\r\n this.circles.forEach((circle, index) => {\r\n if (circle.position.x > this.area.width || circle.position.y > this.area.height) {\r\n return this.circles.splice(index, 1)\r\n }\r\n circle.move()\r\n })\r\n if (this.circles.length == 0) {\r\n this.stop = true\r\n }\r\n }\r\n\r\n draw() {\r\n this.circles.forEach(circle => circle.draw())\r\n }\r\n}\r\n\r\nclass CursorSpecialEffects {\r\n constructor() {\r\n this.computerCanvas = document.createElement('canvas')\r\n this.renderCanvas = document.createElement('canvas')\r\n\r\n this.computerContext = this.computerCanvas.getContext('2d')\r\n this.renderContext = this.renderCanvas.getContext('2d')\r\n\r\n this.globalWidth = window.innerWidth\r\n this.globalHeight = window.innerHeight\r\n\r\n this.booms = []\r\n this.running = false\r\n }\r\n\r\n handleMouseDown(e) {\r\n const boom = new Boom({\r\n origin: { x: e.clientX, y: e.clientY },\r\n context: this.computerContext,\r\n area: {\r\n width: this.globalWidth,\r\n height: this.globalHeight\r\n }\r\n })\r\n boom.init()\r\n this.booms.push(boom)\r\n this.running || this.run()\r\n }\r\n\r\n handlePageHide() {\r\n this.booms = []\r\n this.running = false\r\n }\r\n\r\n init() {\r\n const style = this.renderCanvas.style\r\n style.position = 'fixed'\r\n style.top = style.left = 0\r\n style.zIndex = '999999999999999999999999999999999999999999'\r\n style.pointerEvents = 'none'\r\n\r\n style.width = this.renderCanvas.width = this.computerCanvas.width = this.globalWidth\r\n style.height = this.renderCanvas.height = this.computerCanvas.height = this.globalHeight\r\n\r\n document.body.append(this.renderCanvas)\r\n\r\n window.addEventListener('mousedown', this.handleMouseDown.bind(this))\r\n window.addEventListener('pagehide', this.handlePageHide.bind(this))\r\n }\r\n\r\n run() {\r\n this.running = true\r\n if (this.booms.length == 0) {\r\n return this.running = false\r\n }\r\n\r\n requestAnimationFrame(this.run.bind(this))\r\n\r\n this.computerContext.clearRect(0, 0, this.globalWidth, this.globalHeight)\r\n this.renderContext.clearRect(0, 0, this.globalWidth, this.globalHeight)\r\n\r\n this.booms.forEach((boom, index) => {\r\n if (boom.stop) {\r\n return this.booms.splice(index, 1)\r\n }\r\n boom.move()\r\n boom.draw()\r\n })\r\n this.renderContext.drawImage(this.computerCanvas, 0, 0, this.globalWidth, this.globalHeight)\r\n }\r\n}\r\nconst cursorSpecialEffects = new CursorSpecialEffects()\r\ncursorSpecialEffects.init()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/click/firework.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/click/firework.js"]()})(); \ No newline at end of file +(()=>{class e{constructor({origin:t,speed:i,color:e,angle:n,context:s}){this.origin=t,this.position={...this.origin},this.color=e,this.speed=i,this.angle=n,this.context=s,this.renderCount=0}draw(){this.context.fillStyle=this.color,this.context.beginPath(),this.context.arc(this.position.x,this.position.y,2,0,2*Math.PI),this.context.fill()}move(){this.position.x=Math.sin(this.angle)*this.speed+this.position.x,this.position.y=Math.cos(this.angle)*this.speed+this.position.y+.3*this.renderCount,this.renderCount++}}class i{constructor({origin:t,context:i,circleCount:e=10,area:n}){this.origin=t,this.context=i,this.circleCount=e,this.area=n,this.stop=!1,this.circles=[]}randomArray(t){var i=t.length;return t[Math.floor(i*Math.random())]}randomColor(){var t=["8","9","A","B","C","D","E","F"];return"#"+this.randomArray(t)+this.randomArray(t)+this.randomArray(t)+this.randomArray(t)+this.randomArray(t)+this.randomArray(t)}randomRange(t,i){return(i-t)*Math.random()+t}init(){for(let t=0;t{if(t.position.x>this.area.width||t.position.y>this.area.height)return this.circles.splice(i,1);t.move()}),0==this.circles.length&&(this.stop=!0)}draw(){this.circles.forEach(t=>t.draw())}}(new class{constructor(){this.computerCanvas=document.createElement("canvas"),this.renderCanvas=document.createElement("canvas"),this.computerContext=this.computerCanvas.getContext("2d"),this.renderContext=this.renderCanvas.getContext("2d"),this.globalWidth=window.innerWidth,this.globalHeight=window.innerHeight,this.booms=[],this.running=!1}handleMouseDown(t){t=new i({origin:{x:t.clientX,y:t.clientY},context:this.computerContext,area:{width:this.globalWidth,height:this.globalHeight}});t.init(),this.booms.push(t),this.running||this.run()}handlePageHide(){this.booms=[],this.running=!1}init(){var t=this.renderCanvas.style;t.position="fixed",t.top=t.left=0,t.zIndex="999999999999999999999999999999999999999999",t.pointerEvents="none",t.width=this.renderCanvas.width=this.computerCanvas.width=this.globalWidth,t.height=this.renderCanvas.height=this.computerCanvas.height=this.globalHeight,document.body.append(this.renderCanvas),window.addEventListener("mousedown",this.handleMouseDown.bind(this)),window.addEventListener("pagehide",this.handlePageHide.bind(this))}run(){if(this.running=!0,0==this.booms.length)return this.running=!1;requestAnimationFrame(this.run.bind(this)),this.computerContext.clearRect(0,0,this.globalWidth,this.globalHeight),this.renderContext.clearRect(0,0,this.globalWidth,this.globalHeight),this.booms.forEach((t,i)=>{if(t.stop)return this.booms.splice(i,1);t.move(),t.draw()}),this.renderContext.drawImage(this.computerCanvas,0,0,this.globalWidth,this.globalHeight)}}).init()})(); \ No newline at end of file diff --git a/templates/assets/js/cursor/click/granule.min.js b/templates/assets/js/cursor/click/granule.min.js index dc712e6..23f02c6 100644 --- a/templates/assets/js/cursor/click/granule.min.js +++ b/templates/assets/js/cursor/click/granule.min.js @@ -1 +1 @@ -(()=>{var __webpack_modules__={"./src/js/cursor/click/granule.js":()=>{eval("$(function () {\r\n let t = function () {\r\n 'use strict'\r\n function t(t) {\r\n return '[object Array]' === Object.prototype.toString.call(t)\r\n }\r\n function e(t) {\r\n return 'function' == typeof t\r\n }\r\n function n(t) {\r\n return 'number' == typeof t\r\n }\r\n function i(t) {\r\n return 'string' == typeof t\r\n }\r\n function o(t) {\r\n return b[t] || String.fromCharCode(t)\r\n }\r\n function r(t, e, n) {\r\n for (var i in e)\r\n // eslint-disable-next-line no-prototype-builtins\r\n (n || !t.hasOwnProperty(i)) && (t[i] = e[i])\r\n return t\r\n }\r\n function a(t, e) {\r\n return function () {\r\n t.apply(e, arguments)\r\n }\r\n }\r\n function c(t) {\r\n var n = {}\r\n for (var i in t)\r\n n[i] = e(t[i]) ? a(t[i], t) : t[i]\r\n return n\r\n }\r\n function s(t) {\r\n function n(n) {\r\n e(n) && n.apply(t, [].splice.call(arguments, 1))\r\n }\r\n function a(t) {\r\n for (_ = 0; _ < $.length; _++)\r\n D = $[_], i(D) ? O[(t ? 'add' : 'remove') + 'EventListener'].call(O, D, A, !1) : e(D) ? A = D : O = D\r\n }\r\n function s() {\r\n S(N),\r\n N = k(s),\r\n U || (n(t.setup), U = e(t.setup), n(t.resize)),\r\n t.running && !M && (t.dt = (B = +new Date) - t.now, t.millis += t.dt, t.now = B, n(t.update), t.autoclear && K && t.clear(), n(t.draw)),\r\n M = ++M % t.interval\r\n }\r\n function u() {\r\n O = j ? t.style : t.canvas,\r\n W = j ? 'px' : '',\r\n t.fullscreen && (t.height = w.innerHeight, t.width = w.innerWidth),\r\n O.height = t.height + W,\r\n O.width = t.width + W,\r\n t.retina && K && Y && (O.height = t.height * Y, O.width = t.width * Y, O.style.height = t.height + 'px', O.style.width = t.width + 'px', t.scale(Y, Y)),\r\n U && n(t.resize)\r\n }\r\n function l(t, e) {\r\n return R = e.getBoundingClientRect(),\r\n t.x = t.pageX - R.left - w.scrollX,\r\n t.y = t.pageY - R.top - w.scrollY,\r\n t\r\n }\r\n function h(e, n) {\r\n return l(e, t.element),\r\n n = n || {},\r\n n.ox = n.x || e.x,\r\n n.oy = n.y || e.y,\r\n n.x = e.x,\r\n n.y = e.y,\r\n n.dx = n.x - n.ox,\r\n n.dy = n.y - n.oy,\r\n n\r\n }\r\n function d(t) {\r\n if (t.preventDefault(), F = c(t), F.originalEvent = t, F.touches)\r\n for (Q.length = F.touches.length, _ = 0; _ < F.touches.length; _++)\r\n Q[_] = h(F.touches[_], Q[_])\r\n else\r\n Q.length = 0, Q[0] = h(F, V)\r\n return r(V, Q[0], !0),\r\n F\r\n }\r\n function f(e) {\r\n for (e = d(e), X = (q = $.indexOf(G = e.type)) - 1, t.dragging = !!/down|start/.test(G) || !/up|end/.test(G) && t.dragging; X; )\r\n i($[X]) ? n(t[$[X--]], e) : i($[q]) ? n(t[$[q++]], e) : X = 0\r\n }\r\n function p(e) {\r\n z = e.keyCode,\r\n H = 'keyup' == e.type,\r\n J[z] = J[o(z)] = !H,\r\n n(t[e.type], e)\r\n }\r\n function m(e) {\r\n t.autopause && ('blur' == e.type ? C : E)(),\r\n n(t[e.type], e)\r\n }\r\n function E() {\r\n t.now = +new Date,\r\n t.running = !0\r\n }\r\n function C() {\r\n t.running = !1\r\n }\r\n function P() {\r\n (t.running ? C : E)()\r\n }\r\n function T() {\r\n K && t.clearRect(0, 0, t.width, t.height)\r\n }\r\n function I() {\r\n L = t.element.parentNode,\r\n _ = x.indexOf(t),\r\n L && L.removeChild(t.element),\r\n ~_ && x.splice(_, 1),\r\n a(!1),\r\n C()\r\n }\r\n var N,\r\n A,\r\n O,\r\n L,\r\n R,\r\n _,\r\n W,\r\n B,\r\n D,\r\n F,\r\n G,\r\n z,\r\n H,\r\n X,\r\n q,\r\n M = 0,\r\n Q = [],\r\n U = !1,\r\n Y = w.devicePixelRatio,\r\n j = t.type == y,\r\n K = t.type == g,\r\n V = {\r\n x: 0,\r\n y: 0,\r\n ox: 0,\r\n oy: 0,\r\n dx: 0,\r\n dy: 0\r\n },\r\n $ = [t.element, f, 'mousedown', 'touchstart', f, 'mousemove', 'touchmove', f, 'mouseup', 'touchend', f, 'click', v, p, 'keydown', 'keyup', w, m, 'focus', 'blur', u, 'resize'],\r\n J = {}\r\n for (z in b)\r\n J[b[z]] = !1\r\n return r(t, {\r\n touches: Q,\r\n mouse: V,\r\n keys: J,\r\n dragging: !1,\r\n running: !1,\r\n millis: 0,\r\n now: NaN,\r\n dt: NaN,\r\n destroy: I,\r\n toggle: P,\r\n clear: T,\r\n start: E,\r\n stop: C\r\n }),\r\n x.push(t),\r\n t.autostart && E(),\r\n a(!0),\r\n u(),\r\n s(),\r\n t\r\n }\r\n let u = document.createElement('div')\r\n u.setAttribute('id', 'clickCanvas'),\r\n u.style.cssText = 'position:fixed;left:0;top:0;z-index:1000;pointer-events:none;',\r\n document.body.appendChild(u)\r\n for (var l, h, d = 'E LN10 LN2 LOG2E LOG10E PI SQRT1_2 SQRT2 abs acos asin atan ceil cos exp floor log round sin sqrt tan atan2 pow max min'.split(' '), f = '__hasSketch', p = Math, g = 'canvas', m = 'webgl', y = 'dom', v = document, w = window, x = [], E = {\r\n fullscreen: !0,\r\n autostart: !0,\r\n autoclear: !0,\r\n autopause: !0,\r\n container: v.body,\r\n interval: 1,\r\n globals: !0,\r\n retina: !1,\r\n type: g\r\n }, b = {\r\n 8: 'BACKSPACE',\r\n 9: 'TAB',\r\n 13: 'ENTER',\r\n 16: 'SHIFT',\r\n 27: 'ESCAPE',\r\n 32: 'SPACE',\r\n 37: 'LEFT',\r\n 38: 'UP',\r\n 39: 'RIGHT',\r\n 40: 'DOWN'\r\n }, C = {\r\n CANVAS: g,\r\n WEB_GL: m,\r\n WEBGL: m,\r\n DOM: y,\r\n instances: x,\r\n install: function (e) {\r\n if (!e[f]) {\r\n for (var i = 0; i < d.length; i++)\r\n e[d[i]] = p[d[i]]\r\n r(e, {\r\n TWO_PI: 2 * p.PI,\r\n HALF_PI: p.PI / 2,\r\n QUATER_PI: p.PI / 4,\r\n random: function (e, i) {\r\n return t(e) ? e[~~(p.random() * e.length)] : (n(i) || (i = e || 1, e = 0), e + p.random() * (i - e))\r\n },\r\n lerp: function (t, e, n) {\r\n return t + n * (e - t)\r\n },\r\n map: function (t, e, n, i, o) {\r\n return (t - e) / (n - e) * (o - i) + i\r\n }\r\n }),\r\n e[f] = !0\r\n }\r\n },\r\n create: function (t) {\r\n return t = r(t || {}, E),\r\n t.globals && C.install(self),\r\n l = t.element = t.element || v.createElement(t.type === y ? 'div' : 'canvas'),\r\n h = t.context = t.context || function () {\r\n switch (t.type) {\r\n case g:\r\n return l.getContext('2d', t)\r\n case m:\r\n return l.getContext('webgl', t) || l.getContext('experimental-webgl', t)\r\n case y:\r\n return l.canvas = l\r\n }\r\n }\r\n (),\r\n t.container.appendChild(l),\r\n C.augment(h, t)\r\n },\r\n augment: function (t, e) {\r\n return e = r(e || {}, E),\r\n e.element = t.canvas || t,\r\n e.element.className += ' sketch',\r\n r(t, e, !0),\r\n s(t)\r\n }\r\n }, P = ['ms', 'moz', 'webkit', 'o'], T = self, I = 0, N = 'AnimationFrame', A = 'request' + N, O = 'cancel' + N, k = T[A], S = T[O], L = 0; L < P.length && !k; L++)\r\n k = T[P[L] + 'Request' + N], S = T[P[L] + 'Cancel' + A]\r\n return T[A] = k = k || function (t) {\r\n var e = +new Date,\r\n n = p.max(0, 16 - (e - I)),\r\n i = setTimeout(function () {\r\n t(e + n)\r\n }, n)\r\n return I = e + n,\r\n i\r\n },\r\n T[O] = S = S || function (t) {\r\n clearTimeout(t)\r\n },\r\n C\r\n }()\r\n if (document.getElementById('clickCanvas')) {\r\n function e(t, e, n) {\r\n this.init(t, e, n)\r\n }\r\n e.prototype = {\r\n init: function (t, e, n) {\r\n this.alive = !0,\r\n this.radius = n || 10,\r\n this.wander = .15,\r\n this.theta = random(TWO_PI),\r\n this.drag = .92,\r\n this.color = '#ffeb3b',\r\n this.x = t || 0,\r\n this.y = e || 0,\r\n this.vx = 0,\r\n this.vy = 0\r\n },\r\n move: function () {\r\n this.x += this.vx,\r\n this.y += this.vy,\r\n this.vx *= this.drag,\r\n this.vy *= this.drag,\r\n this.theta += random( - .5, .5) * this.wander,\r\n this.vx += .1 * sin(this.theta),\r\n this.vy += .1 * cos(this.theta),\r\n this.radius *= .96,\r\n this.alive = this.radius > .5\r\n },\r\n draw: function (t) {\r\n t.beginPath(),\r\n t.arc(this.x, this.y, this.radius, 0, TWO_PI),\r\n t.fillStyle = this.color,\r\n t.fill()\r\n }\r\n }\r\n var n = 50,\r\n i = ['#5ee4ff', '#f44033', '#ffeb3b', '#F38630', '#FA6900', '#f403e8', '#F9D423'],\r\n o = [],\r\n r = [],\r\n a = t.create({\r\n container: document.getElementById('clickCanvas')\r\n })\r\n a.spawn = function (t, a) {\r\n o.length >= n && r.push(o.shift()),\r\n particle = r.length ? r.pop() : new e,\r\n particle.init(t, a, random(5, 20)),\r\n particle.wander = random(.5, 2),\r\n particle.color = random(i),\r\n particle.drag = random(.9, .99),\r\n theta = random(TWO_PI),\r\n force = random(1, 5),\r\n particle.vx = sin(theta) * force,\r\n particle.vy = cos(theta) * force,\r\n o.push(particle)\r\n },\r\n a.update = function () {\r\n var t,\r\n e\r\n for (t = o.length - 1; t >= 0; t--)\r\n e = o[t], e.alive ? e.move() : r.push(o.splice(t, 1)[0])\r\n },\r\n a.draw = function () {\r\n a.globalCompositeOperation = 'lighter'\r\n for (var t = o.length - 1; t >= 0; t--)\r\n o[t].draw(a)\r\n },\r\n document.addEventListener('mousedown', function (t) {\r\n var e, n\r\n 'TEXTAREA' !== t.target.nodeName && 'INPUT' !== t.target.nodeName && 'A' !== t.target.nodeName && 'I' !== t.target.nodeName && 'IMG' !== t.target.nodeName && function () {\r\n for (e = random(15, 20), n = 0; n < e; n++)\r\n a.spawn(t.clientX, t.clientY)\r\n }\r\n ()\r\n })\r\n }\r\n})\r\n\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/click/granule.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/click/granule.js"]()})(); \ No newline at end of file +$(function(){var n,i,o,r,t=function(){"use strict";function L(t){return"function"==typeof t}function R(t){return"string"==typeof t}function _(t,e,n){for(var i in e)!n&&t.hasOwnProperty(i)||(t[i]=e[i]);return t}function W(t){var e,n={};for(e in t)n[e]=L(t[e])?function(t,e){return function(){t.apply(e,arguments)}}(t[e],t):t[e];return n}function n(o){function n(t){L(t)&&t.apply(o,[].splice.call(arguments,1))}function t(t){for(f=0;f{var __webpack_modules__={"./src/js/cursor/click/heart.js":()=>{eval("!function (e, t, a) {\r\n function r() {\r\n for (var e = 0; e < s.length; e++) s[e].alpha <= 0 ? (t.body.removeChild(s[e].el), s.splice(e, 1)) : (s[\r\n e].y--, s[e].scale += .004, s[e].alpha -= .013, s[e].el.style.cssText = 'left:' + s[e].x +\r\n 'px;top:' + s[e].y + 'px;opacity:' + s[e].alpha + ';transform:scale(' + s[e].scale + ',' + s[e].scale + ') rotate(45deg);background:' + s[e].color + ';z-index:99999')\r\n requestAnimationFrame(r)\r\n }\r\n\r\n function n() {\r\n var t = 'function' == typeof e.onclick && e.onclick\r\n e.onclick = function (e) {\r\n t && t(), o(e)\r\n }\r\n }\r\n\r\n function o(e) {\r\n var a = t.createElement('div')\r\n a.className = 'heart', s.push({\r\n el: a,\r\n x: e.clientX - 5,\r\n y: e.clientY - 5,\r\n scale: 1,\r\n alpha: 1,\r\n color: c()\r\n }), t.body.appendChild(a)\r\n }\r\n\r\n function i(e) {\r\n var a = t.createElement('style')\r\n a.type = 'text/css'\r\n try {\r\n a.appendChild(t.createTextNode(e))\r\n } catch (t) {\r\n a.styleSheet.cssText = e\r\n }\r\n t.getElementsByTagName('head')[0].appendChild(a)\r\n }\r\n\r\n function c() {\r\n return 'rgb(' + ~~(255 * Math.random()) + ',' + ~~(255 * Math.random()) + ',' + ~~(255 * Math\r\n .random()) + ')'\r\n }\r\n\r\n var s = []\r\n e.requestAnimationFrame = e.requestAnimationFrame || e.webkitRequestAnimationFrame || e\r\n .mozRequestAnimationFrame || e.oRequestAnimationFrame || e.msRequestAnimationFrame || function (e) {\r\n setTimeout(e, 1e3 / 60)\r\n }, i(\r\n '.heart{width: 10px;height: 10px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.heart:after,.heart:before{content: \\'\\';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}'\r\n ), n(), r()\r\n}(window, document)\r\n\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/click/heart.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/click/heart.js"]()})(); \ No newline at end of file +!function(e,a){var r,o=[],t=(e.requestAnimationFrame=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(e){setTimeout(e,1e3/60)},".heart{width: 10px;height: 10px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.heart:after,.heart:before{content: '';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}"),i=a.createElement("style");i.type="text/css";try{i.appendChild(a.createTextNode(t))}catch(e){i.styleSheet.cssText=t}a.getElementsByTagName("head")[0].appendChild(i),r="function"==typeof e.onclick&&e.onclick,e.onclick=function(e){var t;r&&r(),e=e,(t=a.createElement("div")).className="heart",o.push({el:t,x:e.clientX-5,y:e.clientY-5,scale:1,alpha:1,color:"rgb("+~~(255*Math.random())+","+~~(255*Math.random())+","+~~(255*Math.random())+")"}),a.body.appendChild(t)},function e(){for(var t=0;t{var __webpack_modules__={"./src/js/cursor/click/prosperous.js":()=>{eval("var a_idx = 0\r\njQuery(document).ready(function ($) {\r\n $('body').click(function (e) {\r\n var a = ['富强', '民主', '文明', '和谐', '自由', '平等', '公正', '法治', '爱国', '敬业', '诚信', '友善']\r\n var $i = $('').text(a[a_idx])\r\n a_idx = (a_idx + 1) % a.length\r\n var x = e.pageX, y = e.pageY\r\n let scrolly = window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop\r\n y = y - scrolly\r\n $i.css({\r\n 'z-index': 999,\r\n 'top': y - 20,\r\n 'left': x,\r\n 'position': 'fixed',\r\n 'font-weight': 'bold',\r\n 'color': /*\"#ff6651\" 随机颜色写法:*/ 'rgb(' + ~~(255 * Math.random()) + ',' + ~~(255 * Math.random()) + ',' + ~~(255 * Math.random()) + ')'\r\n })\r\n $('body').append($i)\r\n $i.animate({'top': y - 180, 'opacity': 0}, 1500, function () {\r\n $i.remove()\r\n })\r\n })\r\n})\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/click/prosperous.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/click/prosperous.js"]()})(); \ No newline at end of file +(()=>{var a=0;jQuery(document).ready(function(n){n("body").click(function(o){var t=["富强","民主","文明","和谐","自由","平等","公正","法治","爱国","敬业","诚信","友善"],e=n("").text(t[a]),t=(a=(a+1)%t.length,o.pageX),o=o.pageY;o-=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,e.css({"z-index":999,top:o-20,left:t,position:"fixed","font-weight":"bold",color:"rgb("+~~(255*Math.random())+","+~~(255*Math.random())+","+~~(255*Math.random())+")"}),n("body").append(e),e.animate({top:o-180,opacity:0},1500,function(){e.remove()})})})})(); \ No newline at end of file diff --git a/templates/assets/js/cursor/move/bubbleCursor.min.js b/templates/assets/js/cursor/move/bubbleCursor.min.js index b193bb1..a039fd3 100644 --- a/templates/assets/js/cursor/move/bubbleCursor.min.js +++ b/templates/assets/js/cursor/move/bubbleCursor.min.js @@ -1 +1 @@ -(()=>{var __webpack_modules__={"./src/js/cursor/move/bubbleCursor.js":()=>{eval("function bubbleCursor(options) {\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n let cursor = { x: width / 2, y: width / 2 }\r\n let particles = []\r\n let canvas, context\r\n\r\n let canvImages = []\r\n\r\n function init(wrapperEl) {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n document.body.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove)\r\n element.addEventListener('touchmove', onTouchMove, { passive: true })\r\n element.addEventListener('touchstart', onTouchMove, { passive: true })\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onTouchMove(e) {\r\n if (e.touches.length > 0) {\r\n for (let i = 0; i < e.touches.length; i++) {\r\n addParticle(\r\n e.touches[i].clientX,\r\n e.touches[i].clientY,\r\n canvImages[Math.floor(Math.random() * canvImages.length)]\r\n )\r\n }\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n\r\n addParticle(cursor.x, cursor.y)\r\n }\r\n\r\n function addParticle(x, y, img) {\r\n particles.push(new Particle(x, y, img))\r\n }\r\n\r\n function updateParticles() {\r\n context.clearRect(0, 0, width, height)\r\n\r\n // Update\r\n for (let i = 0; i < particles.length; i++) {\r\n particles[i].update(context)\r\n }\r\n\r\n // Remove dead particles\r\n for (let i = particles.length - 1; i >= 0; i--) {\r\n if (particles[i].lifeSpan < 0) {\r\n particles.splice(i, 1)\r\n }\r\n }\r\n }\r\n\r\n function loop() {\r\n updateParticles()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n function Particle(x, y, canvasItem) {\r\n const lifeSpan = Math.floor(Math.random() * 60 + 60)\r\n this.initialLifeSpan = lifeSpan //\r\n this.lifeSpan = lifeSpan //ms\r\n this.velocity = {\r\n x: (Math.random() < 0.5 ? -1 : 1) * (Math.random() / 10),\r\n y: -0.4 + Math.random() * -1,\r\n }\r\n this.position = { x: x, y: y }\r\n this.canv = canvasItem\r\n\r\n this.baseDimension = 4\r\n\r\n this.update = function(context) {\r\n this.position.x += this.velocity.x\r\n this.position.y += this.velocity.y\r\n this.velocity.x += ((Math.random() < 0.5 ? -1 : 1) * 2) / 75\r\n this.velocity.y -= Math.random() / 600\r\n this.lifeSpan--\r\n\r\n const scale =\r\n 0.2 + (this.initialLifeSpan - this.lifeSpan) / this.initialLifeSpan\r\n\r\n context.fillStyle = '#e6f1f7'\r\n context.strokeStyle = '#3a92c5'\r\n context.beginPath()\r\n context.arc(\r\n this.position.x - (this.baseDimension / 2) * scale,\r\n this.position.y - this.baseDimension / 2,\r\n this.baseDimension * scale,\r\n 0,\r\n 2 * Math.PI\r\n )\r\n\r\n context.stroke()\r\n context.fill()\r\n\r\n context.closePath()\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew bubbleCursor()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/bubbleCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/bubbleCursor.js"]()})(); \ No newline at end of file +!function(){let i,e,t=document.body,n=window.innerWidth,o=window.innerHeight,s={x:n/2,y:n/2},h=[],a=[];function l(i){if(0{var __webpack_modules__={"./src/js/cursor/move/emojiCursor.js":()=>{eval("function emojiCursor(options) {\r\n const possibleEmoji = (options && options.emoji) || ['😀', '😂', '😆', '😊']\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n const cursor = { x: width / 2, y: width / 2 }\r\n const lastPos = { x: width / 2, y: width / 2 }\r\n let lastTimestamp = 0\r\n const particles = []\r\n const canvImages = []\r\n let canvas, context\r\n\r\n function init() {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n document.body.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n context.font = '21px serif'\r\n context.textBaseline = 'middle'\r\n context.textAlign = 'center'\r\n\r\n possibleEmoji.forEach((emoji) => {\r\n let measurements = context.measureText(emoji)\r\n let bgCanvas = document.createElement('canvas')\r\n let bgContext = bgCanvas.getContext('2d')\r\n\r\n bgCanvas.width = measurements.width\r\n bgCanvas.height = measurements.actualBoundingBoxAscent * 2\r\n\r\n bgContext.textAlign = 'center'\r\n bgContext.font = '21px serif'\r\n bgContext.textBaseline = 'middle'\r\n bgContext.fillText(\r\n emoji,\r\n bgCanvas.width / 2,\r\n measurements.actualBoundingBoxAscent\r\n )\r\n\r\n canvImages.push(bgCanvas)\r\n })\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove, { passive: true })\r\n element.addEventListener('touchmove', onTouchMove, { passive: true })\r\n element.addEventListener('touchstart', onTouchMove, { passive: true })\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onTouchMove(e) {\r\n if (e.touches.length > 0) {\r\n for (let i = 0; i < e.touches.length; i++) {\r\n addParticle(\r\n e.touches[i].clientX,\r\n e.touches[i].clientY,\r\n canvImages[Math.floor(Math.random() * canvImages.length)]\r\n )\r\n }\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n // Dont run too fast\r\n if (e.timeStamp - lastTimestamp < 16) {\r\n return\r\n }\r\n\r\n window.requestAnimationFrame(() => {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n\r\n const distBetweenPoints = Math.hypot(\r\n cursor.x - lastPos.x,\r\n cursor.y - lastPos.y\r\n )\r\n\r\n if (distBetweenPoints > 1) {\r\n addParticle(\r\n cursor.x,\r\n cursor.y,\r\n canvImages[Math.floor(Math.random() * possibleEmoji.length)]\r\n )\r\n\r\n lastPos.x = cursor.x\r\n lastPos.y = cursor.y\r\n lastTimestamp = e.timeStamp\r\n }\r\n })\r\n }\r\n\r\n function addParticle(x, y, img) {\r\n particles.push(new Particle(x, y, img))\r\n }\r\n\r\n function updateParticles() {\r\n context.clearRect(0, 0, width, height)\r\n\r\n // Update\r\n for (let i = 0; i < particles.length; i++) {\r\n particles[i].update(context)\r\n }\r\n\r\n // Remove dead particles\r\n for (let i = particles.length - 1; i >= 0; i--) {\r\n if (particles[i].lifeSpan < 0) {\r\n particles.splice(i, 1)\r\n }\r\n }\r\n }\r\n\r\n function loop() {\r\n updateParticles()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n /**\r\n * Particles\r\n */\r\n\r\n function Particle(x, y, canvasItem) {\r\n const lifeSpan = Math.floor(Math.random() * 60 + 80)\r\n this.initialLifeSpan = lifeSpan //\r\n this.lifeSpan = lifeSpan //ms\r\n this.velocity = {\r\n x: (Math.random() < 0.5 ? -1 : 1) * (Math.random() / 2),\r\n y: Math.random() * 0.4 + 0.8,\r\n }\r\n this.position = { x: x, y: y }\r\n this.canv = canvasItem\r\n\r\n this.update = function(context) {\r\n this.position.x += this.velocity.x\r\n this.position.y += this.velocity.y\r\n this.lifeSpan--\r\n\r\n this.velocity.y += 0.05\r\n\r\n const scale = Math.max(this.lifeSpan / this.initialLifeSpan, 0)\r\n\r\n context.drawImage(\r\n this.canv,\r\n this.position.x - (this.canv.width / 2) * scale,\r\n this.position.y - this.canv.height / 2,\r\n this.canv.width * scale,\r\n this.canv.height * scale\r\n )\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew emojiCursor()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/emojiCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/emojiCursor.js"]()})(); \ No newline at end of file +!function(){const e=["😀","😂","😆","😊"];let t=document.body,i=window.innerWidth,n=window.innerHeight;const o={x:i/2,y:i/2},h={x:i/2,y:i/2};let a=0;const s=[],c=[];let d,l;function r(e){if(0{var e=l.measureText(t),i=document.createElement("canvas"),n=i.getContext("2d");i.width=e.width,i.height=2*e.actualBoundingBoxAscent,n.textAlign="center",n.font="21px serif",n.textBaseline="middle",n.fillText(t,i.width/2,e.actualBoundingBoxAscent),c.push(i)}),t.addEventListener("mousemove",function(t){t.timeStamp-a<16||window.requestAnimationFrame(()=>{o.x=t.clientX,o.y=t.clientY,1{var __webpack_modules__={"./src/js/cursor/move/fairyDustCursor.js":()=>{eval("function fairyDustCursor(options) {\r\n let possibleColors = (options && options.colors) || [\r\n '#D61C59',\r\n '#E7D84B',\r\n '#1B8798',\r\n ]\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n const cursor = { x: width / 2, y: width / 2 }\r\n const lastPos = { x: width / 2, y: width / 2 }\r\n const particles = []\r\n const canvImages = []\r\n let canvas, context\r\n\r\n const char = '*'\r\n\r\n function init() {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n element.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n context.font = '21px serif'\r\n context.textBaseline = 'middle'\r\n context.textAlign = 'center'\r\n\r\n possibleColors.forEach((color) => {\r\n let measurements = context.measureText(char)\r\n let bgCanvas = document.createElement('canvas')\r\n let bgContext = bgCanvas.getContext('2d')\r\n\r\n bgCanvas.width = measurements.width\r\n bgCanvas.height =\r\n measurements.actualBoundingBoxAscent +\r\n measurements.actualBoundingBoxDescent\r\n\r\n bgContext.fillStyle = color\r\n bgContext.textAlign = 'center'\r\n bgContext.font = '21px serif'\r\n bgContext.textBaseline = 'middle'\r\n bgContext.fillText(\r\n char,\r\n bgCanvas.width / 2,\r\n measurements.actualBoundingBoxAscent\r\n )\r\n\r\n canvImages.push(bgCanvas)\r\n })\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove)\r\n element.addEventListener('touchmove', onTouchMove, { passive: true })\r\n element.addEventListener('touchstart', onTouchMove, { passive: true })\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onTouchMove(e) {\r\n if (e.touches.length > 0) {\r\n for (let i = 0; i < e.touches.length; i++) {\r\n addParticle(\r\n e.touches[i].clientX,\r\n e.touches[i].clientY,\r\n canvImages[Math.floor(Math.random() * canvImages.length)]\r\n )\r\n }\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n window.requestAnimationFrame(() => {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n\r\n const distBetweenPoints = Math.hypot(\r\n cursor.x - lastPos.x,\r\n cursor.y - lastPos.y\r\n )\r\n\r\n if (distBetweenPoints > 1.5) {\r\n addParticle(\r\n cursor.x,\r\n cursor.y,\r\n canvImages[Math.floor(Math.random() * possibleColors.length)]\r\n )\r\n\r\n lastPos.x = cursor.x\r\n lastPos.y = cursor.y\r\n }\r\n })\r\n }\r\n\r\n function addParticle(x, y, color) {\r\n particles.push(new Particle(x, y, color))\r\n }\r\n\r\n function updateParticles() {\r\n context.clearRect(0, 0, width, height)\r\n\r\n // Update\r\n for (let i = 0; i < particles.length; i++) {\r\n particles[i].update(context)\r\n }\r\n\r\n // Remove dead particles\r\n for (let i = particles.length - 1; i >= 0; i--) {\r\n if (particles[i].lifeSpan < 0) {\r\n particles.splice(i, 1)\r\n }\r\n }\r\n }\r\n\r\n function loop() {\r\n updateParticles()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n function Particle(x, y, canvasItem) {\r\n const lifeSpan = Math.floor(Math.random() * 30 + 60)\r\n this.initialLifeSpan = lifeSpan //\r\n this.lifeSpan = lifeSpan //ms\r\n this.velocity = {\r\n x: (Math.random() < 0.5 ? -1 : 1) * (Math.random() / 2),\r\n y: Math.random() * 0.7 + 0.9,\r\n }\r\n this.position = { x: x, y: y }\r\n this.canv = canvasItem\r\n\r\n this.update = function (context) {\r\n this.position.x += this.velocity.x\r\n this.position.y += this.velocity.y\r\n this.lifeSpan--\r\n\r\n this.velocity.y += 0.02\r\n\r\n const scale = Math.max(this.lifeSpan / this.initialLifeSpan, 0)\r\n\r\n context.drawImage(\r\n this.canv,\r\n this.position.x - (this.canv.width / 2) * scale,\r\n this.position.y - this.canv.height / 2,\r\n this.canv.width * scale,\r\n this.canv.height * scale\r\n )\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew fairyDustCursor()\r\n\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/fairyDustCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/fairyDustCursor.js"]()})(); \ No newline at end of file +!function(){let e=["#D61C59","#E7D84B","#1B8798"],t=document.body,i=window.innerWidth,n=window.innerHeight;const o={x:i/2,y:i/2},h={x:i/2,y:i/2},a=[],s=[];let l,c;function d(e){if(0{var e=c.measureText("*"),i=document.createElement("canvas"),n=i.getContext("2d");i.width=e.width,i.height=e.actualBoundingBoxAscent+e.actualBoundingBoxDescent,n.fillStyle=t,n.textAlign="center",n.font="21px serif",n.textBaseline="middle",n.fillText("*",i.width/2,e.actualBoundingBoxAscent),s.push(i)}),t.addEventListener("mousemove",function(t){window.requestAnimationFrame(()=>{o.x=t.clientX,o.y=t.clientY,1.5{var __webpack_modules__={"./src/js/cursor/move/followingDotCursor.js":()=>{eval("function followingDotCursor(options) {\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n let cursor = { x: width / 2, y: width / 2 }\r\n let dot = new Dot(width / 2, height / 2, 10, 10)\r\n let canvas, context\r\n\r\n function init() {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n document.body.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove)\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n }\r\n\r\n function updateDot() {\r\n context.clearRect(0, 0, width, height)\r\n\r\n dot.moveTowards(cursor.x, cursor.y, context)\r\n }\r\n\r\n function loop() {\r\n updateDot()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n function Dot(x, y, width, lag) {\r\n this.position = { x: x, y: y }\r\n this.width = width\r\n this.lag = lag\r\n\r\n this.moveTowards = function (x, y, context) {\r\n this.position.x += (x - this.position.x) / this.lag\r\n this.position.y += (y - this.position.y) / this.lag\r\n\r\n context.fillStyle = 'rgba(50, 50, 50, 0.65)'\r\n context.beginPath()\r\n context.arc(this.position.x, this.position.y, this.width, 0, 2 * Math.PI)\r\n context.fill()\r\n context.closePath()\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew followingDotCursor()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/followingDotCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/followingDotCursor.js"]()})(); \ No newline at end of file +!function(){let t,n,i=document.body,e=window.innerWidth,o=window.innerHeight,s={x:e/2,y:e/2},h=new function(i,t,n,e){this.position={x:i,y:t},this.width=10,this.lag=10,this.moveTowards=function(i,t,n){this.position.x+=(i-this.position.x)/this.lag,this.position.y+=(t-this.position.y)/this.lag,n.fillStyle="rgba(50, 50, 50, 0.65)",n.beginPath(),n.arc(this.position.x,this.position.y,this.width,0,2*Math.PI),n.fill(),n.closePath()}}(e/2,o/2);t=document.createElement("canvas"),n=t.getContext("2d"),t.style.top="0px",t.style.left="0px",t.style.pointerEvents="none",t.style.position="fixed",document.body.appendChild(t),t.width=e,t.height=o,i.addEventListener("mousemove",function(i){s.x=i.clientX,s.y=i.clientY}),window.addEventListener("resize",function(i){e=window.innerWidth,o=window.innerHeight,t.width=e,t.height=o}),function i(){n.clearRect(0,0,e,o),h.moveTowards(s.x,s.y,n),requestAnimationFrame(i)}()}(); \ No newline at end of file diff --git a/templates/assets/js/cursor/move/ghostCursor.min.js b/templates/assets/js/cursor/move/ghostCursor.min.js index fed5ca1..adfdbb6 100644 --- a/templates/assets/js/cursor/move/ghostCursor.min.js +++ b/templates/assets/js/cursor/move/ghostCursor.min.js @@ -1 +1 @@ -(()=>{var __webpack_modules__={"./src/js/cursor/move/ghostCursor.js":()=>{eval("function ghostCursor(options) {\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n let cursor = { x: width / 2, y: width / 2 }\r\n let particles = []\r\n let canvas, context\r\n\r\n let baseImage = new Image()\r\n baseImage.src =\r\n 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAATCAYAAACk9eypAAAAAXNSR0IArs4c6QAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAADKADAAQAAAABAAAAEwAAAAAChpcNAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAAABqElEQVQoFY3SPUvDQBgH8BREpRHExYiDgmLFl6WC+AYmWeyLg4i7buJX8DMpOujgyxGvUYeCgzhUQUSKKLUS0+ZyptXh8Z5Ti621ekPyJHl+uftfomhaf9Ei5JyxXKfynyEA6EYcLHpwyflT958GAQ7DTABNHd8EbtDbEH2BD5QEQmi2mM8P/Iq+A0SzszEg+3sPjDnDdVEtQKQbMUidHD3xVzf6A9UDEmEm+8h9KTqTVUjT+vB53aHrCbAPiceYq1dQI1Aqv4EhMll0jzv+Y0yiRgCnLRSYyDQHVoqUXe4uKL9l+L7GXC4vkMhE6eW/AOJs9k583ORDUyXMZ8F5SVHVVnllmPNKSFagAJ5DofaqGXw/gHBYg51dIldkmknY3tguv3jOtHR4+MqAzaraJXbEhqHhcQlwGSOi5pytVQHZLN5s0WNe8HPrLYlFsO20RPHkImxsbmHdLJFI76th7Z4SeuF53hTeFLvhRCJRCTKZKxgdnRDbW+iozFJbBMw14/ElwGYc0egMBMFzT21f5Rog33Z7dX02GBm7WV5ZfT5Nn5bE3zuCDe9UxdTpNvK+5AAAAABJRU5ErkJggg=='\r\n\r\n function init() {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n document.body.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove)\r\n element.addEventListener('touchmove', onTouchMove, { passive: true })\r\n element.addEventListener('touchstart', onTouchMove, { passive: true })\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onTouchMove(e) {\r\n if (e.touches.length > 0) {\r\n for (let i = 0; i < e.touches.length; i++) {\r\n addParticle(e.touches[i].clientX, e.touches[i].clientY, baseImage)\r\n }\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n\r\n addParticle(cursor.x, cursor.y, baseImage)\r\n }\r\n\r\n function addParticle(x, y, image) {\r\n particles.push(new Particle(x, y, image))\r\n }\r\n\r\n function updateParticles() {\r\n context.clearRect(0, 0, width, height)\r\n\r\n // Update\r\n for (let i = 0; i < particles.length; i++) {\r\n particles[i].update(context)\r\n }\r\n\r\n // Remove dead particles\r\n for (let i = particles.length - 1; i >= 0; i--) {\r\n if (particles[i].lifeSpan < 0) {\r\n particles.splice(i, 1)\r\n }\r\n }\r\n }\r\n\r\n function loop() {\r\n updateParticles()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n /**\r\n * Particles\r\n */\r\n\r\n function Particle(x, y, image) {\r\n const lifeSpan = 40\r\n this.initialLifeSpan = lifeSpan //ms\r\n this.lifeSpan = lifeSpan //ms\r\n this.position = { x: x, y: y }\r\n\r\n this.image = image\r\n\r\n this.update = function (context) {\r\n this.lifeSpan--\r\n const opacity = Math.max(this.lifeSpan / this.initialLifeSpan, 0)\r\n\r\n context.globalAlpha = opacity\r\n context.drawImage(\r\n this.image,\r\n this.position.x, // - (this.canv.width / 2) * scale,\r\n this.position.y //- this.canv.height / 2,\r\n )\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew ghostCursor()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/ghostCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/ghostCursor.js"]()})(); \ No newline at end of file +!function(){let e,i,A=document.body,t=window.innerWidth,n=window.innerHeight,g={x:t/2,y:t/2},o=[],h=new Image;function a(e){if(0{var __webpack_modules__={"./src/js/cursor/move/snowflakeCursor.js":()=>{eval("function snowflakeCursor(options) {\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let possibleEmoji = ['❄️']\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n let cursor = { x: width / 2, y: width / 2 }\r\n let particles = []\r\n let canvas, context\r\n\r\n let canvImages = []\r\n\r\n function init() {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n document.body.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n context.font = '12px serif'\r\n context.textBaseline = 'middle'\r\n context.textAlign = 'center'\r\n\r\n possibleEmoji.forEach((emoji) => {\r\n let measurements = context.measureText(emoji)\r\n let bgCanvas = document.createElement('canvas')\r\n let bgContext = bgCanvas.getContext('2d')\r\n\r\n bgCanvas.width = measurements.width\r\n bgCanvas.height = measurements.actualBoundingBoxAscent * 2\r\n\r\n bgContext.textAlign = 'center'\r\n bgContext.font = '12px serif'\r\n bgContext.textBaseline = 'middle'\r\n bgContext.fillText(\r\n emoji,\r\n bgCanvas.width / 2,\r\n measurements.actualBoundingBoxAscent\r\n )\r\n\r\n canvImages.push(bgCanvas)\r\n })\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove)\r\n element.addEventListener('touchmove', onTouchMove, { passive: true })\r\n element.addEventListener('touchstart', onTouchMove, { passive: true })\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onTouchMove(e) {\r\n if (e.touches.length > 0) {\r\n for (let i = 0; i < e.touches.length; i++) {\r\n addParticle(\r\n e.touches[i].clientX,\r\n e.touches[i].clientY,\r\n canvImages[Math.floor(Math.random() * canvImages.length)]\r\n )\r\n }\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n\r\n addParticle(\r\n cursor.x,\r\n cursor.y,\r\n canvImages[Math.floor(Math.random() * possibleEmoji.length)]\r\n )\r\n }\r\n\r\n function addParticle(x, y, img) {\r\n particles.push(new Particle(x, y, img))\r\n }\r\n\r\n function updateParticles() {\r\n context.clearRect(0, 0, width, height)\r\n\r\n // Update\r\n for (let i = 0; i < particles.length; i++) {\r\n particles[i].update(context)\r\n }\r\n\r\n // Remove dead particles\r\n for (let i = particles.length - 1; i >= 0; i--) {\r\n if (particles[i].lifeSpan < 0) {\r\n particles.splice(i, 1)\r\n }\r\n }\r\n }\r\n\r\n function loop() {\r\n updateParticles()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n /**\r\n * Particles\r\n */\r\n\r\n function Particle(x, y, canvasItem) {\r\n const lifeSpan = Math.floor(Math.random() * 60 + 80)\r\n this.initialLifeSpan = lifeSpan //\r\n this.lifeSpan = lifeSpan //ms\r\n this.velocity = {\r\n x: (Math.random() < 0.5 ? -1 : 1) * (Math.random() / 2),\r\n y: 1 + Math.random(),\r\n }\r\n this.position = { x: x, y: y }\r\n this.canv = canvasItem\r\n\r\n this.update = function(context) {\r\n this.position.x += this.velocity.x\r\n this.position.y += this.velocity.y\r\n this.lifeSpan--\r\n\r\n this.velocity.x += ((Math.random() < 0.5 ? -1 : 1) * 2) / 75\r\n this.velocity.y -= Math.random() / 300\r\n\r\n const scale = Math.max(this.lifeSpan / this.initialLifeSpan, 0)\r\n\r\n const degrees = 2 * this.lifeSpan\r\n const radians = degrees * 0.0174533 // not perfect but close enough\r\n\r\n context.translate(this.position.x, this.position.y)\r\n context.rotate(radians)\r\n\r\n context.drawImage(\r\n this.canv,\r\n (-this.canv.width / 2) * scale,\r\n -this.canv.height / 2,\r\n this.canv.width * scale,\r\n this.canv.height * scale\r\n )\r\n\r\n context.rotate(-radians)\r\n context.translate(-this.position.x, -this.position.y)\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew snowflakeCursor()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/snowflakeCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/snowflakeCursor.js"]()})(); \ No newline at end of file +!function(){let e,o,t=document.body,i=["❄️"],n=window.innerWidth,a=window.innerHeight,h={x:n/2,y:n/2},s=[],l=[];function d(e){if(0{var e=o.measureText(t),i=document.createElement("canvas"),n=i.getContext("2d");i.width=e.width,i.height=2*e.actualBoundingBoxAscent,n.textAlign="center",n.font="12px serif",n.textBaseline="middle",n.fillText(t,i.width/2,e.actualBoundingBoxAscent),l.push(i)}),t.addEventListener("mousemove",function(t){h.x=t.clientX,h.y=t.clientY,c(h.x,h.y,l[Math.floor(Math.random()*i.length)])}),t.addEventListener("touchmove",d,{passive:!0}),t.addEventListener("touchstart",d,{passive:!0}),window.addEventListener("resize",function(t){n=window.innerWidth,a=window.innerHeight,e.width=n,e.height=a}),function t(){o.clearRect(0,0,n,a);for(let t=0;t{var __webpack_modules__={"./src/js/cursor/move/springyEmojiCursor.js":()=>{eval("// The springy emoji effect has been translated over from this old\r\n// code, to modern js & canvas\r\n// - http://www.yaldex.com/FSMessages/ElasticBullets.htm\r\nfunction springyEmojiCursor(options) {\r\n let emoji = (options && options.emoji) || '🤪'\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let nDots = 7\r\n let DELTAT = 0.01\r\n let SEGLEN = 10\r\n let SPRINGK = 10\r\n let MASS = 1\r\n let GRAVITY = 50\r\n let RESISTANCE = 10\r\n let STOPVEL = 0.1\r\n let STOPACC = 0.1\r\n let DOTSIZE = 11\r\n let BOUNCE = 0.7\r\n\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n let cursor = { x: width / 2, y: width / 2 }\r\n let particles = []\r\n let canvas, context\r\n\r\n let emojiAsImage\r\n\r\n function init() {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n document.body.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n // Save emoji as an image for performance\r\n context.font = '16px serif'\r\n context.textBaseline = 'middle'\r\n context.textAlign = 'center'\r\n\r\n let measurements = context.measureText(emoji)\r\n let bgCanvas = document.createElement('canvas')\r\n let bgContext = bgCanvas.getContext('2d')\r\n\r\n bgCanvas.width = measurements.width\r\n bgCanvas.height = measurements.actualBoundingBoxAscent * 2\r\n\r\n bgContext.textAlign = 'center'\r\n bgContext.font = '16px serif'\r\n bgContext.textBaseline = 'middle'\r\n bgContext.fillText(\r\n emoji,\r\n bgCanvas.width / 2,\r\n measurements.actualBoundingBoxAscent\r\n )\r\n\r\n emojiAsImage = bgCanvas\r\n\r\n let i = 0\r\n for (i = 0; i < nDots; i++) {\r\n particles[i] = new Particle(emojiAsImage)\r\n }\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove)\r\n element.addEventListener('touchmove', onTouchMove, { passive: true })\r\n element.addEventListener('touchstart', onTouchMove, { passive: true })\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onTouchMove(e) {\r\n if (e.touches.length > 0) {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.touches[0].clientX - boundingRect.left\r\n cursor.y = e.touches[0].clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.touches[0].clientX\r\n cursor.y = e.touches[0].clientY\r\n }\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n }\r\n\r\n function updateParticles() {\r\n // eslint-disable-next-line no-self-assign\r\n canvas.width = canvas.width\r\n\r\n // follow mouse\r\n particles[0].position.x = cursor.x\r\n particles[0].position.y = cursor.y\r\n\r\n // Start from 2nd dot\r\n for (i = 1; i < nDots; i++) {\r\n let spring = new vec(0, 0)\r\n\r\n if (i > 0) {\r\n springForce(i - 1, i, spring)\r\n }\r\n\r\n if (i < nDots - 1) {\r\n springForce(i + 1, i, spring)\r\n }\r\n\r\n let resist = new vec(\r\n -particles[i].velocity.x * RESISTANCE,\r\n -particles[i].velocity.y * RESISTANCE\r\n )\r\n\r\n let accel = new vec(\r\n (spring.X + resist.X) / MASS,\r\n (spring.Y + resist.Y) / MASS + GRAVITY\r\n )\r\n\r\n particles[i].velocity.x += DELTAT * accel.X\r\n particles[i].velocity.y += DELTAT * accel.Y\r\n\r\n if (\r\n Math.abs(particles[i].velocity.x) < STOPVEL &&\r\n Math.abs(particles[i].velocity.y) < STOPVEL &&\r\n Math.abs(accel.X) < STOPACC &&\r\n Math.abs(accel.Y) < STOPACC\r\n ) {\r\n particles[i].velocity.x = 0\r\n particles[i].velocity.y = 0\r\n }\r\n\r\n particles[i].position.x += particles[i].velocity.x\r\n particles[i].position.y += particles[i].velocity.y\r\n\r\n let height, width\r\n height = canvas.clientHeight\r\n width = canvas.clientWidth\r\n\r\n if (particles[i].position.y >= height - DOTSIZE - 1) {\r\n if (particles[i].velocity.y > 0) {\r\n particles[i].velocity.y = BOUNCE * -particles[i].velocity.y\r\n }\r\n particles[i].position.y = height - DOTSIZE - 1\r\n }\r\n\r\n if (particles[i].position.x >= width - DOTSIZE) {\r\n if (particles[i].velocity.x > 0) {\r\n particles[i].velocity.x = BOUNCE * -particles[i].velocity.x\r\n }\r\n particles[i].position.x = width - DOTSIZE - 1\r\n }\r\n\r\n if (particles[i].position.x < 0) {\r\n if (particles[i].velocity.x < 0) {\r\n particles[i].velocity.x = BOUNCE * -particles[i].velocity.x\r\n }\r\n particles[i].position.x = 0\r\n }\r\n\r\n particles[i].draw(context)\r\n }\r\n }\r\n\r\n function loop() {\r\n updateParticles()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n function vec(X, Y) {\r\n this.X = X\r\n this.Y = Y\r\n }\r\n\r\n function springForce(i, j, spring) {\r\n let dx = particles[i].position.x - particles[j].position.x\r\n let dy = particles[i].position.y - particles[j].position.y\r\n let len = Math.sqrt(dx * dx + dy * dy)\r\n if (len > SEGLEN) {\r\n let springF = SPRINGK * (len - SEGLEN)\r\n spring.X += (dx / len) * springF\r\n spring.Y += (dy / len) * springF\r\n }\r\n }\r\n\r\n function Particle(canvasItem) {\r\n this.position = { x: cursor.x, y: cursor.y }\r\n this.velocity = {\r\n x: 0,\r\n y: 0,\r\n }\r\n\r\n this.canv = canvasItem\r\n\r\n this.draw = function(context) {\r\n context.drawImage(\r\n this.canv,\r\n this.position.x - this.canv.width / 2,\r\n this.position.y - this.canv.height / 2,\r\n this.canv.width,\r\n this.canv.height\r\n )\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew springyEmojiCursor()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/springyEmojiCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/springyEmojiCursor.js"]()})(); \ No newline at end of file +!function(){let n,o,t,e=document.body,s=10,c=10,h=window.innerWidth,y=window.innerHeight,l={x:h/2,y:h/2},a=[];function d(i){h=window.innerWidth,y=window.innerHeight,n.width=h,n.height=y}function x(i){0=e-11-1&&(0=t-11&&(0s&&(n=c*(t-s),e.X+=o/t*n,e.Y+=i/t*n)}function u(i){this.position={x:l.x,y:l.y},this.velocity={x:0,y:0},this.canv=i,this.draw=function(i){i.drawImage(this.canv,this.position.x-this.canv.width/2,this.position.y-this.canv.height/2,this.canv.width,this.canv.height)}}{n=document.createElement("canvas"),o=n.getContext("2d"),n.style.top="0px",n.style.left="0px",n.style.pointerEvents="none",n.style.position="fixed",document.body.appendChild(n),n.width=h,n.height=y,o.font="16px serif",o.textBaseline="middle",o.textAlign="center";var f=o.measureText("🤪"),g=document.createElement("canvas"),m=g.getContext("2d");g.width=f.width,g.height=2*f.actualBoundingBoxAscent,m.textAlign="center",m.font="16px serif",m.textBaseline="middle",m.fillText("🤪",g.width/2,f.actualBoundingBoxAscent),t=g;let i=0;for(i=0;i<7;i++)a[i]=new u(t);e.addEventListener("mousemove",v),e.addEventListener("touchmove",x,{passive:!0}),e.addEventListener("touchstart",x,{passive:!0}),window.addEventListener("resize",d),r()}}(); \ No newline at end of file diff --git a/templates/assets/js/cursor/move/trailingCursor.min.js b/templates/assets/js/cursor/move/trailingCursor.min.js index 1b1fc5b..5ae52f1 100644 --- a/templates/assets/js/cursor/move/trailingCursor.min.js +++ b/templates/assets/js/cursor/move/trailingCursor.min.js @@ -1 +1 @@ -(()=>{var __webpack_modules__={"./src/js/cursor/move/trailingCursor.js":()=>{eval("// The trailing cursor's easing has bene pulled from this demo\r\n// - https://codepen.io/jakedeakin/full/MWKQVxX\r\n\r\nfunction trailingCursor(options) {\r\n let hasWrapperEl = options && options.element\r\n let element = hasWrapperEl || document.body\r\n\r\n let width = window.innerWidth\r\n let height = window.innerHeight\r\n let cursor = { x: width / 2, y: width / 2 }\r\n let particles = []\r\n let canvas, context\r\n\r\n const totalParticles = options.particles || 15\r\n let cursorsInitted = false\r\n\r\n let baseImage = new Image()\r\n baseImage.src =\r\n 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAATCAYAAACk9eypAAAAAXNSR0IArs4c6QAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAADKADAAQAAAABAAAAEwAAAAAChpcNAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAAABqElEQVQoFY3SPUvDQBgH8BREpRHExYiDgmLFl6WC+AYmWeyLg4i7buJX8DMpOujgyxGvUYeCgzhUQUSKKLUS0+ZyptXh8Z5Ti621ekPyJHl+uftfomhaf9Ei5JyxXKfynyEA6EYcLHpwyflT958GAQ7DTABNHd8EbtDbEH2BD5QEQmi2mM8P/Iq+A0SzszEg+3sPjDnDdVEtQKQbMUidHD3xVzf6A9UDEmEm+8h9KTqTVUjT+vB53aHrCbAPiceYq1dQI1Aqv4EhMll0jzv+Y0yiRgCnLRSYyDQHVoqUXe4uKL9l+L7GXC4vkMhE6eW/AOJs9k583ORDUyXMZ8F5SVHVVnllmPNKSFagAJ5DofaqGXw/gHBYg51dIldkmknY3tguv3jOtHR4+MqAzaraJXbEhqHhcQlwGSOi5pytVQHZLN5s0WNe8HPrLYlFsO20RPHkImxsbmHdLJFI76th7Z4SeuF53hTeFLvhRCJRCTKZKxgdnRDbW+iozFJbBMw14/ElwGYc0egMBMFzT21f5Rog33Z7dX02GBm7WV5ZfT5Nn5bE3zuCDe9UxdTpNvK+5AAAAABJRU5ErkJggg=='\r\n\r\n function init() {\r\n canvas = document.createElement('canvas')\r\n context = canvas.getContext('2d')\r\n canvas.style.top = '0px'\r\n canvas.style.left = '0px'\r\n canvas.style.pointerEvents = 'none'\r\n\r\n if (hasWrapperEl) {\r\n canvas.style.position = 'absolute'\r\n element.appendChild(canvas)\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.style.position = 'fixed'\r\n document.body.appendChild(canvas)\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n\r\n bindEvents()\r\n loop()\r\n }\r\n\r\n // Bind events that are needed\r\n function bindEvents() {\r\n element.addEventListener('mousemove', onMouseMove)\r\n window.addEventListener('resize', onWindowResize)\r\n }\r\n\r\n function onWindowResize(e) {\r\n width = window.innerWidth\r\n height = window.innerHeight\r\n\r\n if (hasWrapperEl) {\r\n canvas.width = element.clientWidth\r\n canvas.height = element.clientHeight\r\n } else {\r\n canvas.width = width\r\n canvas.height = height\r\n }\r\n }\r\n\r\n function onMouseMove(e) {\r\n if (hasWrapperEl) {\r\n const boundingRect = element.getBoundingClientRect()\r\n cursor.x = e.clientX - boundingRect.left\r\n cursor.y = e.clientY - boundingRect.top\r\n } else {\r\n cursor.x = e.clientX\r\n cursor.y = e.clientY\r\n }\r\n\r\n if (cursorsInitted === false) {\r\n cursorsInitted = true\r\n for (let i = 0; i < totalParticles; i++) {\r\n addParticle(cursor.x, cursor.y, baseImage)\r\n }\r\n }\r\n }\r\n\r\n function addParticle(x, y, image) {\r\n particles.push(new Particle(x, y, image))\r\n }\r\n\r\n function updateParticles() {\r\n context.clearRect(0, 0, width, height)\r\n\r\n let x = cursor.x\r\n let y = cursor.y\r\n\r\n particles.forEach(function (particle, index, particles) {\r\n let nextParticle = particles[index + 1] || particles[0]\r\n\r\n particle.position.x = x\r\n particle.position.y = y\r\n particle.move(context)\r\n x += (nextParticle.position.x - particle.position.x) * 0.4\r\n y += (nextParticle.position.y - particle.position.y) * 0.4\r\n })\r\n }\r\n\r\n function loop() {\r\n updateParticles()\r\n requestAnimationFrame(loop)\r\n }\r\n\r\n /**\r\n * Particles\r\n */\r\n\r\n function Particle(x, y, image) {\r\n this.position = { x: x, y: y }\r\n this.image = image\r\n\r\n this.move = function (context) {\r\n context.drawImage(\r\n this.image,\r\n this.position.x, // - (this.canv.width / 2) * scale,\r\n this.position.y //- this.canv.height / 2,\r\n )\r\n }\r\n }\r\n\r\n init()\r\n}\r\nnew trailingCursor()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/cursor/move/trailingCursor.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/cursor/move/trailingCursor.js"]()})(); \ No newline at end of file +!function(){let i,o,A=document.body,t=window.innerWidth,g=window.innerHeight,m={x:t/2,y:t/2},E=[];const n=(void 0).particles||15;let d=!1,p=new Image;function c(A,i,t){this.position={x:A,y:i},this.image=t,this.move=function(A){A.drawImage(this.image,this.position.x,this.position.y)}}p.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAATCAYAAACk9eypAAAAAXNSR0IArs4c6QAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAADKADAAQAAAABAAAAEwAAAAAChpcNAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAAABqElEQVQoFY3SPUvDQBgH8BREpRHExYiDgmLFl6WC+AYmWeyLg4i7buJX8DMpOujgyxGvUYeCgzhUQUSKKLUS0+ZyptXh8Z5Ti621ekPyJHl+uftfomhaf9Ei5JyxXKfynyEA6EYcLHpwyflT958GAQ7DTABNHd8EbtDbEH2BD5QEQmi2mM8P/Iq+A0SzszEg+3sPjDnDdVEtQKQbMUidHD3xVzf6A9UDEmEm+8h9KTqTVUjT+vB53aHrCbAPiceYq1dQI1Aqv4EhMll0jzv+Y0yiRgCnLRSYyDQHVoqUXe4uKL9l+L7GXC4vkMhE6eW/AOJs9k583ORDUyXMZ8F5SVHVVnllmPNKSFagAJ5DofaqGXw/gHBYg51dIldkmknY3tguv3jOtHR4+MqAzaraJXbEhqHhcQlwGSOi5pytVQHZLN5s0WNe8HPrLYlFsO20RPHkImxsbmHdLJFI76th7Z4SeuF53hTeFLvhRCJRCTKZKxgdnRDbW+iozFJbBMw14/ElwGYc0egMBMFzT21f5Rog33Z7dX02GBm7WV5ZfT5Nn5bE3zuCDe9UxdTpNvK+5AAAAABJRU5ErkJggg==",i=document.createElement("canvas"),o=i.getContext("2d"),i.style.top="0px",i.style.left="0px",i.style.pointerEvents="none",i.style.position="fixed",document.body.appendChild(i),i.width=t,i.height=g,A.addEventListener("mousemove",function(A){if(m.x=A.clientX,m.y=A.clientY,!1===d){d=!0;for(let A=0;A{var __webpack_modules__={"./src/js/dprogress.js":()=>{eval("(function() {\r\n var DProgress = {}\r\n\r\n var Settings = DProgress.settings = {\r\n minimum: 0.08, // 最小值\r\n easing: 'linear', // 动画规律\r\n speed: 400, // 动画速度\r\n trickle: true, // 开启自动增量\r\n trickleSpeed: 200, // 缓慢增量\r\n parent: 'body',\r\n template: '
'\r\n }\r\n\r\n /**\r\n * Updates configuration.\r\n *\r\n * DProgress.configure({\r\n * minimum: 0.1\r\n * });\r\n */\r\n DProgress.configure = function(options) {\r\n var key, value\r\n for (key in options) {\r\n value = options[key]\r\n // eslint-disable-next-line no-prototype-builtins\r\n if (value !== undefined && options.hasOwnProperty(key)) Settings[key] = value\r\n }\r\n\r\n return this\r\n }\r\n\r\n /**\r\n * 进度状态,0-1\r\n */\r\n\r\n DProgress.status = null\r\n\r\n function clamp(n, min, max) {\r\n if (n < min) return min\r\n if (n > max) return max\r\n return n\r\n }\r\n\r\n /**\r\n * 开始进度条\r\n *\r\n * DProgress.start();\r\n *\r\n */\r\n DProgress.start = function() {\r\n if (!DProgress.status) DProgress.set(0)\r\n $('#dprogress').show()\r\n\r\n var work = function() {\r\n setTimeout(function() {\r\n if (!DProgress.status ||DProgress.status === 1) return\r\n DProgress.trickle()\r\n work()\r\n }, Settings.trickleSpeed)\r\n }\r\n\r\n if (Settings.trickle) work()\r\n\r\n return this\r\n }\r\n\r\n /**\r\n * 缓慢增量\r\n * @returns {undefined}\r\n */\r\n DProgress.trickle = function() {\r\n return DProgress.inc()\r\n }\r\n\r\n /**\r\n * 增量\r\n */\r\n DProgress.inc = function(amount) {\r\n var n = DProgress.status\r\n\r\n if (!n) {\r\n return DProgress.start()\r\n // eslint-disable-next-line no-empty\r\n } else if(n >= 1) {\r\n\r\n } else {\r\n if (typeof amount !== 'number') {\r\n if (n >= 0 && n < 0.2) { amount = 0.1 }\r\n else if (n >= 0.2 && n < 0.5) { amount = 0.04 }\r\n else if (n >= 0.5 && n < 0.8) { amount = 0.02 }\r\n else if (n >= 0.8 && n < 0.98) { amount = 0.005 }\r\n else { amount = 0 }\r\n }\r\n\r\n n = clamp(n + amount, 0, 0.98)\r\n return DProgress.set(n)\r\n }\r\n }\r\n\r\n /**\r\n * 设置进度状态 `0.0` to `1.0`.\r\n *\r\n * DProgress.set(0.4);\r\n * DProgress.set(1.0);\r\n */\r\n DProgress.set = function(n) {\r\n\r\n DProgress.status = clamp(n, Settings.minimum, 1)\r\n\r\n var progress = document.getElementById('dprogress')\r\n if (!progress) {\r\n progress = document.createElement('div')\r\n progress.id = 'dprogress'\r\n progress.innerHTML = Settings.template\r\n var bar = $(progress.querySelector('.bar'))\r\n bar.css('transition', `all ${Settings.speed}ms ${Settings.easing}`)\r\n if (DreamConfig.load_progress === 'center') {\r\n bar.css('margin', 'auto')\r\n }\r\n $(Settings.parent).prepend(progress)\r\n }\r\n progress.querySelector('.bar').style.width = `${n * 100}%`\r\n\r\n return this\r\n }\r\n\r\n /**\r\n * 进度条是否已经开始\r\n * @returns {boolean}\r\n */\r\n DProgress.isStarted = function() {\r\n return typeof DProgress.status === 'number'\r\n }\r\n\r\n /**\r\n * 完成进度条\r\n * @param force\r\n * @returns {DProgress|*}\r\n */\r\n DProgress.done = function() {\r\n try {\r\n DProgress.inc(0.3 + 0.5 * Math.random()).set(1)\r\n\r\n setTimeout(function() {\r\n $('#dprogress').hide()\r\n DProgress.status = undefined\r\n }, Settings.speed)\r\n return this\r\n } catch (e) {\r\n return this\r\n }\r\n }\r\n\r\n /**\r\n * 检查进度条是否显示\r\n */\r\n\r\n DProgress.isRendered = function() {\r\n return !!document.getElementById('dprogress')\r\n }\r\n\r\n\r\n window.DProgress = DProgress\r\n})()\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./src/js/dprogress.js?")}},__webpack_exports__={};__webpack_modules__["./src/js/dprogress.js"]()})(); \ No newline at end of file +!function(){var n={},s=n.settings={minimum:.08,easing:"linear",speed:400,trickle:!0,trickleSpeed:200,parent:"body",template:'
'};function i(t,e,r){return t{var __webpack_modules__={"./node_modules/dijkstrajs/dijkstra.js":module=>{"use strict";eval("\n\n/******************************************************************************\n * Created 2008-08-19.\n *\n * Dijkstra path-finding functions. Adapted from the Dijkstar Python project.\n *\n * Copyright (C) 2008\n * Wyatt Baldwin \n * All rights reserved\n *\n * Licensed under the MIT license.\n *\n * http://www.opensource.org/licenses/mit-license.php\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n *****************************************************************************/\nvar dijkstra = {\n single_source_shortest_paths: function(graph, s, d) {\n // Predecessor map for each node that has been encountered.\n // node ID => predecessor node ID\n var predecessors = {};\n\n // Costs of shortest paths from s to all nodes encountered.\n // node ID => cost\n var costs = {};\n costs[s] = 0;\n\n // Costs of shortest paths from s to all nodes encountered; differs from\n // `costs` in that it provides easy access to the node that currently has\n // the known shortest path from s.\n // XXX: Do we actually need both `costs` and `open`?\n var open = dijkstra.PriorityQueue.make();\n open.push(s, 0);\n\n var closest,\n u, v,\n cost_of_s_to_u,\n adjacent_nodes,\n cost_of_e,\n cost_of_s_to_u_plus_cost_of_e,\n cost_of_s_to_v,\n first_visit;\n while (!open.empty()) {\n // In the nodes remaining in graph that have a known cost from s,\n // find the node, u, that currently has the shortest path from s.\n closest = open.pop();\n u = closest.value;\n cost_of_s_to_u = closest.cost;\n\n // Get nodes adjacent to u...\n adjacent_nodes = graph[u] || {};\n\n // ...and explore the edges that connect u to those nodes, updating\n // the cost of the shortest paths to any or all of those nodes as\n // necessary. v is the node across the current edge from u.\n for (v in adjacent_nodes) {\n if (adjacent_nodes.hasOwnProperty(v)) {\n // Get the cost of the edge running from u to v.\n cost_of_e = adjacent_nodes[v];\n\n // Cost of s to u plus the cost of u to v across e--this is *a*\n // cost from s to v that may or may not be less than the current\n // known cost to v.\n cost_of_s_to_u_plus_cost_of_e = cost_of_s_to_u + cost_of_e;\n\n // If we haven't visited v yet OR if the current known cost from s to\n // v is greater than the new cost we just found (cost of s to u plus\n // cost of u to v across e), update v's cost in the cost list and\n // update v's predecessor in the predecessor list (it's now u).\n cost_of_s_to_v = costs[v];\n first_visit = (typeof costs[v] === 'undefined');\n if (first_visit || cost_of_s_to_v > cost_of_s_to_u_plus_cost_of_e) {\n costs[v] = cost_of_s_to_u_plus_cost_of_e;\n open.push(v, cost_of_s_to_u_plus_cost_of_e);\n predecessors[v] = u;\n }\n }\n }\n }\n\n if (typeof d !== 'undefined' && typeof costs[d] === 'undefined') {\n var msg = ['Could not find a path from ', s, ' to ', d, '.'].join('');\n throw new Error(msg);\n }\n\n return predecessors;\n },\n\n extract_shortest_path_from_predecessor_list: function(predecessors, d) {\n var nodes = [];\n var u = d;\n var predecessor;\n while (u) {\n nodes.push(u);\n predecessor = predecessors[u];\n u = predecessors[u];\n }\n nodes.reverse();\n return nodes;\n },\n\n find_path: function(graph, s, d) {\n var predecessors = dijkstra.single_source_shortest_paths(graph, s, d);\n return dijkstra.extract_shortest_path_from_predecessor_list(\n predecessors, d);\n },\n\n /**\n * A very naive priority queue implementation.\n */\n PriorityQueue: {\n make: function (opts) {\n var T = dijkstra.PriorityQueue,\n t = {},\n key;\n opts = opts || {};\n for (key in T) {\n if (T.hasOwnProperty(key)) {\n t[key] = T[key];\n }\n }\n t.queue = [];\n t.sorter = opts.sorter || T.default_sorter;\n return t;\n },\n\n default_sorter: function (a, b) {\n return a.cost - b.cost;\n },\n\n /**\n * Add a new item to the queue and ensure the highest priority element\n * is at the front of the queue.\n */\n push: function (value, cost) {\n var item = {value: value, cost: cost};\n this.queue.push(item);\n this.queue.sort(this.sorter);\n },\n\n /**\n * Return the highest priority element in the queue.\n */\n pop: function () {\n return this.queue.shift();\n },\n\n empty: function () {\n return this.queue.length === 0;\n }\n }\n};\n\n\n// node.js module exports\nif (true) {\n module.exports = dijkstra;\n}\n\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./node_modules/dijkstrajs/dijkstra.js?")},"./node_modules/encode-utf8/index.js":module=>{"use strict";eval("\n\nmodule.exports = function encodeUtf8 (input) {\n var result = []\n var size = input.length\n\n for (var index = 0; index < size; index++) {\n var point = input.charCodeAt(index)\n\n if (point >= 0xD800 && point <= 0xDBFF && size > index + 1) {\n var second = input.charCodeAt(index + 1)\n\n if (second >= 0xDC00 && second <= 0xDFFF) {\n // https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n point = (point - 0xD800) * 0x400 + second - 0xDC00 + 0x10000\n index += 1\n }\n }\n\n // US-ASCII\n if (point < 0x80) {\n result.push(point)\n continue\n }\n\n // 2-byte UTF-8\n if (point < 0x800) {\n result.push((point >> 6) | 192)\n result.push((point & 63) | 128)\n continue\n }\n\n // 3-byte UTF-8\n if (point < 0xD800 || (point >= 0xE000 && point < 0x10000)) {\n result.push((point >> 12) | 224)\n result.push(((point >> 6) & 63) | 128)\n result.push((point & 63) | 128)\n continue\n }\n\n // 4-byte UTF-8\n if (point >= 0x10000 && point <= 0x10FFFF) {\n result.push((point >> 18) | 240)\n result.push(((point >> 12) & 63) | 128)\n result.push(((point >> 6) & 63) | 128)\n result.push((point & 63) | 128)\n continue\n }\n\n // Invalid character\n result.push(0xEF, 0xBF, 0xBD)\n }\n\n return new Uint8Array(result).buffer\n}\n\n\n//# sourceURL=webpack://halo-theme-dream2.0-plus/./node_modules/encode-utf8/index.js?")},"./node_modules/html2canvas/dist/html2canvas.js":function(module){eval("/*!\n * html2canvas 1.4.1 \n * Copyright (c) 2022 Niklas von Hertzen \n * Released under MIT License\n */\n(function (global, factory) {\n true ? module.exports = factory() :\n 0;\n}(this, (function () { 'use strict';\n\n /*! *****************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\r\n /* global Reflect, Promise */\r\n\r\n var extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n\r\n function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n }\r\n\r\n var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n };\r\n\r\n function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n }\r\n\r\n function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n }\r\n\r\n function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\r\n }\n\n var Bounds = /** @class */ (function () {\n function Bounds(left, top, width, height) {\n this.left = left;\n this.top = top;\n this.width = width;\n this.height = height;\n }\n Bounds.prototype.add = function (x, y, w, h) {\n return new Bounds(this.left + x, this.top + y, this.width + w, this.height + h);\n };\n Bounds.fromClientRect = function (context, clientRect) {\n return new Bounds(clientRect.left + context.windowBounds.left, clientRect.top + context.windowBounds.top, clientRect.width, clientRect.height);\n };\n Bounds.fromDOMRectList = function (context, domRectList) {\n var domRect = Array.from(domRectList).find(function (rect) { return rect.width !== 0; });\n return domRect\n ? new Bounds(domRect.left + context.windowBounds.left, domRect.top + context.windowBounds.top, domRect.width, domRect.height)\n : Bounds.EMPTY;\n };\n Bounds.EMPTY = new Bounds(0, 0, 0, 0);\n return Bounds;\n }());\n var parseBounds = function (context, node) {\n return Bounds.fromClientRect(context, node.getBoundingClientRect());\n };\n var parseDocumentSize = function (document) {\n var body = document.body;\n var documentElement = document.documentElement;\n if (!body || !documentElement) {\n throw new Error(\"Unable to get document size\");\n }\n var width = Math.max(Math.max(body.scrollWidth, documentElement.scrollWidth), Math.max(body.offsetWidth, documentElement.offsetWidth), Math.max(body.clientWidth, documentElement.clientWidth));\n var height = Math.max(Math.max(body.scrollHeight, documentElement.scrollHeight), Math.max(body.offsetHeight, documentElement.offsetHeight), Math.max(body.clientHeight, documentElement.clientHeight));\n return new Bounds(0, 0, width, height);\n };\n\n /*\n * css-line-break 2.1.0 \n * Copyright (c) 2022 Niklas von Hertzen \n * Released under MIT License\n */\n var toCodePoints$1 = function (str) {\n var codePoints = [];\n var i = 0;\n var length = str.length;\n while (i < length) {\n var value = str.charCodeAt(i++);\n if (value >= 0xd800 && value <= 0xdbff && i < length) {\n var extra = str.charCodeAt(i++);\n if ((extra & 0xfc00) === 0xdc00) {\n codePoints.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000);\n }\n else {\n codePoints.push(value);\n i--;\n }\n }\n else {\n codePoints.push(value);\n }\n }\n return codePoints;\n };\n var fromCodePoint$1 = function () {\n var codePoints = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n codePoints[_i] = arguments[_i];\n }\n if (String.fromCodePoint) {\n return String.fromCodePoint.apply(String, codePoints);\n }\n var length = codePoints.length;\n if (!length) {\n return '';\n }\n var codeUnits = [];\n var index = -1;\n var result = '';\n while (++index < length) {\n var codePoint = codePoints[index];\n if (codePoint <= 0xffff) {\n codeUnits.push(codePoint);\n }\n else {\n codePoint -= 0x10000;\n codeUnits.push((codePoint >> 10) + 0xd800, (codePoint % 0x400) + 0xdc00);\n }\n if (index + 1 === length || codeUnits.length > 0x4000) {\n result += String.fromCharCode.apply(String, codeUnits);\n codeUnits.length = 0;\n }\n }\n return result;\n };\n var chars$2 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n // Use a lookup table to find the index.\n var lookup$2 = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\n for (var i$2 = 0; i$2 < chars$2.length; i$2++) {\n lookup$2[chars$2.charCodeAt(i$2)] = i$2;\n }\n\n /*\n * utrie 1.0.2 \n * Copyright (c) 2022 Niklas von Hertzen \n * Released under MIT License\n */\n var chars$1$1 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n // Use a lookup table to find the index.\n var lookup$1$1 = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\n for (var i$1$1 = 0; i$1$1 < chars$1$1.length; i$1$1++) {\n lookup$1$1[chars$1$1.charCodeAt(i$1$1)] = i$1$1;\n }\n var decode$1 = function (base64) {\n var bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n var buffer = typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n var bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup$1$1[base64.charCodeAt(i)];\n encoded2 = lookup$1$1[base64.charCodeAt(i + 1)];\n encoded3 = lookup$1$1[base64.charCodeAt(i + 2)];\n encoded4 = lookup$1$1[base64.charCodeAt(i + 3)];\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n return buffer;\n };\n var polyUint16Array$1 = function (buffer) {\n var length = buffer.length;\n var bytes = [];\n for (var i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n };\n var polyUint32Array$1 = function (buffer) {\n var length = buffer.length;\n var bytes = [];\n for (var i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n };\n\n /** Shift size for getting the index-2 table offset. */\n var UTRIE2_SHIFT_2$1 = 5;\n /** Shift size for getting the index-1 table offset. */\n var UTRIE2_SHIFT_1$1 = 6 + 5;\n /**\n * Shift size for shifting left the index array values.\n * Increases possible data size with 16-bit index values at the cost\n * of compactability.\n * This requires data blocks to be aligned by UTRIE2_DATA_GRANULARITY.\n */\n var UTRIE2_INDEX_SHIFT$1 = 2;\n /**\n * Difference between the two shift sizes,\n * for getting an index-1 offset from an index-2 offset. 6=11-5\n */\n var UTRIE2_SHIFT_1_2$1 = UTRIE2_SHIFT_1$1 - UTRIE2_SHIFT_2$1;\n /**\n * The part of the index-2 table for U+D800..U+DBFF stores values for\n * lead surrogate code _units_ not code _points_.\n * Values for lead surrogate code _points_ are indexed with this portion of the table.\n * Length=32=0x20=0x400>>UTRIE2_SHIFT_2. (There are 1024=0x400 lead surrogates.)\n */\n var UTRIE2_LSCP_INDEX_2_OFFSET$1 = 0x10000 >> UTRIE2_SHIFT_2$1;\n /** Number of entries in a data block. 32=0x20 */\n var UTRIE2_DATA_BLOCK_LENGTH$1 = 1 << UTRIE2_SHIFT_2$1;\n /** Mask for getting the lower bits for the in-data-block offset. */\n var UTRIE2_DATA_MASK$1 = UTRIE2_DATA_BLOCK_LENGTH$1 - 1;\n var UTRIE2_LSCP_INDEX_2_LENGTH$1 = 0x400 >> UTRIE2_SHIFT_2$1;\n /** Count the lengths of both BMP pieces. 2080=0x820 */\n var UTRIE2_INDEX_2_BMP_LENGTH$1 = UTRIE2_LSCP_INDEX_2_OFFSET$1 + UTRIE2_LSCP_INDEX_2_LENGTH$1;\n /**\n * The 2-byte UTF-8 version of the index-2 table follows at offset 2080=0x820.\n * Length 32=0x20 for lead bytes C0..DF, regardless of UTRIE2_SHIFT_2.\n */\n var UTRIE2_UTF8_2B_INDEX_2_OFFSET$1 = UTRIE2_INDEX_2_BMP_LENGTH$1;\n var UTRIE2_UTF8_2B_INDEX_2_LENGTH$1 = 0x800 >> 6; /* U+0800 is the first code point after 2-byte UTF-8 */\n /**\n * The index-1 table, only used for supplementary code points, at offset 2112=0x840.\n * Variable length, for code points up to highStart, where the last single-value range starts.\n * Maximum length 512=0x200=0x100000>>UTRIE2_SHIFT_1.\n * (For 0x100000 supplementary code points U+10000..U+10ffff.)\n *\n * The part of the index-2 table for supplementary code points starts\n * after this index-1 table.\n *\n * Both the index-1 table and the following part of the index-2 table\n * are omitted completely if there is only BMP data.\n */\n var UTRIE2_INDEX_1_OFFSET$1 = UTRIE2_UTF8_2B_INDEX_2_OFFSET$1 + UTRIE2_UTF8_2B_INDEX_2_LENGTH$1;\n /**\n * Number of index-1 entries for the BMP. 32=0x20\n * This part of the index-1 table is omitted from the serialized form.\n */\n var UTRIE2_OMITTED_BMP_INDEX_1_LENGTH$1 = 0x10000 >> UTRIE2_SHIFT_1$1;\n /** Number of entries in an index-2 block. 64=0x40 */\n var UTRIE2_INDEX_2_BLOCK_LENGTH$1 = 1 << UTRIE2_SHIFT_1_2$1;\n /** Mask for getting the lower bits for the in-index-2-block offset. */\n var UTRIE2_INDEX_2_MASK$1 = UTRIE2_INDEX_2_BLOCK_LENGTH$1 - 1;\n var slice16$1 = function (view, start, end) {\n if (view.slice) {\n return view.slice(start, end);\n }\n return new Uint16Array(Array.prototype.slice.call(view, start, end));\n };\n var slice32$1 = function (view, start, end) {\n if (view.slice) {\n return view.slice(start, end);\n }\n return new Uint32Array(Array.prototype.slice.call(view, start, end));\n };\n var createTrieFromBase64$1 = function (base64, _byteLength) {\n var buffer = decode$1(base64);\n var view32 = Array.isArray(buffer) ? polyUint32Array$1(buffer) : new Uint32Array(buffer);\n var view16 = Array.isArray(buffer) ? polyUint16Array$1(buffer) : new Uint16Array(buffer);\n var headerLength = 24;\n var index = slice16$1(view16, headerLength / 2, view32[4] / 2);\n var data = view32[5] === 2\n ? slice16$1(view16, (headerLength + view32[4]) / 2)\n : slice32$1(view32, Math.ceil((headerLength + view32[4]) / 4));\n return new Trie$1(view32[0], view32[1], view32[2], view32[3], index, data);\n };\n var Trie$1 = /** @class */ (function () {\n function Trie(initialValue, errorValue, highStart, highValueIndex, index, data) {\n this.initialValue = initialValue;\n this.errorValue = errorValue;\n this.highStart = highStart;\n this.highValueIndex = highValueIndex;\n this.index = index;\n this.data = data;\n }\n /**\n * Get the value for a code point as stored in the Trie.\n *\n * @param codePoint the code point\n * @return the value\n */\n Trie.prototype.get = function (codePoint) {\n var ix;\n if (codePoint >= 0) {\n if (codePoint < 0x0d800 || (codePoint > 0x0dbff && codePoint <= 0x0ffff)) {\n // Ordinary BMP code point, excluding leading surrogates.\n // BMP uses a single level lookup. BMP index starts at offset 0 in the Trie2 index.\n // 16 bit data is stored in the index array itself.\n ix = this.index[codePoint >> UTRIE2_SHIFT_2$1];\n ix = (ix << UTRIE2_INDEX_SHIFT$1) + (codePoint & UTRIE2_DATA_MASK$1);\n return this.data[ix];\n }\n if (codePoint <= 0xffff) {\n // Lead Surrogate Code Point. A Separate index section is stored for\n // lead surrogate code units and code points.\n // The main index has the code unit data.\n // For this function, we need the code point data.\n // Note: this expression could be refactored for slightly improved efficiency, but\n // surrogate code points will be so rare in practice that it's not worth it.\n ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET$1 + ((codePoint - 0xd800) >> UTRIE2_SHIFT_2$1)];\n ix = (ix << UTRIE2_INDEX_SHIFT$1) + (codePoint & UTRIE2_DATA_MASK$1);\n return this.data[ix];\n }\n if (codePoint < this.highStart) {\n // Supplemental code point, use two-level lookup.\n ix = UTRIE2_INDEX_1_OFFSET$1 - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH$1 + (codePoint >> UTRIE2_SHIFT_1$1);\n ix = this.index[ix];\n ix += (codePoint >> UTRIE2_SHIFT_2$1) & UTRIE2_INDEX_2_MASK$1;\n ix = this.index[ix];\n ix = (ix << UTRIE2_INDEX_SHIFT$1) + (codePoint & UTRIE2_DATA_MASK$1);\n return this.data[ix];\n }\n if (codePoint <= 0x10ffff) {\n return this.data[this.highValueIndex];\n }\n }\n // Fall through. The code point is outside of the legal range of 0..0x10ffff.\n return this.errorValue;\n };\n return Trie;\n }());\n\n /*\n * base64-arraybuffer 1.0.2 \n * Copyright (c) 2022 Niklas von Hertzen \n * Released under MIT License\n */\n var chars$3 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n // Use a lookup table to find the index.\n var lookup$3 = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\n for (var i$3 = 0; i$3 < chars$3.length; i$3++) {\n lookup$3[chars$3.charCodeAt(i$3)] = i$3;\n }\n\n var base64$1 = 'KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==';\n\n var LETTER_NUMBER_MODIFIER = 50;\n // Non-tailorable Line Breaking Classes\n var BK = 1; // Cause a line break (after)\n var CR$1 = 2; // Cause a line break (after), except between CR and LF\n var LF$1 = 3; // Cause a line break (after)\n var CM = 4; // Prohibit a line break between the character and the preceding character\n var NL = 5; // Cause a line break (after)\n var WJ = 7; // Prohibit line breaks before and after\n var ZW = 8; // Provide a break opportunity\n var GL = 9; // Prohibit line breaks before and after\n var SP = 10; // Enable indirect line breaks\n var ZWJ$1 = 11; // Prohibit line breaks within joiner sequences\n // Break Opportunities\n var B2 = 12; // Provide a line break opportunity before and after the character\n var BA = 13; // Generally provide a line break opportunity after the character\n var BB = 14; // Generally provide a line break opportunity before the character\n var HY = 15; // Provide a line break opportunity after the character, except in numeric context\n var CB = 16; // Provide a line break opportunity contingent on additional information\n // Characters Prohibiting Certain Breaks\n var CL = 17; // Prohibit line breaks before\n var CP = 18; // Prohibit line breaks before\n var EX = 19; // Prohibit line breaks before\n var IN = 20; // Allow only indirect line breaks between pairs\n var NS = 21; // Allow only indirect line breaks before\n var OP = 22; // Prohibit line breaks after\n var QU = 23; // Act like they are both opening and closing\n // Numeric Context\n var IS = 24; // Prevent breaks after any and before numeric\n var NU = 25; // Form numeric expressions for line breaking purposes\n var PO = 26; // Do not break following a numeric expression\n var PR = 27; // Do not break in front of a numeric expression\n var SY = 28; // Prevent a break before; and allow a break after\n // Other Characters\n var AI = 29; // Act like AL when the resolvedEAW is N; otherwise; act as ID\n var AL = 30; // Are alphabetic characters or symbols that are used with alphabetic characters\n var CJ = 31; // Treat as NS or ID for strict or normal breaking.\n var EB = 32; // Do not break from following Emoji Modifier\n var EM = 33; // Do not break from preceding Emoji Base\n var H2 = 34; // Form Korean syllable blocks\n var H3 = 35; // Form Korean syllable blocks\n var HL = 36; // Do not break around a following hyphen; otherwise act as Alphabetic\n var ID = 37; // Break before or after; except in some numeric context\n var JL = 38; // Form Korean syllable blocks\n var JV = 39; // Form Korean syllable blocks\n var JT = 40; // Form Korean syllable blocks\n var RI$1 = 41; // Keep pairs together. For pairs; break before and after other classes\n var SA = 42; // Provide a line break opportunity contingent on additional, language-specific context analysis\n var XX = 43; // Have as yet unknown line breaking behavior or unassigned code positions\n var ea_OP = [0x2329, 0xff08];\n var BREAK_MANDATORY = '!';\n var BREAK_NOT_ALLOWED$1 = '×';\n var BREAK_ALLOWED$1 = '÷';\n var UnicodeTrie$1 = createTrieFromBase64$1(base64$1);\n var ALPHABETICS = [AL, HL];\n var HARD_LINE_BREAKS = [BK, CR$1, LF$1, NL];\n var SPACE$1 = [SP, ZW];\n var PREFIX_POSTFIX = [PR, PO];\n var LINE_BREAKS = HARD_LINE_BREAKS.concat(SPACE$1);\n var KOREAN_SYLLABLE_BLOCK = [JL, JV, JT, H2, H3];\n var HYPHEN = [HY, BA];\n var codePointsToCharacterClasses = function (codePoints, lineBreak) {\n if (lineBreak === void 0) { lineBreak = 'strict'; }\n var types = [];\n var indices = [];\n var categories = [];\n codePoints.forEach(function (codePoint, index) {\n var classType = UnicodeTrie$1.get(codePoint);\n if (classType > LETTER_NUMBER_MODIFIER) {\n categories.push(true);\n classType -= LETTER_NUMBER_MODIFIER;\n }\n else {\n categories.push(false);\n }\n if (['normal', 'auto', 'loose'].indexOf(lineBreak) !== -1) {\n // U+2010, – U+2013, 〜 U+301C, ゠ U+30A0\n if ([0x2010, 0x2013, 0x301c, 0x30a0].indexOf(codePoint) !== -1) {\n indices.push(index);\n return types.push(CB);\n }\n }\n if (classType === CM || classType === ZWJ$1) {\n // LB10 Treat any remaining combining mark or ZWJ as AL.\n if (index === 0) {\n indices.push(index);\n return types.push(AL);\n }\n // LB9 Do not break a combining character sequence; treat it as if it has the line breaking class of\n // the base character in all of the following rules. Treat ZWJ as if it were CM.\n var prev = types[index - 1];\n if (LINE_BREAKS.indexOf(prev) === -1) {\n indices.push(indices[index - 1]);\n return types.push(prev);\n }\n indices.push(index);\n return types.push(AL);\n }\n indices.push(index);\n if (classType === CJ) {\n return types.push(lineBreak === 'strict' ? NS : ID);\n }\n if (classType === SA) {\n return types.push(AL);\n }\n if (classType === AI) {\n return types.push(AL);\n }\n // For supplementary characters, a useful default is to treat characters in the range 10000..1FFFD as AL\n // and characters in the ranges 20000..2FFFD and 30000..3FFFD as ID, until the implementation can be revised\n // to take into account the actual line breaking properties for these characters.\n if (classType === XX) {\n if ((codePoint >= 0x20000 && codePoint <= 0x2fffd) || (codePoint >= 0x30000 && codePoint <= 0x3fffd)) {\n return types.push(ID);\n }\n else {\n return types.push(AL);\n }\n }\n types.push(classType);\n });\n return [indices, types, categories];\n };\n var isAdjacentWithSpaceIgnored = function (a, b, currentIndex, classTypes) {\n var current = classTypes[currentIndex];\n if (Array.isArray(a) ? a.indexOf(current) !== -1 : a === current) {\n var i = currentIndex;\n while (i <= classTypes.length) {\n i++;\n var next = classTypes[i];\n if (next === b) {\n return true;\n }\n if (next !== SP) {\n break;\n }\n }\n }\n if (current === SP) {\n var i = currentIndex;\n while (i > 0) {\n i--;\n var prev = classTypes[i];\n if (Array.isArray(a) ? a.indexOf(prev) !== -1 : a === prev) {\n var n = currentIndex;\n while (n <= classTypes.length) {\n n++;\n var next = classTypes[n];\n if (next === b) {\n return true;\n }\n if (next !== SP) {\n break;\n }\n }\n }\n if (prev !== SP) {\n break;\n }\n }\n }\n return false;\n };\n var previousNonSpaceClassType = function (currentIndex, classTypes) {\n var i = currentIndex;\n while (i >= 0) {\n var type = classTypes[i];\n if (type === SP) {\n i--;\n }\n else {\n return type;\n }\n }\n return 0;\n };\n var _lineBreakAtIndex = function (codePoints, classTypes, indicies, index, forbiddenBreaks) {\n if (indicies[index] === 0) {\n return BREAK_NOT_ALLOWED$1;\n }\n var currentIndex = index - 1;\n if (Array.isArray(forbiddenBreaks) && forbiddenBreaks[currentIndex] === true) {\n return BREAK_NOT_ALLOWED$1;\n }\n var beforeIndex = currentIndex - 1;\n var afterIndex = currentIndex + 1;\n var current = classTypes[currentIndex];\n // LB4 Always break after hard line breaks.\n // LB5 Treat CR followed by LF, as well as CR, LF, and NL as hard line breaks.\n var before = beforeIndex >= 0 ? classTypes[beforeIndex] : 0;\n var next = classTypes[afterIndex];\n if (current === CR$1 && next === LF$1) {\n return BREAK_NOT_ALLOWED$1;\n }\n if (HARD_LINE_BREAKS.indexOf(current) !== -1) {\n return BREAK_MANDATORY;\n }\n // LB6 Do not break before hard line breaks.\n if (HARD_LINE_BREAKS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB7 Do not break before spaces or zero width space.\n if (SPACE$1.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB8 Break before any character following a zero-width space, even if one or more spaces intervene.\n if (previousNonSpaceClassType(currentIndex, classTypes) === ZW) {\n return BREAK_ALLOWED$1;\n }\n // LB8a Do not break after a zero width joiner.\n if (UnicodeTrie$1.get(codePoints[currentIndex]) === ZWJ$1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // zwj emojis\n if ((current === EB || current === EM) && UnicodeTrie$1.get(codePoints[afterIndex]) === ZWJ$1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB11 Do not break before or after Word joiner and related characters.\n if (current === WJ || next === WJ) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB12 Do not break after NBSP and related characters.\n if (current === GL) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB12a Do not break before NBSP and related characters, except after spaces and hyphens.\n if ([SP, BA, HY].indexOf(current) === -1 && next === GL) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB13 Do not break before ‘]’ or ‘!’ or ‘;’ or ‘/’, even after spaces.\n if ([CL, CP, EX, IS, SY].indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB14 Do not break after ‘[’, even after spaces.\n if (previousNonSpaceClassType(currentIndex, classTypes) === OP) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB15 Do not break within ‘”[’, even with intervening spaces.\n if (isAdjacentWithSpaceIgnored(QU, OP, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB16 Do not break between closing punctuation and a nonstarter (lb=NS), even with intervening spaces.\n if (isAdjacentWithSpaceIgnored([CL, CP], NS, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB17 Do not break within ‘——’, even with intervening spaces.\n if (isAdjacentWithSpaceIgnored(B2, B2, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB18 Break after spaces.\n if (current === SP) {\n return BREAK_ALLOWED$1;\n }\n // LB19 Do not break before or after quotation marks, such as ‘ ” ’.\n if (current === QU || next === QU) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB20 Break before and after unresolved CB.\n if (next === CB || current === CB) {\n return BREAK_ALLOWED$1;\n }\n // LB21 Do not break before hyphen-minus, other hyphens, fixed-width spaces, small kana, and other non-starters, or after acute accents.\n if ([BA, HY, NS].indexOf(next) !== -1 || current === BB) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB21a Don't break after Hebrew + Hyphen.\n if (before === HL && HYPHEN.indexOf(current) !== -1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB21b Don’t break between Solidus and Hebrew letters.\n if (current === SY && next === HL) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB22 Do not break before ellipsis.\n if (next === IN) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB23 Do not break between digits and letters.\n if ((ALPHABETICS.indexOf(next) !== -1 && current === NU) || (ALPHABETICS.indexOf(current) !== -1 && next === NU)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB23a Do not break between numeric prefixes and ideographs, or between ideographs and numeric postfixes.\n if ((current === PR && [ID, EB, EM].indexOf(next) !== -1) ||\n ([ID, EB, EM].indexOf(current) !== -1 && next === PO)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB24 Do not break between numeric prefix/postfix and letters, or between letters and prefix/postfix.\n if ((ALPHABETICS.indexOf(current) !== -1 && PREFIX_POSTFIX.indexOf(next) !== -1) ||\n (PREFIX_POSTFIX.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB25 Do not break between the following pairs of classes relevant to numbers:\n if (\n // (PR | PO) × ( OP | HY )? NU\n ([PR, PO].indexOf(current) !== -1 &&\n (next === NU || ([OP, HY].indexOf(next) !== -1 && classTypes[afterIndex + 1] === NU))) ||\n // ( OP | HY ) × NU\n ([OP, HY].indexOf(current) !== -1 && next === NU) ||\n // NU ×\t(NU | SY | IS)\n (current === NU && [NU, SY, IS].indexOf(next) !== -1)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // NU (NU | SY | IS)* × (NU | SY | IS | CL | CP)\n if ([NU, SY, IS, CL, CP].indexOf(next) !== -1) {\n var prevIndex = currentIndex;\n while (prevIndex >= 0) {\n var type = classTypes[prevIndex];\n if (type === NU) {\n return BREAK_NOT_ALLOWED$1;\n }\n else if ([SY, IS].indexOf(type) !== -1) {\n prevIndex--;\n }\n else {\n break;\n }\n }\n }\n // NU (NU | SY | IS)* (CL | CP)? × (PO | PR))\n if ([PR, PO].indexOf(next) !== -1) {\n var prevIndex = [CL, CP].indexOf(current) !== -1 ? beforeIndex : currentIndex;\n while (prevIndex >= 0) {\n var type = classTypes[prevIndex];\n if (type === NU) {\n return BREAK_NOT_ALLOWED$1;\n }\n else if ([SY, IS].indexOf(type) !== -1) {\n prevIndex--;\n }\n else {\n break;\n }\n }\n }\n // LB26 Do not break a Korean syllable.\n if ((JL === current && [JL, JV, H2, H3].indexOf(next) !== -1) ||\n ([JV, H2].indexOf(current) !== -1 && [JV, JT].indexOf(next) !== -1) ||\n ([JT, H3].indexOf(current) !== -1 && next === JT)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB27 Treat a Korean Syllable Block the same as ID.\n if ((KOREAN_SYLLABLE_BLOCK.indexOf(current) !== -1 && [IN, PO].indexOf(next) !== -1) ||\n (KOREAN_SYLLABLE_BLOCK.indexOf(next) !== -1 && current === PR)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB28 Do not break between alphabetics (“at”).\n if (ALPHABETICS.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB29 Do not break between numeric punctuation and alphabetics (“e.g.”).\n if (current === IS && ALPHABETICS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB30 Do not break between letters, numbers, or ordinary symbols and opening or closing parentheses.\n if ((ALPHABETICS.concat(NU).indexOf(current) !== -1 &&\n next === OP &&\n ea_OP.indexOf(codePoints[afterIndex]) === -1) ||\n (ALPHABETICS.concat(NU).indexOf(next) !== -1 && current === CP)) {\n return BREAK_NOT_ALLOWED$1;\n }\n // LB30a Break between two regional indicator symbols if and only if there are an even number of regional\n // indicators preceding the position of the break.\n if (current === RI$1 && next === RI$1) {\n var i = indicies[currentIndex];\n var count = 1;\n while (i > 0) {\n i--;\n if (classTypes[i] === RI$1) {\n count++;\n }\n else {\n break;\n }\n }\n if (count % 2 !== 0) {\n return BREAK_NOT_ALLOWED$1;\n }\n }\n // LB30b Do not break between an emoji base and an emoji modifier.\n if (current === EB && next === EM) {\n return BREAK_NOT_ALLOWED$1;\n }\n return BREAK_ALLOWED$1;\n };\n var cssFormattedClasses = function (codePoints, options) {\n if (!options) {\n options = { lineBreak: 'normal', wordBreak: 'normal' };\n }\n var _a = codePointsToCharacterClasses(codePoints, options.lineBreak), indicies = _a[0], classTypes = _a[1], isLetterNumber = _a[2];\n if (options.wordBreak === 'break-all' || options.wordBreak === 'break-word') {\n classTypes = classTypes.map(function (type) { return ([NU, AL, SA].indexOf(type) !== -1 ? ID : type); });\n }\n var forbiddenBreakpoints = options.wordBreak === 'keep-all'\n ? isLetterNumber.map(function (letterNumber, i) {\n return letterNumber && codePoints[i] >= 0x4e00 && codePoints[i] <= 0x9fff;\n })\n : undefined;\n return [indicies, classTypes, forbiddenBreakpoints];\n };\n var Break = /** @class */ (function () {\n function Break(codePoints, lineBreak, start, end) {\n this.codePoints = codePoints;\n this.required = lineBreak === BREAK_MANDATORY;\n this.start = start;\n this.end = end;\n }\n Break.prototype.slice = function () {\n return fromCodePoint$1.apply(void 0, this.codePoints.slice(this.start, this.end));\n };\n return Break;\n }());\n var LineBreaker = function (str, options) {\n var codePoints = toCodePoints$1(str);\n var _a = cssFormattedClasses(codePoints, options), indicies = _a[0], classTypes = _a[1], forbiddenBreakpoints = _a[2];\n var length = codePoints.length;\n var lastEnd = 0;\n var nextIndex = 0;\n return {\n next: function () {\n if (nextIndex >= length) {\n return { done: true, value: null };\n }\n var lineBreak = BREAK_NOT_ALLOWED$1;\n while (nextIndex < length &&\n (lineBreak = _lineBreakAtIndex(codePoints, classTypes, indicies, ++nextIndex, forbiddenBreakpoints)) ===\n BREAK_NOT_ALLOWED$1) { }\n if (lineBreak !== BREAK_NOT_ALLOWED$1 || nextIndex === length) {\n var value = new Break(codePoints, lineBreak, lastEnd, nextIndex);\n lastEnd = nextIndex;\n return { value: value, done: false };\n }\n return { done: true, value: null };\n },\n };\n };\n\n // https://www.w3.org/TR/css-syntax-3\n var FLAG_UNRESTRICTED = 1 << 0;\n var FLAG_ID = 1 << 1;\n var FLAG_INTEGER = 1 << 2;\n var FLAG_NUMBER = 1 << 3;\n var LINE_FEED = 0x000a;\n var SOLIDUS = 0x002f;\n var REVERSE_SOLIDUS = 0x005c;\n var CHARACTER_TABULATION = 0x0009;\n var SPACE = 0x0020;\n var QUOTATION_MARK = 0x0022;\n var EQUALS_SIGN = 0x003d;\n var NUMBER_SIGN = 0x0023;\n var DOLLAR_SIGN = 0x0024;\n var PERCENTAGE_SIGN = 0x0025;\n var APOSTROPHE = 0x0027;\n var LEFT_PARENTHESIS = 0x0028;\n var RIGHT_PARENTHESIS = 0x0029;\n var LOW_LINE = 0x005f;\n var HYPHEN_MINUS = 0x002d;\n var EXCLAMATION_MARK = 0x0021;\n var LESS_THAN_SIGN = 0x003c;\n var GREATER_THAN_SIGN = 0x003e;\n var COMMERCIAL_AT = 0x0040;\n var LEFT_SQUARE_BRACKET = 0x005b;\n var RIGHT_SQUARE_BRACKET = 0x005d;\n var CIRCUMFLEX_ACCENT = 0x003d;\n var LEFT_CURLY_BRACKET = 0x007b;\n var QUESTION_MARK = 0x003f;\n var RIGHT_CURLY_BRACKET = 0x007d;\n var VERTICAL_LINE = 0x007c;\n var TILDE = 0x007e;\n var CONTROL = 0x0080;\n var REPLACEMENT_CHARACTER = 0xfffd;\n var ASTERISK = 0x002a;\n var PLUS_SIGN = 0x002b;\n var COMMA = 0x002c;\n var COLON = 0x003a;\n var SEMICOLON = 0x003b;\n var FULL_STOP = 0x002e;\n var NULL = 0x0000;\n var BACKSPACE = 0x0008;\n var LINE_TABULATION = 0x000b;\n var SHIFT_OUT = 0x000e;\n var INFORMATION_SEPARATOR_ONE = 0x001f;\n var DELETE = 0x007f;\n var EOF = -1;\n var ZERO = 0x0030;\n var a = 0x0061;\n var e = 0x0065;\n var f = 0x0066;\n var u = 0x0075;\n var z = 0x007a;\n var A = 0x0041;\n var E = 0x0045;\n var F = 0x0046;\n var U = 0x0055;\n var Z = 0x005a;\n var isDigit = function (codePoint) { return codePoint >= ZERO && codePoint <= 0x0039; };\n var isSurrogateCodePoint = function (codePoint) { return codePoint >= 0xd800 && codePoint <= 0xdfff; };\n var isHex = function (codePoint) {\n return isDigit(codePoint) || (codePoint >= A && codePoint <= F) || (codePoint >= a && codePoint <= f);\n };\n var isLowerCaseLetter = function (codePoint) { return codePoint >= a && codePoint <= z; };\n var isUpperCaseLetter = function (codePoint) { return codePoint >= A && codePoint <= Z; };\n var isLetter = function (codePoint) { return isLowerCaseLetter(codePoint) || isUpperCaseLetter(codePoint); };\n var isNonASCIICodePoint = function (codePoint) { return codePoint >= CONTROL; };\n var isWhiteSpace = function (codePoint) {\n return codePoint === LINE_FEED || codePoint === CHARACTER_TABULATION || codePoint === SPACE;\n };\n var isNameStartCodePoint = function (codePoint) {\n return isLetter(codePoint) || isNonASCIICodePoint(codePoint) || codePoint === LOW_LINE;\n };\n var isNameCodePoint = function (codePoint) {\n return isNameStartCodePoint(codePoint) || isDigit(codePoint) || codePoint === HYPHEN_MINUS;\n };\n var isNonPrintableCodePoint = function (codePoint) {\n return ((codePoint >= NULL && codePoint <= BACKSPACE) ||\n codePoint === LINE_TABULATION ||\n (codePoint >= SHIFT_OUT && codePoint <= INFORMATION_SEPARATOR_ONE) ||\n codePoint === DELETE);\n };\n var isValidEscape = function (c1, c2) {\n if (c1 !== REVERSE_SOLIDUS) {\n return false;\n }\n return c2 !== LINE_FEED;\n };\n var isIdentifierStart = function (c1, c2, c3) {\n if (c1 === HYPHEN_MINUS) {\n return isNameStartCodePoint(c2) || isValidEscape(c2, c3);\n }\n else if (isNameStartCodePoint(c1)) {\n return true;\n }\n else if (c1 === REVERSE_SOLIDUS && isValidEscape(c1, c2)) {\n return true;\n }\n return false;\n };\n var isNumberStart = function (c1, c2, c3) {\n if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {\n if (isDigit(c2)) {\n return true;\n }\n return c2 === FULL_STOP && isDigit(c3);\n }\n if (c1 === FULL_STOP) {\n return isDigit(c2);\n }\n return isDigit(c1);\n };\n var stringToNumber = function (codePoints) {\n var c = 0;\n var sign = 1;\n if (codePoints[c] === PLUS_SIGN || codePoints[c] === HYPHEN_MINUS) {\n if (codePoints[c] === HYPHEN_MINUS) {\n sign = -1;\n }\n c++;\n }\n var integers = [];\n while (isDigit(codePoints[c])) {\n integers.push(codePoints[c++]);\n }\n var int = integers.length ? parseInt(fromCodePoint$1.apply(void 0, integers), 10) : 0;\n if (codePoints[c] === FULL_STOP) {\n c++;\n }\n var fraction = [];\n while (isDigit(codePoints[c])) {\n fraction.push(codePoints[c++]);\n }\n var fracd = fraction.length;\n var frac = fracd ? parseInt(fromCodePoint$1.apply(void 0, fraction), 10) : 0;\n if (codePoints[c] === E || codePoints[c] === e) {\n c++;\n }\n var expsign = 1;\n if (codePoints[c] === PLUS_SIGN || codePoints[c] === HYPHEN_MINUS) {\n if (codePoints[c] === HYPHEN_MINUS) {\n expsign = -1;\n }\n c++;\n }\n var exponent = [];\n while (isDigit(codePoints[c])) {\n exponent.push(codePoints[c++]);\n }\n var exp = exponent.length ? parseInt(fromCodePoint$1.apply(void 0, exponent), 10) : 0;\n return sign * (int + frac * Math.pow(10, -fracd)) * Math.pow(10, expsign * exp);\n };\n var LEFT_PARENTHESIS_TOKEN = {\n type: 2 /* LEFT_PARENTHESIS_TOKEN */\n };\n var RIGHT_PARENTHESIS_TOKEN = {\n type: 3 /* RIGHT_PARENTHESIS_TOKEN */\n };\n var COMMA_TOKEN = { type: 4 /* COMMA_TOKEN */ };\n var SUFFIX_MATCH_TOKEN = { type: 13 /* SUFFIX_MATCH_TOKEN */ };\n var PREFIX_MATCH_TOKEN = { type: 8 /* PREFIX_MATCH_TOKEN */ };\n var COLUMN_TOKEN = { type: 21 /* COLUMN_TOKEN */ };\n var DASH_MATCH_TOKEN = { type: 9 /* DASH_MATCH_TOKEN */ };\n var INCLUDE_MATCH_TOKEN = { type: 10 /* INCLUDE_MATCH_TOKEN */ };\n var LEFT_CURLY_BRACKET_TOKEN = {\n type: 11 /* LEFT_CURLY_BRACKET_TOKEN */\n };\n var RIGHT_CURLY_BRACKET_TOKEN = {\n type: 12 /* RIGHT_CURLY_BRACKET_TOKEN */\n };\n var SUBSTRING_MATCH_TOKEN = { type: 14 /* SUBSTRING_MATCH_TOKEN */ };\n var BAD_URL_TOKEN = { type: 23 /* BAD_URL_TOKEN */ };\n var BAD_STRING_TOKEN = { type: 1 /* BAD_STRING_TOKEN */ };\n var CDO_TOKEN = { type: 25 /* CDO_TOKEN */ };\n var CDC_TOKEN = { type: 24 /* CDC_TOKEN */ };\n var COLON_TOKEN = { type: 26 /* COLON_TOKEN */ };\n var SEMICOLON_TOKEN = { type: 27 /* SEMICOLON_TOKEN */ };\n var LEFT_SQUARE_BRACKET_TOKEN = {\n type: 28 /* LEFT_SQUARE_BRACKET_TOKEN */\n };\n var RIGHT_SQUARE_BRACKET_TOKEN = {\n type: 29 /* RIGHT_SQUARE_BRACKET_TOKEN */\n };\n var WHITESPACE_TOKEN = { type: 31 /* WHITESPACE_TOKEN */ };\n var EOF_TOKEN = { type: 32 /* EOF_TOKEN */ };\n var Tokenizer = /** @class */ (function () {\n function Tokenizer() {\n this._value = [];\n }\n Tokenizer.prototype.write = function (chunk) {\n this._value = this._value.concat(toCodePoints$1(chunk));\n };\n Tokenizer.prototype.read = function () {\n var tokens = [];\n var token = this.consumeToken();\n while (token !== EOF_TOKEN) {\n tokens.push(token);\n token = this.consumeToken();\n }\n return tokens;\n };\n Tokenizer.prototype.consumeToken = function () {\n var codePoint = this.consumeCodePoint();\n switch (codePoint) {\n case QUOTATION_MARK:\n return this.consumeStringToken(QUOTATION_MARK);\n case NUMBER_SIGN:\n var c1 = this.peekCodePoint(0);\n var c2 = this.peekCodePoint(1);\n var c3 = this.peekCodePoint(2);\n if (isNameCodePoint(c1) || isValidEscape(c2, c3)) {\n var flags = isIdentifierStart(c1, c2, c3) ? FLAG_ID : FLAG_UNRESTRICTED;\n var value = this.consumeName();\n return { type: 5 /* HASH_TOKEN */, value: value, flags: flags };\n }\n break;\n case DOLLAR_SIGN:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return SUFFIX_MATCH_TOKEN;\n }\n break;\n case APOSTROPHE:\n return this.consumeStringToken(APOSTROPHE);\n case LEFT_PARENTHESIS:\n return LEFT_PARENTHESIS_TOKEN;\n case RIGHT_PARENTHESIS:\n return RIGHT_PARENTHESIS_TOKEN;\n case ASTERISK:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return SUBSTRING_MATCH_TOKEN;\n }\n break;\n case PLUS_SIGN:\n if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n break;\n case COMMA:\n return COMMA_TOKEN;\n case HYPHEN_MINUS:\n var e1 = codePoint;\n var e2 = this.peekCodePoint(0);\n var e3 = this.peekCodePoint(1);\n if (isNumberStart(e1, e2, e3)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n if (isIdentifierStart(e1, e2, e3)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n if (e2 === HYPHEN_MINUS && e3 === GREATER_THAN_SIGN) {\n this.consumeCodePoint();\n this.consumeCodePoint();\n return CDC_TOKEN;\n }\n break;\n case FULL_STOP:\n if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n break;\n case SOLIDUS:\n if (this.peekCodePoint(0) === ASTERISK) {\n this.consumeCodePoint();\n while (true) {\n var c = this.consumeCodePoint();\n if (c === ASTERISK) {\n c = this.consumeCodePoint();\n if (c === SOLIDUS) {\n return this.consumeToken();\n }\n }\n if (c === EOF) {\n return this.consumeToken();\n }\n }\n }\n break;\n case COLON:\n return COLON_TOKEN;\n case SEMICOLON:\n return SEMICOLON_TOKEN;\n case LESS_THAN_SIGN:\n if (this.peekCodePoint(0) === EXCLAMATION_MARK &&\n this.peekCodePoint(1) === HYPHEN_MINUS &&\n this.peekCodePoint(2) === HYPHEN_MINUS) {\n this.consumeCodePoint();\n this.consumeCodePoint();\n return CDO_TOKEN;\n }\n break;\n case COMMERCIAL_AT:\n var a1 = this.peekCodePoint(0);\n var a2 = this.peekCodePoint(1);\n var a3 = this.peekCodePoint(2);\n if (isIdentifierStart(a1, a2, a3)) {\n var value = this.consumeName();\n return { type: 7 /* AT_KEYWORD_TOKEN */, value: value };\n }\n break;\n case LEFT_SQUARE_BRACKET:\n return LEFT_SQUARE_BRACKET_TOKEN;\n case REVERSE_SOLIDUS:\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n break;\n case RIGHT_SQUARE_BRACKET:\n return RIGHT_SQUARE_BRACKET_TOKEN;\n case CIRCUMFLEX_ACCENT:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return PREFIX_MATCH_TOKEN;\n }\n break;\n case LEFT_CURLY_BRACKET:\n return LEFT_CURLY_BRACKET_TOKEN;\n case RIGHT_CURLY_BRACKET:\n return RIGHT_CURLY_BRACKET_TOKEN;\n case u:\n case U:\n var u1 = this.peekCodePoint(0);\n var u2 = this.peekCodePoint(1);\n if (u1 === PLUS_SIGN && (isHex(u2) || u2 === QUESTION_MARK)) {\n this.consumeCodePoint();\n this.consumeUnicodeRangeToken();\n }\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n case VERTICAL_LINE:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return DASH_MATCH_TOKEN;\n }\n if (this.peekCodePoint(0) === VERTICAL_LINE) {\n this.consumeCodePoint();\n return COLUMN_TOKEN;\n }\n break;\n case TILDE:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return INCLUDE_MATCH_TOKEN;\n }\n break;\n case EOF:\n return EOF_TOKEN;\n }\n if (isWhiteSpace(codePoint)) {\n this.consumeWhiteSpace();\n return WHITESPACE_TOKEN;\n }\n if (isDigit(codePoint)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n if (isNameStartCodePoint(codePoint)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n return { type: 6 /* DELIM_TOKEN */, value: fromCodePoint$1(codePoint) };\n };\n Tokenizer.prototype.consumeCodePoint = function () {\n var value = this._value.shift();\n return typeof value === 'undefined' ? -1 : value;\n };\n Tokenizer.prototype.reconsumeCodePoint = function (codePoint) {\n this._value.unshift(codePoint);\n };\n Tokenizer.prototype.peekCodePoint = function (delta) {\n if (delta >= this._value.length) {\n return -1;\n }\n return this._value[delta];\n };\n Tokenizer.prototype.consumeUnicodeRangeToken = function () {\n var digits = [];\n var codePoint = this.consumeCodePoint();\n while (isHex(codePoint) && digits.length < 6) {\n digits.push(codePoint);\n codePoint = this.consumeCodePoint();\n }\n var questionMarks = false;\n while (codePoint === QUESTION_MARK && digits.length < 6) {\n digits.push(codePoint);\n codePoint = this.consumeCodePoint();\n questionMarks = true;\n }\n if (questionMarks) {\n var start_1 = parseInt(fromCodePoint$1.apply(void 0, digits.map(function (digit) { return (digit === QUESTION_MARK ? ZERO : digit); })), 16);\n var end = parseInt(fromCodePoint$1.apply(void 0, digits.map(function (digit) { return (digit === QUESTION_MARK ? F : digit); })), 16);\n return { type: 30 /* UNICODE_RANGE_TOKEN */, start: start_1, end: end };\n }\n var start = parseInt(fromCodePoint$1.apply(void 0, digits), 16);\n if (this.peekCodePoint(0) === HYPHEN_MINUS && isHex(this.peekCodePoint(1))) {\n this.consumeCodePoint();\n codePoint = this.consumeCodePoint();\n var endDigits = [];\n while (isHex(codePoint) && endDigits.length < 6) {\n endDigits.push(codePoint);\n codePoint = this.consumeCodePoint();\n }\n var end = parseInt(fromCodePoint$1.apply(void 0, endDigits), 16);\n return { type: 30 /* UNICODE_RANGE_TOKEN */, start: start, end: end };\n }\n else {\n return { type: 30 /* UNICODE_RANGE_TOKEN */, start: start, end: start };\n }\n };\n Tokenizer.prototype.consumeIdentLikeToken = function () {\n var value = this.consumeName();\n if (value.toLowerCase() === 'url' && this.peekCodePoint(0) === LEFT_PARENTHESIS) {\n this.consumeCodePoint();\n return this.consumeUrlToken();\n }\n else if (this.peekCodePoint(0) === LEFT_PARENTHESIS) {\n this.consumeCodePoint();\n return { type: 19 /* FUNCTION_TOKEN */, value: value };\n }\n return { type: 20 /* IDENT_TOKEN */, value: value };\n };\n Tokenizer.prototype.consumeUrlToken = function () {\n var value = [];\n this.consumeWhiteSpace();\n if (this.peekCodePoint(0) === EOF) {\n return { type: 22 /* URL_TOKEN */, value: '' };\n }\n var next = this.peekCodePoint(0);\n if (next === APOSTROPHE || next === QUOTATION_MARK) {\n var stringToken = this.consumeStringToken(this.consumeCodePoint());\n if (stringToken.type === 0 /* STRING_TOKEN */) {\n this.consumeWhiteSpace();\n if (this.peekCodePoint(0) === EOF || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {\n this.consumeCodePoint();\n return { type: 22 /* URL_TOKEN */, value: stringToken.value };\n }\n }\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n while (true) {\n var codePoint = this.consumeCodePoint();\n if (codePoint === EOF || codePoint === RIGHT_PARENTHESIS) {\n return { type: 22 /* URL_TOKEN */, value: fromCodePoint$1.apply(void 0, value) };\n }\n else if (isWhiteSpace(codePoint)) {\n this.consumeWhiteSpace();\n if (this.peekCodePoint(0) === EOF || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {\n this.consumeCodePoint();\n return { type: 22 /* URL_TOKEN */, value: fromCodePoint$1.apply(void 0, value) };\n }\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n else if (codePoint === QUOTATION_MARK ||\n codePoint === APOSTROPHE ||\n codePoint === LEFT_PARENTHESIS ||\n isNonPrintableCodePoint(codePoint)) {\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n else if (codePoint === REVERSE_SOLIDUS) {\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n value.push(this.consumeEscapedCodePoint());\n }\n else {\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n }\n else {\n value.push(codePoint);\n }\n }\n };\n Tokenizer.prototype.consumeWhiteSpace = function () {\n while (isWhiteSpace(this.peekCodePoint(0))) {\n this.consumeCodePoint();\n }\n };\n Tokenizer.prototype.consumeBadUrlRemnants = function () {\n while (true) {\n var codePoint = this.consumeCodePoint();\n if (codePoint === RIGHT_PARENTHESIS || codePoint === EOF) {\n return;\n }\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n this.consumeEscapedCodePoint();\n }\n }\n };\n Tokenizer.prototype.consumeStringSlice = function (count) {\n var SLICE_STACK_SIZE = 50000;\n var value = '';\n while (count > 0) {\n var amount = Math.min(SLICE_STACK_SIZE, count);\n value += fromCodePoint$1.apply(void 0, this._value.splice(0, amount));\n count -= amount;\n }\n this._value.shift();\n return value;\n };\n Tokenizer.prototype.consumeStringToken = function (endingCodePoint) {\n var value = '';\n var i = 0;\n do {\n var codePoint = this._value[i];\n if (codePoint === EOF || codePoint === undefined || codePoint === endingCodePoint) {\n value += this.consumeStringSlice(i);\n return { type: 0 /* STRING_TOKEN */, value: value };\n }\n if (codePoint === LINE_FEED) {\n this._value.splice(0, i);\n return BAD_STRING_TOKEN;\n }\n if (codePoint === REVERSE_SOLIDUS) {\n var next = this._value[i + 1];\n if (next !== EOF && next !== undefined) {\n if (next === LINE_FEED) {\n value += this.consumeStringSlice(i);\n i = -1;\n this._value.shift();\n }\n else if (isValidEscape(codePoint, next)) {\n value += this.consumeStringSlice(i);\n value += fromCodePoint$1(this.consumeEscapedCodePoint());\n i = -1;\n }\n }\n }\n i++;\n } while (true);\n };\n Tokenizer.prototype.consumeNumber = function () {\n var repr = [];\n var type = FLAG_INTEGER;\n var c1 = this.peekCodePoint(0);\n if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {\n repr.push(this.consumeCodePoint());\n }\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n c1 = this.peekCodePoint(0);\n var c2 = this.peekCodePoint(1);\n if (c1 === FULL_STOP && isDigit(c2)) {\n repr.push(this.consumeCodePoint(), this.consumeCodePoint());\n type = FLAG_NUMBER;\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n }\n c1 = this.peekCodePoint(0);\n c2 = this.peekCodePoint(1);\n var c3 = this.peekCodePoint(2);\n if ((c1 === E || c1 === e) && (((c2 === PLUS_SIGN || c2 === HYPHEN_MINUS) && isDigit(c3)) || isDigit(c2))) {\n repr.push(this.consumeCodePoint(), this.consumeCodePoint());\n type = FLAG_NUMBER;\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n }\n return [stringToNumber(repr), type];\n };\n Tokenizer.prototype.consumeNumericToken = function () {\n var _a = this.consumeNumber(), number = _a[0], flags = _a[1];\n var c1 = this.peekCodePoint(0);\n var c2 = this.peekCodePoint(1);\n var c3 = this.peekCodePoint(2);\n if (isIdentifierStart(c1, c2, c3)) {\n var unit = this.consumeName();\n return { type: 15 /* DIMENSION_TOKEN */, number: number, flags: flags, unit: unit };\n }\n if (c1 === PERCENTAGE_SIGN) {\n this.consumeCodePoint();\n return { type: 16 /* PERCENTAGE_TOKEN */, number: number, flags: flags };\n }\n return { type: 17 /* NUMBER_TOKEN */, number: number, flags: flags };\n };\n Tokenizer.prototype.consumeEscapedCodePoint = function () {\n var codePoint = this.consumeCodePoint();\n if (isHex(codePoint)) {\n var hex = fromCodePoint$1(codePoint);\n while (isHex(this.peekCodePoint(0)) && hex.length < 6) {\n hex += fromCodePoint$1(this.consumeCodePoint());\n }\n if (isWhiteSpace(this.peekCodePoint(0))) {\n this.consumeCodePoint();\n }\n var hexCodePoint = parseInt(hex, 16);\n if (hexCodePoint === 0 || isSurrogateCodePoint(hexCodePoint) || hexCodePoint > 0x10ffff) {\n return REPLACEMENT_CHARACTER;\n }\n return hexCodePoint;\n }\n if (codePoint === EOF) {\n return REPLACEMENT_CHARACTER;\n }\n return codePoint;\n };\n Tokenizer.prototype.consumeName = function () {\n var result = '';\n while (true) {\n var codePoint = this.consumeCodePoint();\n if (isNameCodePoint(codePoint)) {\n result += fromCodePoint$1(codePoint);\n }\n else if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n result += fromCodePoint$1(this.consumeEscapedCodePoint());\n }\n else {\n this.reconsumeCodePoint(codePoint);\n return result;\n }\n }\n };\n return Tokenizer;\n }());\n\n var Parser = /** @class */ (function () {\n function Parser(tokens) {\n this._tokens = tokens;\n }\n Parser.create = function (value) {\n var tokenizer = new Tokenizer();\n tokenizer.write(value);\n return new Parser(tokenizer.read());\n };\n Parser.parseValue = function (value) {\n return Parser.create(value).parseComponentValue();\n };\n Parser.parseValues = function (value) {\n return Parser.create(value).parseComponentValues();\n };\n Parser.prototype.parseComponentValue = function () {\n var token = this.consumeToken();\n while (token.type === 31 /* WHITESPACE_TOKEN */) {\n token = this.consumeToken();\n }\n if (token.type === 32 /* EOF_TOKEN */) {\n throw new SyntaxError(\"Error parsing CSS component value, unexpected EOF\");\n }\n this.reconsumeToken(token);\n var value = this.consumeComponentValue();\n do {\n token = this.consumeToken();\n } while (token.type === 31 /* WHITESPACE_TOKEN */);\n if (token.type === 32 /* EOF_TOKEN */) {\n return value;\n }\n throw new SyntaxError(\"Error parsing CSS component value, multiple values found when expecting only one\");\n };\n Parser.prototype.parseComponentValues = function () {\n var values = [];\n while (true) {\n var value = this.consumeComponentValue();\n if (value.type === 32 /* EOF_TOKEN */) {\n return values;\n }\n values.push(value);\n values.push();\n }\n };\n Parser.prototype.consumeComponentValue = function () {\n var token = this.consumeToken();\n switch (token.type) {\n case 11 /* LEFT_CURLY_BRACKET_TOKEN */:\n case 28 /* LEFT_SQUARE_BRACKET_TOKEN */:\n case 2 /* LEFT_PARENTHESIS_TOKEN */:\n return this.consumeSimpleBlock(token.type);\n case 19 /* FUNCTION_TOKEN */:\n return this.consumeFunction(token);\n }\n return token;\n };\n Parser.prototype.consumeSimpleBlock = function (type) {\n var block = { type: type, values: [] };\n var token = this.consumeToken();\n while (true) {\n if (token.type === 32 /* EOF_TOKEN */ || isEndingTokenFor(token, type)) {\n return block;\n }\n this.reconsumeToken(token);\n block.values.push(this.consumeComponentValue());\n token = this.consumeToken();\n }\n };\n Parser.prototype.consumeFunction = function (functionToken) {\n var cssFunction = {\n name: functionToken.value,\n values: [],\n type: 18 /* FUNCTION */\n };\n while (true) {\n var token = this.consumeToken();\n if (token.type === 32 /* EOF_TOKEN */ || token.type === 3 /* RIGHT_PARENTHESIS_TOKEN */) {\n return cssFunction;\n }\n this.reconsumeToken(token);\n cssFunction.values.push(this.consumeComponentValue());\n }\n };\n Parser.prototype.consumeToken = function () {\n var token = this._tokens.shift();\n return typeof token === 'undefined' ? EOF_TOKEN : token;\n };\n Parser.prototype.reconsumeToken = function (token) {\n this._tokens.unshift(token);\n };\n return Parser;\n }());\n var isDimensionToken = function (token) { return token.type === 15 /* DIMENSION_TOKEN */; };\n var isNumberToken = function (token) { return token.type === 17 /* NUMBER_TOKEN */; };\n var isIdentToken = function (token) { return token.type === 20 /* IDENT_TOKEN */; };\n var isStringToken = function (token) { return token.type === 0 /* STRING_TOKEN */; };\n var isIdentWithValue = function (token, value) {\n return isIdentToken(token) && token.value === value;\n };\n var nonWhiteSpace = function (token) { return token.type !== 31 /* WHITESPACE_TOKEN */; };\n var nonFunctionArgSeparator = function (token) {\n return token.type !== 31 /* WHITESPACE_TOKEN */ && token.type !== 4 /* COMMA_TOKEN */;\n };\n var parseFunctionArgs = function (tokens) {\n var args = [];\n var arg = [];\n tokens.forEach(function (token) {\n if (token.type === 4 /* COMMA_TOKEN */) {\n if (arg.length === 0) {\n throw new Error(\"Error parsing function args, zero tokens for arg\");\n }\n args.push(arg);\n arg = [];\n return;\n }\n if (token.type !== 31 /* WHITESPACE_TOKEN */) {\n arg.push(token);\n }\n });\n if (arg.length) {\n args.push(arg);\n }\n return args;\n };\n var isEndingTokenFor = function (token, type) {\n if (type === 11 /* LEFT_CURLY_BRACKET_TOKEN */ && token.type === 12 /* RIGHT_CURLY_BRACKET_TOKEN */) {\n return true;\n }\n if (type === 28 /* LEFT_SQUARE_BRACKET_TOKEN */ && token.type === 29 /* RIGHT_SQUARE_BRACKET_TOKEN */) {\n return true;\n }\n return type === 2 /* LEFT_PARENTHESIS_TOKEN */ && token.type === 3 /* RIGHT_PARENTHESIS_TOKEN */;\n };\n\n var isLength = function (token) {\n return token.type === 17 /* NUMBER_TOKEN */ || token.type === 15 /* DIMENSION_TOKEN */;\n };\n\n var isLengthPercentage = function (token) {\n return token.type === 16 /* PERCENTAGE_TOKEN */ || isLength(token);\n };\n var parseLengthPercentageTuple = function (tokens) {\n return tokens.length > 1 ? [tokens[0], tokens[1]] : [tokens[0]];\n };\n var ZERO_LENGTH = {\n type: 17 /* NUMBER_TOKEN */,\n number: 0,\n flags: FLAG_INTEGER\n };\n var FIFTY_PERCENT = {\n type: 16 /* PERCENTAGE_TOKEN */,\n number: 50,\n flags: FLAG_INTEGER\n };\n var HUNDRED_PERCENT = {\n type: 16 /* PERCENTAGE_TOKEN */,\n number: 100,\n flags: FLAG_INTEGER\n };\n var getAbsoluteValueForTuple = function (tuple, width, height) {\n var x = tuple[0], y = tuple[1];\n return [getAbsoluteValue(x, width), getAbsoluteValue(typeof y !== 'undefined' ? y : x, height)];\n };\n var getAbsoluteValue = function (token, parent) {\n if (token.type === 16 /* PERCENTAGE_TOKEN */) {\n return (token.number / 100) * parent;\n }\n if (isDimensionToken(token)) {\n switch (token.unit) {\n case 'rem':\n case 'em':\n return 16 * token.number; // TODO use correct font-size\n case 'px':\n default:\n return token.number;\n }\n }\n return token.number;\n };\n\n var DEG = 'deg';\n var GRAD = 'grad';\n var RAD = 'rad';\n var TURN = 'turn';\n var angle = {\n name: 'angle',\n parse: function (_context, value) {\n if (value.type === 15 /* DIMENSION_TOKEN */) {\n switch (value.unit) {\n case DEG:\n return (Math.PI * value.number) / 180;\n case GRAD:\n return (Math.PI / 200) * value.number;\n case RAD:\n return value.number;\n case TURN:\n return Math.PI * 2 * value.number;\n }\n }\n throw new Error(\"Unsupported angle type\");\n }\n };\n var isAngle = function (value) {\n if (value.type === 15 /* DIMENSION_TOKEN */) {\n if (value.unit === DEG || value.unit === GRAD || value.unit === RAD || value.unit === TURN) {\n return true;\n }\n }\n return false;\n };\n var parseNamedSide = function (tokens) {\n var sideOrCorner = tokens\n .filter(isIdentToken)\n .map(function (ident) { return ident.value; })\n .join(' ');\n switch (sideOrCorner) {\n case 'to bottom right':\n case 'to right bottom':\n case 'left top':\n case 'top left':\n return [ZERO_LENGTH, ZERO_LENGTH];\n case 'to top':\n case 'bottom':\n return deg(0);\n case 'to bottom left':\n case 'to left bottom':\n case 'right top':\n case 'top right':\n return [ZERO_LENGTH, HUNDRED_PERCENT];\n case 'to right':\n case 'left':\n return deg(90);\n case 'to top left':\n case 'to left top':\n case 'right bottom':\n case 'bottom right':\n return [HUNDRED_PERCENT, HUNDRED_PERCENT];\n case 'to bottom':\n case 'top':\n return deg(180);\n case 'to top right':\n case 'to right top':\n case 'left bottom':\n case 'bottom left':\n return [HUNDRED_PERCENT, ZERO_LENGTH];\n case 'to left':\n case 'right':\n return deg(270);\n }\n return 0;\n };\n var deg = function (deg) { return (Math.PI * deg) / 180; };\n\n var color$1 = {\n name: 'color',\n parse: function (context, value) {\n if (value.type === 18 /* FUNCTION */) {\n var colorFunction = SUPPORTED_COLOR_FUNCTIONS[value.name];\n if (typeof colorFunction === 'undefined') {\n throw new Error(\"Attempting to parse an unsupported color function \\\"\" + value.name + \"\\\"\");\n }\n return colorFunction(context, value.values);\n }\n if (value.type === 5 /* HASH_TOKEN */) {\n if (value.value.length === 3) {\n var r = value.value.substring(0, 1);\n var g = value.value.substring(1, 2);\n var b = value.value.substring(2, 3);\n return pack(parseInt(r + r, 16), parseInt(g + g, 16), parseInt(b + b, 16), 1);\n }\n if (value.value.length === 4) {\n var r = value.value.substring(0, 1);\n var g = value.value.substring(1, 2);\n var b = value.value.substring(2, 3);\n var a = value.value.substring(3, 4);\n return pack(parseInt(r + r, 16), parseInt(g + g, 16), parseInt(b + b, 16), parseInt(a + a, 16) / 255);\n }\n if (value.value.length === 6) {\n var r = value.value.substring(0, 2);\n var g = value.value.substring(2, 4);\n var b = value.value.substring(4, 6);\n return pack(parseInt(r, 16), parseInt(g, 16), parseInt(b, 16), 1);\n }\n if (value.value.length === 8) {\n var r = value.value.substring(0, 2);\n var g = value.value.substring(2, 4);\n var b = value.value.substring(4, 6);\n var a = value.value.substring(6, 8);\n return pack(parseInt(r, 16), parseInt(g, 16), parseInt(b, 16), parseInt(a, 16) / 255);\n }\n }\n if (value.type === 20 /* IDENT_TOKEN */) {\n var namedColor = COLORS[value.value.toUpperCase()];\n if (typeof namedColor !== 'undefined') {\n return namedColor;\n }\n }\n return COLORS.TRANSPARENT;\n }\n };\n var isTransparent = function (color) { return (0xff & color) === 0; };\n var asString = function (color) {\n var alpha = 0xff & color;\n var blue = 0xff & (color >> 8);\n var green = 0xff & (color >> 16);\n var red = 0xff & (color >> 24);\n return alpha < 255 ? \"rgba(\" + red + \",\" + green + \",\" + blue + \",\" + alpha / 255 + \")\" : \"rgb(\" + red + \",\" + green + \",\" + blue + \")\";\n };\n var pack = function (r, g, b, a) {\n return ((r << 24) | (g << 16) | (b << 8) | (Math.round(a * 255) << 0)) >>> 0;\n };\n var getTokenColorValue = function (token, i) {\n if (token.type === 17 /* NUMBER_TOKEN */) {\n return token.number;\n }\n if (token.type === 16 /* PERCENTAGE_TOKEN */) {\n var max = i === 3 ? 1 : 255;\n return i === 3 ? (token.number / 100) * max : Math.round((token.number / 100) * max);\n }\n return 0;\n };\n var rgb = function (_context, args) {\n var tokens = args.filter(nonFunctionArgSeparator);\n if (tokens.length === 3) {\n var _a = tokens.map(getTokenColorValue), r = _a[0], g = _a[1], b = _a[2];\n return pack(r, g, b, 1);\n }\n if (tokens.length === 4) {\n var _b = tokens.map(getTokenColorValue), r = _b[0], g = _b[1], b = _b[2], a = _b[3];\n return pack(r, g, b, a);\n }\n return 0;\n };\n function hue2rgb(t1, t2, hue) {\n if (hue < 0) {\n hue += 1;\n }\n if (hue >= 1) {\n hue -= 1;\n }\n if (hue < 1 / 6) {\n return (t2 - t1) * hue * 6 + t1;\n }\n else if (hue < 1 / 2) {\n return t2;\n }\n else if (hue < 2 / 3) {\n return (t2 - t1) * 6 * (2 / 3 - hue) + t1;\n }\n else {\n return t1;\n }\n }\n var hsl = function (context, args) {\n var tokens = args.filter(nonFunctionArgSeparator);\n var hue = tokens[0], saturation = tokens[1], lightness = tokens[2], alpha = tokens[3];\n var h = (hue.type === 17 /* NUMBER_TOKEN */ ? deg(hue.number) : angle.parse(context, hue)) / (Math.PI * 2);\n var s = isLengthPercentage(saturation) ? saturation.number / 100 : 0;\n var l = isLengthPercentage(lightness) ? lightness.number / 100 : 0;\n var a = typeof alpha !== 'undefined' && isLengthPercentage(alpha) ? getAbsoluteValue(alpha, 1) : 1;\n if (s === 0) {\n return pack(l * 255, l * 255, l * 255, 1);\n }\n var t2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;\n var t1 = l * 2 - t2;\n var r = hue2rgb(t1, t2, h + 1 / 3);\n var g = hue2rgb(t1, t2, h);\n var b = hue2rgb(t1, t2, h - 1 / 3);\n return pack(r * 255, g * 255, b * 255, a);\n };\n var SUPPORTED_COLOR_FUNCTIONS = {\n hsl: hsl,\n hsla: hsl,\n rgb: rgb,\n rgba: rgb\n };\n var parseColor = function (context, value) {\n return color$1.parse(context, Parser.create(value).parseComponentValue());\n };\n var COLORS = {\n ALICEBLUE: 0xf0f8ffff,\n ANTIQUEWHITE: 0xfaebd7ff,\n AQUA: 0x00ffffff,\n AQUAMARINE: 0x7fffd4ff,\n AZURE: 0xf0ffffff,\n BEIGE: 0xf5f5dcff,\n BISQUE: 0xffe4c4ff,\n BLACK: 0x000000ff,\n BLANCHEDALMOND: 0xffebcdff,\n BLUE: 0x0000ffff,\n BLUEVIOLET: 0x8a2be2ff,\n BROWN: 0xa52a2aff,\n BURLYWOOD: 0xdeb887ff,\n CADETBLUE: 0x5f9ea0ff,\n CHARTREUSE: 0x7fff00ff,\n CHOCOLATE: 0xd2691eff,\n CORAL: 0xff7f50ff,\n CORNFLOWERBLUE: 0x6495edff,\n CORNSILK: 0xfff8dcff,\n CRIMSON: 0xdc143cff,\n CYAN: 0x00ffffff,\n DARKBLUE: 0x00008bff,\n DARKCYAN: 0x008b8bff,\n DARKGOLDENROD: 0xb886bbff,\n DARKGRAY: 0xa9a9a9ff,\n DARKGREEN: 0x006400ff,\n DARKGREY: 0xa9a9a9ff,\n DARKKHAKI: 0xbdb76bff,\n DARKMAGENTA: 0x8b008bff,\n DARKOLIVEGREEN: 0x556b2fff,\n DARKORANGE: 0xff8c00ff,\n DARKORCHID: 0x9932ccff,\n DARKRED: 0x8b0000ff,\n DARKSALMON: 0xe9967aff,\n DARKSEAGREEN: 0x8fbc8fff,\n DARKSLATEBLUE: 0x483d8bff,\n DARKSLATEGRAY: 0x2f4f4fff,\n DARKSLATEGREY: 0x2f4f4fff,\n DARKTURQUOISE: 0x00ced1ff,\n DARKVIOLET: 0x9400d3ff,\n DEEPPINK: 0xff1493ff,\n DEEPSKYBLUE: 0x00bfffff,\n DIMGRAY: 0x696969ff,\n DIMGREY: 0x696969ff,\n DODGERBLUE: 0x1e90ffff,\n FIREBRICK: 0xb22222ff,\n FLORALWHITE: 0xfffaf0ff,\n FORESTGREEN: 0x228b22ff,\n FUCHSIA: 0xff00ffff,\n GAINSBORO: 0xdcdcdcff,\n GHOSTWHITE: 0xf8f8ffff,\n GOLD: 0xffd700ff,\n GOLDENROD: 0xdaa520ff,\n GRAY: 0x808080ff,\n GREEN: 0x008000ff,\n GREENYELLOW: 0xadff2fff,\n GREY: 0x808080ff,\n HONEYDEW: 0xf0fff0ff,\n HOTPINK: 0xff69b4ff,\n INDIANRED: 0xcd5c5cff,\n INDIGO: 0x4b0082ff,\n IVORY: 0xfffff0ff,\n KHAKI: 0xf0e68cff,\n LAVENDER: 0xe6e6faff,\n LAVENDERBLUSH: 0xfff0f5ff,\n LAWNGREEN: 0x7cfc00ff,\n LEMONCHIFFON: 0xfffacdff,\n LIGHTBLUE: 0xadd8e6ff,\n LIGHTCORAL: 0xf08080ff,\n LIGHTCYAN: 0xe0ffffff,\n LIGHTGOLDENRODYELLOW: 0xfafad2ff,\n LIGHTGRAY: 0xd3d3d3ff,\n LIGHTGREEN: 0x90ee90ff,\n LIGHTGREY: 0xd3d3d3ff,\n LIGHTPINK: 0xffb6c1ff,\n LIGHTSALMON: 0xffa07aff,\n LIGHTSEAGREEN: 0x20b2aaff,\n LIGHTSKYBLUE: 0x87cefaff,\n LIGHTSLATEGRAY: 0x778899ff,\n LIGHTSLATEGREY: 0x778899ff,\n LIGHTSTEELBLUE: 0xb0c4deff,\n LIGHTYELLOW: 0xffffe0ff,\n LIME: 0x00ff00ff,\n LIMEGREEN: 0x32cd32ff,\n LINEN: 0xfaf0e6ff,\n MAGENTA: 0xff00ffff,\n MAROON: 0x800000ff,\n MEDIUMAQUAMARINE: 0x66cdaaff,\n MEDIUMBLUE: 0x0000cdff,\n MEDIUMORCHID: 0xba55d3ff,\n MEDIUMPURPLE: 0x9370dbff,\n MEDIUMSEAGREEN: 0x3cb371ff,\n MEDIUMSLATEBLUE: 0x7b68eeff,\n MEDIUMSPRINGGREEN: 0x00fa9aff,\n MEDIUMTURQUOISE: 0x48d1ccff,\n MEDIUMVIOLETRED: 0xc71585ff,\n MIDNIGHTBLUE: 0x191970ff,\n MINTCREAM: 0xf5fffaff,\n MISTYROSE: 0xffe4e1ff,\n MOCCASIN: 0xffe4b5ff,\n NAVAJOWHITE: 0xffdeadff,\n NAVY: 0x000080ff,\n OLDLACE: 0xfdf5e6ff,\n OLIVE: 0x808000ff,\n OLIVEDRAB: 0x6b8e23ff,\n ORANGE: 0xffa500ff,\n ORANGERED: 0xff4500ff,\n ORCHID: 0xda70d6ff,\n PALEGOLDENROD: 0xeee8aaff,\n PALEGREEN: 0x98fb98ff,\n PALETURQUOISE: 0xafeeeeff,\n PALEVIOLETRED: 0xdb7093ff,\n PAPAYAWHIP: 0xffefd5ff,\n PEACHPUFF: 0xffdab9ff,\n PERU: 0xcd853fff,\n PINK: 0xffc0cbff,\n PLUM: 0xdda0ddff,\n POWDERBLUE: 0xb0e0e6ff,\n PURPLE: 0x800080ff,\n REBECCAPURPLE: 0x663399ff,\n RED: 0xff0000ff,\n ROSYBROWN: 0xbc8f8fff,\n ROYALBLUE: 0x4169e1ff,\n SADDLEBROWN: 0x8b4513ff,\n SALMON: 0xfa8072ff,\n SANDYBROWN: 0xf4a460ff,\n SEAGREEN: 0x2e8b57ff,\n SEASHELL: 0xfff5eeff,\n SIENNA: 0xa0522dff,\n SILVER: 0xc0c0c0ff,\n SKYBLUE: 0x87ceebff,\n SLATEBLUE: 0x6a5acdff,\n SLATEGRAY: 0x708090ff,\n SLATEGREY: 0x708090ff,\n SNOW: 0xfffafaff,\n SPRINGGREEN: 0x00ff7fff,\n STEELBLUE: 0x4682b4ff,\n TAN: 0xd2b48cff,\n TEAL: 0x008080ff,\n THISTLE: 0xd8bfd8ff,\n TOMATO: 0xff6347ff,\n TRANSPARENT: 0x00000000,\n TURQUOISE: 0x40e0d0ff,\n VIOLET: 0xee82eeff,\n WHEAT: 0xf5deb3ff,\n WHITE: 0xffffffff,\n WHITESMOKE: 0xf5f5f5ff,\n YELLOW: 0xffff00ff,\n YELLOWGREEN: 0x9acd32ff\n };\n\n var backgroundClip = {\n name: 'background-clip',\n initialValue: 'border-box',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return tokens.map(function (token) {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'padding-box':\n return 1 /* PADDING_BOX */;\n case 'content-box':\n return 2 /* CONTENT_BOX */;\n }\n }\n return 0 /* BORDER_BOX */;\n });\n }\n };\n\n var backgroundColor = {\n name: \"background-color\",\n initialValue: 'transparent',\n prefix: false,\n type: 3 /* TYPE_VALUE */,\n format: 'color'\n };\n\n var parseColorStop = function (context, args) {\n var color = color$1.parse(context, args[0]);\n var stop = args[1];\n return stop && isLengthPercentage(stop) ? { color: color, stop: stop } : { color: color, stop: null };\n };\n var processColorStops = function (stops, lineLength) {\n var first = stops[0];\n var last = stops[stops.length - 1];\n if (first.stop === null) {\n first.stop = ZERO_LENGTH;\n }\n if (last.stop === null) {\n last.stop = HUNDRED_PERCENT;\n }\n var processStops = [];\n var previous = 0;\n for (var i = 0; i < stops.length; i++) {\n var stop_1 = stops[i].stop;\n if (stop_1 !== null) {\n var absoluteValue = getAbsoluteValue(stop_1, lineLength);\n if (absoluteValue > previous) {\n processStops.push(absoluteValue);\n }\n else {\n processStops.push(previous);\n }\n previous = absoluteValue;\n }\n else {\n processStops.push(null);\n }\n }\n var gapBegin = null;\n for (var i = 0; i < processStops.length; i++) {\n var stop_2 = processStops[i];\n if (stop_2 === null) {\n if (gapBegin === null) {\n gapBegin = i;\n }\n }\n else if (gapBegin !== null) {\n var gapLength = i - gapBegin;\n var beforeGap = processStops[gapBegin - 1];\n var gapValue = (stop_2 - beforeGap) / (gapLength + 1);\n for (var g = 1; g <= gapLength; g++) {\n processStops[gapBegin + g - 1] = gapValue * g;\n }\n gapBegin = null;\n }\n }\n return stops.map(function (_a, i) {\n var color = _a.color;\n return { color: color, stop: Math.max(Math.min(1, processStops[i] / lineLength), 0) };\n });\n };\n var getAngleFromCorner = function (corner, width, height) {\n var centerX = width / 2;\n var centerY = height / 2;\n var x = getAbsoluteValue(corner[0], width) - centerX;\n var y = centerY - getAbsoluteValue(corner[1], height);\n return (Math.atan2(y, x) + Math.PI * 2) % (Math.PI * 2);\n };\n var calculateGradientDirection = function (angle, width, height) {\n var radian = typeof angle === 'number' ? angle : getAngleFromCorner(angle, width, height);\n var lineLength = Math.abs(width * Math.sin(radian)) + Math.abs(height * Math.cos(radian));\n var halfWidth = width / 2;\n var halfHeight = height / 2;\n var halfLineLength = lineLength / 2;\n var yDiff = Math.sin(radian - Math.PI / 2) * halfLineLength;\n var xDiff = Math.cos(radian - Math.PI / 2) * halfLineLength;\n return [lineLength, halfWidth - xDiff, halfWidth + xDiff, halfHeight - yDiff, halfHeight + yDiff];\n };\n var distance = function (a, b) { return Math.sqrt(a * a + b * b); };\n var findCorner = function (width, height, x, y, closest) {\n var corners = [\n [0, 0],\n [0, height],\n [width, 0],\n [width, height]\n ];\n return corners.reduce(function (stat, corner) {\n var cx = corner[0], cy = corner[1];\n var d = distance(x - cx, y - cy);\n if (closest ? d < stat.optimumDistance : d > stat.optimumDistance) {\n return {\n optimumCorner: corner,\n optimumDistance: d\n };\n }\n return stat;\n }, {\n optimumDistance: closest ? Infinity : -Infinity,\n optimumCorner: null\n }).optimumCorner;\n };\n var calculateRadius = function (gradient, x, y, width, height) {\n var rx = 0;\n var ry = 0;\n switch (gradient.size) {\n case 0 /* CLOSEST_SIDE */:\n // The ending shape is sized so that that it exactly meets the side of the gradient box closest to the gradient’s center.\n // If the shape is an ellipse, it exactly meets the closest side in each dimension.\n if (gradient.shape === 0 /* CIRCLE */) {\n rx = ry = Math.min(Math.abs(x), Math.abs(x - width), Math.abs(y), Math.abs(y - height));\n }\n else if (gradient.shape === 1 /* ELLIPSE */) {\n rx = Math.min(Math.abs(x), Math.abs(x - width));\n ry = Math.min(Math.abs(y), Math.abs(y - height));\n }\n break;\n case 2 /* CLOSEST_CORNER */:\n // The ending shape is sized so that that it passes through the corner of the gradient box closest to the gradient’s center.\n // If the shape is an ellipse, the ending shape is given the same aspect-ratio it would have if closest-side were specified.\n if (gradient.shape === 0 /* CIRCLE */) {\n rx = ry = Math.min(distance(x, y), distance(x, y - height), distance(x - width, y), distance(x - width, y - height));\n }\n else if (gradient.shape === 1 /* ELLIPSE */) {\n // Compute the ratio ry/rx (which is to be the same as for \"closest-side\")\n var c = Math.min(Math.abs(y), Math.abs(y - height)) / Math.min(Math.abs(x), Math.abs(x - width));\n var _a = findCorner(width, height, x, y, true), cx = _a[0], cy = _a[1];\n rx = distance(cx - x, (cy - y) / c);\n ry = c * rx;\n }\n break;\n case 1 /* FARTHEST_SIDE */:\n // Same as closest-side, except the ending shape is sized based on the farthest side(s)\n if (gradient.shape === 0 /* CIRCLE */) {\n rx = ry = Math.max(Math.abs(x), Math.abs(x - width), Math.abs(y), Math.abs(y - height));\n }\n else if (gradient.shape === 1 /* ELLIPSE */) {\n rx = Math.max(Math.abs(x), Math.abs(x - width));\n ry = Math.max(Math.abs(y), Math.abs(y - height));\n }\n break;\n case 3 /* FARTHEST_CORNER */:\n // Same as closest-corner, except the ending shape is sized based on the farthest corner.\n // If the shape is an ellipse, the ending shape is given the same aspect ratio it would have if farthest-side were specified.\n if (gradient.shape === 0 /* CIRCLE */) {\n rx = ry = Math.max(distance(x, y), distance(x, y - height), distance(x - width, y), distance(x - width, y - height));\n }\n else if (gradient.shape === 1 /* ELLIPSE */) {\n // Compute the ratio ry/rx (which is to be the same as for \"farthest-side\")\n var c = Math.max(Math.abs(y), Math.abs(y - height)) / Math.max(Math.abs(x), Math.abs(x - width));\n var _b = findCorner(width, height, x, y, false), cx = _b[0], cy = _b[1];\n rx = distance(cx - x, (cy - y) / c);\n ry = c * rx;\n }\n break;\n }\n if (Array.isArray(gradient.size)) {\n rx = getAbsoluteValue(gradient.size[0], width);\n ry = gradient.size.length === 2 ? getAbsoluteValue(gradient.size[1], height) : rx;\n }\n return [rx, ry];\n };\n\n var linearGradient = function (context, tokens) {\n var angle$1 = deg(180);\n var stops = [];\n parseFunctionArgs(tokens).forEach(function (arg, i) {\n if (i === 0) {\n var firstToken = arg[0];\n if (firstToken.type === 20 /* IDENT_TOKEN */ && firstToken.value === 'to') {\n angle$1 = parseNamedSide(arg);\n return;\n }\n else if (isAngle(firstToken)) {\n angle$1 = angle.parse(context, firstToken);\n return;\n }\n }\n var colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n });\n return { angle: angle$1, stops: stops, type: 1 /* LINEAR_GRADIENT */ };\n };\n\n var prefixLinearGradient = function (context, tokens) {\n var angle$1 = deg(180);\n var stops = [];\n parseFunctionArgs(tokens).forEach(function (arg, i) {\n if (i === 0) {\n var firstToken = arg[0];\n if (firstToken.type === 20 /* IDENT_TOKEN */ &&\n ['top', 'left', 'right', 'bottom'].indexOf(firstToken.value) !== -1) {\n angle$1 = parseNamedSide(arg);\n return;\n }\n else if (isAngle(firstToken)) {\n angle$1 = (angle.parse(context, firstToken) + deg(270)) % deg(360);\n return;\n }\n }\n var colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n });\n return {\n angle: angle$1,\n stops: stops,\n type: 1 /* LINEAR_GRADIENT */\n };\n };\n\n var webkitGradient = function (context, tokens) {\n var angle = deg(180);\n var stops = [];\n var type = 1 /* LINEAR_GRADIENT */;\n var shape = 0 /* CIRCLE */;\n var size = 3 /* FARTHEST_CORNER */;\n var position = [];\n parseFunctionArgs(tokens).forEach(function (arg, i) {\n var firstToken = arg[0];\n if (i === 0) {\n if (isIdentToken(firstToken) && firstToken.value === 'linear') {\n type = 1 /* LINEAR_GRADIENT */;\n return;\n }\n else if (isIdentToken(firstToken) && firstToken.value === 'radial') {\n type = 2 /* RADIAL_GRADIENT */;\n return;\n }\n }\n if (firstToken.type === 18 /* FUNCTION */) {\n if (firstToken.name === 'from') {\n var color = color$1.parse(context, firstToken.values[0]);\n stops.push({ stop: ZERO_LENGTH, color: color });\n }\n else if (firstToken.name === 'to') {\n var color = color$1.parse(context, firstToken.values[0]);\n stops.push({ stop: HUNDRED_PERCENT, color: color });\n }\n else if (firstToken.name === 'color-stop') {\n var values = firstToken.values.filter(nonFunctionArgSeparator);\n if (values.length === 2) {\n var color = color$1.parse(context, values[1]);\n var stop_1 = values[0];\n if (isNumberToken(stop_1)) {\n stops.push({\n stop: { type: 16 /* PERCENTAGE_TOKEN */, number: stop_1.number * 100, flags: stop_1.flags },\n color: color\n });\n }\n }\n }\n }\n });\n return type === 1 /* LINEAR_GRADIENT */\n ? {\n angle: (angle + deg(180)) % deg(360),\n stops: stops,\n type: type\n }\n : { size: size, shape: shape, stops: stops, position: position, type: type };\n };\n\n var CLOSEST_SIDE = 'closest-side';\n var FARTHEST_SIDE = 'farthest-side';\n var CLOSEST_CORNER = 'closest-corner';\n var FARTHEST_CORNER = 'farthest-corner';\n var CIRCLE = 'circle';\n var ELLIPSE = 'ellipse';\n var COVER = 'cover';\n var CONTAIN = 'contain';\n var radialGradient = function (context, tokens) {\n var shape = 0 /* CIRCLE */;\n var size = 3 /* FARTHEST_CORNER */;\n var stops = [];\n var position = [];\n parseFunctionArgs(tokens).forEach(function (arg, i) {\n var isColorStop = true;\n if (i === 0) {\n var isAtPosition_1 = false;\n isColorStop = arg.reduce(function (acc, token) {\n if (isAtPosition_1) {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'center':\n position.push(FIFTY_PERCENT);\n return acc;\n case 'top':\n case 'left':\n position.push(ZERO_LENGTH);\n return acc;\n case 'right':\n case 'bottom':\n position.push(HUNDRED_PERCENT);\n return acc;\n }\n }\n else if (isLengthPercentage(token) || isLength(token)) {\n position.push(token);\n }\n }\n else if (isIdentToken(token)) {\n switch (token.value) {\n case CIRCLE:\n shape = 0 /* CIRCLE */;\n return false;\n case ELLIPSE:\n shape = 1 /* ELLIPSE */;\n return false;\n case 'at':\n isAtPosition_1 = true;\n return false;\n case CLOSEST_SIDE:\n size = 0 /* CLOSEST_SIDE */;\n return false;\n case COVER:\n case FARTHEST_SIDE:\n size = 1 /* FARTHEST_SIDE */;\n return false;\n case CONTAIN:\n case CLOSEST_CORNER:\n size = 2 /* CLOSEST_CORNER */;\n return false;\n case FARTHEST_CORNER:\n size = 3 /* FARTHEST_CORNER */;\n return false;\n }\n }\n else if (isLength(token) || isLengthPercentage(token)) {\n if (!Array.isArray(size)) {\n size = [];\n }\n size.push(token);\n return false;\n }\n return acc;\n }, isColorStop);\n }\n if (isColorStop) {\n var colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n }\n });\n return { size: size, shape: shape, stops: stops, position: position, type: 2 /* RADIAL_GRADIENT */ };\n };\n\n var prefixRadialGradient = function (context, tokens) {\n var shape = 0 /* CIRCLE */;\n var size = 3 /* FARTHEST_CORNER */;\n var stops = [];\n var position = [];\n parseFunctionArgs(tokens).forEach(function (arg, i) {\n var isColorStop = true;\n if (i === 0) {\n isColorStop = arg.reduce(function (acc, token) {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'center':\n position.push(FIFTY_PERCENT);\n return false;\n case 'top':\n case 'left':\n position.push(ZERO_LENGTH);\n return false;\n case 'right':\n case 'bottom':\n position.push(HUNDRED_PERCENT);\n return false;\n }\n }\n else if (isLengthPercentage(token) || isLength(token)) {\n position.push(token);\n return false;\n }\n return acc;\n }, isColorStop);\n }\n else if (i === 1) {\n isColorStop = arg.reduce(function (acc, token) {\n if (isIdentToken(token)) {\n switch (token.value) {\n case CIRCLE:\n shape = 0 /* CIRCLE */;\n return false;\n case ELLIPSE:\n shape = 1 /* ELLIPSE */;\n return false;\n case CONTAIN:\n case CLOSEST_SIDE:\n size = 0 /* CLOSEST_SIDE */;\n return false;\n case FARTHEST_SIDE:\n size = 1 /* FARTHEST_SIDE */;\n return false;\n case CLOSEST_CORNER:\n size = 2 /* CLOSEST_CORNER */;\n return false;\n case COVER:\n case FARTHEST_CORNER:\n size = 3 /* FARTHEST_CORNER */;\n return false;\n }\n }\n else if (isLength(token) || isLengthPercentage(token)) {\n if (!Array.isArray(size)) {\n size = [];\n }\n size.push(token);\n return false;\n }\n return acc;\n }, isColorStop);\n }\n if (isColorStop) {\n var colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n }\n });\n return { size: size, shape: shape, stops: stops, position: position, type: 2 /* RADIAL_GRADIENT */ };\n };\n\n var isLinearGradient = function (background) {\n return background.type === 1 /* LINEAR_GRADIENT */;\n };\n var isRadialGradient = function (background) {\n return background.type === 2 /* RADIAL_GRADIENT */;\n };\n var image = {\n name: 'image',\n parse: function (context, value) {\n if (value.type === 22 /* URL_TOKEN */) {\n var image_1 = { url: value.value, type: 0 /* URL */ };\n context.cache.addImage(value.value);\n return image_1;\n }\n if (value.type === 18 /* FUNCTION */) {\n var imageFunction = SUPPORTED_IMAGE_FUNCTIONS[value.name];\n if (typeof imageFunction === 'undefined') {\n throw new Error(\"Attempting to parse an unsupported image function \\\"\" + value.name + \"\\\"\");\n }\n return imageFunction(context, value.values);\n }\n throw new Error(\"Unsupported image type \" + value.type);\n }\n };\n function isSupportedImage(value) {\n return (!(value.type === 20 /* IDENT_TOKEN */ && value.value === 'none') &&\n (value.type !== 18 /* FUNCTION */ || !!SUPPORTED_IMAGE_FUNCTIONS[value.name]));\n }\n var SUPPORTED_IMAGE_FUNCTIONS = {\n 'linear-gradient': linearGradient,\n '-moz-linear-gradient': prefixLinearGradient,\n '-ms-linear-gradient': prefixLinearGradient,\n '-o-linear-gradient': prefixLinearGradient,\n '-webkit-linear-gradient': prefixLinearGradient,\n 'radial-gradient': radialGradient,\n '-moz-radial-gradient': prefixRadialGradient,\n '-ms-radial-gradient': prefixRadialGradient,\n '-o-radial-gradient': prefixRadialGradient,\n '-webkit-radial-gradient': prefixRadialGradient,\n '-webkit-gradient': webkitGradient\n };\n\n var backgroundImage = {\n name: 'background-image',\n initialValue: 'none',\n type: 1 /* LIST */,\n prefix: false,\n parse: function (context, tokens) {\n if (tokens.length === 0) {\n return [];\n }\n var first = tokens[0];\n if (first.type === 20 /* IDENT_TOKEN */ && first.value === 'none') {\n return [];\n }\n return tokens\n .filter(function (value) { return nonFunctionArgSeparator(value) && isSupportedImage(value); })\n .map(function (value) { return image.parse(context, value); });\n }\n };\n\n var backgroundOrigin = {\n name: 'background-origin',\n initialValue: 'border-box',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return tokens.map(function (token) {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'padding-box':\n return 1 /* PADDING_BOX */;\n case 'content-box':\n return 2 /* CONTENT_BOX */;\n }\n }\n return 0 /* BORDER_BOX */;\n });\n }\n };\n\n var backgroundPosition = {\n name: 'background-position',\n initialValue: '0% 0%',\n type: 1 /* LIST */,\n prefix: false,\n parse: function (_context, tokens) {\n return parseFunctionArgs(tokens)\n .map(function (values) { return values.filter(isLengthPercentage); })\n .map(parseLengthPercentageTuple);\n }\n };\n\n var backgroundRepeat = {\n name: 'background-repeat',\n initialValue: 'repeat',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return parseFunctionArgs(tokens)\n .map(function (values) {\n return values\n .filter(isIdentToken)\n .map(function (token) { return token.value; })\n .join(' ');\n })\n .map(parseBackgroundRepeat);\n }\n };\n var parseBackgroundRepeat = function (value) {\n switch (value) {\n case 'no-repeat':\n return 1 /* NO_REPEAT */;\n case 'repeat-x':\n case 'repeat no-repeat':\n return 2 /* REPEAT_X */;\n case 'repeat-y':\n case 'no-repeat repeat':\n return 3 /* REPEAT_Y */;\n case 'repeat':\n default:\n return 0 /* REPEAT */;\n }\n };\n\n var BACKGROUND_SIZE;\n (function (BACKGROUND_SIZE) {\n BACKGROUND_SIZE[\"AUTO\"] = \"auto\";\n BACKGROUND_SIZE[\"CONTAIN\"] = \"contain\";\n BACKGROUND_SIZE[\"COVER\"] = \"cover\";\n })(BACKGROUND_SIZE || (BACKGROUND_SIZE = {}));\n var backgroundSize = {\n name: 'background-size',\n initialValue: '0',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return parseFunctionArgs(tokens).map(function (values) { return values.filter(isBackgroundSizeInfoToken); });\n }\n };\n var isBackgroundSizeInfoToken = function (value) {\n return isIdentToken(value) || isLengthPercentage(value);\n };\n\n var borderColorForSide = function (side) { return ({\n name: \"border-\" + side + \"-color\",\n initialValue: 'transparent',\n prefix: false,\n type: 3 /* TYPE_VALUE */,\n format: 'color'\n }); };\n var borderTopColor = borderColorForSide('top');\n var borderRightColor = borderColorForSide('right');\n var borderBottomColor = borderColorForSide('bottom');\n var borderLeftColor = borderColorForSide('left');\n\n var borderRadiusForSide = function (side) { return ({\n name: \"border-radius-\" + side,\n initialValue: '0 0',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return parseLengthPercentageTuple(tokens.filter(isLengthPercentage));\n }\n }); };\n var borderTopLeftRadius = borderRadiusForSide('top-left');\n var borderTopRightRadius = borderRadiusForSide('top-right');\n var borderBottomRightRadius = borderRadiusForSide('bottom-right');\n var borderBottomLeftRadius = borderRadiusForSide('bottom-left');\n\n var borderStyleForSide = function (side) { return ({\n name: \"border-\" + side + \"-style\",\n initialValue: 'solid',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, style) {\n switch (style) {\n case 'none':\n return 0 /* NONE */;\n case 'dashed':\n return 2 /* DASHED */;\n case 'dotted':\n return 3 /* DOTTED */;\n case 'double':\n return 4 /* DOUBLE */;\n }\n return 1 /* SOLID */;\n }\n }); };\n var borderTopStyle = borderStyleForSide('top');\n var borderRightStyle = borderStyleForSide('right');\n var borderBottomStyle = borderStyleForSide('bottom');\n var borderLeftStyle = borderStyleForSide('left');\n\n var borderWidthForSide = function (side) { return ({\n name: \"border-\" + side + \"-width\",\n initialValue: '0',\n type: 0 /* VALUE */,\n prefix: false,\n parse: function (_context, token) {\n if (isDimensionToken(token)) {\n return token.number;\n }\n return 0;\n }\n }); };\n var borderTopWidth = borderWidthForSide('top');\n var borderRightWidth = borderWidthForSide('right');\n var borderBottomWidth = borderWidthForSide('bottom');\n var borderLeftWidth = borderWidthForSide('left');\n\n var color = {\n name: \"color\",\n initialValue: 'transparent',\n prefix: false,\n type: 3 /* TYPE_VALUE */,\n format: 'color'\n };\n\n var direction = {\n name: 'direction',\n initialValue: 'ltr',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, direction) {\n switch (direction) {\n case 'rtl':\n return 1 /* RTL */;\n case 'ltr':\n default:\n return 0 /* LTR */;\n }\n }\n };\n\n var display = {\n name: 'display',\n initialValue: 'inline-block',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return tokens.filter(isIdentToken).reduce(function (bit, token) {\n return bit | parseDisplayValue(token.value);\n }, 0 /* NONE */);\n }\n };\n var parseDisplayValue = function (display) {\n switch (display) {\n case 'block':\n case '-webkit-box':\n return 2 /* BLOCK */;\n case 'inline':\n return 4 /* INLINE */;\n case 'run-in':\n return 8 /* RUN_IN */;\n case 'flow':\n return 16 /* FLOW */;\n case 'flow-root':\n return 32 /* FLOW_ROOT */;\n case 'table':\n return 64 /* TABLE */;\n case 'flex':\n case '-webkit-flex':\n return 128 /* FLEX */;\n case 'grid':\n case '-ms-grid':\n return 256 /* GRID */;\n case 'ruby':\n return 512 /* RUBY */;\n case 'subgrid':\n return 1024 /* SUBGRID */;\n case 'list-item':\n return 2048 /* LIST_ITEM */;\n case 'table-row-group':\n return 4096 /* TABLE_ROW_GROUP */;\n case 'table-header-group':\n return 8192 /* TABLE_HEADER_GROUP */;\n case 'table-footer-group':\n return 16384 /* TABLE_FOOTER_GROUP */;\n case 'table-row':\n return 32768 /* TABLE_ROW */;\n case 'table-cell':\n return 65536 /* TABLE_CELL */;\n case 'table-column-group':\n return 131072 /* TABLE_COLUMN_GROUP */;\n case 'table-column':\n return 262144 /* TABLE_COLUMN */;\n case 'table-caption':\n return 524288 /* TABLE_CAPTION */;\n case 'ruby-base':\n return 1048576 /* RUBY_BASE */;\n case 'ruby-text':\n return 2097152 /* RUBY_TEXT */;\n case 'ruby-base-container':\n return 4194304 /* RUBY_BASE_CONTAINER */;\n case 'ruby-text-container':\n return 8388608 /* RUBY_TEXT_CONTAINER */;\n case 'contents':\n return 16777216 /* CONTENTS */;\n case 'inline-block':\n return 33554432 /* INLINE_BLOCK */;\n case 'inline-list-item':\n return 67108864 /* INLINE_LIST_ITEM */;\n case 'inline-table':\n return 134217728 /* INLINE_TABLE */;\n case 'inline-flex':\n return 268435456 /* INLINE_FLEX */;\n case 'inline-grid':\n return 536870912 /* INLINE_GRID */;\n }\n return 0 /* NONE */;\n };\n\n var float = {\n name: 'float',\n initialValue: 'none',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, float) {\n switch (float) {\n case 'left':\n return 1 /* LEFT */;\n case 'right':\n return 2 /* RIGHT */;\n case 'inline-start':\n return 3 /* INLINE_START */;\n case 'inline-end':\n return 4 /* INLINE_END */;\n }\n return 0 /* NONE */;\n }\n };\n\n var letterSpacing = {\n name: 'letter-spacing',\n initialValue: '0',\n prefix: false,\n type: 0 /* VALUE */,\n parse: function (_context, token) {\n if (token.type === 20 /* IDENT_TOKEN */ && token.value === 'normal') {\n return 0;\n }\n if (token.type === 17 /* NUMBER_TOKEN */) {\n return token.number;\n }\n if (token.type === 15 /* DIMENSION_TOKEN */) {\n return token.number;\n }\n return 0;\n }\n };\n\n var LINE_BREAK;\n (function (LINE_BREAK) {\n LINE_BREAK[\"NORMAL\"] = \"normal\";\n LINE_BREAK[\"STRICT\"] = \"strict\";\n })(LINE_BREAK || (LINE_BREAK = {}));\n var lineBreak = {\n name: 'line-break',\n initialValue: 'normal',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, lineBreak) {\n switch (lineBreak) {\n case 'strict':\n return LINE_BREAK.STRICT;\n case 'normal':\n default:\n return LINE_BREAK.NORMAL;\n }\n }\n };\n\n var lineHeight = {\n name: 'line-height',\n initialValue: 'normal',\n prefix: false,\n type: 4 /* TOKEN_VALUE */\n };\n var computeLineHeight = function (token, fontSize) {\n if (isIdentToken(token) && token.value === 'normal') {\n return 1.2 * fontSize;\n }\n else if (token.type === 17 /* NUMBER_TOKEN */) {\n return fontSize * token.number;\n }\n else if (isLengthPercentage(token)) {\n return getAbsoluteValue(token, fontSize);\n }\n return fontSize;\n };\n\n var listStyleImage = {\n name: 'list-style-image',\n initialValue: 'none',\n type: 0 /* VALUE */,\n prefix: false,\n parse: function (context, token) {\n if (token.type === 20 /* IDENT_TOKEN */ && token.value === 'none') {\n return null;\n }\n return image.parse(context, token);\n }\n };\n\n var listStylePosition = {\n name: 'list-style-position',\n initialValue: 'outside',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, position) {\n switch (position) {\n case 'inside':\n return 0 /* INSIDE */;\n case 'outside':\n default:\n return 1 /* OUTSIDE */;\n }\n }\n };\n\n var listStyleType = {\n name: 'list-style-type',\n initialValue: 'none',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, type) {\n switch (type) {\n case 'disc':\n return 0 /* DISC */;\n case 'circle':\n return 1 /* CIRCLE */;\n case 'square':\n return 2 /* SQUARE */;\n case 'decimal':\n return 3 /* DECIMAL */;\n case 'cjk-decimal':\n return 4 /* CJK_DECIMAL */;\n case 'decimal-leading-zero':\n return 5 /* DECIMAL_LEADING_ZERO */;\n case 'lower-roman':\n return 6 /* LOWER_ROMAN */;\n case 'upper-roman':\n return 7 /* UPPER_ROMAN */;\n case 'lower-greek':\n return 8 /* LOWER_GREEK */;\n case 'lower-alpha':\n return 9 /* LOWER_ALPHA */;\n case 'upper-alpha':\n return 10 /* UPPER_ALPHA */;\n case 'arabic-indic':\n return 11 /* ARABIC_INDIC */;\n case 'armenian':\n return 12 /* ARMENIAN */;\n case 'bengali':\n return 13 /* BENGALI */;\n case 'cambodian':\n return 14 /* CAMBODIAN */;\n case 'cjk-earthly-branch':\n return 15 /* CJK_EARTHLY_BRANCH */;\n case 'cjk-heavenly-stem':\n return 16 /* CJK_HEAVENLY_STEM */;\n case 'cjk-ideographic':\n return 17 /* CJK_IDEOGRAPHIC */;\n case 'devanagari':\n return 18 /* DEVANAGARI */;\n case 'ethiopic-numeric':\n return 19 /* ETHIOPIC_NUMERIC */;\n case 'georgian':\n return 20 /* GEORGIAN */;\n case 'gujarati':\n return 21 /* GUJARATI */;\n case 'gurmukhi':\n return 22 /* GURMUKHI */;\n case 'hebrew':\n return 22 /* HEBREW */;\n case 'hiragana':\n return 23 /* HIRAGANA */;\n case 'hiragana-iroha':\n return 24 /* HIRAGANA_IROHA */;\n case 'japanese-formal':\n return 25 /* JAPANESE_FORMAL */;\n case 'japanese-informal':\n return 26 /* JAPANESE_INFORMAL */;\n case 'kannada':\n return 27 /* KANNADA */;\n case 'katakana':\n return 28 /* KATAKANA */;\n case 'katakana-iroha':\n return 29 /* KATAKANA_IROHA */;\n case 'khmer':\n return 30 /* KHMER */;\n case 'korean-hangul-formal':\n return 31 /* KOREAN_HANGUL_FORMAL */;\n case 'korean-hanja-formal':\n return 32 /* KOREAN_HANJA_FORMAL */;\n case 'korean-hanja-informal':\n return 33 /* KOREAN_HANJA_INFORMAL */;\n case 'lao':\n return 34 /* LAO */;\n case 'lower-armenian':\n return 35 /* LOWER_ARMENIAN */;\n case 'malayalam':\n return 36 /* MALAYALAM */;\n case 'mongolian':\n return 37 /* MONGOLIAN */;\n case 'myanmar':\n return 38 /* MYANMAR */;\n case 'oriya':\n return 39 /* ORIYA */;\n case 'persian':\n return 40 /* PERSIAN */;\n case 'simp-chinese-formal':\n return 41 /* SIMP_CHINESE_FORMAL */;\n case 'simp-chinese-informal':\n return 42 /* SIMP_CHINESE_INFORMAL */;\n case 'tamil':\n return 43 /* TAMIL */;\n case 'telugu':\n return 44 /* TELUGU */;\n case 'thai':\n return 45 /* THAI */;\n case 'tibetan':\n return 46 /* TIBETAN */;\n case 'trad-chinese-formal':\n return 47 /* TRAD_CHINESE_FORMAL */;\n case 'trad-chinese-informal':\n return 48 /* TRAD_CHINESE_INFORMAL */;\n case 'upper-armenian':\n return 49 /* UPPER_ARMENIAN */;\n case 'disclosure-open':\n return 50 /* DISCLOSURE_OPEN */;\n case 'disclosure-closed':\n return 51 /* DISCLOSURE_CLOSED */;\n case 'none':\n default:\n return -1 /* NONE */;\n }\n }\n };\n\n var marginForSide = function (side) { return ({\n name: \"margin-\" + side,\n initialValue: '0',\n prefix: false,\n type: 4 /* TOKEN_VALUE */\n }); };\n var marginTop = marginForSide('top');\n var marginRight = marginForSide('right');\n var marginBottom = marginForSide('bottom');\n var marginLeft = marginForSide('left');\n\n var overflow = {\n name: 'overflow',\n initialValue: 'visible',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return tokens.filter(isIdentToken).map(function (overflow) {\n switch (overflow.value) {\n case 'hidden':\n return 1 /* HIDDEN */;\n case 'scroll':\n return 2 /* SCROLL */;\n case 'clip':\n return 3 /* CLIP */;\n case 'auto':\n return 4 /* AUTO */;\n case 'visible':\n default:\n return 0 /* VISIBLE */;\n }\n });\n }\n };\n\n var overflowWrap = {\n name: 'overflow-wrap',\n initialValue: 'normal',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, overflow) {\n switch (overflow) {\n case 'break-word':\n return \"break-word\" /* BREAK_WORD */;\n case 'normal':\n default:\n return \"normal\" /* NORMAL */;\n }\n }\n };\n\n var paddingForSide = function (side) { return ({\n name: \"padding-\" + side,\n initialValue: '0',\n prefix: false,\n type: 3 /* TYPE_VALUE */,\n format: 'length-percentage'\n }); };\n var paddingTop = paddingForSide('top');\n var paddingRight = paddingForSide('right');\n var paddingBottom = paddingForSide('bottom');\n var paddingLeft = paddingForSide('left');\n\n var textAlign = {\n name: 'text-align',\n initialValue: 'left',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, textAlign) {\n switch (textAlign) {\n case 'right':\n return 2 /* RIGHT */;\n case 'center':\n case 'justify':\n return 1 /* CENTER */;\n case 'left':\n default:\n return 0 /* LEFT */;\n }\n }\n };\n\n var position = {\n name: 'position',\n initialValue: 'static',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, position) {\n switch (position) {\n case 'relative':\n return 1 /* RELATIVE */;\n case 'absolute':\n return 2 /* ABSOLUTE */;\n case 'fixed':\n return 3 /* FIXED */;\n case 'sticky':\n return 4 /* STICKY */;\n }\n return 0 /* STATIC */;\n }\n };\n\n var textShadow = {\n name: 'text-shadow',\n initialValue: 'none',\n type: 1 /* LIST */,\n prefix: false,\n parse: function (context, tokens) {\n if (tokens.length === 1 && isIdentWithValue(tokens[0], 'none')) {\n return [];\n }\n return parseFunctionArgs(tokens).map(function (values) {\n var shadow = {\n color: COLORS.TRANSPARENT,\n offsetX: ZERO_LENGTH,\n offsetY: ZERO_LENGTH,\n blur: ZERO_LENGTH\n };\n var c = 0;\n for (var i = 0; i < values.length; i++) {\n var token = values[i];\n if (isLength(token)) {\n if (c === 0) {\n shadow.offsetX = token;\n }\n else if (c === 1) {\n shadow.offsetY = token;\n }\n else {\n shadow.blur = token;\n }\n c++;\n }\n else {\n shadow.color = color$1.parse(context, token);\n }\n }\n return shadow;\n });\n }\n };\n\n var textTransform = {\n name: 'text-transform',\n initialValue: 'none',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, textTransform) {\n switch (textTransform) {\n case 'uppercase':\n return 2 /* UPPERCASE */;\n case 'lowercase':\n return 1 /* LOWERCASE */;\n case 'capitalize':\n return 3 /* CAPITALIZE */;\n }\n return 0 /* NONE */;\n }\n };\n\n var transform$1 = {\n name: 'transform',\n initialValue: 'none',\n prefix: true,\n type: 0 /* VALUE */,\n parse: function (_context, token) {\n if (token.type === 20 /* IDENT_TOKEN */ && token.value === 'none') {\n return null;\n }\n if (token.type === 18 /* FUNCTION */) {\n var transformFunction = SUPPORTED_TRANSFORM_FUNCTIONS[token.name];\n if (typeof transformFunction === 'undefined') {\n throw new Error(\"Attempting to parse an unsupported transform function \\\"\" + token.name + \"\\\"\");\n }\n return transformFunction(token.values);\n }\n return null;\n }\n };\n var matrix = function (args) {\n var values = args.filter(function (arg) { return arg.type === 17 /* NUMBER_TOKEN */; }).map(function (arg) { return arg.number; });\n return values.length === 6 ? values : null;\n };\n // doesn't support 3D transforms at the moment\n var matrix3d = function (args) {\n var values = args.filter(function (arg) { return arg.type === 17 /* NUMBER_TOKEN */; }).map(function (arg) { return arg.number; });\n var a1 = values[0], b1 = values[1]; values[2]; values[3]; var a2 = values[4], b2 = values[5]; values[6]; values[7]; values[8]; values[9]; values[10]; values[11]; var a4 = values[12], b4 = values[13]; values[14]; values[15];\n return values.length === 16 ? [a1, b1, a2, b2, a4, b4] : null;\n };\n var SUPPORTED_TRANSFORM_FUNCTIONS = {\n matrix: matrix,\n matrix3d: matrix3d\n };\n\n var DEFAULT_VALUE = {\n type: 16 /* PERCENTAGE_TOKEN */,\n number: 50,\n flags: FLAG_INTEGER\n };\n var DEFAULT = [DEFAULT_VALUE, DEFAULT_VALUE];\n var transformOrigin = {\n name: 'transform-origin',\n initialValue: '50% 50%',\n prefix: true,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n var origins = tokens.filter(isLengthPercentage);\n if (origins.length !== 2) {\n return DEFAULT;\n }\n return [origins[0], origins[1]];\n }\n };\n\n var visibility = {\n name: 'visible',\n initialValue: 'none',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, visibility) {\n switch (visibility) {\n case 'hidden':\n return 1 /* HIDDEN */;\n case 'collapse':\n return 2 /* COLLAPSE */;\n case 'visible':\n default:\n return 0 /* VISIBLE */;\n }\n }\n };\n\n var WORD_BREAK;\n (function (WORD_BREAK) {\n WORD_BREAK[\"NORMAL\"] = \"normal\";\n WORD_BREAK[\"BREAK_ALL\"] = \"break-all\";\n WORD_BREAK[\"KEEP_ALL\"] = \"keep-all\";\n })(WORD_BREAK || (WORD_BREAK = {}));\n var wordBreak = {\n name: 'word-break',\n initialValue: 'normal',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, wordBreak) {\n switch (wordBreak) {\n case 'break-all':\n return WORD_BREAK.BREAK_ALL;\n case 'keep-all':\n return WORD_BREAK.KEEP_ALL;\n case 'normal':\n default:\n return WORD_BREAK.NORMAL;\n }\n }\n };\n\n var zIndex = {\n name: 'z-index',\n initialValue: 'auto',\n prefix: false,\n type: 0 /* VALUE */,\n parse: function (_context, token) {\n if (token.type === 20 /* IDENT_TOKEN */) {\n return { auto: true, order: 0 };\n }\n if (isNumberToken(token)) {\n return { auto: false, order: token.number };\n }\n throw new Error(\"Invalid z-index number parsed\");\n }\n };\n\n var time = {\n name: 'time',\n parse: function (_context, value) {\n if (value.type === 15 /* DIMENSION_TOKEN */) {\n switch (value.unit.toLowerCase()) {\n case 's':\n return 1000 * value.number;\n case 'ms':\n return value.number;\n }\n }\n throw new Error(\"Unsupported time type\");\n }\n };\n\n var opacity = {\n name: 'opacity',\n initialValue: '1',\n type: 0 /* VALUE */,\n prefix: false,\n parse: function (_context, token) {\n if (isNumberToken(token)) {\n return token.number;\n }\n return 1;\n }\n };\n\n var textDecorationColor = {\n name: \"text-decoration-color\",\n initialValue: 'transparent',\n prefix: false,\n type: 3 /* TYPE_VALUE */,\n format: 'color'\n };\n\n var textDecorationLine = {\n name: 'text-decoration-line',\n initialValue: 'none',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n return tokens\n .filter(isIdentToken)\n .map(function (token) {\n switch (token.value) {\n case 'underline':\n return 1 /* UNDERLINE */;\n case 'overline':\n return 2 /* OVERLINE */;\n case 'line-through':\n return 3 /* LINE_THROUGH */;\n case 'none':\n return 4 /* BLINK */;\n }\n return 0 /* NONE */;\n })\n .filter(function (line) { return line !== 0 /* NONE */; });\n }\n };\n\n var fontFamily = {\n name: \"font-family\",\n initialValue: '',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n var accumulator = [];\n var results = [];\n tokens.forEach(function (token) {\n switch (token.type) {\n case 20 /* IDENT_TOKEN */:\n case 0 /* STRING_TOKEN */:\n accumulator.push(token.value);\n break;\n case 17 /* NUMBER_TOKEN */:\n accumulator.push(token.number.toString());\n break;\n case 4 /* COMMA_TOKEN */:\n results.push(accumulator.join(' '));\n accumulator.length = 0;\n break;\n }\n });\n if (accumulator.length) {\n results.push(accumulator.join(' '));\n }\n return results.map(function (result) { return (result.indexOf(' ') === -1 ? result : \"'\" + result + \"'\"); });\n }\n };\n\n var fontSize = {\n name: \"font-size\",\n initialValue: '0',\n prefix: false,\n type: 3 /* TYPE_VALUE */,\n format: 'length'\n };\n\n var fontWeight = {\n name: 'font-weight',\n initialValue: 'normal',\n type: 0 /* VALUE */,\n prefix: false,\n parse: function (_context, token) {\n if (isNumberToken(token)) {\n return token.number;\n }\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'bold':\n return 700;\n case 'normal':\n default:\n return 400;\n }\n }\n return 400;\n }\n };\n\n var fontVariant = {\n name: 'font-variant',\n initialValue: 'none',\n type: 1 /* LIST */,\n prefix: false,\n parse: function (_context, tokens) {\n return tokens.filter(isIdentToken).map(function (token) { return token.value; });\n }\n };\n\n var fontStyle = {\n name: 'font-style',\n initialValue: 'normal',\n prefix: false,\n type: 2 /* IDENT_VALUE */,\n parse: function (_context, overflow) {\n switch (overflow) {\n case 'oblique':\n return \"oblique\" /* OBLIQUE */;\n case 'italic':\n return \"italic\" /* ITALIC */;\n case 'normal':\n default:\n return \"normal\" /* NORMAL */;\n }\n }\n };\n\n var contains = function (bit, value) { return (bit & value) !== 0; };\n\n var content = {\n name: 'content',\n initialValue: 'none',\n type: 1 /* LIST */,\n prefix: false,\n parse: function (_context, tokens) {\n if (tokens.length === 0) {\n return [];\n }\n var first = tokens[0];\n if (first.type === 20 /* IDENT_TOKEN */ && first.value === 'none') {\n return [];\n }\n return tokens;\n }\n };\n\n var counterIncrement = {\n name: 'counter-increment',\n initialValue: 'none',\n prefix: true,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n if (tokens.length === 0) {\n return null;\n }\n var first = tokens[0];\n if (first.type === 20 /* IDENT_TOKEN */ && first.value === 'none') {\n return null;\n }\n var increments = [];\n var filtered = tokens.filter(nonWhiteSpace);\n for (var i = 0; i < filtered.length; i++) {\n var counter = filtered[i];\n var next = filtered[i + 1];\n if (counter.type === 20 /* IDENT_TOKEN */) {\n var increment = next && isNumberToken(next) ? next.number : 1;\n increments.push({ counter: counter.value, increment: increment });\n }\n }\n return increments;\n }\n };\n\n var counterReset = {\n name: 'counter-reset',\n initialValue: 'none',\n prefix: true,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n if (tokens.length === 0) {\n return [];\n }\n var resets = [];\n var filtered = tokens.filter(nonWhiteSpace);\n for (var i = 0; i < filtered.length; i++) {\n var counter = filtered[i];\n var next = filtered[i + 1];\n if (isIdentToken(counter) && counter.value !== 'none') {\n var reset = next && isNumberToken(next) ? next.number : 0;\n resets.push({ counter: counter.value, reset: reset });\n }\n }\n return resets;\n }\n };\n\n var duration = {\n name: 'duration',\n initialValue: '0s',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (context, tokens) {\n return tokens.filter(isDimensionToken).map(function (token) { return time.parse(context, token); });\n }\n };\n\n var quotes = {\n name: 'quotes',\n initialValue: 'none',\n prefix: true,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n if (tokens.length === 0) {\n return null;\n }\n var first = tokens[0];\n if (first.type === 20 /* IDENT_TOKEN */ && first.value === 'none') {\n return null;\n }\n var quotes = [];\n var filtered = tokens.filter(isStringToken);\n if (filtered.length % 2 !== 0) {\n return null;\n }\n for (var i = 0; i < filtered.length; i += 2) {\n var open_1 = filtered[i].value;\n var close_1 = filtered[i + 1].value;\n quotes.push({ open: open_1, close: close_1 });\n }\n return quotes;\n }\n };\n var getQuote = function (quotes, depth, open) {\n if (!quotes) {\n return '';\n }\n var quote = quotes[Math.min(depth, quotes.length - 1)];\n if (!quote) {\n return '';\n }\n return open ? quote.open : quote.close;\n };\n\n var boxShadow = {\n name: 'box-shadow',\n initialValue: 'none',\n type: 1 /* LIST */,\n prefix: false,\n parse: function (context, tokens) {\n if (tokens.length === 1 && isIdentWithValue(tokens[0], 'none')) {\n return [];\n }\n return parseFunctionArgs(tokens).map(function (values) {\n var shadow = {\n color: 0x000000ff,\n offsetX: ZERO_LENGTH,\n offsetY: ZERO_LENGTH,\n blur: ZERO_LENGTH,\n spread: ZERO_LENGTH,\n inset: false\n };\n var c = 0;\n for (var i = 0; i < values.length; i++) {\n var token = values[i];\n if (isIdentWithValue(token, 'inset')) {\n shadow.inset = true;\n }\n else if (isLength(token)) {\n if (c === 0) {\n shadow.offsetX = token;\n }\n else if (c === 1) {\n shadow.offsetY = token;\n }\n else if (c === 2) {\n shadow.blur = token;\n }\n else {\n shadow.spread = token;\n }\n c++;\n }\n else {\n shadow.color = color$1.parse(context, token);\n }\n }\n return shadow;\n });\n }\n };\n\n var paintOrder = {\n name: 'paint-order',\n initialValue: 'normal',\n prefix: false,\n type: 1 /* LIST */,\n parse: function (_context, tokens) {\n var DEFAULT_VALUE = [0 /* FILL */, 1 /* STROKE */, 2 /* MARKERS */];\n var layers = [];\n tokens.filter(isIdentToken).forEach(function (token) {\n switch (token.value) {\n case 'stroke':\n layers.push(1 /* STROKE */);\n break;\n case 'fill':\n layers.push(0 /* FILL */);\n break;\n case 'markers':\n layers.push(2 /* MARKERS */);\n break;\n }\n });\n DEFAULT_VALUE.forEach(function (value) {\n if (layers.indexOf(value) === -1) {\n layers.push(value);\n }\n });\n return layers;\n }\n };\n\n var webkitTextStrokeColor = {\n name: \"-webkit-text-stroke-color\",\n initialValue: 'currentcolor',\n prefix: false,\n type: 3 /* TYPE_VALUE */,\n format: 'color'\n };\n\n var webkitTextStrokeWidth = {\n name: \"-webkit-text-stroke-width\",\n initialValue: '0',\n type: 0 /* VALUE */,\n prefix: false,\n parse: function (_context, token) {\n if (isDimensionToken(token)) {\n return token.number;\n }\n return 0;\n }\n };\n\n var CSSParsedDeclaration = /** @class */ (function () {\n function CSSParsedDeclaration(context, declaration) {\n var _a, _b;\n this.animationDuration = parse(context, duration, declaration.animationDuration);\n this.backgroundClip = parse(context, backgroundClip, declaration.backgroundClip);\n this.backgroundColor = parse(context, backgroundColor, declaration.backgroundColor);\n this.backgroundImage = parse(context, backgroundImage, declaration.backgroundImage);\n this.backgroundOrigin = parse(context, backgroundOrigin, declaration.backgroundOrigin);\n this.backgroundPosition = parse(context, backgroundPosition, declaration.backgroundPosition);\n this.backgroundRepeat = parse(context, backgroundRepeat, declaration.backgroundRepeat);\n this.backgroundSize = parse(context, backgroundSize, declaration.backgroundSize);\n this.borderTopColor = parse(context, borderTopColor, declaration.borderTopColor);\n this.borderRightColor = parse(context, borderRightColor, declaration.borderRightColor);\n this.borderBottomColor = parse(context, borderBottomColor, declaration.borderBottomColor);\n this.borderLeftColor = parse(context, borderLeftColor, declaration.borderLeftColor);\n this.borderTopLeftRadius = parse(context, borderTopLeftRadius, declaration.borderTopLeftRadius);\n this.borderTopRightRadius = parse(context, borderTopRightRadius, declaration.borderTopRightRadius);\n this.borderBottomRightRadius = parse(context, borderBottomRightRadius, declaration.borderBottomRightRadius);\n this.borderBottomLeftRadius = parse(context, borderBottomLeftRadius, declaration.borderBottomLeftRadius);\n this.borderTopStyle = parse(context, borderTopStyle, declaration.borderTopStyle);\n this.borderRightStyle = parse(context, borderRightStyle, declaration.borderRightStyle);\n this.borderBottomStyle = parse(context, borderBottomStyle, declaration.borderBottomStyle);\n this.borderLeftStyle = parse(context, borderLeftStyle, declaration.borderLeftStyle);\n this.borderTopWidth = parse(context, borderTopWidth, declaration.borderTopWidth);\n this.borderRightWidth = parse(context, borderRightWidth, declaration.borderRightWidth);\n this.borderBottomWidth = parse(context, borderBottomWidth, declaration.borderBottomWidth);\n this.borderLeftWidth = parse(context, borderLeftWidth, declaration.borderLeftWidth);\n this.boxShadow = parse(context, boxShadow, declaration.boxShadow);\n this.color = parse(context, color, declaration.color);\n this.direction = parse(context, direction, declaration.direction);\n this.display = parse(context, display, declaration.display);\n this.float = parse(context, float, declaration.cssFloat);\n this.fontFamily = parse(context, fontFamily, declaration.fontFamily);\n this.fontSize = parse(context, fontSize, declaration.fontSize);\n this.fontStyle = parse(context, fontStyle, declaration.fontStyle);\n this.fontVariant = parse(context, fontVariant, declaration.fontVariant);\n this.fontWeight = parse(context, fontWeight, declaration.fontWeight);\n this.letterSpacing = parse(context, letterSpacing, declaration.letterSpacing);\n this.lineBreak = parse(context, lineBreak, declaration.lineBreak);\n this.lineHeight = parse(context, lineHeight, declaration.lineHeight);\n this.listStyleImage = parse(context, listStyleImage, declaration.listStyleImage);\n this.listStylePosition = parse(context, listStylePosition, declaration.listStylePosition);\n this.listStyleType = parse(context, listStyleType, declaration.listStyleType);\n this.marginTop = parse(context, marginTop, declaration.marginTop);\n this.marginRight = parse(context, marginRight, declaration.marginRight);\n this.marginBottom = parse(context, marginBottom, declaration.marginBottom);\n this.marginLeft = parse(context, marginLeft, declaration.marginLeft);\n this.opacity = parse(context, opacity, declaration.opacity);\n var overflowTuple = parse(context, overflow, declaration.overflow);\n this.overflowX = overflowTuple[0];\n this.overflowY = overflowTuple[overflowTuple.length > 1 ? 1 : 0];\n this.overflowWrap = parse(context, overflowWrap, declaration.overflowWrap);\n this.paddingTop = parse(context, paddingTop, declaration.paddingTop);\n this.paddingRight = parse(context, paddingRight, declaration.paddingRight);\n this.paddingBottom = parse(context, paddingBottom, declaration.paddingBottom);\n this.paddingLeft = parse(context, paddingLeft, declaration.paddingLeft);\n this.paintOrder = parse(context, paintOrder, declaration.paintOrder);\n this.position = parse(context, position, declaration.position);\n this.textAlign = parse(context, textAlign, declaration.textAlign);\n this.textDecorationColor = parse(context, textDecorationColor, (_a = declaration.textDecorationColor) !== null && _a !== void 0 ? _a : declaration.color);\n this.textDecorationLine = parse(context, textDecorationLine, (_b = declaration.textDecorationLine) !== null && _b !== void 0 ? _b : declaration.textDecoration);\n this.textShadow = parse(context, textShadow, declaration.textShadow);\n this.textTransform = parse(context, textTransform, declaration.textTransform);\n this.transform = parse(context, transform$1, declaration.transform);\n this.transformOrigin = parse(context, transformOrigin, declaration.transformOrigin);\n this.visibility = parse(context, visibility, declaration.visibility);\n this.webkitTextStrokeColor = parse(context, webkitTextStrokeColor, declaration.webkitTextStrokeColor);\n this.webkitTextStrokeWidth = parse(context, webkitTextStrokeWidth, declaration.webkitTextStrokeWidth);\n this.wordBreak = parse(context, wordBreak, declaration.wordBreak);\n this.zIndex = parse(context, zIndex, declaration.zIndex);\n }\n CSSParsedDeclaration.prototype.isVisible = function () {\n return this.display > 0 && this.opacity > 0 && this.visibility === 0 /* VISIBLE */;\n };\n CSSParsedDeclaration.prototype.isTransparent = function () {\n return isTransparent(this.backgroundColor);\n };\n CSSParsedDeclaration.prototype.isTransformed = function () {\n return this.transform !== null;\n };\n CSSParsedDeclaration.prototype.isPositioned = function () {\n return this.position !== 0 /* STATIC */;\n };\n CSSParsedDeclaration.prototype.isPositionedWithZIndex = function () {\n return this.isPositioned() && !this.zIndex.auto;\n };\n CSSParsedDeclaration.prototype.isFloating = function () {\n return this.float !== 0 /* NONE */;\n };\n CSSParsedDeclaration.prototype.isInlineLevel = function () {\n return (contains(this.display, 4 /* INLINE */) ||\n contains(this.display, 33554432 /* INLINE_BLOCK */) ||\n contains(this.display, 268435456 /* INLINE_FLEX */) ||\n contains(this.display, 536870912 /* INLINE_GRID */) ||\n contains(this.display, 67108864 /* INLINE_LIST_ITEM */) ||\n contains(this.display, 134217728 /* INLINE_TABLE */));\n };\n return CSSParsedDeclaration;\n }());\n var CSSParsedPseudoDeclaration = /** @class */ (function () {\n function CSSParsedPseudoDeclaration(context, declaration) {\n this.content = parse(context, content, declaration.content);\n this.quotes = parse(context, quotes, declaration.quotes);\n }\n return CSSParsedPseudoDeclaration;\n }());\n var CSSParsedCounterDeclaration = /** @class */ (function () {\n function CSSParsedCounterDeclaration(context, declaration) {\n this.counterIncrement = parse(context, counterIncrement, declaration.counterIncrement);\n this.counterReset = parse(context, counterReset, declaration.counterReset);\n }\n return CSSParsedCounterDeclaration;\n }());\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var parse = function (context, descriptor, style) {\n var tokenizer = new Tokenizer();\n var value = style !== null && typeof style !== 'undefined' ? style.toString() : descriptor.initialValue;\n tokenizer.write(value);\n var parser = new Parser(tokenizer.read());\n switch (descriptor.type) {\n case 2 /* IDENT_VALUE */:\n var token = parser.parseComponentValue();\n return descriptor.parse(context, isIdentToken(token) ? token.value : descriptor.initialValue);\n case 0 /* VALUE */:\n return descriptor.parse(context, parser.parseComponentValue());\n case 1 /* LIST */:\n return descriptor.parse(context, parser.parseComponentValues());\n case 4 /* TOKEN_VALUE */:\n return parser.parseComponentValue();\n case 3 /* TYPE_VALUE */:\n switch (descriptor.format) {\n case 'angle':\n return angle.parse(context, parser.parseComponentValue());\n case 'color':\n return color$1.parse(context, parser.parseComponentValue());\n case 'image':\n return image.parse(context, parser.parseComponentValue());\n case 'length':\n var length_1 = parser.parseComponentValue();\n return isLength(length_1) ? length_1 : ZERO_LENGTH;\n case 'length-percentage':\n var value_1 = parser.parseComponentValue();\n return isLengthPercentage(value_1) ? value_1 : ZERO_LENGTH;\n case 'time':\n return time.parse(context, parser.parseComponentValue());\n }\n break;\n }\n };\n\n var elementDebuggerAttribute = 'data-html2canvas-debug';\n var getElementDebugType = function (element) {\n var attribute = element.getAttribute(elementDebuggerAttribute);\n switch (attribute) {\n case 'all':\n return 1 /* ALL */;\n case 'clone':\n return 2 /* CLONE */;\n case 'parse':\n return 3 /* PARSE */;\n case 'render':\n return 4 /* RENDER */;\n default:\n return 0 /* NONE */;\n }\n };\n var isDebugging = function (element, type) {\n var elementType = getElementDebugType(element);\n return elementType === 1 /* ALL */ || type === elementType;\n };\n\n var ElementContainer = /** @class */ (function () {\n function ElementContainer(context, element) {\n this.context = context;\n this.textNodes = [];\n this.elements = [];\n this.flags = 0;\n if (isDebugging(element, 3 /* PARSE */)) {\n debugger;\n }\n this.styles = new CSSParsedDeclaration(context, window.getComputedStyle(element, null));\n if (isHTMLElementNode(element)) {\n if (this.styles.animationDuration.some(function (duration) { return duration > 0; })) {\n element.style.animationDuration = '0s';\n }\n if (this.styles.transform !== null) {\n // getBoundingClientRect takes transforms into account\n element.style.transform = 'none';\n }\n }\n this.bounds = parseBounds(this.context, element);\n if (isDebugging(element, 4 /* RENDER */)) {\n this.flags |= 16 /* DEBUG_RENDER */;\n }\n }\n return ElementContainer;\n }());\n\n /*\n * text-segmentation 1.0.3 \n * Copyright (c) 2022 Niklas von Hertzen \n * Released under MIT License\n */\n var base64 = 'AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=';\n\n /*\n * utrie 1.0.2 \n * Copyright (c) 2022 Niklas von Hertzen \n * Released under MIT License\n */\n var chars$1 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n // Use a lookup table to find the index.\n var lookup$1 = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\n for (var i$1 = 0; i$1 < chars$1.length; i$1++) {\n lookup$1[chars$1.charCodeAt(i$1)] = i$1;\n }\n var decode = function (base64) {\n var bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n var buffer = typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n var bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup$1[base64.charCodeAt(i)];\n encoded2 = lookup$1[base64.charCodeAt(i + 1)];\n encoded3 = lookup$1[base64.charCodeAt(i + 2)];\n encoded4 = lookup$1[base64.charCodeAt(i + 3)];\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n return buffer;\n };\n var polyUint16Array = function (buffer) {\n var length = buffer.length;\n var bytes = [];\n for (var i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n };\n var polyUint32Array = function (buffer) {\n var length = buffer.length;\n var bytes = [];\n for (var i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n };\n\n /** Shift size for getting the index-2 table offset. */\n var UTRIE2_SHIFT_2 = 5;\n /** Shift size for getting the index-1 table offset. */\n var UTRIE2_SHIFT_1 = 6 + 5;\n /**\n * Shift size for shifting left the index array values.\n * Increases possible data size with 16-bit index values at the cost\n * of compactability.\n * This requires data blocks to be aligned by UTRIE2_DATA_GRANULARITY.\n */\n var UTRIE2_INDEX_SHIFT = 2;\n /**\n * Difference between the two shift sizes,\n * for getting an index-1 offset from an index-2 offset. 6=11-5\n */\n var UTRIE2_SHIFT_1_2 = UTRIE2_SHIFT_1 - UTRIE2_SHIFT_2;\n /**\n * The part of the index-2 table for U+D800..U+DBFF stores values for\n * lead surrogate code _units_ not code _points_.\n * Values for lead surrogate code _points_ are indexed with this portion of the table.\n * Length=32=0x20=0x400>>UTRIE2_SHIFT_2. (There are 1024=0x400 lead surrogates.)\n */\n var UTRIE2_LSCP_INDEX_2_OFFSET = 0x10000 >> UTRIE2_SHIFT_2;\n /** Number of entries in a data block. 32=0x20 */\n var UTRIE2_DATA_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_2;\n /** Mask for getting the lower bits for the in-data-block offset. */\n var UTRIE2_DATA_MASK = UTRIE2_DATA_BLOCK_LENGTH - 1;\n var UTRIE2_LSCP_INDEX_2_LENGTH = 0x400 >> UTRIE2_SHIFT_2;\n /** Count the lengths of both BMP pieces. 2080=0x820 */\n var UTRIE2_INDEX_2_BMP_LENGTH = UTRIE2_LSCP_INDEX_2_OFFSET + UTRIE2_LSCP_INDEX_2_LENGTH;\n /**\n * The 2-byte UTF-8 version of the index-2 table follows at offset 2080=0x820.\n * Length 32=0x20 for lead bytes C0..DF, regardless of UTRIE2_SHIFT_2.\n */\n var UTRIE2_UTF8_2B_INDEX_2_OFFSET = UTRIE2_INDEX_2_BMP_LENGTH;\n var UTRIE2_UTF8_2B_INDEX_2_LENGTH = 0x800 >> 6; /* U+0800 is the first code point after 2-byte UTF-8 */\n /**\n * The index-1 table, only used for supplementary code points, at offset 2112=0x840.\n * Variable length, for code points up to highStart, where the last single-value range starts.\n * Maximum length 512=0x200=0x100000>>UTRIE2_SHIFT_1.\n * (For 0x100000 supplementary code points U+10000..U+10ffff.)\n *\n * The part of the index-2 table for supplementary code points starts\n * after this index-1 table.\n *\n * Both the index-1 table and the following part of the index-2 table\n * are omitted completely if there is only BMP data.\n */\n var UTRIE2_INDEX_1_OFFSET = UTRIE2_UTF8_2B_INDEX_2_OFFSET + UTRIE2_UTF8_2B_INDEX_2_LENGTH;\n /**\n * Number of index-1 entries for the BMP. 32=0x20\n * This part of the index-1 table is omitted from the serialized form.\n */\n var UTRIE2_OMITTED_BMP_INDEX_1_LENGTH = 0x10000 >> UTRIE2_SHIFT_1;\n /** Number of entries in an index-2 block. 64=0x40 */\n var UTRIE2_INDEX_2_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_1_2;\n /** Mask for getting the lower bits for the in-index-2-block offset. */\n var UTRIE2_INDEX_2_MASK = UTRIE2_INDEX_2_BLOCK_LENGTH - 1;\n var slice16 = function (view, start, end) {\n if (view.slice) {\n return view.slice(start, end);\n }\n return new Uint16Array(Array.prototype.slice.call(view, start, end));\n };\n var slice32 = function (view, start, end) {\n if (view.slice) {\n return view.slice(start, end);\n }\n return new Uint32Array(Array.prototype.slice.call(view, start, end));\n };\n var createTrieFromBase64 = function (base64, _byteLength) {\n var buffer = decode(base64);\n var view32 = Array.isArray(buffer) ? polyUint32Array(buffer) : new Uint32Array(buffer);\n var view16 = Array.isArray(buffer) ? polyUint16Array(buffer) : new Uint16Array(buffer);\n var headerLength = 24;\n var index = slice16(view16, headerLength / 2, view32[4] / 2);\n var data = view32[5] === 2\n ? slice16(view16, (headerLength + view32[4]) / 2)\n : slice32(view32, Math.ceil((headerLength + view32[4]) / 4));\n return new Trie(view32[0], view32[1], view32[2], view32[3], index, data);\n };\n var Trie = /** @class */ (function () {\n function Trie(initialValue, errorValue, highStart, highValueIndex, index, data) {\n this.initialValue = initialValue;\n this.errorValue = errorValue;\n this.highStart = highStart;\n this.highValueIndex = highValueIndex;\n this.index = index;\n this.data = data;\n }\n /**\n * Get the value for a code point as stored in the Trie.\n *\n * @param codePoint the code point\n * @return the value\n */\n Trie.prototype.get = function (codePoint) {\n var ix;\n if (codePoint >= 0) {\n if (codePoint < 0x0d800 || (codePoint > 0x0dbff && codePoint <= 0x0ffff)) {\n // Ordinary BMP code point, excluding leading surrogates.\n // BMP uses a single level lookup. BMP index starts at offset 0 in the Trie2 index.\n // 16 bit data is stored in the index array itself.\n ix = this.index[codePoint >> UTRIE2_SHIFT_2];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n if (codePoint <= 0xffff) {\n // Lead Surrogate Code Point. A Separate index section is stored for\n // lead surrogate code units and code points.\n // The main index has the code unit data.\n // For this function, we need the code point data.\n // Note: this expression could be refactored for slightly improved efficiency, but\n // surrogate code points will be so rare in practice that it's not worth it.\n ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET + ((codePoint - 0xd800) >> UTRIE2_SHIFT_2)];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n if (codePoint < this.highStart) {\n // Supplemental code point, use two-level lookup.\n ix = UTRIE2_INDEX_1_OFFSET - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH + (codePoint >> UTRIE2_SHIFT_1);\n ix = this.index[ix];\n ix += (codePoint >> UTRIE2_SHIFT_2) & UTRIE2_INDEX_2_MASK;\n ix = this.index[ix];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n if (codePoint <= 0x10ffff) {\n return this.data[this.highValueIndex];\n }\n }\n // Fall through. The code point is outside of the legal range of 0..0x10ffff.\n return this.errorValue;\n };\n return Trie;\n }());\n\n /*\n * base64-arraybuffer 1.0.2 \n * Copyright (c) 2022 Niklas von Hertzen \n * Released under MIT License\n */\n var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n // Use a lookup table to find the index.\n var lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\n for (var i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n }\n\n var Prepend = 1;\n var CR = 2;\n var LF = 3;\n var Control = 4;\n var Extend = 5;\n var SpacingMark = 7;\n var L = 8;\n var V = 9;\n var T = 10;\n var LV = 11;\n var LVT = 12;\n var ZWJ = 13;\n var Extended_Pictographic = 14;\n var RI = 15;\n var toCodePoints = function (str) {\n var codePoints = [];\n var i = 0;\n var length = str.length;\n while (i < length) {\n var value = str.charCodeAt(i++);\n if (value >= 0xd800 && value <= 0xdbff && i < length) {\n var extra = str.charCodeAt(i++);\n if ((extra & 0xfc00) === 0xdc00) {\n codePoints.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000);\n }\n else {\n codePoints.push(value);\n i--;\n }\n }\n else {\n codePoints.push(value);\n }\n }\n return codePoints;\n };\n var fromCodePoint = function () {\n var codePoints = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n codePoints[_i] = arguments[_i];\n }\n if (String.fromCodePoint) {\n return String.fromCodePoint.apply(String, codePoints);\n }\n var length = codePoints.length;\n if (!length) {\n return '';\n }\n var codeUnits = [];\n var index = -1;\n var result = '';\n while (++index < length) {\n var codePoint = codePoints[index];\n if (codePoint <= 0xffff) {\n codeUnits.push(codePoint);\n }\n else {\n codePoint -= 0x10000;\n codeUnits.push((codePoint >> 10) + 0xd800, (codePoint % 0x400) + 0xdc00);\n }\n if (index + 1 === length || codeUnits.length > 0x4000) {\n result += String.fromCharCode.apply(String, codeUnits);\n codeUnits.length = 0;\n }\n }\n return result;\n };\n var UnicodeTrie = createTrieFromBase64(base64);\n var BREAK_NOT_ALLOWED = '×';\n var BREAK_ALLOWED = '÷';\n var codePointToClass = function (codePoint) { return UnicodeTrie.get(codePoint); };\n var _graphemeBreakAtIndex = function (_codePoints, classTypes, index) {\n var prevIndex = index - 2;\n var prev = classTypes[prevIndex];\n var current = classTypes[index - 1];\n var next = classTypes[index];\n // GB3 Do not break between a CR and LF\n if (current === CR && next === LF) {\n return BREAK_NOT_ALLOWED;\n }\n // GB4 Otherwise, break before and after controls.\n if (current === CR || current === LF || current === Control) {\n return BREAK_ALLOWED;\n }\n // GB5\n if (next === CR || next === LF || next === Control) {\n return BREAK_ALLOWED;\n }\n // Do not break Hangul syllable sequences.\n // GB6\n if (current === L && [L, V, LV, LVT].indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n // GB7\n if ((current === LV || current === V) && (next === V || next === T)) {\n return BREAK_NOT_ALLOWED;\n }\n // GB8\n if ((current === LVT || current === T) && next === T) {\n return BREAK_NOT_ALLOWED;\n }\n // GB9 Do not break before extending characters or ZWJ.\n if (next === ZWJ || next === Extend) {\n return BREAK_NOT_ALLOWED;\n }\n // Do not break before SpacingMarks, or after Prepend characters.\n // GB9a\n if (next === SpacingMark) {\n return BREAK_NOT_ALLOWED;\n }\n // GB9a\n if (current === Prepend) {\n return BREAK_NOT_ALLOWED;\n }\n // GB11 Do not break within emoji modifier sequences or emoji zwj sequences.\n if (current === ZWJ && next === Extended_Pictographic) {\n while (prev === Extend) {\n prev = classTypes[--prevIndex];\n }\n if (prev === Extended_Pictographic) {\n return BREAK_NOT_ALLOWED;\n }\n }\n // GB12 Do not break within emoji flag sequences.\n // That is, do not break between regional indicator (RI) symbols\n // if there is an odd number of RI characters before the break point.\n if (current === RI && next === RI) {\n var countRI = 0;\n while (prev === RI) {\n countRI++;\n prev = classTypes[--prevIndex];\n }\n if (countRI % 2 === 0) {\n return BREAK_NOT_ALLOWED;\n }\n }\n return BREAK_ALLOWED;\n };\n var GraphemeBreaker = function (str) {\n var codePoints = toCodePoints(str);\n var length = codePoints.length;\n var index = 0;\n var lastEnd = 0;\n var classTypes = codePoints.map(codePointToClass);\n return {\n next: function () {\n if (index >= length) {\n return { done: true, value: null };\n }\n var graphemeBreak = BREAK_NOT_ALLOWED;\n while (index < length &&\n (graphemeBreak = _graphemeBreakAtIndex(codePoints, classTypes, ++index)) === BREAK_NOT_ALLOWED) { }\n if (graphemeBreak !== BREAK_NOT_ALLOWED || index === length) {\n var value = fromCodePoint.apply(null, codePoints.slice(lastEnd, index));\n lastEnd = index;\n return { value: value, done: false };\n }\n return { done: true, value: null };\n },\n };\n };\n var splitGraphemes = function (str) {\n var breaker = GraphemeBreaker(str);\n var graphemes = [];\n var bk;\n while (!(bk = breaker.next()).done) {\n if (bk.value) {\n graphemes.push(bk.value.slice());\n }\n }\n return graphemes;\n };\n\n var testRangeBounds = function (document) {\n var TEST_HEIGHT = 123;\n if (document.createRange) {\n var range = document.createRange();\n if (range.getBoundingClientRect) {\n var testElement = document.createElement('boundtest');\n testElement.style.height = TEST_HEIGHT + \"px\";\n testElement.style.display = 'block';\n document.body.appendChild(testElement);\n range.selectNode(testElement);\n var rangeBounds = range.getBoundingClientRect();\n var rangeHeight = Math.round(rangeBounds.height);\n document.body.removeChild(testElement);\n if (rangeHeight === TEST_HEIGHT) {\n return true;\n }\n }\n }\n return false;\n };\n var testIOSLineBreak = function (document) {\n var testElement = document.createElement('boundtest');\n testElement.style.width = '50px';\n testElement.style.display = 'block';\n testElement.style.fontSize = '12px';\n testElement.style.letterSpacing = '0px';\n testElement.style.wordSpacing = '0px';\n document.body.appendChild(testElement);\n var range = document.createRange();\n testElement.innerHTML = typeof ''.repeat === 'function' ? '👨'.repeat(10) : '';\n var node = testElement.firstChild;\n var textList = toCodePoints$1(node.data).map(function (i) { return fromCodePoint$1(i); });\n var offset = 0;\n var prev = {};\n // ios 13 does not handle range getBoundingClientRect line changes correctly #2177\n var supports = textList.every(function (text, i) {\n range.setStart(node, offset);\n range.setEnd(node, offset + text.length);\n var rect = range.getBoundingClientRect();\n offset += text.length;\n var boundAhead = rect.x > prev.x || rect.y > prev.y;\n prev = rect;\n if (i === 0) {\n return true;\n }\n return boundAhead;\n });\n document.body.removeChild(testElement);\n return supports;\n };\n var testCORS = function () { return typeof new Image().crossOrigin !== 'undefined'; };\n var testResponseType = function () { return typeof new XMLHttpRequest().responseType === 'string'; };\n var testSVG = function (document) {\n var img = new Image();\n var canvas = document.createElement('canvas');\n var ctx = canvas.getContext('2d');\n if (!ctx) {\n return false;\n }\n img.src = \"data:image/svg+xml,\";\n try {\n ctx.drawImage(img, 0, 0);\n canvas.toDataURL();\n }\n catch (e) {\n return false;\n }\n return true;\n };\n var isGreenPixel = function (data) {\n return data[0] === 0 && data[1] === 255 && data[2] === 0 && data[3] === 255;\n };\n var testForeignObject = function (document) {\n var canvas = document.createElement('canvas');\n var size = 100;\n canvas.width = size;\n canvas.height = size;\n var ctx = canvas.getContext('2d');\n if (!ctx) {\n return Promise.reject(false);\n }\n ctx.fillStyle = 'rgb(0, 255, 0)';\n ctx.fillRect(0, 0, size, size);\n var img = new Image();\n var greenImageSrc = canvas.toDataURL();\n img.src = greenImageSrc;\n var svg = createForeignObjectSVG(size, size, 0, 0, img);\n ctx.fillStyle = 'red';\n ctx.fillRect(0, 0, size, size);\n return loadSerializedSVG$1(svg)\n .then(function (img) {\n ctx.drawImage(img, 0, 0);\n var data = ctx.getImageData(0, 0, size, size).data;\n ctx.fillStyle = 'red';\n ctx.fillRect(0, 0, size, size);\n var node = document.createElement('div');\n node.style.backgroundImage = \"url(\" + greenImageSrc + \")\";\n node.style.height = size + \"px\";\n // Firefox 55 does not render inline tags\n return isGreenPixel(data)\n ? loadSerializedSVG$1(createForeignObjectSVG(size, size, 0, 0, node))\n : Promise.reject(false);\n })\n .then(function (img) {\n ctx.drawImage(img, 0, 0);\n // Edge does not render background-images\n return isGreenPixel(ctx.getImageData(0, 0, size, size).data);\n })\n .catch(function () { return false; });\n };\n var createForeignObjectSVG = function (width, height, x, y, node) {\n var xmlns = 'http://www.w3.org/2000/svg';\n var svg = document.createElementNS(xmlns, 'svg');\n var foreignObject = document.createElementNS(xmlns, 'foreignObject');\n svg.setAttributeNS(null, 'width', width.toString());\n svg.setAttributeNS(null, 'height', height.toString());\n foreignObject.setAttributeNS(null, 'width', '100%');\n foreignObject.setAttributeNS(null, 'height', '100%');\n foreignObject.setAttributeNS(null, 'x', x.toString());\n foreignObject.setAttributeNS(null, 'y', y.toString());\n foreignObject.setAttributeNS(null, 'externalResourcesRequired', 'true');\n svg.appendChild(foreignObject);\n foreignObject.appendChild(node);\n return svg;\n };\n var loadSerializedSVG$1 = function (svg) {\n return new Promise(function (resolve, reject) {\n var img = new Image();\n img.onload = function () { return resolve(img); };\n img.onerror = reject;\n img.src = \"data:image/svg+xml;charset=utf-8,\" + encodeURIComponent(new XMLSerializer().serializeToString(svg));\n });\n };\n var FEATURES = {\n get SUPPORT_RANGE_BOUNDS() {\n var value = testRangeBounds(document);\n Object.defineProperty(FEATURES, 'SUPPORT_RANGE_BOUNDS', { value: value });\n return value;\n },\n get SUPPORT_WORD_BREAKING() {\n var value = FEATURES.SUPPORT_RANGE_BOUNDS && testIOSLineBreak(document);\n Object.defineProperty(FEATURES, 'SUPPORT_WORD_BREAKING', { value: value });\n return value;\n },\n get SUPPORT_SVG_DRAWING() {\n var value = testSVG(document);\n Object.defineProperty(FEATURES, 'SUPPORT_SVG_DRAWING', { value: value });\n return value;\n },\n get SUPPORT_FOREIGNOBJECT_DRAWING() {\n var value = typeof Array.from === 'function' && typeof window.fetch === 'function'\n ? testForeignObject(document)\n : Promise.resolve(false);\n Object.defineProperty(FEATURES, 'SUPPORT_FOREIGNOBJECT_DRAWING', { value: value });\n return value;\n },\n get SUPPORT_CORS_IMAGES() {\n var value = testCORS();\n Object.defineProperty(FEATURES, 'SUPPORT_CORS_IMAGES', { value: value });\n return value;\n },\n get SUPPORT_RESPONSE_TYPE() {\n var value = testResponseType();\n Object.defineProperty(FEATURES, 'SUPPORT_RESPONSE_TYPE', { value: value });\n return value;\n },\n get SUPPORT_CORS_XHR() {\n var value = 'withCredentials' in new XMLHttpRequest();\n Object.defineProperty(FEATURES, 'SUPPORT_CORS_XHR', { value: value });\n return value;\n },\n get SUPPORT_NATIVE_TEXT_SEGMENTATION() {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var value = !!(typeof Intl !== 'undefined' && Intl.Segmenter);\n Object.defineProperty(FEATURES, 'SUPPORT_NATIVE_TEXT_SEGMENTATION', { value: value });\n return value;\n }\n };\n\n var TextBounds = /** @class */ (function () {\n function TextBounds(text, bounds) {\n this.text = text;\n this.bounds = bounds;\n }\n return TextBounds;\n }());\n var parseTextBounds = function (context, value, styles, node) {\n var textList = breakText(value, styles);\n var textBounds = [];\n var offset = 0;\n textList.forEach(function (text) {\n if (styles.textDecorationLine.length || text.trim().length > 0) {\n if (FEATURES.SUPPORT_RANGE_BOUNDS) {\n var clientRects = createRange(node, offset, text.length).getClientRects();\n if (clientRects.length > 1) {\n var subSegments = segmentGraphemes(text);\n var subOffset_1 = 0;\n subSegments.forEach(function (subSegment) {\n textBounds.push(new TextBounds(subSegment, Bounds.fromDOMRectList(context, createRange(node, subOffset_1 + offset, subSegment.length).getClientRects())));\n subOffset_1 += subSegment.length;\n });\n }\n else {\n textBounds.push(new TextBounds(text, Bounds.fromDOMRectList(context, clientRects)));\n }\n }\n else {\n var replacementNode = node.splitText(text.length);\n textBounds.push(new TextBounds(text, getWrapperBounds(context, node)));\n node = replacementNode;\n }\n }\n else if (!FEATURES.SUPPORT_RANGE_BOUNDS) {\n node = node.splitText(text.length);\n }\n offset += text.length;\n });\n return textBounds;\n };\n var getWrapperBounds = function (context, node) {\n var ownerDocument = node.ownerDocument;\n if (ownerDocument) {\n var wrapper = ownerDocument.createElement('html2canvaswrapper');\n wrapper.appendChild(node.cloneNode(true));\n var parentNode = node.parentNode;\n if (parentNode) {\n parentNode.replaceChild(wrapper, node);\n var bounds = parseBounds(context, wrapper);\n if (wrapper.firstChild) {\n parentNode.replaceChild(wrapper.firstChild, wrapper);\n }\n return bounds;\n }\n }\n return Bounds.EMPTY;\n };\n var createRange = function (node, offset, length) {\n var ownerDocument = node.ownerDocument;\n if (!ownerDocument) {\n throw new Error('Node has no owner document');\n }\n var range = ownerDocument.createRange();\n range.setStart(node, offset);\n range.setEnd(node, offset + length);\n return range;\n };\n var segmentGraphemes = function (value) {\n if (FEATURES.SUPPORT_NATIVE_TEXT_SEGMENTATION) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var segmenter = new Intl.Segmenter(void 0, { granularity: 'grapheme' });\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return Array.from(segmenter.segment(value)).map(function (segment) { return segment.segment; });\n }\n return splitGraphemes(value);\n };\n var segmentWords = function (value, styles) {\n if (FEATURES.SUPPORT_NATIVE_TEXT_SEGMENTATION) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var segmenter = new Intl.Segmenter(void 0, {\n granularity: 'word'\n });\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return Array.from(segmenter.segment(value)).map(function (segment) { return segment.segment; });\n }\n return breakWords(value, styles);\n };\n var breakText = function (value, styles) {\n return styles.letterSpacing !== 0 ? segmentGraphemes(value) : segmentWords(value, styles);\n };\n // https://drafts.csswg.org/css-text/#word-separator\n var wordSeparators = [0x0020, 0x00a0, 0x1361, 0x10100, 0x10101, 0x1039, 0x1091];\n var breakWords = function (str, styles) {\n var breaker = LineBreaker(str, {\n lineBreak: styles.lineBreak,\n wordBreak: styles.overflowWrap === \"break-word\" /* BREAK_WORD */ ? 'break-word' : styles.wordBreak\n });\n var words = [];\n var bk;\n var _loop_1 = function () {\n if (bk.value) {\n var value = bk.value.slice();\n var codePoints = toCodePoints$1(value);\n var word_1 = '';\n codePoints.forEach(function (codePoint) {\n if (wordSeparators.indexOf(codePoint) === -1) {\n word_1 += fromCodePoint$1(codePoint);\n }\n else {\n if (word_1.length) {\n words.push(word_1);\n }\n words.push(fromCodePoint$1(codePoint));\n word_1 = '';\n }\n });\n if (word_1.length) {\n words.push(word_1);\n }\n }\n };\n while (!(bk = breaker.next()).done) {\n _loop_1();\n }\n return words;\n };\n\n var TextContainer = /** @class */ (function () {\n function TextContainer(context, node, styles) {\n this.text = transform(node.data, styles.textTransform);\n this.textBounds = parseTextBounds(context, this.text, styles, node);\n }\n return TextContainer;\n }());\n var transform = function (text, transform) {\n switch (transform) {\n case 1 /* LOWERCASE */:\n return text.toLowerCase();\n case 3 /* CAPITALIZE */:\n return text.replace(CAPITALIZE, capitalize);\n case 2 /* UPPERCASE */:\n return text.toUpperCase();\n default:\n return text;\n }\n };\n var CAPITALIZE = /(^|\\s|:|-|\\(|\\))([a-z])/g;\n var capitalize = function (m, p1, p2) {\n if (m.length > 0) {\n return p1 + p2.toUpperCase();\n }\n return m;\n };\n\n var ImageElementContainer = /** @class */ (function (_super) {\n __extends(ImageElementContainer, _super);\n function ImageElementContainer(context, img) {\n var _this = _super.call(this, context, img) || this;\n _this.src = img.currentSrc || img.src;\n _this.intrinsicWidth = img.naturalWidth;\n _this.intrinsicHeight = img.naturalHeight;\n _this.context.cache.addImage(_this.src);\n return _this;\n }\n return ImageElementContainer;\n }(ElementContainer));\n\n var CanvasElementContainer = /** @class */ (function (_super) {\n __extends(CanvasElementContainer, _super);\n function CanvasElementContainer(context, canvas) {\n var _this = _super.call(this, context, canvas) || this;\n _this.canvas = canvas;\n _this.intrinsicWidth = canvas.width;\n _this.intrinsicHeight = canvas.height;\n return _this;\n }\n return CanvasElementContainer;\n }(ElementContainer));\n\n var SVGElementContainer = /** @class */ (function (_super) {\n __extends(SVGElementContainer, _super);\n function SVGElementContainer(context, img) {\n var _this = _super.call(this, context, img) || this;\n var s = new XMLSerializer();\n var bounds = parseBounds(context, img);\n img.setAttribute('width', bounds.width + \"px\");\n img.setAttribute('height', bounds.height + \"px\");\n _this.svg = \"data:image/svg+xml,\" + encodeURIComponent(s.serializeToString(img));\n _this.intrinsicWidth = img.width.baseVal.value;\n _this.intrinsicHeight = img.height.baseVal.value;\n _this.context.cache.addImage(_this.svg);\n return _this;\n }\n return SVGElementContainer;\n }(ElementContainer));\n\n var LIElementContainer = /** @class */ (function (_super) {\n __extends(LIElementContainer, _super);\n function LIElementContainer(context, element) {\n var _this = _super.call(this, context, element) || this;\n _this.value = element.value;\n return _this;\n }\n return LIElementContainer;\n }(ElementContainer));\n\n var OLElementContainer = /** @class */ (function (_super) {\n __extends(OLElementContainer, _super);\n function OLElementContainer(context, element) {\n var _this = _super.call(this, context, element) || this;\n _this.start = element.start;\n _this.reversed = typeof element.reversed === 'boolean' && element.reversed === true;\n return _this;\n }\n return OLElementContainer;\n }(ElementContainer));\n\n var CHECKBOX_BORDER_RADIUS = [\n {\n type: 15 /* DIMENSION_TOKEN */,\n flags: 0,\n unit: 'px',\n number: 3\n }\n ];\n var RADIO_BORDER_RADIUS = [\n {\n type: 16 /* PERCENTAGE_TOKEN */,\n flags: 0,\n number: 50\n }\n ];\n var reformatInputBounds = function (bounds) {\n if (bounds.width > bounds.height) {\n return new Bounds(bounds.left + (bounds.width - bounds.height) / 2, bounds.top, bounds.height, bounds.height);\n }\n else if (bounds.width < bounds.height) {\n return new Bounds(bounds.left, bounds.top + (bounds.height - bounds.width) / 2, bounds.width, bounds.width);\n }\n return bounds;\n };\n var getInputValue = function (node) {\n var value = node.type === PASSWORD ? new Array(node.value.length + 1).join('\\u2022') : node.value;\n return value.length === 0 ? node.placeholder || '' : value;\n };\n var CHECKBOX = 'checkbox';\n var RADIO = 'radio';\n var PASSWORD = 'password';\n var INPUT_COLOR = 0x2a2a2aff;\n var InputElementContainer = /** @class */ (function (_super) {\n __extends(InputElementContainer, _super);\n function InputElementContainer(context, input) {\n var _this = _super.call(this, context, input) || this;\n _this.type = input.type.toLowerCase();\n _this.checked = input.checked;\n _this.value = getInputValue(input);\n if (_this.type === CHECKBOX || _this.type === RADIO) {\n _this.styles.backgroundColor = 0xdededeff;\n _this.styles.borderTopColor =\n _this.styles.borderRightColor =\n _this.styles.borderBottomColor =\n _this.styles.borderLeftColor =\n 0xa5a5a5ff;\n _this.styles.borderTopWidth =\n _this.styles.borderRightWidth =\n _this.styles.borderBottomWidth =\n _this.styles.borderLeftWidth =\n 1;\n _this.styles.borderTopStyle =\n _this.styles.borderRightStyle =\n _this.styles.borderBottomStyle =\n _this.styles.borderLeftStyle =\n 1 /* SOLID */;\n _this.styles.backgroundClip = [0 /* BORDER_BOX */];\n _this.styles.backgroundOrigin = [0 /* BORDER_BOX */];\n _this.bounds = reformatInputBounds(_this.bounds);\n }\n switch (_this.type) {\n case CHECKBOX:\n _this.styles.borderTopRightRadius =\n _this.styles.borderTopLeftRadius =\n _this.styles.borderBottomRightRadius =\n _this.styles.borderBottomLeftRadius =\n CHECKBOX_BORDER_RADIUS;\n break;\n case RADIO:\n _this.styles.borderTopRightRadius =\n _this.styles.borderTopLeftRadius =\n _this.styles.borderBottomRightRadius =\n _this.styles.borderBottomLeftRadius =\n RADIO_BORDER_RADIUS;\n break;\n }\n return _this;\n }\n return InputElementContainer;\n }(ElementContainer));\n\n var SelectElementContainer = /** @class */ (function (_super) {\n __extends(SelectElementContainer, _super);\n function SelectElementContainer(context, element) {\n var _this = _super.call(this, context, element) || this;\n var option = element.options[element.selectedIndex || 0];\n _this.value = option ? option.text || '' : '';\n return _this;\n }\n return SelectElementContainer;\n }(ElementContainer));\n\n var TextareaElementContainer = /** @class */ (function (_super) {\n __extends(TextareaElementContainer, _super);\n function TextareaElementContainer(context, element) {\n var _this = _super.call(this, context, element) || this;\n _this.value = element.value;\n return _this;\n }\n return TextareaElementContainer;\n }(ElementContainer));\n\n var IFrameElementContainer = /** @class */ (function (_super) {\n __extends(IFrameElementContainer, _super);\n function IFrameElementContainer(context, iframe) {\n var _this = _super.call(this, context, iframe) || this;\n _this.src = iframe.src;\n _this.width = parseInt(iframe.width, 10) || 0;\n _this.height = parseInt(iframe.height, 10) || 0;\n _this.backgroundColor = _this.styles.backgroundColor;\n try {\n if (iframe.contentWindow &&\n iframe.contentWindow.document &&\n iframe.contentWindow.document.documentElement) {\n _this.tree = parseTree(context, iframe.contentWindow.document.documentElement);\n // http://www.w3.org/TR/css3-background/#special-backgrounds\n var documentBackgroundColor = iframe.contentWindow.document.documentElement\n ? parseColor(context, getComputedStyle(iframe.contentWindow.document.documentElement).backgroundColor)\n : COLORS.TRANSPARENT;\n var bodyBackgroundColor = iframe.contentWindow.document.body\n ? parseColor(context, getComputedStyle(iframe.contentWindow.document.body).backgroundColor)\n : COLORS.TRANSPARENT;\n _this.backgroundColor = isTransparent(documentBackgroundColor)\n ? isTransparent(bodyBackgroundColor)\n ? _this.styles.backgroundColor\n : bodyBackgroundColor\n : documentBackgroundColor;\n }\n }\n catch (e) { }\n return _this;\n }\n return IFrameElementContainer;\n }(ElementContainer));\n\n var LIST_OWNERS = ['OL', 'UL', 'MENU'];\n var parseNodeTree = function (context, node, parent, root) {\n for (var childNode = node.firstChild, nextNode = void 0; childNode; childNode = nextNode) {\n nextNode = childNode.nextSibling;\n if (isTextNode(childNode) && childNode.data.trim().length > 0) {\n parent.textNodes.push(new TextContainer(context, childNode, parent.styles));\n }\n else if (isElementNode(childNode)) {\n if (isSlotElement(childNode) && childNode.assignedNodes) {\n childNode.assignedNodes().forEach(function (childNode) { return parseNodeTree(context, childNode, parent, root); });\n }\n else {\n var container = createContainer(context, childNode);\n if (container.styles.isVisible()) {\n if (createsRealStackingContext(childNode, container, root)) {\n container.flags |= 4 /* CREATES_REAL_STACKING_CONTEXT */;\n }\n else if (createsStackingContext(container.styles)) {\n container.flags |= 2 /* CREATES_STACKING_CONTEXT */;\n }\n if (LIST_OWNERS.indexOf(childNode.tagName) !== -1) {\n container.flags |= 8 /* IS_LIST_OWNER */;\n }\n parent.elements.push(container);\n childNode.slot;\n if (childNode.shadowRoot) {\n parseNodeTree(context, childNode.shadowRoot, container, root);\n }\n else if (!isTextareaElement(childNode) &&\n !isSVGElement(childNode) &&\n !isSelectElement(childNode)) {\n parseNodeTree(context, childNode, container, root);\n }\n }\n }\n }\n }\n };\n var createContainer = function (context, element) {\n if (isImageElement(element)) {\n return new ImageElementContainer(context, element);\n }\n if (isCanvasElement(element)) {\n return new CanvasElementContainer(context, element);\n }\n if (isSVGElement(element)) {\n return new SVGElementContainer(context, element);\n }\n if (isLIElement(element)) {\n return new LIElementContainer(context, element);\n }\n if (isOLElement(element)) {\n return new OLElementContainer(context, element);\n }\n if (isInputElement(element)) {\n return new InputElementContainer(context, element);\n }\n if (isSelectElement(element)) {\n return new SelectElementContainer(context, element);\n }\n if (isTextareaElement(element)) {\n return new TextareaElementContainer(context, element);\n }\n if (isIFrameElement(element)) {\n return new IFrameElementContainer(context, element);\n }\n return new ElementContainer(context, element);\n };\n var parseTree = function (context, element) {\n var container = createContainer(context, element);\n container.flags |= 4 /* CREATES_REAL_STACKING_CONTEXT */;\n parseNodeTree(context, element, container, container);\n return container;\n };\n var createsRealStackingContext = function (node, container, root) {\n return (container.styles.isPositionedWithZIndex() ||\n container.styles.opacity < 1 ||\n container.styles.isTransformed() ||\n (isBodyElement(node) && root.styles.isTransparent()));\n };\n var createsStackingContext = function (styles) { return styles.isPositioned() || styles.isFloating(); };\n var isTextNode = function (node) { return node.nodeType === Node.TEXT_NODE; };\n var isElementNode = function (node) { return node.nodeType === Node.ELEMENT_NODE; };\n var isHTMLElementNode = function (node) {\n return isElementNode(node) && typeof node.style !== 'undefined' && !isSVGElementNode(node);\n };\n var isSVGElementNode = function (element) {\n return typeof element.className === 'object';\n };\n var isLIElement = function (node) { return node.tagName === 'LI'; };\n var isOLElement = function (node) { return node.tagName === 'OL'; };\n var isInputElement = function (node) { return node.tagName === 'INPUT'; };\n var isHTMLElement = function (node) { return node.tagName === 'HTML'; };\n var isSVGElement = function (node) { return node.tagName === 'svg'; };\n var isBodyElement = function (node) { return node.tagName === 'BODY'; };\n var isCanvasElement = function (node) { return node.tagName === 'CANVAS'; };\n var isVideoElement = function (node) { return node.tagName === 'VIDEO'; };\n var isImageElement = function (node) { return node.tagName === 'IMG'; };\n var isIFrameElement = function (node) { return node.tagName === 'IFRAME'; };\n var isStyleElement = function (node) { return node.tagName === 'STYLE'; };\n var isScriptElement = function (node) { return node.tagName === 'SCRIPT'; };\n var isTextareaElement = function (node) { return node.tagName === 'TEXTAREA'; };\n var isSelectElement = function (node) { return node.tagName === 'SELECT'; };\n var isSlotElement = function (node) { return node.tagName === 'SLOT'; };\n // https://html.spec.whatwg.org/multipage/custom-elements.html#valid-custom-element-name\n var isCustomElement = function (node) { return node.tagName.indexOf('-') > 0; };\n\n var CounterState = /** @class */ (function () {\n function CounterState() {\n this.counters = {};\n }\n CounterState.prototype.getCounterValue = function (name) {\n var counter = this.counters[name];\n if (counter && counter.length) {\n return counter[counter.length - 1];\n }\n return 1;\n };\n CounterState.prototype.getCounterValues = function (name) {\n var counter = this.counters[name];\n return counter ? counter : [];\n };\n CounterState.prototype.pop = function (counters) {\n var _this = this;\n counters.forEach(function (counter) { return _this.counters[counter].pop(); });\n };\n CounterState.prototype.parse = function (style) {\n var _this = this;\n var counterIncrement = style.counterIncrement;\n var counterReset = style.counterReset;\n var canReset = true;\n if (counterIncrement !== null) {\n counterIncrement.forEach(function (entry) {\n var counter = _this.counters[entry.counter];\n if (counter && entry.increment !== 0) {\n canReset = false;\n if (!counter.length) {\n counter.push(1);\n }\n counter[Math.max(0, counter.length - 1)] += entry.increment;\n }\n });\n }\n var counterNames = [];\n if (canReset) {\n counterReset.forEach(function (entry) {\n var counter = _this.counters[entry.counter];\n counterNames.push(entry.counter);\n if (!counter) {\n counter = _this.counters[entry.counter] = [];\n }\n counter.push(entry.reset);\n });\n }\n return counterNames;\n };\n return CounterState;\n }());\n var ROMAN_UPPER = {\n integers: [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1],\n values: ['M', 'CM', 'D', 'CD', 'C', 'XC', 'L', 'XL', 'X', 'IX', 'V', 'IV', 'I']\n };\n var ARMENIAN = {\n integers: [\n 9000, 8000, 7000, 6000, 5000, 4000, 3000, 2000, 1000, 900, 800, 700, 600, 500, 400, 300, 200, 100, 90, 80, 70,\n 60, 50, 40, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1\n ],\n values: [\n 'Ք',\n 'Փ',\n 'Ւ',\n 'Ց',\n 'Ր',\n 'Տ',\n 'Վ',\n 'Ս',\n 'Ռ',\n 'Ջ',\n 'Պ',\n 'Չ',\n 'Ո',\n 'Շ',\n 'Ն',\n 'Յ',\n 'Մ',\n 'Ճ',\n 'Ղ',\n 'Ձ',\n 'Հ',\n 'Կ',\n 'Ծ',\n 'Խ',\n 'Լ',\n 'Ի',\n 'Ժ',\n 'Թ',\n 'Ը',\n 'Է',\n 'Զ',\n 'Ե',\n 'Դ',\n 'Գ',\n 'Բ',\n 'Ա'\n ]\n };\n var HEBREW = {\n integers: [\n 10000, 9000, 8000, 7000, 6000, 5000, 4000, 3000, 2000, 1000, 400, 300, 200, 100, 90, 80, 70, 60, 50, 40, 30, 20,\n 19, 18, 17, 16, 15, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1\n ],\n values: [\n 'י׳',\n 'ט׳',\n 'ח׳',\n 'ז׳',\n 'ו׳',\n 'ה׳',\n 'ד׳',\n 'ג׳',\n 'ב׳',\n 'א׳',\n 'ת',\n 'ש',\n 'ר',\n 'ק',\n 'צ',\n 'פ',\n 'ע',\n 'ס',\n 'נ',\n 'מ',\n 'ל',\n 'כ',\n 'יט',\n 'יח',\n 'יז',\n 'טז',\n 'טו',\n 'י',\n 'ט',\n 'ח',\n 'ז',\n 'ו',\n 'ה',\n 'ד',\n 'ג',\n 'ב',\n 'א'\n ]\n };\n var GEORGIAN = {\n integers: [\n 10000, 9000, 8000, 7000, 6000, 5000, 4000, 3000, 2000, 1000, 900, 800, 700, 600, 500, 400, 300, 200, 100, 90,\n 80, 70, 60, 50, 40, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1\n ],\n values: [\n 'ჵ',\n 'ჰ',\n 'ჯ',\n 'ჴ',\n 'ხ',\n 'ჭ',\n 'წ',\n 'ძ',\n 'ც',\n 'ჩ',\n 'შ',\n 'ყ',\n 'ღ',\n 'ქ',\n 'ფ',\n 'ჳ',\n 'ტ',\n 'ს',\n 'რ',\n 'ჟ',\n 'პ',\n 'ო',\n 'ჲ',\n 'ნ',\n 'მ',\n 'ლ',\n 'კ',\n 'ი',\n 'თ',\n 'ჱ',\n 'ზ',\n 'ვ',\n 'ე',\n 'დ',\n 'გ',\n 'ბ',\n 'ა'\n ]\n };\n var createAdditiveCounter = function (value, min, max, symbols, fallback, suffix) {\n if (value < min || value > max) {\n return createCounterText(value, fallback, suffix.length > 0);\n }\n return (symbols.integers.reduce(function (string, integer, index) {\n while (value >= integer) {\n value -= integer;\n string += symbols.values[index];\n }\n return string;\n }, '') + suffix);\n };\n var createCounterStyleWithSymbolResolver = function (value, codePointRangeLength, isNumeric, resolver) {\n var string = '';\n do {\n if (!isNumeric) {\n value--;\n }\n string = resolver(value) + string;\n value /= codePointRangeLength;\n } while (value * codePointRangeLength >= codePointRangeLength);\n return string;\n };\n var createCounterStyleFromRange = function (value, codePointRangeStart, codePointRangeEnd, isNumeric, suffix) {\n var codePointRangeLength = codePointRangeEnd - codePointRangeStart + 1;\n return ((value < 0 ? '-' : '') +\n (createCounterStyleWithSymbolResolver(Math.abs(value), codePointRangeLength, isNumeric, function (codePoint) {\n return fromCodePoint$1(Math.floor(codePoint % codePointRangeLength) + codePointRangeStart);\n }) +\n suffix));\n };\n var createCounterStyleFromSymbols = function (value, symbols, suffix) {\n if (suffix === void 0) { suffix = '. '; }\n var codePointRangeLength = symbols.length;\n return (createCounterStyleWithSymbolResolver(Math.abs(value), codePointRangeLength, false, function (codePoint) { return symbols[Math.floor(codePoint % codePointRangeLength)]; }) + suffix);\n };\n var CJK_ZEROS = 1 << 0;\n var CJK_TEN_COEFFICIENTS = 1 << 1;\n var CJK_TEN_HIGH_COEFFICIENTS = 1 << 2;\n var CJK_HUNDRED_COEFFICIENTS = 1 << 3;\n var createCJKCounter = function (value, numbers, multipliers, negativeSign, suffix, flags) {\n if (value < -9999 || value > 9999) {\n return createCounterText(value, 4 /* CJK_DECIMAL */, suffix.length > 0);\n }\n var tmp = Math.abs(value);\n var string = suffix;\n if (tmp === 0) {\n return numbers[0] + string;\n }\n for (var digit = 0; tmp > 0 && digit <= 4; digit++) {\n var coefficient = tmp % 10;\n if (coefficient === 0 && contains(flags, CJK_ZEROS) && string !== '') {\n string = numbers[coefficient] + string;\n }\n else if (coefficient > 1 ||\n (coefficient === 1 && digit === 0) ||\n (coefficient === 1 && digit === 1 && contains(flags, CJK_TEN_COEFFICIENTS)) ||\n (coefficient === 1 && digit === 1 && contains(flags, CJK_TEN_HIGH_COEFFICIENTS) && value > 100) ||\n (coefficient === 1 && digit > 1 && contains(flags, CJK_HUNDRED_COEFFICIENTS))) {\n string = numbers[coefficient] + (digit > 0 ? multipliers[digit - 1] : '') + string;\n }\n else if (coefficient === 1 && digit > 0) {\n string = multipliers[digit - 1] + string;\n }\n tmp = Math.floor(tmp / 10);\n }\n return (value < 0 ? negativeSign : '') + string;\n };\n var CHINESE_INFORMAL_MULTIPLIERS = '十百千萬';\n var CHINESE_FORMAL_MULTIPLIERS = '拾佰仟萬';\n var JAPANESE_NEGATIVE = 'マイナス';\n var KOREAN_NEGATIVE = '마이너스';\n var createCounterText = function (value, type, appendSuffix) {\n var defaultSuffix = appendSuffix ? '. ' : '';\n var cjkSuffix = appendSuffix ? '、' : '';\n var koreanSuffix = appendSuffix ? ', ' : '';\n var spaceSuffix = appendSuffix ? ' ' : '';\n switch (type) {\n case 0 /* DISC */:\n return '•' + spaceSuffix;\n case 1 /* CIRCLE */:\n return '◦' + spaceSuffix;\n case 2 /* SQUARE */:\n return '◾' + spaceSuffix;\n case 5 /* DECIMAL_LEADING_ZERO */:\n var string = createCounterStyleFromRange(value, 48, 57, true, defaultSuffix);\n return string.length < 4 ? \"0\" + string : string;\n case 4 /* CJK_DECIMAL */:\n return createCounterStyleFromSymbols(value, '〇一二三四五六七八九', cjkSuffix);\n case 6 /* LOWER_ROMAN */:\n return createAdditiveCounter(value, 1, 3999, ROMAN_UPPER, 3 /* DECIMAL */, defaultSuffix).toLowerCase();\n case 7 /* UPPER_ROMAN */:\n return createAdditiveCounter(value, 1, 3999, ROMAN_UPPER, 3 /* DECIMAL */, defaultSuffix);\n case 8 /* LOWER_GREEK */:\n return createCounterStyleFromRange(value, 945, 969, false, defaultSuffix);\n case 9 /* LOWER_ALPHA */:\n return createCounterStyleFromRange(value, 97, 122, false, defaultSuffix);\n case 10 /* UPPER_ALPHA */:\n return createCounterStyleFromRange(value, 65, 90, false, defaultSuffix);\n case 11 /* ARABIC_INDIC */:\n return createCounterStyleFromRange(value, 1632, 1641, true, defaultSuffix);\n case 12 /* ARMENIAN */:\n case 49 /* UPPER_ARMENIAN */:\n return createAdditiveCounter(value, 1, 9999, ARMENIAN, 3 /* DECIMAL */, defaultSuffix);\n case 35 /* LOWER_ARMENIAN */:\n return createAdditiveCounter(value, 1, 9999, ARMENIAN, 3 /* DECIMAL */, defaultSuffix).toLowerCase();\n case 13 /* BENGALI */:\n return createCounterStyleFromRange(value, 2534, 2543, true, defaultSuffix);\n case 14 /* CAMBODIAN */:\n case 30 /* KHMER */:\n return createCounterStyleFromRange(value, 6112, 6121, true, defaultSuffix);\n case 15 /* CJK_EARTHLY_BRANCH */:\n return createCounterStyleFromSymbols(value, '子丑寅卯辰巳午未申酉戌亥', cjkSuffix);\n case 16 /* CJK_HEAVENLY_STEM */:\n return createCounterStyleFromSymbols(value, '甲乙丙丁戊己庚辛壬癸', cjkSuffix);\n case 17 /* CJK_IDEOGRAPHIC */:\n case 48 /* TRAD_CHINESE_INFORMAL */:\n return createCJKCounter(value, '零一二三四五六七八九', CHINESE_INFORMAL_MULTIPLIERS, '負', cjkSuffix, CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);\n case 47 /* TRAD_CHINESE_FORMAL */:\n return createCJKCounter(value, '零壹貳參肆伍陸柒捌玖', CHINESE_FORMAL_MULTIPLIERS, '負', cjkSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);\n case 42 /* SIMP_CHINESE_INFORMAL */:\n return createCJKCounter(value, '零一二三四五六七八九', CHINESE_INFORMAL_MULTIPLIERS, '负', cjkSuffix, CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);\n case 41 /* SIMP_CHINESE_FORMAL */:\n return createCJKCounter(value, '零壹贰叁肆伍陆柒捌玖', CHINESE_FORMAL_MULTIPLIERS, '负', cjkSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);\n case 26 /* JAPANESE_INFORMAL */:\n return createCJKCounter(value, '〇一二三四五六七八九', '十百千万', JAPANESE_NEGATIVE, cjkSuffix, 0);\n case 25 /* JAPANESE_FORMAL */:\n return createCJKCounter(value, '零壱弐参四伍六七八九', '拾百千万', JAPANESE_NEGATIVE, cjkSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS);\n case 31 /* KOREAN_HANGUL_FORMAL */:\n return createCJKCounter(value, '영일이삼사오육칠팔구', '십백천만', KOREAN_NEGATIVE, koreanSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS);\n case 33 /* KOREAN_HANJA_INFORMAL */:\n return createCJKCounter(value, '零一二三四五六七八九', '十百千萬', KOREAN_NEGATIVE, koreanSuffix, 0);\n case 32 /* KOREAN_HANJA_FORMAL */:\n return createCJKCounter(value, '零壹貳參四五六七八九', '拾百千', KOREAN_NEGATIVE, koreanSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS);\n case 18 /* DEVANAGARI */:\n return createCounterStyleFromRange(value, 0x966, 0x96f, true, defaultSuffix);\n case 20 /* GEORGIAN */:\n return createAdditiveCounter(value, 1, 19999, GEORGIAN, 3 /* DECIMAL */, defaultSuffix);\n case 21 /* GUJARATI */:\n return createCounterStyleFromRange(value, 0xae6, 0xaef, true, defaultSuffix);\n case 22 /* GURMUKHI */:\n return createCounterStyleFromRange(value, 0xa66, 0xa6f, true, defaultSuffix);\n case 22 /* HEBREW */:\n return createAdditiveCounter(value, 1, 10999, HEBREW, 3 /* DECIMAL */, defaultSuffix);\n case 23 /* HIRAGANA */:\n return createCounterStyleFromSymbols(value, 'あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん');\n case 24 /* HIRAGANA_IROHA */:\n return createCounterStyleFromSymbols(value, 'いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす');\n case 27 /* KANNADA */:\n return createCounterStyleFromRange(value, 0xce6, 0xcef, true, defaultSuffix);\n case 28 /* KATAKANA */:\n return createCounterStyleFromSymbols(value, 'アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン', cjkSuffix);\n case 29 /* KATAKANA_IROHA */:\n return createCounterStyleFromSymbols(value, 'イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス', cjkSuffix);\n case 34 /* LAO */:\n return createCounterStyleFromRange(value, 0xed0, 0xed9, true, defaultSuffix);\n case 37 /* MONGOLIAN */:\n return createCounterStyleFromRange(value, 0x1810, 0x1819, true, defaultSuffix);\n case 38 /* MYANMAR */:\n return createCounterStyleFromRange(value, 0x1040, 0x1049, true, defaultSuffix);\n case 39 /* ORIYA */:\n return createCounterStyleFromRange(value, 0xb66, 0xb6f, true, defaultSuffix);\n case 40 /* PERSIAN */:\n return createCounterStyleFromRange(value, 0x6f0, 0x6f9, true, defaultSuffix);\n case 43 /* TAMIL */:\n return createCounterStyleFromRange(value, 0xbe6, 0xbef, true, defaultSuffix);\n case 44 /* TELUGU */:\n return createCounterStyleFromRange(value, 0xc66, 0xc6f, true, defaultSuffix);\n case 45 /* THAI */:\n return createCounterStyleFromRange(value, 0xe50, 0xe59, true, defaultSuffix);\n case 46 /* TIBETAN */:\n return createCounterStyleFromRange(value, 0xf20, 0xf29, true, defaultSuffix);\n case 3 /* DECIMAL */:\n default:\n return createCounterStyleFromRange(value, 48, 57, true, defaultSuffix);\n }\n };\n\n var IGNORE_ATTRIBUTE = 'data-html2canvas-ignore';\n var DocumentCloner = /** @class */ (function () {\n function DocumentCloner(context, element, options) {\n this.context = context;\n this.options = options;\n this.scrolledElements = [];\n this.referenceElement = element;\n this.counters = new CounterState();\n this.quoteDepth = 0;\n if (!element.ownerDocument) {\n throw new Error('Cloned element does not have an owner document');\n }\n this.documentElement = this.cloneNode(element.ownerDocument.documentElement, false);\n }\n DocumentCloner.prototype.toIFrame = function (ownerDocument, windowSize) {\n var _this = this;\n var iframe = createIFrameContainer(ownerDocument, windowSize);\n if (!iframe.contentWindow) {\n return Promise.reject(\"Unable to find iframe window\");\n }\n var scrollX = ownerDocument.defaultView.pageXOffset;\n var scrollY = ownerDocument.defaultView.pageYOffset;\n var cloneWindow = iframe.contentWindow;\n var documentClone = cloneWindow.document;\n /* Chrome doesn't detect relative background-images assigned in inline