diff --git a/deploy.ps1 b/deploy.ps1 index f60cf88a..b6e480c8 100644 --- a/deploy.ps1 +++ b/deploy.ps1 @@ -19,7 +19,7 @@ if ($LASTEXITCODE -ne 0) { } Write-Host "🚀 开始执行 Hugo 打包..." -ForegroundColor Cyan -hugo +hugo --minify if ($LASTEXITCODE -eq 0) { Write-Host "🎉 打包成功!" -ForegroundColor Green diff --git a/hugo.toml b/hugo.toml index ecf05690..e7f35279 100644 --- a/hugo.toml +++ b/hugo.toml @@ -21,6 +21,16 @@ HasCJKLanguage = true style = 'dracula' noClasses = false +[minify] + disableXML = true + [minify.tdewolff] + [minify.tdewolff.html] + keepConditionalComments = true + keepDefaultAttrVals = true + keepDocumentTags = true + keepEndTags = true + keepWhitespace = false + # 自定义文章固定链接:使用 日期 作为文件名(如 /20260117.html) [permalinks] post = "/:year:month:day" diff --git a/themes/Ying/static/css/Artalk.css b/themes/Ying/assets/css/Artalk.css similarity index 100% rename from themes/Ying/static/css/Artalk.css rename to themes/Ying/assets/css/Artalk.css diff --git a/themes/Ying/assets/css/main.css b/themes/Ying/assets/css/main.css index 166ade92..5a7defbd 100644 --- a/themes/Ying/assets/css/main.css +++ b/themes/Ying/assets/css/main.css @@ -1,22 +1,2872 @@ +@font-face { + font-family: 'zql'; + src: url('../font/zql.woff2') format('woff2'), + url('../font/zql.woff') format('woff'); + unicode-range: U+0000-007F, + /* 基本拉丁字母 */ + U+4E00-9FFF, + /* 基本汉字 */ + U+2000-206F, + /* 通用标点符号 */ + U+3000-303F; + /* 中文标点符号 */ +} + +@charset "UTF-8";:root { + --background-color: #fafafa; + --background-dark-color: #020617; + --text-content-color: #24292e; + --text-content-dark-color: #d1d5db; + --text-title-color: #111827; + --text-title-dark-color: #e5e7eb; + --text-highlight-color: #696565; + --frame-dark-color: #1f2933; + --frame-color: #eee; + --artalk-editer-color: #333333; + --erji-color: #666; + --sanji-color: #999; + --bankuai-color: #f6f6f6; + --link-color-light: #374151; + --link-hover-color-light: #111827; + --link-color-dark: #e5e7eb; + --link-hover-color-dark: #d1d5db; + --card-shadow-light: 0 10px 20px 0 rgba(236, 236, 236, 0.86); + --card-shadow-dark: 0 18px 45px rgba(0, 0, 0, 0.9), 0 0 0 1px rgba(148, 163, 184, 0.45); +} + +[data-theme="dark"] body { + color: var(--text-content-dark-color); + background-color: var(--background-dark-color); + background-image: none; +} + +[data-theme="dark"] .main { + background: rgba(15, 23, 42, 0.94); + box-shadow: var(--card-shadow-dark); + backdrop-filter: blur(18px); + -webkit-backdrop-filter: blur(18px); +} + +[data-theme="dark"] .header nav { + border-top-color: #1f2933; +} + +[data-theme="dark"] .header nav ul.flat li a { + color: #9ca3af; +} + +[data-theme="dark"] .header nav ul.flat li.active a { + color: #e5e7eb; +} + +[data-theme="dark"] .meta { + color: #9ca3af; +} + +[data-theme="dark"] .footer { + border-top-color: #1f2933; + color: #6b7280; +} + +[data-theme="dark"] .post-content { + color: var(--text-content-dark-color); +} + +.post-title { + color: var(--text-title-color); +} + +[data-theme="dark"] .post-title { + color: var(--text-title-dark-color); +} + +.theme-toggle-button { + border: none; + background: transparent; + cursor: pointer; + font-size: 14px; + padding: 4px 8px; + color: #586069; +} + +.theme-toggle-button:focus { + outline: none; +} + +[data-theme="dark"] .theme-toggle-button { + color: #e5e7eb; +} + +::-webkit-scrollbar { + width: 13px; +} + +::-webkit-scrollbar-button { + display: none; +} + +::-webkit-scrollbar-thumb { + min-height: 16px; + background-color: #999999; + background-clip: padding-box; + border: 3px solid #fdfdfd; + border-radius: 5px; +} + +::selection { + background: #444; + color: #fff; +} + body { - color: #222; - font-family: sans-serif; - line-height: 1.5; - margin: 1rem; - max-width: 768px; + font-family: 'zql', serif; + color: var(--text-content-color); + line-height: 1.6; + font-size: 16px; + background: var(--background-color); + background-image: url('../image/bg.svg'); + background-image: url(https://usj.cc/usr/uploads/2023/06/3287615239.jpg); + background-image:url(data:image/webp;base64,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); + background-repeat: space; + background-size: cover; + /* 小恐龙背景css */ + background-repeat: round; + background-size: contain; + /* 结束 */ + /* background-repeat: initial; + background-size: inherit; */ + background-attachment: fixed; + z-index: 5; } -header { - border-bottom: 1px solid #222; - margin-bottom: 1rem; +hr { + display: block; + height: 1px; + border: 0; + border-top: 1px solid #cccccc; + margin: 1rem 0; + padding: 0; } -footer { - border-top: 1px solid #222; - margin-top: 1rem; +img { + max-width: 100%; + border-radius: 5px; + box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); + vertical-align: middle +} + +.icon { + width: 1.8em; + height: 1.8em; + vertical-align: -1em; + fill: currentColor; + overflow: hidden; +} + +a img { + border: none; +} + +pre, +code { + font-family: 'JetBrains Mono', 'Fira Code', Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + font-size: 14px; + border-radius: 4px; + background-color: #f6f8fa; /* Day Mode */ + color: #24292e; + border: 1px solid #d0d7de; +} + +[data-theme="dark"] pre, +[data-theme="dark"] code { + background-color: #282a36; /* Night Mode */ + color: #f8f8f2; + border-color: #44475a; +} + +code { + padding: 2px 6px; + word-break: break-all; /* Prevent inline code from breaking layout */ +} + +pre { + padding: 10px; + overflow-x: auto; + max-width: 100%; /* Fix mobile overflow */ +} + +pre>code { + background-color: transparent; + color: inherit; + padding: 0; + border: 0; + word-break: normal; +} + +table { + border-collapse: collapse; + border-spacing: 0; + word-break: break-all; +} + +table th { + background-color: #f6f8fa; +} + +table th, +table td { + padding: 10px 20px; + border: 1px solid #dfe2e5; +} + +blockquote { + margin-left: 4px; + font-weight: 300; + border-left: 3.8px solid rgb(80 80 80); + background-color: rgba(51 51 51/5%); + padding-left: 20px; + word-break: break-all; } a { - color: #00e; - text-decoration: none; + color: var(--link-color-light); + text-decoration: none; + transition: color 0.35s ease; +} + +a:hover { + color: var(--link-hover-color-light); + text-decoration: underline; +} + +[data-theme="dark"] a { + color: var(--link-color-dark); +} + +[data-theme="dark"] a:hover { + color: var(--link-hover-color-dark); +} + +h1, +h2, +h3, +h4, +h5, +h6 { + line-height: 1.2; + font-weight: 400; +} + +h1 { + font-size: 1.5rem; +} + +h2 { + font-size: 1.375rem; +} + +h3 { + font-size: 1.25rem; +} + +h4, +h5, +h6 { + font-size: 1.125rem; +} + +ul { + padding-left: 0px; + list-style-type: disc; + list-style: none; +} + +/*默认 box-shadow 数值:rgba(236, 236, 236, 0.86)*/ +.main { + max-width: 630px; + overflow: hidden; + margin: 60px auto; + padding: 50px; + background: rgba(255, 255, 255, 0.82); + box-shadow: var(--card-shadow-light); + border-radius: 8px; + z-index: 10; + position: relative; + text-align: center; + backdrop-filter: blur(18px); + -webkit-backdrop-filter: blur(18px); + transition: background-color 0.35s ease, box-shadow 0.35s ease, color 0.35s ease, backdrop-filter 0.35s ease; +} + +.header { + margin-bottom: 10px; + padding-bottom: 10px; + display: flex; + flex-direction: column; + align-items: stretch; + gap: 16px; +} + +.header-top { + display: flex; + align-items: center; + justify-content: space-between; + gap: 16px; +} + +.head_author_img { + display: flex; + align-items: center; + justify-content: center; + margin-right: 16px; + padding: 0; + cursor: pointer; +} + +.avatar-theme-tip { + margin-left: 10px; + padding: 4px 12px; + border-radius: 999px; + background: #111827; + color: #f9fafb; + font-size: 11px; + white-space: nowrap; + box-shadow: 0 12px 30px rgba(15, 23, 42, 0.25); + opacity: 0; + transform: translateY(2px) scale(0.98); + transition: opacity 0.4s ease; +} + +.avatar-theme-tip.is-visible { + opacity: 1; + animation: avatar-tip-float 2.2s ease-in-out infinite; +} + +.avatar-theme-tip.is-hidden { + opacity: 0; + transform: translateY(-4px) scale(0.96); + animation: none; + pointer-events: none; +} + +[data-theme="dark"] .avatar-theme-tip { + background: #f9fafb; + color: #111827; + box-shadow: 0 14px 36px rgba(0, 0, 0, 0.6); +} + +@keyframes avatar-tip-float { + 0% { + transform: translateY(2px) scale(0.98); + } + 50% { + transform: translateY(-2px) scale(1); + } + 100% { + transform: translateY(2px) scale(0.98); + } +} + +.header h1, +.header h2 { + margin: 0; + padding: 0; + font-size: 1.6rem; + margin-bottom: 10px; +} + +.header h2 { + font-size: .9rem; + line-height: 2rem; + margin-bottom: 0; +} + +.header nav { + border-top: 1px solid #f4f4f4; + transition: border-color 0.35s ease; +} + +.header nav ul, +.header nav li { + margin: 0; +} + +.header nav ul.flat { + padding: 0; +} + +.header nav ul.flat li { + display: inline-block; + list-style: none; + margin-left: 0; + margin-right: 15px; + margin-top: 20px; + text-transform: capitalize; +} + +.header nav ul.flat li.active a { + color: #24292e; +} + +.header nav ul.flat li a { + color: #586069; +} + +.header nav ul.flat li a:hover { + color: #646464; + text-decoration: none; +} + +.header .site-description { + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + margin-top: 0; +} + +.header .site-description nav { + margin: 0; + padding: 0; + border: none; + min-width: 50px; + margin-bottom: 10px; +} + +.header .site-description nav ul a { + display: inline-block; + margin-right: 5px; + text-decoration: none; +} + + +.header .site-description nav ul a:hover { + color: #586069; +} + +/* Pjax 页面切换过渡动画 */ +.pjax-leave { + position: absolute; + top: 0; + width: 100%; + animation: pjax-fade-out 0.3s ease-in forwards; + z-index: 0; +} + +.pjax-enter { + animation: pjax-fade-in 0.3s ease-out forwards; + z-index: 1; + position: relative; +} + +@keyframes pjax-fade-in { + from { + opacity: 0; + transform: translateY(10px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +@keyframes pjax-fade-out { + from { + opacity: 1; + transform: translateY(0); + } + to { + opacity: 0; + transform: translateY(-10px); + } +} + +.section .section-header { + font-size: 0.88rem; + font-weight: 600; + text-transform: uppercase; + color: #999999; + margin-bottom: 15px; + letter-spacing: 1px; +} + +.recent-posts .posts .post { + margin-bottom: 20px; + margin-top: 20px; +} + +.recent-posts .posts .post .time, +.post .post-header .time, +.list .posts .post .time { + font-size: 0.725rem; + color: #bec8d2; + margin-bottom: 2px; +} + +.meta { + margin-top: 10px; + font-size: 12px; + color: #999999; + margin-bottom: 2px +} + +.post-tags { + margin-top: 20px; +} + +.post-tags .tags { + margin-top: 40px; +} + +.post-tags .tags a { + display: inline-block; + border-radius: 2px; + padding: 0.1rem 0.4rem; + color: #fff; + line-height: 20px; + font-size: 12px; + text-decoration: none; + margin: 0 1px; + border: 1px solid #41464b; + background-color: #41464b; +} + +.footer { + text-align: right; + font-size: 0.75em; + color: #999999; + border-top: 1px solid #f4f4f4; + padding-top: 10px; + margin-top: 10px; + transition: color 0.35s ease, border-color 0.35s ease; +} + +/* 代码高亮 Mac 风格样式 */ +.highlight { + background: #f6f8fa; /* Day Mode: Light BG (GitHub) */ + color: #24292e; /* Day Mode: Dark Text */ + border-radius: 10px; + border: 1px solid #d0d7de; /* Day Mode Border */ + box-shadow: none; /* Remove Shadow */ + margin: 20px 0; + overflow: hidden; + position: relative; + transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease; +} + +[data-theme="dark"] .highlight { + background: #282a36; /* Night Mode: Dark BG (Dracula) */ + color: #f8f8f2; /* Night Mode: Light Text */ + border: 1px solid #44475a; /* Night Mode Border */ + box-shadow: none; /* Remove Shadow */ +} + +.highlight::before { + content: " "; + display: block; + height: 12px; + width: 12px; + margin: 15px; + background: #ff5f56; + border-radius: 50%; + box-shadow: 20px 0 0 #ffbd2e, 40px 0 0 #27c93f; + position: absolute; + top: 0; + left: 0; + z-index: 2; +} + +.highlight pre, +.highlight code, +.highlight kbd, +.highlight samp { + font-family: 'JetBrains Mono', 'Fira Code', Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + font-size: 14px; + line-height: 1.6; + font-weight: normal; + white-space: pre; +} + +.highlight pre { + margin: 0; + padding: 45px 15px 15px; /* Top padding for Mac dots */ + overflow: auto; + background-color: transparent !important; /* Override inline style */ + border: none !important; /* Remove conflicting border */ + border-radius: 0 !important; /* Reset border radius inside container */ +} + +.highlight pre code { + padding: 0; + background-color: transparent !important; + color: inherit; +} + +/* 滚动条样式 */ +.highlight pre::-webkit-scrollbar { + height: 8px; + width: 8px; +} + +.highlight pre::-webkit-scrollbar-thumb { + background: rgba(0, 0, 0, 0.2); /* Day Mode: Dark scrollbar */ + border-radius: 4px; +} + +[data-theme="dark"] .highlight pre::-webkit-scrollbar-thumb { + background: rgba(255, 255, 255, 0.2); /* Night Mode: Light scrollbar */ +} + +.highlight pre::-webkit-scrollbar-thumb:hover { + background: rgba(255, 255, 255, 0.3); +} + +[data-theme="dark"] .highlight pre::-webkit-scrollbar-thumb:hover { + background: rgba(0, 0, 0, 0.3); +} + +.highlight pre::-webkit-scrollbar-track { + background: transparent; +} + +@media (max-width: 767px) { + h1 { + font-size: 1.375rem; + } + + h2 { + font-size: 1.25rem; + } + + h3 { + font-size: 1.125rem; + } + + h4, + h5, + h6 { + font-size: 1rem; + } + + body { + background: #ffffff; + } + + .main { + padding: 30px; + margin: 0 auto; + box-shadow: none; + } + + .header h2 { + display: none; + } + + .container { + margin-top: 10px; + } + + .highlight pre::-webkit-scrollbar { + display: none; + } +} + +/* 代码复制按钮 */ +.copy-code-btn { + position: absolute; + top: 10px; + right: 10px; + background: rgba(0, 0, 0, 0.05); + border: none; + border-radius: 4px; + color: #555; + padding: 4px 8px; + cursor: pointer; + font-size: 16px; + transition: all 0.2s; + opacity: 0; + z-index: 10; +} + +[data-theme="dark"] .copy-code-btn { + background: rgba(255, 255, 255, 0.1); + color: #f8f8f2; +} + +.highlight:hover .copy-code-btn { + opacity: 1; +} + +.copy-code-btn:hover { + background: rgba(0, 0, 0, 0.1); + transform: scale(1.1); +} + +[data-theme="dark"] .copy-code-btn:hover { + background: rgba(255, 255, 255, 0.2); +} + + .comment-form-author { + width: 45% !important; + float: right; + /*margin-right: 5%;*/ + } + + .comment-form-email { + width: 45% !important; + float: left; + } + + #cancel-huifu { + position: relative; + left: 53px !important; + } + + .header img { + width: 75px !important; + height: 75px !important; + } + + .site-description { + margin-top: 10px !important; + } + + .itp-index { + width: 100% !important; + } + + #scrollUp { + right: 35px !important; + } +} + +/*回到顶部*/ + +#scrollUp { + bottom: 50px; + right: 50px; + background: #ffffff; + height: 40px; + width: 40px; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + font-size: 22px; + color: #111827; + text-decoration: none; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.06); + z-index: 2147483647; /* Ensure it's on top */ + cursor: pointer; +} + +#scrollUp::before { + content: "⇡"; +} + +[data-theme="dark"] #scrollUp { + background: rgba(15, 23, 42, 0.95); + box-shadow: 0 10px 25px rgba(0, 0, 0, 0.55); + color: #e5e7eb; +} + +/*美化框*/ + +#mhz, +#szh, +#yyz { + /*圆角值,在此定义*/ + border-radius: 8px; +} + +/*迷幻紫*/ + +#mhz { + color: #555555; + overflow: hidden; + margin: 10px 0; + padding: 15px 15px 15px 35px; + /*border-radius: 10px;*/ + box-shadow: 6px 0 12px -5px rgb(190, 196, 252), -6px 0 12px -5px rgb(189, 196, 252); + background-color: #8EC5FC; + background-image: linear-gradient(62deg, #8EC5FC 0%, #E0C3FC 100%); + background-image: -webkit-linear-gradient(62deg, #8EC5FC 0%, #E0C3FC 100%); +} + +/*优雅紫*/ + +#yyz { + color: #ffffff; + overflow: hidden; + margin: 10px 0; + padding: 15px 15px 15px 35px; + /*border-radius: 10px;*/ + box-shadow: 6px 0 12px -5px rgb(175, 160, 208), -6px 0 12px -5px rgba(177, 161, 207, 0); + background-image: radial-gradient(circle farthest-corner at 10% 20%, rgba(95, 117, 227, 1) 0%, rgba(188, 167, 205, 1) 90%); +} + + +/*深邃黑*/ + +#szh { + color: #c7c7c7; + overflow: hidden; + margin: 10px 0; + padding: 15px 15px 15px 35px; + /*border-radius: 5px;*/ + box-shadow: 6px 0 14px -6px rgba(15, 23, 42, 0.85), -6px 0 14px -6px rgba(15, 23, 42, 0.55); + background-image: radial-gradient(circle farthest-corner at 10% 20%, rgba(0, 0, 0, 1) 0%, rgba(64, 64, 64, 1) 90.2%); +} + +/*隐藏文字*/ + +darkb-text { + background-color: #12121c; + color: #12121c; + text-shadow: none; + transition: color 0.3s; + /*padding-top: 3px;*/ + padding: 2px 2px 2px 2px; + font-size: 14px; + border-radius: 4px; +} + +darkb-text:hover, +darkb-text:active { + color: #FFF; +} + +/* 分页 */ + +.pagination { + margin: 0; + padding: 10px 0 0; + text-align: left; + display: flex; + justify-content: space-between; +} + +.pagination li { + list-style: none; + display: inline-block; + margin: 0; + padding: 0; +} + +.pagination .page-previous { + /* margin-right: 20px; */ + /* padding-right: 20px; */ +} + +.pagination .page-item.page-previous { + text-align: right; +} + +.pagination .page-item.page-next { + text-align: right; +} + +/* 骨架屏动画 */ +.skeleton-line { + background: #e0e0e0; + border-radius: 4px; + background-image: linear-gradient(90deg, #e0e0e0 0px, #f5f5f5 40px, #e0e0e0 80px); + background-size: 600px; + animation: skeleton-loading 1.6s infinite ease-out; +} + +@keyframes skeleton-loading { + 0% { + background-position: -100px; + } + 100% { + background-position: 140px; + } +} + +[data-theme="dark"] #pjax-loading-skeleton { + background: rgba(15, 23, 42, 0.94) !important; + box-shadow: var(--card-shadow-dark) !important; + backdrop-filter: blur(18px); +} + +[data-theme="dark"] .skeleton-line { + background: #1f2937; + background-image: linear-gradient(90deg, #1f2937 0px, #374151 40px, #1f2937 80px); +} + position: relative; + border-radius: 5px; + padding-bottom: 66.5%; + height: 0; + border: 6px solid #f0f0f0; + overflow: hidden; +} + +.size-video iframe { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} + +/*归档页面*/ +.a-title { + font-size: 24px; + word-wrap: break-word; + line-height: 1.4; + box-shadow: inset 0 -7px 0 0 rgb(52 58 64 / 10%); + display: inline; +} + +.link-title { + text-align: center; + margin-top: 20px; + margin-bottom: 14px; +} + +.link-title span { + display: inline-block; + margin-top: 6px; + margin-bottom: 6px; + font-size: 1.35rem; + font-weight: 650; + letter-spacing: 0.12em; + text-transform: none; + color: #4b5563; +} + +[data-theme="dark"] .link-title span { + color: #e5e7eb; +} + +h3.diy-h3 { + cursor: pointer; + font-size: 1.05rem; + padding-left: 1px; + margin-top: 0.5em; + margin-bottom: 5px; +} + +.a-archives { + margin-top: 6px; + display: inline-block; + color: #374151; + font-size: 0.95rem; +} + +.articles_date_time { + padding: 3px 5px; + font-size: 0.75rem; + font-weight: 500; + line-height: 1; + background-color: rgba(52, 58, 64, .1); + color: #324b64; + margin-right: 5px; + border-radius: 999px; +} + +[data-theme="dark"] .a-archives { + color: #e5e7eb; +} + +[data-theme="dark"] .articles_date_time { + background-color: rgba(148, 163, 184, .25); + color: #e5e7eb; +} + +/*友链*/ +.link_box, +.link_marks { + float: left; + padding-right: 5px; +} + +.yiyandes { + font-size: .9rem; + line-height: 2rem; + margin-left: -28.6px; + margin-top: -2px; +} + +/*comments*/ +.comments-area { + /*padding-top: 25px;*/ + /*border-top: 1px solid #eaeaea;*/ + margin-top: 25px; +} + +.comments-area ol { + list-style: none; + padding: 0; +} + +.comments-area .comment-body { + border-bottom: 1px solid #f4f4f4; + padding-bottom: 20px; + margin-bottom: 20px; +} + +.comment-meta { + margin-bottom: 16px; +} + +.comment-meta a { + text-decoration: none; +} + +.comment-author { + display: flex; + align-items: center; +} + +.comment-author img { + border-radius: 50%; +} + +.comment-author a { + color: #303135; + text-decoration: none; + font-weight: 700; + font-size: 16px; +} + +.comment-metadata time { + color: gray; + font-size: 12px; +} + +.comment-reply-title { + margin: 10px 0 5px; +} + +.comment-respond input { + width: 100%; +} + +.site-footer { + border-top: 1px solid #f4f4f4; + padding: 10px 0; + font-size: 13px; +} + +.site-footer a { + color: rgb(0, 0, 0); + text-decoration: none; +} + +.comment-form-author { + width: 48%; + float: right; + /*margin-right: 5%;*/ +} + +.comment-form-email { + width: 48%; + float: left; +} + +.comment-form-url { + width: 100%; + float: right; +} + +.comment-list li ol li { + padding-left: 1rem; +} + +.reply { + margin-top: 16px; +} + +.page-navigator { + display: flex; + width: 100%; + margin: 1rem 0; +} + +.page-navigator li { + display: none; +} + +.page-navigator .prev { + display: block; + flex: 1; +} + +.page-navigator .next { + display: flex; + justify-content: flex-end; +} + +.foot_bar { + z-index: 999; + position: fixed; + right: 2rem; + bottom: 2rem; + display: grid; +} + +.foot_bar_items { + line-height: 24px; + text-align: center; + color: #000; + cursor: pointer; + display: inline-flex; + justify-content: center; + align-items: center; + margin: .5rem 0; +} + +.changeMode { + background-color: #eee; + height: calc(26px*1); + width: calc(100px*1); + border-radius: calc(100px*1); + display: inline-block; +} + +.toggle-dark-mode-ignore { + position: absolute; + width: 50%; + background-color: #fff; + box-shadow: 0 2px 15px rgb(0 0 0 / 15%); + transition: transform .3s cubic-bezier(.25, .46, .45, .94); + height: calc(26px*1); + border-radius: calc(100px*1); + display: inline-block; + left: 0; +} + +.dark-mode-ignore { + width: 74%; + position: absolute; + display: flex; + justify-content: space-between; + user-select: none; + left: 50%; + top: 50%; + transform: translate(-50%, -50%); +} + +.switch-light-text { + font-size: calc(12px*1); + font-weight: 500; + color: #555; + margin: 0; + padding-bottom: 0; +} + +.switch-dark-text { + font-size: calc(12px*1); + font-weight: 500; + color: #555; + margin: 0; + padding-bottom: 0; + opacity: .5; +} + +img.biaoqing[src*="qutu"], +img.biaoqing[src*="huaji"] { + width: auto; + height: auto; + max-height: 5rem; +} + + +label { + font-size: 13px; + color: #9e9e9e; +} + +.skills-section { + margin-top: 2.5rem; +} + +.section-title { + font-size: 0.9rem; + letter-spacing: 0.16em; + text-transform: uppercase; + color: #9ca3af; + margin-bottom: 1.25rem; +} + +.skills-container { + display: flex; + flex-direction: column; + gap: 0.75rem; + overflow: hidden; +} + +.skills-row { + position: relative; + overflow: hidden; +} + +.skills-track { + display: inline-flex; + align-items: center; + gap: 0.75rem; + white-space: nowrap; + animation: skills-scroll 26s linear infinite; +} + +.skills-track-reverse { + animation-direction: reverse; +} + +.skill-tag { + display: inline-flex; + align-items: center; + padding: 0.35rem 0.9rem; + border-radius: 999px; + border: 1px solid rgba(148, 163, 184, 0.7); + background: rgba(255, 255, 255, 0.86); + font-size: 0.8rem; + color: #374151; +} + +@keyframes skills-scroll { + 0% { + transform: translateX(0); + } + 100% { + transform: translateX(-50%); + } +} + +[data-theme="dark"] .section-title { + color: #6b7280; +} + +[data-theme="dark"] .skill-tag { + border-color: rgba(31, 41, 55, 0.85); + background: rgba(15, 23, 42, 0.96); + color: #e5e7eb; +} + +textarea { + width: 100%; + overflow: auto; +} + +input[type=text], +input[type=email], +input[type=url], +input[type=password], +input[type=search], +input[type=number], +input[type=tel], +input[type=range], +input[type=date], +input[type=month], +input[type=week], +input[type=time], +input[type=datetime], +input[type=datetime-local], +input[type=color], +textarea { + color: #666; + border: 1px solid #ccc; + border-radius: 3px; + padding: 8px; +} + +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} + +button, +input[type=button], +input[type=reset], +input[type=submit] { + border: 1px solid; + border-color: #000 #000 #000; + border-radius: 3px; + background-color: #222; + color: #fff; + padding: 6px; + margin-top: 10px; + margin-left: 23%; +} + +.ell { + white-space: normal; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 1; + -webkit-box-orient: vertical; + word-break: break-all; +} + +.clear:before, +.clear:after, +.entry-content:before, +.entry-content:after, +.navigation:before, +.navigation:after { + content: ""; + display: table; + table-layout: fixed; +} + +.clear:after, +.entry-content:after, +.wrapper:after, +.navigation:after { + clear: both; +} + +.site-header { + padding: 25px 0; +} + +.site-branding { + float: left; + padding-top: 20px; +} + +.site-title { + margin: 0; + line-height: 1; + font-size: 14px; + font-weight: 500; +} + +.site-title a { + text-decoration: none; + color: #2d2e33; + font-size: 20px; + font-weight: bold; +} + +#site-navigation { + display: block; + float: right; +} + +#site-menu { + list-style: none; + margin: 0; + padding-left: 0; +} + +#site-menu li { + float: left; + position: relative; +} + +#site-menu li a { + display: block; + text-decoration: none; + color: #525252; + padding: 20px 0 20px 30px; +} + +.site-content { + margin-bottom: 50px; +} + +.archives__heading { + font-size: 24px; + margin-top: 0; + margin-bottom: 25px; +} + +.archives__list { + list-style: none; + padding: 0; +} + +.archives__list li { + padding: 5px 0; + font-size: 14px; +} + +.archives__list li a { + max-width: 50%; + display: inline-block; + text-decoration: none; + +} + +.archives__list li span { + color: #a9a9a9; + max-width: 50%; + display: inline-block; + float: right; + text-align: right; +} + +.entry-header { + margin-bottom: 32px; +} + +.entry-title { + font-size: 30px; + margin: 0; +} + +.entry-content p { + font-size: 14px; +} + +.entry-content img { + clear: both; + display: block; + margin-left: auto; + margin-right: auto; + border-radius: 5px; +} + +#showResult { + margin-top: 1rem; +} + +#showResult .biaoqing { + width: 24px; +} + +/*owo表情*/ +.biaoqing[src*="bqb"] { + width: 77px; + display: block; +} + +.OwO .OwO-body .OwO-items-image .OwO-item[data-input*="bqb"] { + max-width: calc(50% - 10px); + ; +} + +.biaoqing { + width: 36px; + display: inline; + box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; +} + +/*友圈微调*/ +.cf-article[data-v-56cae500] { + border: 1px solid #43464A !important; +} + +/*评论头衔*/ +.badge-xztx { + margin-left: .2rem; + background-color: #000000; + color: #fff; + padding: 2px 5px; + border-radius: 5px; + font-size: .8rem; + font-weight: bold; + line-height: .8rem; +} + +.visitor { + margin-left: .2rem; + background-color: #939393; + color: #fff; + padding: 2px 5px; + border-radius: 5px; + font-size: .8rem; + font-weight: bold; + line-height: .8rem; +} + +/*评论取消按钮*/ +#cancel-huifu { + position: relative; + left: 190px; +} + +/*评论提醒*/ +.pl-img { + width: 40px; + height: 40px; + border-radius: 0px; + animation: fade-in .65s ease-in none; +} + +.massage-container { + /*display: flex;*/ + height: 100%; + justify-content: center; + align-items: center; +} + +.rectangle { + display: flex; + align-items: center; + justify-content: flex-start; + positon: relative; + width: 50px; + height: 40px; + background: #000000; + transform: scale(0); + border-radius: 50%; + color: white; + opacity: 0; + overflow: hidden; + animation: scale-in .3s ease-out forwards, + expand .35s .25s ease-out forwards; +} + +.notification-text { + /*display: flex;*/ + align-items: center; + padding: 0 16px; + font-family: 'Roboto', sans-serif; + font-size: 14px; + animation: fade-in .65s ease-in forwards; +} + +@keyframes scale-in { + 100% { + transform: scale(1); + opacity: 1; + } +} + +@keyframes expand { + 50% { + width: 350px; + border-radius: 6px; + } + + 100% { + width: 300px; + border-radius: 4px; + box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, .2), + 0px 1px 1px 0px rgba(0, 0, 0, .14), + 0px 3px 3px -1px rgba(0, 0, 0, .12); + } +} + +@keyframes fade-in { + 0% { + opacity: 0; + } + + 100% { + opacity: .8; + } +} + +/*新文章提醒样式*/ +.new-post-message { + content: ''; + background: url(https://usj.cc/pics/2023/01/1457247750.png) no-repeat; + width: 26px; + height: 14px; + background-size: contain; + display: inline-block; + vertical-align: middle; + margin-top: -2px; + margin-left: 1px; +} + +/*文章图片懒加载*/ +.load-img { + width: 100%; + height: auto; + background-color: #CCCCCC; + display: block; +} + +/*模糊加载动画*/ +@-webkit-keyframes blur { + 0% { + -webkit-filter: blur(10px); + /* Chrome, Opera */ + -moz-filter: blur(10px); + -ms-filter: blur(10px); + filter: blur(10px); + } + + 50% { + -webkit-filter: blur(50px); + -moz-filter: blur(5px); + -ms-filter: blur(5px); + filter: blur(5px); + } + + 100% { + -webkit-filter: blur(0px); + -moz-filter: blur(0px); + -ms-filter: blur(0px); + filter: blur(0px); + } +} + +.lazy-img { + -webkit-animation-name: blur; + /*动画名称*/ + -webkit-animation-duration: 2s; + /*动画持续时间*/ + -webkit-animation-iteration-count: 1; + /*动画次数*/ + -webkit-animation-delay: 0s; + /*延迟时间*/ +} + +.blog-img { + -webkit-animation-name: blur; + /*动画名称*/ + -webkit-animation-duration: 1s; + /*动画持续时间*/ + -webkit-animation-iteration-count: 1; + /*动画次数*/ + -webkit-animation-delay: 0s; + /*延迟时间*/ +} + +/*弹幕相关css*/ +.container { + text-align: initial !important; +} + +.dm-biaoqing[src*="bqb"] { + width: 37px; + display: inline; +} + +.dm-biaoqing { + width: 36px; + display: inline; + box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; +} + +/*wechat样式*/ +@font-face { + font-family: 'Color Emoji'; + src: local('Apple Color Emoji'), local('Segoe UI Emoji'), local('Segoe UI Symbol'), local('Noto Color Emoji'); +} + +.qmbox .container { + --background_color: #f3f3f3; + --text_color: #191919; +} + +@media (prefers-color-scheme:dark) { + .qmbox .container { + --background_color: #111; + --text_color: #e6e6e6; + } +} + +.qmbox .container { + --font_size_grande: 16px; + --font_size_tall: 14px; + --font_size_short: 12px; + --line_height_grande: 20px; + --line_height_tall: 22px; + --line_height_short: 20px; +} + +.qmbox .container { + padding-top: var(--line_height_short); + padding-bottom: var(--line_height_short); + color: var(--text_color); + /*font: normal var(--font_size_grande) / var(--line_height_grande) 'PingFang SC', 'Microsoft YaHei', 'WenQuanYi Micro Hei', sans-serif, 'Color Emoji';*/ + background: var(--background_color); +} + +@media screen and (min-width: 550px) { + .qmbox .g-width { + width: 550px; + margin: 0 auto; + } +} + +@media screen and (max-width: 459px) { + .qmbox .g-width { + width: 100%; + min-width: 320px; + max-width: 460px; + } +} + +.qmbox .g-clear-both::after { + display: block; + clear: both; + content: ''; +} + +.qmbox .g-left { + display: inline; + float: left; +} + +.qmbox .g-right { + display: inline; + float: right; +} + +.qmbox .g-inline-center { + text-align: center; +} + +.qmbox .date { + --date_text_color: #aaa; +} + +@media (prefers-color-scheme:dark) { + .qmbox .date { + --date_text_color: #595859; + } +} + +.qmbox .date { + height: var(--line_height_short); + color: var(--date_text_color); + font-size: var(--font_size_short); + line-height: var(--line_height_short); + font-weight: 300; +} + +.qmbox .dialog { + --message_text_color: #1e1e1e; + --message_background_color: #fff; + --reply_text_color: #0f170a; + --reply_background_color: #95ec69; + --quote_text_color: #7d7d7d; + --quote_background_color: #e8e8e8; +} + +@media (prefers-color-scheme:dark) { + .qmbox .dialog { + --message_text_color: #eaeaea; + --message_background_color: #2c2c2c; + --reply_text_color: #04120a; + --reply_background_color: #28b561; + --quote_text_color: #989898; + --quote_background_color: #1a1a1a; + } +} + +.qmbox .dialog { + --avatar_size: 36px; + --border_radius: 4px; + --bubble_lr_offset: 20px; + --bubble_arrow_size: 10px; + --bubble_padding_vertical: 10px; + --bubble_padding_vertical_quote: 8px; + --bubble_padding_horizontal: 12px; + margin-top: -10px; +} + +.qmbox .bubble { + max-width: calc(100% - (var(--bubble_lr_offset) * 2) - var(--avatar_size) - var(--bubble_arrow_size)); + margin-top: var(--line_height_short); + clear: both; +} + +.qmbox .bubble:first-child { + margin-top: 0; +} + +.qmbox .message { + margin-left: var(--bubble_lr_offset); +} + +.qmbox .reply { + margin-right: var(--bubble_lr_offset); +} + +.qmbox .bubble-text { + position: relative; + max-width: calc(100% - var(--avatar_size) - var(--bubble_arrow_size) - (var(--bubble_padding_horizontal) * 2)); + padding: var(--bubble_padding_vertical) var(--bubble_padding_horizontal); + border-radius: var(--border_radius); + font-size: var(--font_size_tall); + line-height: var(--line_height_tall); + word-break: break-all; +} + +.qmbox .bubble-text::after { + position: absolute; + top: calc((var(--avatar_size) - var(--bubble_arrow_size)) / 2); + display: block; + width: 0; + height: 0; + border: calc(var(--bubble_arrow_size) / 2) solid transparent; + content: ''; +} + +.qmbox .message-text { + margin-left: var(--bubble_arrow_size); + color: var(--message_text_color); + background-color: var(--message_background_color); +} + +.qmbox .message-text::after { + left: calc(var(--bubble_arrow_size) / 2 * -1); + border-left: 0 none; + border-right: calc(var(--bubble_arrow_size) / 2) solid var(--message_background_color); +} + +.qmbox .reply-text { + margin-right: var(--bubble_arrow_size); + color: var(--reply_text_color); + background-color: var(--reply_background_color); +} + +.qmbox .reply-text::after { + right: calc(var(--bubble_arrow_size) / 2 * -1); + border-left: calc(var(--bubble_arrow_size) / 2) solid var(--reply_background_color); + border-right: 0 none; +} + +.qmbox .bubble-avatar { + width: var(--avatar_size); + height: var(--avatar_size); + border-radius: var(--border_radius); +} + +.qmbox .quote { + max-width: calc(100% - ((var(--bubble_arrow_size) + var(--avatar_size) + var(--bubble_lr_offset) + var(--bubble_padding_horizontal)) * 2)); + margin-top: calc(var(--bubble_padding_horizontal) / 2); + padding: var(--bubble_padding_vertical_quote) var(--bubble_padding_horizontal); + border-radius: var(--border_radius); + color: var(--quote_text_color); + font-size: var(--font_size_short); + line-height: var(--line_height_short); + background-color: var(--quote_background_color); + word-break: break-all; + clear: both; +} + +.qmbox .message+.quote { + margin-left: calc(var(--bubble_arrow_size) + var(--avatar_size) + var(--bubble_lr_offset)); +} + +.qmbox .reply+.quote { + margin-right: calc(var(--bubble_arrow_size) + var(--avatar_size) + var(--bubble_lr_offset)); +} + +.message-text img { + width: 25px !important; + display: inline; + box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; +} + +.reply-text img { + width: 25px !important; + display: inline; + box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; +} + +/*鱼塘*/ +#random-post { + min-height: 32px; +} + +.random-friends-post { + text-decoration: none; + font-weight: 700; + padding: 0 4px; +} + +.random-friends-post:hover { + text-decoration: none; + border-radius: 4px; +} + +.random-post-start { + transition: 2s; +} + +#random-post { + min-height: 32px; + border-radius: 12px; + margin-top: 8px; + clear: both; +} + +@media screen and (max-width: 3000px) { + .cf-article[data-v-56cae500] { + margin: 8px; + border-radius: 8px; + font-weight: bolder; + overflow: hidden; + transition: all .3s ease-out; + position: relative; + padding: 1rem; + border: var(--pyq-boder); + height: 160px; + display: flex; + align-content: space-between; + flex-direction: column; + justify-content: space-between; + box-shadow: var(--heo-shadow-border); + } + + .cf-article-item[data-v-56cae500] { + width: 50% !important; + } + + .cf-article-author[data-v-56cae500], + .cf-img-avatar[data-v-56cae500] { + align-self: center; + text-align: center; + transition: .3s; + } + + .cf-img-avatar[data-v-56cae500] { + display: inline-block !important; + position: absolute; + width: 40%; + border-radius: 50%; + margin: 0 0 -4px !important; + background: #fff; + opacity: .1; + z-index: 0; + right: -20px; + bottom: -20px; + } + + .cf-article-title[data-v-56cae500] { + font-weight: 500; + position: relative; + z-index: 2; + width: 100%; + display: block; + letter-spacing: 1.5px; + font-size: 18px; + align-self: start; + text-align: left; + line-height: 40px; + padding: 0; + margin-bottom: 10px; + transition: .3s; + -webkit-line-clamp: 3; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box !important; + -webkit-box-orient: vertical; + } + + .cf-article-time[data-v-56cae500] { + font-size: 12px; + text-align: right; + float: right; + font-weight: 400; + transition: .3s; + margin-left: auto; + z-index: 1; + } + + .cf-article-author[data-v-56cae500] { + line-height: 1; + font-size: 14px; + font-weight: 700; + cursor: pointer; + white-space: nowrap; + overflow: hidden; + z-index: 1; + color: var(--pyq-fontcolor); + font-size: .7rem; + background-color: var(--heo-gray-op); + padding: 8px; + border-radius: 20px; + /*display: flex;*/ + align-items: center; + } + + .cf-article-author[data-v-56cae500], + .cf-img-avatar[data-v-56cae500] { + align-self: center; + text-align: center; + transition: .3s; + } + + #cf-footer[data-v-56cae500], + #cf-more[data-v-56cae500] { + display: flex; + flex-direction: column; + } + + #cf-footer[data-v-56cae500] { + width: 100%; + margin-top: .5rem; + align-items: flex-end; + color: var(--pyq-secondtext); + } +} + +@media screen and (max-width: 1400px) { + .cf-article-item[data-v-56cae500] { + width: 100%; + } +} + +@media screen and (max-width: 768px) { + .cf-article-item[data-v-56cae500] { + width: 100% !important; + } +} + +.lazyload { + width: 100%; +} + +/* 设置进度条的背景色 */ +.bar { + background: #2aae67 !important; +} + + +/* 友联样式 */ +.links-item { + padding: 10px 10px 15px 0px; + font-size: 14px; + width: 49%; + box-sizing: border-box; + display: inline-block; + vertical-align: top; + background: #fafafa; + background: var(--light-header); + border-radius: 4px +} + +.links-item img { + border-radius: 4px; + float: left; + width: 45px; + height: 45px; + background: #fff +} + +.links-item a { + display: block; + padding: 0 14px; + margin-top: 13px; + margin-left: 44px; + word-break: keep-all; + height: 32px; +} + +.links-item { + width: 135px; + margin: 0 12px 12px 0; +} + +@media only screen and (max-width: 683px) { + .links-item { + width: 144px; + /* margin: 0 0 8px */ + } +} + +.dark .links-item { + background: #252627; + background: var(--dark-header) +} + +.tocify { + width: 20%; + max-height: 90%; + overflow: auto; + position: absolute; + right: 2%; + border-radius: 6px +} + +.tocify ul, +.tocify li { + list-style: none; + margin: 0; + padding: 0; + border: none; + line-height: 30px +} + +.tocify li a { + display: inline-block; + text-indent: 10px; + font-size: 14px; + text-decoration: none +} + +.tocify ul ul li a:before { + content: "- " +} + +@media only screen and (max-width: 683px) { + .tocify { + display: none + } +} + +.dark .light-wormhole, +.dark-wormhole { + display: none +} + +.dark .dark-wormhole { + display: block +} + +/* 热力图css */ +.ch-plugin-calendar-label { + position: absolute; + top: 20px; + left: 30px; + gutter: 5px; +} + +/** 周几初标签部分样式 **/ +.ch-plugin-calendar-label-text { + fill: var(--gray-500) !important; + font-size: 12px !important; + transform: translate(6px, 0px); +} + +/** 隐藏月份信息 **/ +.ch-domain-text { + display: none; +} + +/* 修改小方块的背景填充颜色 */ +[data-theme=dark] .ch-subdomain-bg { + fill: var(--gray-200); +} + +[data-theme="dark"] canvas[data-zr-dom-id] { + filter: brightness(0.78) contrast(0.9) saturate(0.85); + transition: filter 0.35s ease; +} + +/* 弹幕css */ +.barrage { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -webkit-flex-direction: row; + -moz-box-orient: horizontal; + -moz-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + cursor: pointer; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-box-align: center; + -webkit-align-items: center; + -moz-box-align: center; + -ms-flex-align: center; + align-items: center; + word-break: keep-all; + white-space: nowrap; + -webkit-border-radius: 20px; + border-radius: 20px; + padding: 0 20px; + padding-left: 15px; + opacity: 0.8; + will-change: transform; + position: absolute; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + pointer-events: auto; + text-shadow: 0ch; + z-index: 11; +} + +.barrage .header-avatar { + -webkit-border-radius: 50%; + border-radius: 50%; + position: relative; + right: 7px; + display: flex; + align-items: center; + justify-content: center; +} + +.barrage .header-avatar img { + width: 100%; + height: 100%; + object-fit: cover; +} + +.pause { + -webkit-animation-play-state: paused; + animation-play-state: paused; +} + +/* artalk样式重写css */ +.artalk { + margin-top: 20px +} + +.atk-list-read-more { + padding-bottom: 0!important +} + +.atk-comment { + padding: 10px 0!important +} + +.artalk>.atk-list>.atk-list-header { + display: none!important +} + +.atk-content p { + font-size: 1rem!important; + color: #000!important +} + +.atk-comment-children>.atk-comment-wrap { + margin-top: 6px!important +} + +.atk-content { + line-height: 1.5!important +} + +.atk-avatar img { + border-radius: 50%!important +} + +.atk-comment>.atk-avatar img { + width: 24px!important; + height: 24px!important; + margin-top: 8px +} + +.atk-main { + margin-left: 34px!important +} + +.atk-comment-children>.atk-comment-wrap>.atk-comment { + padding: 0!important; + margin: auto +} + +.atk-comment>.atk-main>.atk-header { + margin-bottom: 0!important +} + +.atk-textarea { + min-height: 70px!important +} + +.artalk>.atk-list>.atk-list-footer { + bottom: auto!important +} + +/* Artalk 昵称颜色增强 - 白昼模式 */ +.artalk .atk-item.atk-nick, +.atk-item.atk-nick { + color: #000 !important; + font-weight: 700 !important; +} + +.atk-header .atk-nick { + color: #000 !important; + font-weight: normal !important; +} + +.artalk .atk-item.atk-nick a, +.atk-item.atk-nick a { + color: #000!important +} + +.atk-ua { + color: #999!important; + background: var(--frame-color)!important +} + +.atk-ua-wrap { + font-size: 11px +} + +.atk-text { + color: #999!important +} + +.atk-badge { + display: none!important +} + +.atk-list-no-comment,.atk-copyright,.atk-copyright a { + color: #999!important +} + +.atk-send-btn { + padding: 0 10px!important; + min-width: 5em!important; + background: 0 0!important; + border: .5px solid var(--text-highlight-color)!important; + color: var(--text-highlight-color)!important +} + +.atk-send-btn:hover { + opacity: .7 +} + +[data-theme="dark"] .atk-send-btn { + background: rgba(15, 23, 42, 0.9) !important; + border-color: #4b5563 !important; + color: #e5e7eb !important; +} + +.atk-list-header .atk-dropdown-wrap .atk-dropdown-item.active span,.atk-list-header .atk-dropdown-wrap .atk-dropdown-item span:hover { + color: var(--text-highlight-color)!important +} + +.artalk { + --at-color-main: #666!important; + --at-color-pink: var(--text-highlight-color)!important; + --at-color-light: var(--text-highlight-color)!important; + --at-color-meta: #999!important; + --at-color-border: #DDD !important +} + +.artalk, +.atk-layer-wrap { + color: var(--text-content-color) !important; +} + +[data-theme="dark"] .artalk, +[data-theme="dark"] .atk-layer-wrap { + color: var(--text-content-dark-color) !important; +} + +.atk-content img { + max-height: 1.1rem!important; + vertical-align: middle; + margin-left: 2px; + margin-right: 2px; + margin-top: -4px!important +} + +.artalk .atk-content p { + color: var(--text-content-color)!important; +} + +[data-theme="dark"] .artalk .atk-content p { + color: var(--text-content-dark-color)!important; +} + +[data-theme="dark"] .atk-content, +[data-theme="dark"] .atk-header { + color: var(--text-content-dark-color)!important; +} + +[data-theme="dark"] .artalk .atk-item.atk-nick, +[data-theme="dark"] .atk-item.atk-nick, +[data-theme="dark"] .atk-header .atk-nick { + color: var(--text-content-dark-color)!important; +} + +.atk-loading { + padding: 10px 14px; + border-radius: 8px; + background: rgba(255, 255, 255, 0.86); + box-shadow: var(--card-shadow-light); + backdrop-filter: blur(18px); + -webkit-backdrop-filter: blur(18px); +} + +.atk-loading-spinner svg circle { + stroke: var(--text-highlight-color); +} + +/* 通用样式 */ +.artalk .atk-main-editor input.atk-nick, +.artalk .atk-main-editor input.atk-email, +.artalk .atk-main-editor input.atk-link { + color: var(--text-content-color)!important; +} + +/* 暗黑模式样式:重复类选择器,最大化权重 */ +[data-theme="dark"] .artalk.artalk .atk-main-editor input.atk-nick, +[data-theme="dark"] .artalk.artalk .atk-main-editor input.atk-email, +[data-theme="dark"] .artalk.artalk .atk-main-editor input.atk-link { + color: var(--text-content-dark-color)!important; +} + +[data-theme="dark"] .atk-loading { + background: rgba(15, 23, 42, 0.95)!important; + border-radius: 8px; + box-shadow: 0 18px 45px rgba(0, 0, 0, 0.65); + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); +} + +[data-theme="dark"] .atk-loading-spinner svg circle { + stroke: #e5e7eb!important; +} + +[data-theme="dark"] .uk-divider-icon { + background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%236b7280%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%3C%2Fsvg%3E"); +} + +[data-theme="dark"] .uk-divider-icon::after, +[data-theme="dark"] .uk-divider-icon::before { + border-bottom-color: #374151; +} + +.atk-comment>.atk-main>.atk-body>.atk-content img { + height: 2rem!important; + box-shadow: 0 0 0 rgba(0, 0, 0, 0.2); +} + +.atk-comment .atk-height-limit:after { + margin-bottom: 20px +} + +.atk-editor-plug-emoticons>.atk-grp-wrap>.atk-grp[data-type=image]>.atk-item { + height: 32px!important; + width: 32px!important +} + +.atk-editor-plug-emoticons>.atk-grp-wrap>.atk-grp>.atk-item { + font-size: 24px!important; + padding: 0!important +} + +.atk-notify.atk-fade-in { + background: #666!important; + margin-bottom: 6px +} + +.atk-pinned-badge { + background: #999!important +} + +.atk-send-reply { + background: 0 0!important +} + +.atk-reply-to { + border-left: 3px solid #fff!important +} + +.atk-plug-panel-wrap { + height: 110px!important +} + +img[atk-emoticon] { + max-height: 20px!important +} + +.atk-bottom { + padding: 5px 10px 10px 5px!important +} + +.atk-main-editor>.atk-header { + padding: 10px 5px 0!important +} + +.atk-main-editor>.atk-plug-panel-wrap { + border-top: .5px solid var(--at-color-border)!important +} + +.atk-textarea { + padding: 10px!important +} + +.atk-main-editor { + border: 1px solid var(--frame-color)!important +} + +.artalk code { + border: 1px solid #ffbe98!important; + border-radius: 4px!important; + background: 0 0!important; + margin: 0 4px!important +} + +.atk-main-editor>.atk-textarea-wrap>.atk-textarea { + line-height: 1.6 +} + +.atk-main-editor>.atk-bottom .atk-state-btn .atk-text-wrap { + color: #999 +} + +.artalk .atk-main-editor { + border: 1px solid var(--artalk-editer-color)!important +} + +@media(prefers-color-scheme: dark) { + .atk-content p { + color:var(--text-content-dark-color)!important + } + + .pinglun { + color: var(--text-content-dark-color) + } + + .artalk .atk-main-editor { + background: 0 0!important; + border: 1px solid var(--frame-dark-color)!important + } + + .atk-textarea { + color: var(--text-content-dark-color)!important; + font-size: 15px; + background: 0 0!important + } + + .atk-ua { + color: #666!important; + background: var(--background-dark-color)!important + } + + .artalk { + --at-color-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0), #242021)!important; + --at-color-bg: #1A1718 !important; + --at-color-border: #332D2F !important; + --at-color-meta: #666 !important; + --at-color-bg-grey: var(--background-dark-color) !important; + --at-color-bg-grey: #332D2E!important + } + + .artalk.atk-dark-mode { + --at-color-grey: #747474 !important + } + + .atk-text,.atk-list-no-comment,.atk-copyright,.atk-copyright a { + color: #666!important + } + + .atk-pinned-badge { + color: var(--text-content-dark-color)!important; + background: #666!important + } + + .atk-reply-to { + border-left: 3px solid #242021!important + } + + .atk-comment .atk-main .atk-footer .atk-actions span:hover { + color: #999!important + } + + .artalk .atk-item.atk-nick a, + .atk-item.atk-nick a { + color: #999!important + } + + .atk-main-editor>.atk-bottom .atk-state-btn { + background: var(--background-dark-color)!important + } + + .atk-main-editor>.atk-bottom .atk-state-btn .atk-text-wrap { + color: #666 + } +} + +.artalk.hidden { + display: none +} + +@media(max-width: 700px) { + .atk-main-editor>.atk-header { + display:block!important + } +} + +#post-writing p{ + margin-bottom: 10px; +} + +#post-writing h2 { + position: relative; /* 确保伪元素的定位相对于 h2 元素 */ + display: inline-block; /* 使 h2 的宽度适应内容 */ + margin-top: 5px; + margin-bottom: 0px; +} + +#post-writing h2:nth-child(1) { + position: relative; /* 确保伪元素的定位相对于 h2 元素 */ + display: inline-block; /* 使 h2 的宽度适应内容 */ + margin-top: 13px; + margin-bottom: 0px; +} + +#post-writing h2::before { + content: ""; + position: absolute; + height: 7px; + bottom: 0px; + left: -1px; + width: 100%; /* 使用 100% 使伪元素宽度跟随文字 */ + z-index: -1; + background-color: #494949; + opacity: 0.15; + transform: skew(-35deg); + transition: opacity .2s ease; + border-radius: 3px 8px 10px 6px; + transition: 0.1s ease background-color; +} + +#post-writing p>code{ + font-size: 14px; + background-color: #e3e3e3!important; + color: #000000!important; +} + + + + +/* Hugo Chroma Syntax Highlighting */ +/* Day Mode (GitHub) */ +/* Background */ .bg { background-color:#fff; } +/* PreWrapper */ .chroma { color:#24292e;background-color:#fff; } +/* Other */ .chroma .x { } +/* Error */ .chroma .err { color:#a61717;background-color:#e3d2d2 } +/* CodeLine */ .chroma .cl { } +/* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit } +/* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; } +/* LineTable */ .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; } +/* LineHighlight */ .chroma .hl { background-color:#e5e5e5 } +/* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } +/* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } +/* Line */ .chroma .line { display:flex; } +/* Keyword */ .chroma .k { color:#000;font-weight:bold } +/* KeywordConstant */ .chroma .kc { color:#000;font-weight:bold } +/* KeywordDeclaration */ .chroma .kd { color:#000;font-weight:bold } +/* KeywordNamespace */ .chroma .kn { color:#000;font-weight:bold } +/* KeywordPseudo */ .chroma .kp { color:#000;font-weight:bold } +/* KeywordReserved */ .chroma .kr { color:#000;font-weight:bold } +/* KeywordType */ .chroma .kt { color:#458;font-weight:bold } +/* Name */ .chroma .n { } +/* NameAttribute */ .chroma .na { color:#008080 } +/* NameBuiltin */ .chroma .nb { color:#0086b3 } +/* NameBuiltinPseudo */ .chroma .bp { color:#999 } +/* NameClass */ .chroma .nc { color:#458;font-weight:bold } +/* NameConstant */ .chroma .no { color:#008080 } +/* NameDecorator */ .chroma .nd { color:#3c5d5d;font-weight:bold } +/* NameEntity */ .chroma .ni { color:#800080 } +/* NameException */ .chroma .ne { color:#900;font-weight:bold } +/* NameFunction */ .chroma .nf { color:#900;font-weight:bold } +/* NameFunctionMagic */ .chroma .fm { } +/* NameLabel */ .chroma .nl { color:#900;font-weight:bold } +/* NameNamespace */ .chroma .nn { color:#555 } +/* NameOther */ .chroma .nx { } +/* NameProperty */ .chroma .py { } +/* NameTag */ .chroma .nt { color:#000080 } +/* NameVariable */ .chroma .nv { color:#008080 } +/* NameVariableClass */ .chroma .vc { color:#008080 } +/* NameVariableGlobal */ .chroma .vg { color:#008080 } +/* NameVariableInstance */ .chroma .vi { color:#008080 } +/* NameVariableMagic */ .chroma .vm { } +/* Literal */ .chroma .l { } +/* LiteralDate */ .chroma .ld { } +/* LiteralString */ .chroma .s { color:#d14 } +/* LiteralStringAffix */ .chroma .sa { color:#d14 } +/* LiteralStringBacktick */ .chroma .sb { color:#d14 } +/* LiteralStringChar */ .chroma .sc { color:#d14 } +/* LiteralStringDelimiter */ .chroma .dl { color:#d14 } +/* LiteralStringDoc */ .chroma .sd { color:#d14 } +/* LiteralStringDouble */ .chroma .s2 { color:#d14 } +/* LiteralStringEscape */ .chroma .se { color:#d14 } +/* LiteralStringHeredoc */ .chroma .sh { color:#d14 } +/* LiteralStringInterpol */ .chroma .si { color:#d14 } +/* LiteralStringOther */ .chroma .sx { color:#d14 } +/* LiteralStringRegex */ .chroma .sr { color:#009926 } +/* LiteralStringSingle */ .chroma .s1 { color:#d14 } +/* LiteralStringSymbol */ .chroma .ss { color:#990073 } +/* LiteralNumber */ .chroma .m { color:#099 } +/* LiteralNumberBin */ .chroma .mb { color:#099 } +/* LiteralNumberFloat */ .chroma .mf { color:#099 } +/* LiteralNumberHex */ .chroma .mh { color:#099 } +/* LiteralNumberInteger */ .chroma .mi { color:#099 } +/* LiteralNumberIntegerLong */ .chroma .il { color:#099 } +/* LiteralNumberOct */ .chroma .mo { color:#099 } +/* Operator */ .chroma .o { color:#000;font-weight:bold } +/* OperatorWord */ .chroma .ow { color:#000;font-weight:bold } +/* Punctuation */ .chroma .p { } +/* Comment */ .chroma .c { color:#998;font-style:italic } +/* CommentHashbang */ .chroma .ch { color:#998;font-style:italic } +/* CommentMultiline */ .chroma .cm { color:#998;font-style:italic } +/* CommentSingle */ .chroma .c1 { color:#998;font-style:italic } +/* CommentSpecial */ .chroma .cs { color:#999;font-weight:bold;font-style:italic } +/* CommentPreproc */ .chroma .cp { color:#999;font-weight:bold;font-style:italic } +/* CommentPreprocFile */ .chroma .cpf { color:#999;font-weight:bold;font-style:italic } +/* Generic */ .chroma .g { } +/* GenericDeleted */ .chroma .gd { color:#000;background-color:#fdd } +/* GenericEmph */ .chroma .ge { color:#000;font-style:italic } +/* GenericError */ .chroma .gr { color:#a00 } +/* GenericHeading */ .chroma .gh { color:#999 } +/* GenericInserted */ .chroma .gi { color:#000;background-color:#dfd } +/* GenericOutput */ .chroma .go { color:#888 } +/* GenericPrompt */ .chroma .gp { color:#555 } +/* GenericStrong */ .chroma .gs { font-weight:bold } +/* GenericSubheading */ .chroma .gu { color:#aaa } +/* GenericTraceback */ .chroma .gt { color:#a00 } +/* GenericUnderline */ .chroma .gl { text-decoration:underline } +/* TextWhitespace */ .chroma .w { color:#bbb } + +/* Night Mode (Dracula) */ +/* Background */ [data-theme="dark"] .bg { color:#f8f8f2;background-color:#282a36; } +/* PreWrapper */ [data-theme="dark"] .chroma { color:#f8f8f2;background-color:#282a36; } +/* Other */ [data-theme="dark"] .chroma .x { } +/* Error */ [data-theme="dark"] .chroma .err { } +/* CodeLine */ [data-theme="dark"] .chroma .cl { } +/* LineLink */ [data-theme="dark"] .chroma .lnlinks { outline:none;text-decoration:none;color:inherit } +/* LineTableTD */ [data-theme="dark"] .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; } +/* LineTable */ [data-theme="dark"] .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; } +/* LineHighlight */ [data-theme="dark"] .chroma .hl { background-color:#3d3f4a } +/* LineNumbersTable */ [data-theme="dark"] .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } +/* LineNumbers */ [data-theme="dark"] .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } +/* Line */ [data-theme="dark"] .chroma .line { display:flex; } +/* Keyword */ [data-theme="dark"] .chroma .k { color:#ff79c6 } +/* KeywordConstant */ [data-theme="dark"] .chroma .kc { color:#ff79c6 } +/* KeywordDeclaration */ [data-theme="dark"] .chroma .kd { color:#8be9fd;font-style:italic } +/* KeywordNamespace */ [data-theme="dark"] .chroma .kn { color:#ff79c6 } +/* KeywordPseudo */ [data-theme="dark"] .chroma .kp { color:#ff79c6 } +/* KeywordReserved */ [data-theme="dark"] .chroma .kr { color:#ff79c6 } +/* KeywordType */ [data-theme="dark"] .chroma .kt { color:#8be9fd } +/* Name */ [data-theme="dark"] .chroma .n { } +/* NameAttribute */ [data-theme="dark"] .chroma .na { color:#50fa7b } +/* NameBuiltin */ [data-theme="dark"] .chroma .nb { color:#8be9fd;font-style:italic } +/* NameBuiltinPseudo */ [data-theme="dark"] .chroma .bp { } +/* NameClass */ [data-theme="dark"] .chroma .nc { color:#50fa7b } +/* NameConstant */ [data-theme="dark"] .chroma .no { } +/* NameDecorator */ [data-theme="dark"] .chroma .nd { } +/* NameEntity */ [data-theme="dark"] .chroma .ni { } +/* NameException */ [data-theme="dark"] .chroma .ne { } +/* NameFunction */ [data-theme="dark"] .chroma .nf { color:#50fa7b } +/* NameFunctionMagic */ [data-theme="dark"] .chroma .fm { } +/* NameLabel */ [data-theme="dark"] .chroma .nl { color:#8be9fd;font-style:italic } +/* NameNamespace */ [data-theme="dark"] .chroma .nn { } +/* NameOther */ [data-theme="dark"] .chroma .nx { } +/* NameProperty */ [data-theme="dark"] .chroma .py { } +/* NameTag */ [data-theme="dark"] .chroma .nt { color:#ff79c6 } +/* NameVariable */ [data-theme="dark"] .chroma .nv { color:#8be9fd;font-style:italic } +/* NameVariableClass */ [data-theme="dark"] .chroma .vc { color:#8be9fd;font-style:italic } +/* NameVariableGlobal */ [data-theme="dark"] .chroma .vg { color:#8be9fd;font-style:italic } +/* NameVariableInstance */ [data-theme="dark"] .chroma .vi { color:#8be9fd;font-style:italic } +/* NameVariableMagic */ [data-theme="dark"] .chroma .vm { } +/* Literal */ [data-theme="dark"] .chroma .l { } +/* LiteralDate */ [data-theme="dark"] .chroma .ld { } +/* LiteralString */ [data-theme="dark"] .chroma .s { color:#f1fa8c } +/* LiteralStringAffix */ [data-theme="dark"] .chroma .sa { color:#f1fa8c } +/* LiteralStringBacktick */ [data-theme="dark"] .chroma .sb { color:#f1fa8c } +/* LiteralStringChar */ [data-theme="dark"] .chroma .sc { color:#f1fa8c } +/* LiteralStringDelimiter */ [data-theme="dark"] .chroma .dl { color:#f1fa8c } +/* LiteralStringDoc */ [data-theme="dark"] .chroma .sd { color:#f1fa8c } +/* LiteralStringDouble */ [data-theme="dark"] .chroma .s2 { color:#f1fa8c } +/* LiteralStringEscape */ [data-theme="dark"] .chroma .se { color:#f1fa8c } +/* LiteralStringHeredoc */ [data-theme="dark"] .chroma .sh { color:#f1fa8c } +/* LiteralStringInterpol */ [data-theme="dark"] .chroma .si { color:#f1fa8c } +/* LiteralStringOther */ [data-theme="dark"] .chroma .sx { color:#f1fa8c } +/* LiteralStringRegex */ [data-theme="dark"] .chroma .sr { color:#f1fa8c } +/* LiteralStringSingle */ [data-theme="dark"] .chroma .s1 { color:#f1fa8c } +/* LiteralStringSymbol */ [data-theme="dark"] .chroma .ss { color:#f1fa8c } +/* LiteralNumber */ [data-theme="dark"] .chroma .m { color:#bd93f9 } +/* LiteralNumberBin */ [data-theme="dark"] .chroma .mb { color:#bd93f9 } +/* LiteralNumberFloat */ [data-theme="dark"] .chroma .mf { color:#bd93f9 } +/* LiteralNumberHex */ [data-theme="dark"] .chroma .mh { color:#bd93f9 } +/* LiteralNumberInteger */ [data-theme="dark"] .chroma .mi { color:#bd93f9 } +/* LiteralNumberIntegerLong */ [data-theme="dark"] .chroma .il { color:#bd93f9 } +/* LiteralNumberOct */ [data-theme="dark"] .chroma .mo { color:#bd93f9 } +/* Operator */ [data-theme="dark"] .chroma .o { color:#ff79c6 } +/* OperatorWord */ [data-theme="dark"] .chroma .ow { color:#ff79c6 } +/* Punctuation */ [data-theme="dark"] .chroma .p { } +/* Comment */ [data-theme="dark"] .chroma .c { color:#6272a4 } +/* CommentHashbang */ [data-theme="dark"] .chroma .ch { color:#6272a4 } +/* CommentMultiline */ [data-theme="dark"] .chroma .cm { color:#6272a4 } +/* CommentSingle */ [data-theme="dark"] .chroma .c1 { color:#6272a4 } +/* CommentSpecial */ [data-theme="dark"] .chroma .cs { color:#6272a4 } +/* CommentPreproc */ [data-theme="dark"] .chroma .cp { color:#ff79c6 } +/* CommentPreprocFile */ [data-theme="dark"] .chroma .cpf { color:#ff79c6 } +/* Generic */ [data-theme="dark"] .chroma .g { } +/* GenericDeleted */ [data-theme="dark"] .chroma .gd { color:#f55 } +/* GenericEmph */ [data-theme="dark"] .chroma .ge { text-decoration:underline } +/* GenericError */ [data-theme="dark"] .chroma .gr { } +/* GenericHeading */ [data-theme="dark"] .chroma .gh { font-weight:bold } +/* GenericInserted */ [data-theme="dark"] .chroma .gi { color:#50fa7b;font-weight:bold } +/* GenericOutput */ [data-theme="dark"] .chroma .go { color:#44475a } +/* GenericPrompt */ [data-theme="dark"] .chroma .gp { } + +/* Back to Top Button */ +#back-to-top { + position: fixed; + bottom: 30px; + right: 30px; + width: 40px; + height: 40px; + background-color: var(--bankuai-color); + color: var(--text-content-color); + border-radius: 50%; + text-align: center; + line-height: 40px; + font-size: 24px; + box-shadow: 0 2px 5px rgba(0,0,0,0.2); + cursor: pointer; + z-index: 2147483647; + opacity: 0; + visibility: hidden; + transition: opacity 0.3s, visibility 0.3s, background-color 0.3s, transform 0.3s; + display: flex; + justify-content: center; + align-items: center; + text-decoration: none; +} + +#back-to-top.show { + opacity: 1; + visibility: visible; +} + +#back-to-top:hover { + background-color: var(--erji-color); + color: #fff; + transform: translateY(-3px); +} + +[data-theme="dark"] #back-to-top { + background-color: var(--bankuai-dark-color); + color: var(--text-content-dark-color); + box-shadow: 0 2px 5px rgba(255,255,255,0.1); +} + +[data-theme="dark"] #back-to-top:hover { + background-color: #444; + color: #fff; +} +/* GenericStrong */ [data-theme="dark"] .chroma .gs { } +/* GenericSubheading */ [data-theme="dark"] .chroma .gu { font-weight:bold } +/* GenericTraceback */ [data-theme="dark"] .chroma .gt { } +/* GenericUnderline */ [data-theme="dark"] .chroma .gl { text-decoration:underline } +/* TextWhitespace */ [data-theme="dark"] .chroma .w { } + +/* Fix Artalk comment textarea color in light mode */ +.atk-textarea { + color: #1a1a1a !important; +} +[data-theme="dark"] .atk-textarea { + color: #e5e7eb !important; +} + +/* About Page Card Style */ +.about-card { + background-color: transparent; + border-radius: 0; + padding: 0; + box-shadow: none !important; + margin-bottom: 30px; +} +[data-theme="dark"] .about-card { + background-color: transparent; + box-shadow: none !important; } diff --git a/themes/Ying/static/css/normalize.css b/themes/Ying/assets/css/normalize.css similarity index 100% rename from themes/Ying/static/css/normalize.css rename to themes/Ying/assets/css/normalize.css diff --git a/themes/Ying/static/css/nprogress.min.css b/themes/Ying/assets/css/nprogress.min.css similarity index 100% rename from themes/Ying/static/css/nprogress.min.css rename to themes/Ying/assets/css/nprogress.min.css diff --git a/themes/Ying/static/css/remixicon.css b/themes/Ying/assets/css/remixicon.css similarity index 100% rename from themes/Ying/static/css/remixicon.css rename to themes/Ying/assets/css/remixicon.css diff --git a/themes/Ying/static/css/uikit.min.css b/themes/Ying/assets/css/uikit.min.css similarity index 100% rename from themes/Ying/static/css/uikit.min.css rename to themes/Ying/assets/css/uikit.min.css diff --git a/themes/Ying/static/js/Artalk.js b/themes/Ying/assets/js/Artalk.js similarity index 100% rename from themes/Ying/static/js/Artalk.js rename to themes/Ying/assets/js/Artalk.js diff --git a/themes/Ying/static/js/EasyLazyload.min.js b/themes/Ying/assets/js/EasyLazyload.min.js similarity index 100% rename from themes/Ying/static/js/EasyLazyload.min.js rename to themes/Ying/assets/js/EasyLazyload.min.js diff --git a/themes/Ying/static/js/bsz.js b/themes/Ying/assets/js/bsz.js similarity index 100% rename from themes/Ying/static/js/bsz.js rename to themes/Ying/assets/js/bsz.js diff --git a/themes/Ying/static/js/echarts.min.js b/themes/Ying/assets/js/echarts.min.js similarity index 100% rename from themes/Ying/static/js/echarts.min.js rename to themes/Ying/assets/js/echarts.min.js diff --git a/themes/Ying/static/js/iconfont.js b/themes/Ying/assets/js/iconfont.js similarity index 100% rename from themes/Ying/static/js/iconfont.js rename to themes/Ying/assets/js/iconfont.js diff --git a/themes/Ying/static/js/lightgallery.umd.min.js b/themes/Ying/assets/js/lightgallery.umd.min.js similarity index 100% rename from themes/Ying/static/js/lightgallery.umd.min.js rename to themes/Ying/assets/js/lightgallery.umd.min.js diff --git a/themes/Ying/assets/js/main.js b/themes/Ying/assets/js/main.js index e2aac527..b01af05b 100644 --- a/themes/Ying/assets/js/main.js +++ b/themes/Ying/assets/js/main.js @@ -1 +1,279 @@ -console.log('This site was generated by Hugo.'); +// 判断是否为移动端 +function isMobile() { + if (window.navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)) { + return true; // 移动端 + } else { + return false; // PC端 + } +} + +// 文章图片灯箱 +window.ViewImage && ViewImage.init('.post-content img'); + +// Pure JavaScript Back to Top (High Performance) +document.addEventListener('DOMContentLoaded', function() { + var backToTopButton = document.getElementById('back-to-top'); + if (backToTopButton) { + var isVisible = false; + var ticking = false; + + function update() { + if (window.scrollY > 300) { + if (!isVisible) { + backToTopButton.classList.add('show'); + isVisible = true; + } + } else { + if (isVisible) { + backToTopButton.classList.remove('show'); + isVisible = false; + } + } + ticking = false; + } + + window.addEventListener('scroll', function() { + if (!ticking) { + window.requestAnimationFrame(update); + ticking = true; + } + }, { passive: true }); + + backToTopButton.addEventListener('click', function(e) { + e.preventDefault(); + window.scrollTo({ + top: 0, + behavior: 'smooth' + }); + }); + } +}); + +// loader定时器 +$(document).ready(function () { + setTimeout(function () { + $("#loader").addClass("hide"); + }, 30000); +}); +// 点击进入按钮 +$("#closeloader").click(function () { + $("#loader").addClass("hide"); +}); +// nav栏样式调整 +$('#libabys').first().attr("style", "margin-left: -5px"); + +$('#libabys').eq(1).attr("style", "margin-left: -5px"); +// 友链列表版样式调整 +$('.itp-index:odd').attr("style", "float: right;width:48%;"); + +//文章图片懒加载 +lazyLoadInit({ + // coverColor: "white", + // coverDiv: "
优世界·一个记录生活点滴的小站
", + offsetBottom: 800, + offsetTopm: 800, + showTime: 1100 +}); + +async function loadBarrager() { + try { + const commentsData = await initArtalkAndGetComments(); + if (commentsData) { + await createBarragerFromArtalk(commentsData); + } + } catch (error) { + console.error('加载弹幕时发生错误:', error); + } +} + +// 异步初始化 Artalk 并获取评论数据 +function initArtalkAndGetComments() { + return new Promise((resolve, reject) => { + Artalk.use((ctx) => { + ctx.on('list-loaded', () => { + console.log('评论列表加载完毕'); + const commentsData = ctx.getComments(); + if (commentsData) { + resolve(commentsData); + // console.log(commentsData); + } else { + reject('获取评论数据失败'); + } + }); + }); + + Artalk.init({ + el: '#Comments', // 绑定元素的 Selector + server: 'https://artalk.usj.cc', // 后端地址 + site: '优世界', // 你的站点名 + flatMode: true, + emoticons: '/emotion/OwO.json' + }); + }); +} + +// 异步创建弹幕 +async function createBarragerFromArtalk(commentsData) { + const looperTime = 1000; // 每条弹幕的发送间隔,单位毫秒 + const flattenedComments = flattenComments(commentsData); + const totalComments = flattenedComments.length; + let currentIndex = 0; + + // 初始化弹幕插件 + let barrage = new Barrage.default({ + el: 'body', + backColor: "#000000b5", + fontSize: "14px", + isLeft: true, + speed: 0, + height: "33px" + }); + + if (totalComments !== 0) { + while (currentIndex < totalComments) { + const currentComment = flattenedComments[currentIndex]; + const barragerItem = { + headImg: "https://cravatar.cn/avatar/"+currentComment.email_encrypted + "?s=33" || 'static/default-avatar.png', + content: stripHTML(currentComment.content_marked) || 'No comment', + href: currentComment.link || '#', + speed: 10 + }; + + // 发送弹幕 + barrage.start(barragerItem.content, { + speed: barragerItem.speed, + headImg: barragerItem.headImg, + speed: 35 + }); + + currentIndex++; + await delay(looperTime); // 等待指定的时间再发送下一条弹幕 + } + } +} + +// 延迟函数,返回一个 Promise,用于等待指定的毫秒数 +function delay(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); +} + +// 去除 HTML 标签的函数 +function stripHTML(html) { + return html.replace(/<\/?[^>]+(>|$)/g, ""); +} + +// 展平评论数据结构的函数 +function flattenComments(comments) { + let result = []; + comments.forEach(function (comment) { + result.push(comment); + if (comment.children && comment.children.length > 0) { + result = result.concat(flattenComments(comment.children)); + } + }); + return result; +} + +// 调用异步的弹幕加载函数 +if (document.querySelector("#Comments") && !isMobile()) { + loadBarrager() +} + +function getCurrentTheme() { + var theme = document.documentElement.getAttribute('data-theme'); + if (!theme) { + theme = 'light'; + } + return theme; +} + +function applyTheme(theme) { + document.documentElement.setAttribute('data-theme', theme); + try { + localStorage.setItem('theme', theme); + } catch (e) {} +} + +function updateThemeToggle(theme) { + var button = document.getElementById('theme-toggle'); + if (theme === 'dark') { + if (button) { + button.textContent = '日间'; + } + } else { + if (button) { + button.textContent = '夜间'; + } + } +} + +function toggleTheme() { + var current = getCurrentTheme(); + var next = current === 'dark' ? 'light' : 'dark'; + applyTheme(next); + updateThemeToggle(next); + if (window.Artalk && window.Artalk.get) { + try { + var ctx = Artalk.get('#Comments'); + if (ctx && ctx.setDarkMode) { + ctx.setDarkMode(next === 'dark'); + } + } catch (e) {} + } +} + +document.addEventListener('DOMContentLoaded', function () { + var theme = getCurrentTheme(); + updateThemeToggle(theme); + var button = document.getElementById('theme-toggle'); + if (button) { + button.addEventListener('click', toggleTheme); + } + var avatarWrapper = document.querySelector('.head_author_img'); + var avatarTip = document.querySelector('.avatar-theme-tip'); + if (avatarWrapper) { + avatarWrapper.style.cursor = 'pointer'; + avatarWrapper.addEventListener('click', toggleTheme); + } + if (avatarTip) { + avatarTip.classList.add('is-visible'); + var hideOnce = function () { + avatarTip.classList.add('is-hidden'); + }; + setTimeout(hideOnce, 9000); + if (avatarWrapper) { + avatarWrapper.addEventListener('click', hideOnce); + } + } +}); + +// 代码复制功能 +function initCodeCopy() { + var codeBlocks = document.querySelectorAll('.highlight'); + codeBlocks.forEach(function(block) { + if (block.querySelector('.copy-code-btn')) return; + + var btn = document.createElement('button'); + btn.className = 'copy-code-btn'; + btn.innerHTML = ''; + block.appendChild(btn); + + btn.addEventListener('click', function() { + var code = block.querySelector('code').innerText; + navigator.clipboard.writeText(code).then(function() { + btn.innerHTML = ''; + setTimeout(function() { + btn.innerHTML = ''; + }, 2000); + }).catch(function(err) { + console.error('Failed to copy: ', err); + btn.innerText = 'Error'; + }); + }); + }); +} + +// 页面加载完成后初始化 +document.addEventListener('DOMContentLoaded', function() { + initCodeCopy(); +}); diff --git a/themes/Ying/static/js/mypjax.js b/themes/Ying/assets/js/mypjax.js similarity index 100% rename from themes/Ying/static/js/mypjax.js rename to themes/Ying/assets/js/mypjax.js diff --git a/themes/Ying/static/js/nprogress.js b/themes/Ying/assets/js/nprogress.js similarity index 100% rename from themes/Ying/static/js/nprogress.js rename to themes/Ying/assets/js/nprogress.js diff --git a/themes/Ying/static/js/tiaozhuan.js b/themes/Ying/assets/js/tiaozhuan.js similarity index 100% rename from themes/Ying/static/js/tiaozhuan.js rename to themes/Ying/assets/js/tiaozhuan.js diff --git a/themes/Ying/static/js/uikit.min.js b/themes/Ying/assets/js/uikit.min.js similarity index 100% rename from themes/Ying/static/js/uikit.min.js rename to themes/Ying/assets/js/uikit.min.js diff --git a/themes/Ying/static/js/view-image.min.js b/themes/Ying/assets/js/view-image.min.js similarity index 100% rename from themes/Ying/static/js/view-image.min.js rename to themes/Ying/assets/js/view-image.min.js diff --git a/themes/Ying/layouts/partials/footer.html b/themes/Ying/layouts/partials/footer.html index 882dc0f5..9597859c 100644 --- a/themes/Ying/layouts/partials/footer.html +++ b/themes/Ying/layouts/partials/footer.html @@ -16,18 +16,21 @@ - - - - - - - - - - - - +{{ $iconfont := resources.Get "js/iconfont.js" }} +{{ $lightgallery := resources.Get "js/lightgallery.umd.min.js" }} +{{ $uikit := resources.Get "js/uikit.min.js" }} +{{ $easylazyload := resources.Get "js/EasyLazyload.min.js" }} +{{ $viewimage := resources.Get "js/view-image.min.js" }} +{{ $artalk := resources.Get "js/Artalk.js" }} +{{ $main := resources.Get "js/main.js" }} +{{ $mypjax := resources.Get "js/mypjax.js" }} +{{ $nprogress := resources.Get "js/nprogress.js" }} +{{ $echarts := resources.Get "js/echarts.min.js" }} +{{ $tiaozhuan := resources.Get "js/tiaozhuan.js" }} +{{ $bsz := resources.Get "js/bsz.js" }} + +{{ $scripts := slice $iconfont $lightgallery $uikit $easylazyload $viewimage $artalk $main $mypjax $nprogress $echarts $tiaozhuan $bsz | resources.Concat "js/bundle.js" | resources.Minify | resources.Fingerprint }} + \ No newline at end of file diff --git a/themes/Ying/layouts/partials/head.html b/themes/Ying/layouts/partials/head.html index b1cf9415..99b400b4 100644 --- a/themes/Ying/layouts/partials/head.html +++ b/themes/Ying/layouts/partials/head.html @@ -2,6 +2,40 @@ {{ .Title }} + + + + + {{- $keywords := slice "大学" "教程" "blog" "优世界" "优设计" "博客" "大学生博客" "生活" "文案" -}} + {{- if .Params.tags -}} + {{- $keywords = .Params.tags -}} + {{- end -}} + {{- if .Params.keywords -}} + {{- $keywords = .Params.keywords -}} + {{- end -}} + + + + + + + + + + {{- $image := .Site.Params.authorImage -}} + {{- if .Params.cover -}} + {{- $image = .Params.cover -}} + {{- end -}} + {{- if $image -}} + + + {{- end -}} + + + + + + @@ -22,12 +56,15 @@ })(); - - - - - - + {{ $normalize := resources.Get "css/normalize.css" }} + {{ $remixicon := resources.Get "css/remixicon.css" }} + {{ $uikit := resources.Get "css/uikit.min.css" }} + {{ $nprogress := resources.Get "css/nprogress.min.css" }} + {{ $artalk := resources.Get "css/Artalk.css" }} + {{ $main := resources.Get "css/main.css" }} + + {{ $style := slice $normalize $remixicon $uikit $nprogress $artalk $main | resources.Concat "css/style.css" | resources.Minify | resources.Fingerprint }} + - +
diff --git a/themes/Ying/static/css/main.css b/themes/Ying/static/css/main.css deleted file mode 100644 index 5a7defbd..00000000 --- a/themes/Ying/static/css/main.css +++ /dev/null @@ -1,2872 +0,0 @@ -@font-face { - font-family: 'zql'; - src: url('../font/zql.woff2') format('woff2'), - url('../font/zql.woff') format('woff'); - unicode-range: U+0000-007F, - /* 基本拉丁字母 */ - U+4E00-9FFF, - /* 基本汉字 */ - U+2000-206F, - /* 通用标点符号 */ - U+3000-303F; - /* 中文标点符号 */ -} - -@charset "UTF-8";:root { - --background-color: #fafafa; - --background-dark-color: #020617; - --text-content-color: #24292e; - --text-content-dark-color: #d1d5db; - --text-title-color: #111827; - --text-title-dark-color: #e5e7eb; - --text-highlight-color: #696565; - --frame-dark-color: #1f2933; - --frame-color: #eee; - --artalk-editer-color: #333333; - --erji-color: #666; - --sanji-color: #999; - --bankuai-color: #f6f6f6; - --link-color-light: #374151; - --link-hover-color-light: #111827; - --link-color-dark: #e5e7eb; - --link-hover-color-dark: #d1d5db; - --card-shadow-light: 0 10px 20px 0 rgba(236, 236, 236, 0.86); - --card-shadow-dark: 0 18px 45px rgba(0, 0, 0, 0.9), 0 0 0 1px rgba(148, 163, 184, 0.45); -} - -[data-theme="dark"] body { - color: var(--text-content-dark-color); - background-color: var(--background-dark-color); - background-image: none; -} - -[data-theme="dark"] .main { - background: rgba(15, 23, 42, 0.94); - box-shadow: var(--card-shadow-dark); - backdrop-filter: blur(18px); - -webkit-backdrop-filter: blur(18px); -} - -[data-theme="dark"] .header nav { - border-top-color: #1f2933; -} - -[data-theme="dark"] .header nav ul.flat li a { - color: #9ca3af; -} - -[data-theme="dark"] .header nav ul.flat li.active a { - color: #e5e7eb; -} - -[data-theme="dark"] .meta { - color: #9ca3af; -} - -[data-theme="dark"] .footer { - border-top-color: #1f2933; - color: #6b7280; -} - -[data-theme="dark"] .post-content { - color: var(--text-content-dark-color); -} - -.post-title { - color: var(--text-title-color); -} - -[data-theme="dark"] .post-title { - color: var(--text-title-dark-color); -} - -.theme-toggle-button { - border: none; - background: transparent; - cursor: pointer; - font-size: 14px; - padding: 4px 8px; - color: #586069; -} - -.theme-toggle-button:focus { - outline: none; -} - -[data-theme="dark"] .theme-toggle-button { - color: #e5e7eb; -} - -::-webkit-scrollbar { - width: 13px; -} - -::-webkit-scrollbar-button { - display: none; -} - -::-webkit-scrollbar-thumb { - min-height: 16px; - background-color: #999999; - background-clip: padding-box; - border: 3px solid #fdfdfd; - border-radius: 5px; -} - -::selection { - background: #444; - color: #fff; -} - -body { - font-family: 'zql', serif; - color: var(--text-content-color); - line-height: 1.6; - font-size: 16px; - background: var(--background-color); - background-image: url('../image/bg.svg'); - background-image: url(https://usj.cc/usr/uploads/2023/06/3287615239.jpg); - background-image:url(data:image/webp;base64,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); - background-repeat: space; - background-size: cover; - /* 小恐龙背景css */ - background-repeat: round; - background-size: contain; - /* 结束 */ - /* background-repeat: initial; - background-size: inherit; */ - background-attachment: fixed; - z-index: 5; -} - -hr { - display: block; - height: 1px; - border: 0; - border-top: 1px solid #cccccc; - margin: 1rem 0; - padding: 0; -} - -img { - max-width: 100%; - border-radius: 5px; - box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); - vertical-align: middle -} - -.icon { - width: 1.8em; - height: 1.8em; - vertical-align: -1em; - fill: currentColor; - overflow: hidden; -} - -a img { - border: none; -} - -pre, -code { - font-family: 'JetBrains Mono', 'Fira Code', Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; - font-size: 14px; - border-radius: 4px; - background-color: #f6f8fa; /* Day Mode */ - color: #24292e; - border: 1px solid #d0d7de; -} - -[data-theme="dark"] pre, -[data-theme="dark"] code { - background-color: #282a36; /* Night Mode */ - color: #f8f8f2; - border-color: #44475a; -} - -code { - padding: 2px 6px; - word-break: break-all; /* Prevent inline code from breaking layout */ -} - -pre { - padding: 10px; - overflow-x: auto; - max-width: 100%; /* Fix mobile overflow */ -} - -pre>code { - background-color: transparent; - color: inherit; - padding: 0; - border: 0; - word-break: normal; -} - -table { - border-collapse: collapse; - border-spacing: 0; - word-break: break-all; -} - -table th { - background-color: #f6f8fa; -} - -table th, -table td { - padding: 10px 20px; - border: 1px solid #dfe2e5; -} - -blockquote { - margin-left: 4px; - font-weight: 300; - border-left: 3.8px solid rgb(80 80 80); - background-color: rgba(51 51 51/5%); - padding-left: 20px; - word-break: break-all; -} - -a { - color: var(--link-color-light); - text-decoration: none; - transition: color 0.35s ease; -} - -a:hover { - color: var(--link-hover-color-light); - text-decoration: underline; -} - -[data-theme="dark"] a { - color: var(--link-color-dark); -} - -[data-theme="dark"] a:hover { - color: var(--link-hover-color-dark); -} - -h1, -h2, -h3, -h4, -h5, -h6 { - line-height: 1.2; - font-weight: 400; -} - -h1 { - font-size: 1.5rem; -} - -h2 { - font-size: 1.375rem; -} - -h3 { - font-size: 1.25rem; -} - -h4, -h5, -h6 { - font-size: 1.125rem; -} - -ul { - padding-left: 0px; - list-style-type: disc; - list-style: none; -} - -/*默认 box-shadow 数值:rgba(236, 236, 236, 0.86)*/ -.main { - max-width: 630px; - overflow: hidden; - margin: 60px auto; - padding: 50px; - background: rgba(255, 255, 255, 0.82); - box-shadow: var(--card-shadow-light); - border-radius: 8px; - z-index: 10; - position: relative; - text-align: center; - backdrop-filter: blur(18px); - -webkit-backdrop-filter: blur(18px); - transition: background-color 0.35s ease, box-shadow 0.35s ease, color 0.35s ease, backdrop-filter 0.35s ease; -} - -.header { - margin-bottom: 10px; - padding-bottom: 10px; - display: flex; - flex-direction: column; - align-items: stretch; - gap: 16px; -} - -.header-top { - display: flex; - align-items: center; - justify-content: space-between; - gap: 16px; -} - -.head_author_img { - display: flex; - align-items: center; - justify-content: center; - margin-right: 16px; - padding: 0; - cursor: pointer; -} - -.avatar-theme-tip { - margin-left: 10px; - padding: 4px 12px; - border-radius: 999px; - background: #111827; - color: #f9fafb; - font-size: 11px; - white-space: nowrap; - box-shadow: 0 12px 30px rgba(15, 23, 42, 0.25); - opacity: 0; - transform: translateY(2px) scale(0.98); - transition: opacity 0.4s ease; -} - -.avatar-theme-tip.is-visible { - opacity: 1; - animation: avatar-tip-float 2.2s ease-in-out infinite; -} - -.avatar-theme-tip.is-hidden { - opacity: 0; - transform: translateY(-4px) scale(0.96); - animation: none; - pointer-events: none; -} - -[data-theme="dark"] .avatar-theme-tip { - background: #f9fafb; - color: #111827; - box-shadow: 0 14px 36px rgba(0, 0, 0, 0.6); -} - -@keyframes avatar-tip-float { - 0% { - transform: translateY(2px) scale(0.98); - } - 50% { - transform: translateY(-2px) scale(1); - } - 100% { - transform: translateY(2px) scale(0.98); - } -} - -.header h1, -.header h2 { - margin: 0; - padding: 0; - font-size: 1.6rem; - margin-bottom: 10px; -} - -.header h2 { - font-size: .9rem; - line-height: 2rem; - margin-bottom: 0; -} - -.header nav { - border-top: 1px solid #f4f4f4; - transition: border-color 0.35s ease; -} - -.header nav ul, -.header nav li { - margin: 0; -} - -.header nav ul.flat { - padding: 0; -} - -.header nav ul.flat li { - display: inline-block; - list-style: none; - margin-left: 0; - margin-right: 15px; - margin-top: 20px; - text-transform: capitalize; -} - -.header nav ul.flat li.active a { - color: #24292e; -} - -.header nav ul.flat li a { - color: #586069; -} - -.header nav ul.flat li a:hover { - color: #646464; - text-decoration: none; -} - -.header .site-description { - display: flex; - flex-direction: column; - justify-content: center; - align-items: flex-start; - margin-top: 0; -} - -.header .site-description nav { - margin: 0; - padding: 0; - border: none; - min-width: 50px; - margin-bottom: 10px; -} - -.header .site-description nav ul a { - display: inline-block; - margin-right: 5px; - text-decoration: none; -} - - -.header .site-description nav ul a:hover { - color: #586069; -} - -/* Pjax 页面切换过渡动画 */ -.pjax-leave { - position: absolute; - top: 0; - width: 100%; - animation: pjax-fade-out 0.3s ease-in forwards; - z-index: 0; -} - -.pjax-enter { - animation: pjax-fade-in 0.3s ease-out forwards; - z-index: 1; - position: relative; -} - -@keyframes pjax-fade-in { - from { - opacity: 0; - transform: translateY(10px); - } - to { - opacity: 1; - transform: translateY(0); - } -} - -@keyframes pjax-fade-out { - from { - opacity: 1; - transform: translateY(0); - } - to { - opacity: 0; - transform: translateY(-10px); - } -} - -.section .section-header { - font-size: 0.88rem; - font-weight: 600; - text-transform: uppercase; - color: #999999; - margin-bottom: 15px; - letter-spacing: 1px; -} - -.recent-posts .posts .post { - margin-bottom: 20px; - margin-top: 20px; -} - -.recent-posts .posts .post .time, -.post .post-header .time, -.list .posts .post .time { - font-size: 0.725rem; - color: #bec8d2; - margin-bottom: 2px; -} - -.meta { - margin-top: 10px; - font-size: 12px; - color: #999999; - margin-bottom: 2px -} - -.post-tags { - margin-top: 20px; -} - -.post-tags .tags { - margin-top: 40px; -} - -.post-tags .tags a { - display: inline-block; - border-radius: 2px; - padding: 0.1rem 0.4rem; - color: #fff; - line-height: 20px; - font-size: 12px; - text-decoration: none; - margin: 0 1px; - border: 1px solid #41464b; - background-color: #41464b; -} - -.footer { - text-align: right; - font-size: 0.75em; - color: #999999; - border-top: 1px solid #f4f4f4; - padding-top: 10px; - margin-top: 10px; - transition: color 0.35s ease, border-color 0.35s ease; -} - -/* 代码高亮 Mac 风格样式 */ -.highlight { - background: #f6f8fa; /* Day Mode: Light BG (GitHub) */ - color: #24292e; /* Day Mode: Dark Text */ - border-radius: 10px; - border: 1px solid #d0d7de; /* Day Mode Border */ - box-shadow: none; /* Remove Shadow */ - margin: 20px 0; - overflow: hidden; - position: relative; - transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease; -} - -[data-theme="dark"] .highlight { - background: #282a36; /* Night Mode: Dark BG (Dracula) */ - color: #f8f8f2; /* Night Mode: Light Text */ - border: 1px solid #44475a; /* Night Mode Border */ - box-shadow: none; /* Remove Shadow */ -} - -.highlight::before { - content: " "; - display: block; - height: 12px; - width: 12px; - margin: 15px; - background: #ff5f56; - border-radius: 50%; - box-shadow: 20px 0 0 #ffbd2e, 40px 0 0 #27c93f; - position: absolute; - top: 0; - left: 0; - z-index: 2; -} - -.highlight pre, -.highlight code, -.highlight kbd, -.highlight samp { - font-family: 'JetBrains Mono', 'Fira Code', Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; - font-size: 14px; - line-height: 1.6; - font-weight: normal; - white-space: pre; -} - -.highlight pre { - margin: 0; - padding: 45px 15px 15px; /* Top padding for Mac dots */ - overflow: auto; - background-color: transparent !important; /* Override inline style */ - border: none !important; /* Remove conflicting border */ - border-radius: 0 !important; /* Reset border radius inside container */ -} - -.highlight pre code { - padding: 0; - background-color: transparent !important; - color: inherit; -} - -/* 滚动条样式 */ -.highlight pre::-webkit-scrollbar { - height: 8px; - width: 8px; -} - -.highlight pre::-webkit-scrollbar-thumb { - background: rgba(0, 0, 0, 0.2); /* Day Mode: Dark scrollbar */ - border-radius: 4px; -} - -[data-theme="dark"] .highlight pre::-webkit-scrollbar-thumb { - background: rgba(255, 255, 255, 0.2); /* Night Mode: Light scrollbar */ -} - -.highlight pre::-webkit-scrollbar-thumb:hover { - background: rgba(255, 255, 255, 0.3); -} - -[data-theme="dark"] .highlight pre::-webkit-scrollbar-thumb:hover { - background: rgba(0, 0, 0, 0.3); -} - -.highlight pre::-webkit-scrollbar-track { - background: transparent; -} - -@media (max-width: 767px) { - h1 { - font-size: 1.375rem; - } - - h2 { - font-size: 1.25rem; - } - - h3 { - font-size: 1.125rem; - } - - h4, - h5, - h6 { - font-size: 1rem; - } - - body { - background: #ffffff; - } - - .main { - padding: 30px; - margin: 0 auto; - box-shadow: none; - } - - .header h2 { - display: none; - } - - .container { - margin-top: 10px; - } - - .highlight pre::-webkit-scrollbar { - display: none; - } -} - -/* 代码复制按钮 */ -.copy-code-btn { - position: absolute; - top: 10px; - right: 10px; - background: rgba(0, 0, 0, 0.05); - border: none; - border-radius: 4px; - color: #555; - padding: 4px 8px; - cursor: pointer; - font-size: 16px; - transition: all 0.2s; - opacity: 0; - z-index: 10; -} - -[data-theme="dark"] .copy-code-btn { - background: rgba(255, 255, 255, 0.1); - color: #f8f8f2; -} - -.highlight:hover .copy-code-btn { - opacity: 1; -} - -.copy-code-btn:hover { - background: rgba(0, 0, 0, 0.1); - transform: scale(1.1); -} - -[data-theme="dark"] .copy-code-btn:hover { - background: rgba(255, 255, 255, 0.2); -} - - .comment-form-author { - width: 45% !important; - float: right; - /*margin-right: 5%;*/ - } - - .comment-form-email { - width: 45% !important; - float: left; - } - - #cancel-huifu { - position: relative; - left: 53px !important; - } - - .header img { - width: 75px !important; - height: 75px !important; - } - - .site-description { - margin-top: 10px !important; - } - - .itp-index { - width: 100% !important; - } - - #scrollUp { - right: 35px !important; - } -} - -/*回到顶部*/ - -#scrollUp { - bottom: 50px; - right: 50px; - background: #ffffff; - height: 40px; - width: 40px; - border-radius: 50%; - display: flex; - align-items: center; - justify-content: center; - font-size: 22px; - color: #111827; - text-decoration: none; - box-shadow: 0 10px 20px rgba(0, 0, 0, 0.06); - z-index: 2147483647; /* Ensure it's on top */ - cursor: pointer; -} - -#scrollUp::before { - content: "⇡"; -} - -[data-theme="dark"] #scrollUp { - background: rgba(15, 23, 42, 0.95); - box-shadow: 0 10px 25px rgba(0, 0, 0, 0.55); - color: #e5e7eb; -} - -/*美化框*/ - -#mhz, -#szh, -#yyz { - /*圆角值,在此定义*/ - border-radius: 8px; -} - -/*迷幻紫*/ - -#mhz { - color: #555555; - overflow: hidden; - margin: 10px 0; - padding: 15px 15px 15px 35px; - /*border-radius: 10px;*/ - box-shadow: 6px 0 12px -5px rgb(190, 196, 252), -6px 0 12px -5px rgb(189, 196, 252); - background-color: #8EC5FC; - background-image: linear-gradient(62deg, #8EC5FC 0%, #E0C3FC 100%); - background-image: -webkit-linear-gradient(62deg, #8EC5FC 0%, #E0C3FC 100%); -} - -/*优雅紫*/ - -#yyz { - color: #ffffff; - overflow: hidden; - margin: 10px 0; - padding: 15px 15px 15px 35px; - /*border-radius: 10px;*/ - box-shadow: 6px 0 12px -5px rgb(175, 160, 208), -6px 0 12px -5px rgba(177, 161, 207, 0); - background-image: radial-gradient(circle farthest-corner at 10% 20%, rgba(95, 117, 227, 1) 0%, rgba(188, 167, 205, 1) 90%); -} - - -/*深邃黑*/ - -#szh { - color: #c7c7c7; - overflow: hidden; - margin: 10px 0; - padding: 15px 15px 15px 35px; - /*border-radius: 5px;*/ - box-shadow: 6px 0 14px -6px rgba(15, 23, 42, 0.85), -6px 0 14px -6px rgba(15, 23, 42, 0.55); - background-image: radial-gradient(circle farthest-corner at 10% 20%, rgba(0, 0, 0, 1) 0%, rgba(64, 64, 64, 1) 90.2%); -} - -/*隐藏文字*/ - -darkb-text { - background-color: #12121c; - color: #12121c; - text-shadow: none; - transition: color 0.3s; - /*padding-top: 3px;*/ - padding: 2px 2px 2px 2px; - font-size: 14px; - border-radius: 4px; -} - -darkb-text:hover, -darkb-text:active { - color: #FFF; -} - -/* 分页 */ - -.pagination { - margin: 0; - padding: 10px 0 0; - text-align: left; - display: flex; - justify-content: space-between; -} - -.pagination li { - list-style: none; - display: inline-block; - margin: 0; - padding: 0; -} - -.pagination .page-previous { - /* margin-right: 20px; */ - /* padding-right: 20px; */ -} - -.pagination .page-item.page-previous { - text-align: right; -} - -.pagination .page-item.page-next { - text-align: right; -} - -/* 骨架屏动画 */ -.skeleton-line { - background: #e0e0e0; - border-radius: 4px; - background-image: linear-gradient(90deg, #e0e0e0 0px, #f5f5f5 40px, #e0e0e0 80px); - background-size: 600px; - animation: skeleton-loading 1.6s infinite ease-out; -} - -@keyframes skeleton-loading { - 0% { - background-position: -100px; - } - 100% { - background-position: 140px; - } -} - -[data-theme="dark"] #pjax-loading-skeleton { - background: rgba(15, 23, 42, 0.94) !important; - box-shadow: var(--card-shadow-dark) !important; - backdrop-filter: blur(18px); -} - -[data-theme="dark"] .skeleton-line { - background: #1f2937; - background-image: linear-gradient(90deg, #1f2937 0px, #374151 40px, #1f2937 80px); -} - position: relative; - border-radius: 5px; - padding-bottom: 66.5%; - height: 0; - border: 6px solid #f0f0f0; - overflow: hidden; -} - -.size-video iframe { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 100%; - height: 100%; - border: 0; -} - -/*归档页面*/ -.a-title { - font-size: 24px; - word-wrap: break-word; - line-height: 1.4; - box-shadow: inset 0 -7px 0 0 rgb(52 58 64 / 10%); - display: inline; -} - -.link-title { - text-align: center; - margin-top: 20px; - margin-bottom: 14px; -} - -.link-title span { - display: inline-block; - margin-top: 6px; - margin-bottom: 6px; - font-size: 1.35rem; - font-weight: 650; - letter-spacing: 0.12em; - text-transform: none; - color: #4b5563; -} - -[data-theme="dark"] .link-title span { - color: #e5e7eb; -} - -h3.diy-h3 { - cursor: pointer; - font-size: 1.05rem; - padding-left: 1px; - margin-top: 0.5em; - margin-bottom: 5px; -} - -.a-archives { - margin-top: 6px; - display: inline-block; - color: #374151; - font-size: 0.95rem; -} - -.articles_date_time { - padding: 3px 5px; - font-size: 0.75rem; - font-weight: 500; - line-height: 1; - background-color: rgba(52, 58, 64, .1); - color: #324b64; - margin-right: 5px; - border-radius: 999px; -} - -[data-theme="dark"] .a-archives { - color: #e5e7eb; -} - -[data-theme="dark"] .articles_date_time { - background-color: rgba(148, 163, 184, .25); - color: #e5e7eb; -} - -/*友链*/ -.link_box, -.link_marks { - float: left; - padding-right: 5px; -} - -.yiyandes { - font-size: .9rem; - line-height: 2rem; - margin-left: -28.6px; - margin-top: -2px; -} - -/*comments*/ -.comments-area { - /*padding-top: 25px;*/ - /*border-top: 1px solid #eaeaea;*/ - margin-top: 25px; -} - -.comments-area ol { - list-style: none; - padding: 0; -} - -.comments-area .comment-body { - border-bottom: 1px solid #f4f4f4; - padding-bottom: 20px; - margin-bottom: 20px; -} - -.comment-meta { - margin-bottom: 16px; -} - -.comment-meta a { - text-decoration: none; -} - -.comment-author { - display: flex; - align-items: center; -} - -.comment-author img { - border-radius: 50%; -} - -.comment-author a { - color: #303135; - text-decoration: none; - font-weight: 700; - font-size: 16px; -} - -.comment-metadata time { - color: gray; - font-size: 12px; -} - -.comment-reply-title { - margin: 10px 0 5px; -} - -.comment-respond input { - width: 100%; -} - -.site-footer { - border-top: 1px solid #f4f4f4; - padding: 10px 0; - font-size: 13px; -} - -.site-footer a { - color: rgb(0, 0, 0); - text-decoration: none; -} - -.comment-form-author { - width: 48%; - float: right; - /*margin-right: 5%;*/ -} - -.comment-form-email { - width: 48%; - float: left; -} - -.comment-form-url { - width: 100%; - float: right; -} - -.comment-list li ol li { - padding-left: 1rem; -} - -.reply { - margin-top: 16px; -} - -.page-navigator { - display: flex; - width: 100%; - margin: 1rem 0; -} - -.page-navigator li { - display: none; -} - -.page-navigator .prev { - display: block; - flex: 1; -} - -.page-navigator .next { - display: flex; - justify-content: flex-end; -} - -.foot_bar { - z-index: 999; - position: fixed; - right: 2rem; - bottom: 2rem; - display: grid; -} - -.foot_bar_items { - line-height: 24px; - text-align: center; - color: #000; - cursor: pointer; - display: inline-flex; - justify-content: center; - align-items: center; - margin: .5rem 0; -} - -.changeMode { - background-color: #eee; - height: calc(26px*1); - width: calc(100px*1); - border-radius: calc(100px*1); - display: inline-block; -} - -.toggle-dark-mode-ignore { - position: absolute; - width: 50%; - background-color: #fff; - box-shadow: 0 2px 15px rgb(0 0 0 / 15%); - transition: transform .3s cubic-bezier(.25, .46, .45, .94); - height: calc(26px*1); - border-radius: calc(100px*1); - display: inline-block; - left: 0; -} - -.dark-mode-ignore { - width: 74%; - position: absolute; - display: flex; - justify-content: space-between; - user-select: none; - left: 50%; - top: 50%; - transform: translate(-50%, -50%); -} - -.switch-light-text { - font-size: calc(12px*1); - font-weight: 500; - color: #555; - margin: 0; - padding-bottom: 0; -} - -.switch-dark-text { - font-size: calc(12px*1); - font-weight: 500; - color: #555; - margin: 0; - padding-bottom: 0; - opacity: .5; -} - -img.biaoqing[src*="qutu"], -img.biaoqing[src*="huaji"] { - width: auto; - height: auto; - max-height: 5rem; -} - - -label { - font-size: 13px; - color: #9e9e9e; -} - -.skills-section { - margin-top: 2.5rem; -} - -.section-title { - font-size: 0.9rem; - letter-spacing: 0.16em; - text-transform: uppercase; - color: #9ca3af; - margin-bottom: 1.25rem; -} - -.skills-container { - display: flex; - flex-direction: column; - gap: 0.75rem; - overflow: hidden; -} - -.skills-row { - position: relative; - overflow: hidden; -} - -.skills-track { - display: inline-flex; - align-items: center; - gap: 0.75rem; - white-space: nowrap; - animation: skills-scroll 26s linear infinite; -} - -.skills-track-reverse { - animation-direction: reverse; -} - -.skill-tag { - display: inline-flex; - align-items: center; - padding: 0.35rem 0.9rem; - border-radius: 999px; - border: 1px solid rgba(148, 163, 184, 0.7); - background: rgba(255, 255, 255, 0.86); - font-size: 0.8rem; - color: #374151; -} - -@keyframes skills-scroll { - 0% { - transform: translateX(0); - } - 100% { - transform: translateX(-50%); - } -} - -[data-theme="dark"] .section-title { - color: #6b7280; -} - -[data-theme="dark"] .skill-tag { - border-color: rgba(31, 41, 55, 0.85); - background: rgba(15, 23, 42, 0.96); - color: #e5e7eb; -} - -textarea { - width: 100%; - overflow: auto; -} - -input[type=text], -input[type=email], -input[type=url], -input[type=password], -input[type=search], -input[type=number], -input[type=tel], -input[type=range], -input[type=date], -input[type=month], -input[type=week], -input[type=time], -input[type=datetime], -input[type=datetime-local], -input[type=color], -textarea { - color: #666; - border: 1px solid #ccc; - border-radius: 3px; - padding: 8px; -} - -button, -input, -optgroup, -select, -textarea { - color: inherit; - font: inherit; - margin: 0; -} - -button, -input[type=button], -input[type=reset], -input[type=submit] { - border: 1px solid; - border-color: #000 #000 #000; - border-radius: 3px; - background-color: #222; - color: #fff; - padding: 6px; - margin-top: 10px; - margin-left: 23%; -} - -.ell { - white-space: normal; - overflow: hidden; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-line-clamp: 1; - -webkit-box-orient: vertical; - word-break: break-all; -} - -.clear:before, -.clear:after, -.entry-content:before, -.entry-content:after, -.navigation:before, -.navigation:after { - content: ""; - display: table; - table-layout: fixed; -} - -.clear:after, -.entry-content:after, -.wrapper:after, -.navigation:after { - clear: both; -} - -.site-header { - padding: 25px 0; -} - -.site-branding { - float: left; - padding-top: 20px; -} - -.site-title { - margin: 0; - line-height: 1; - font-size: 14px; - font-weight: 500; -} - -.site-title a { - text-decoration: none; - color: #2d2e33; - font-size: 20px; - font-weight: bold; -} - -#site-navigation { - display: block; - float: right; -} - -#site-menu { - list-style: none; - margin: 0; - padding-left: 0; -} - -#site-menu li { - float: left; - position: relative; -} - -#site-menu li a { - display: block; - text-decoration: none; - color: #525252; - padding: 20px 0 20px 30px; -} - -.site-content { - margin-bottom: 50px; -} - -.archives__heading { - font-size: 24px; - margin-top: 0; - margin-bottom: 25px; -} - -.archives__list { - list-style: none; - padding: 0; -} - -.archives__list li { - padding: 5px 0; - font-size: 14px; -} - -.archives__list li a { - max-width: 50%; - display: inline-block; - text-decoration: none; - -} - -.archives__list li span { - color: #a9a9a9; - max-width: 50%; - display: inline-block; - float: right; - text-align: right; -} - -.entry-header { - margin-bottom: 32px; -} - -.entry-title { - font-size: 30px; - margin: 0; -} - -.entry-content p { - font-size: 14px; -} - -.entry-content img { - clear: both; - display: block; - margin-left: auto; - margin-right: auto; - border-radius: 5px; -} - -#showResult { - margin-top: 1rem; -} - -#showResult .biaoqing { - width: 24px; -} - -/*owo表情*/ -.biaoqing[src*="bqb"] { - width: 77px; - display: block; -} - -.OwO .OwO-body .OwO-items-image .OwO-item[data-input*="bqb"] { - max-width: calc(50% - 10px); - ; -} - -.biaoqing { - width: 36px; - display: inline; - box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; -} - -/*友圈微调*/ -.cf-article[data-v-56cae500] { - border: 1px solid #43464A !important; -} - -/*评论头衔*/ -.badge-xztx { - margin-left: .2rem; - background-color: #000000; - color: #fff; - padding: 2px 5px; - border-radius: 5px; - font-size: .8rem; - font-weight: bold; - line-height: .8rem; -} - -.visitor { - margin-left: .2rem; - background-color: #939393; - color: #fff; - padding: 2px 5px; - border-radius: 5px; - font-size: .8rem; - font-weight: bold; - line-height: .8rem; -} - -/*评论取消按钮*/ -#cancel-huifu { - position: relative; - left: 190px; -} - -/*评论提醒*/ -.pl-img { - width: 40px; - height: 40px; - border-radius: 0px; - animation: fade-in .65s ease-in none; -} - -.massage-container { - /*display: flex;*/ - height: 100%; - justify-content: center; - align-items: center; -} - -.rectangle { - display: flex; - align-items: center; - justify-content: flex-start; - positon: relative; - width: 50px; - height: 40px; - background: #000000; - transform: scale(0); - border-radius: 50%; - color: white; - opacity: 0; - overflow: hidden; - animation: scale-in .3s ease-out forwards, - expand .35s .25s ease-out forwards; -} - -.notification-text { - /*display: flex;*/ - align-items: center; - padding: 0 16px; - font-family: 'Roboto', sans-serif; - font-size: 14px; - animation: fade-in .65s ease-in forwards; -} - -@keyframes scale-in { - 100% { - transform: scale(1); - opacity: 1; - } -} - -@keyframes expand { - 50% { - width: 350px; - border-radius: 6px; - } - - 100% { - width: 300px; - border-radius: 4px; - box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, .2), - 0px 1px 1px 0px rgba(0, 0, 0, .14), - 0px 3px 3px -1px rgba(0, 0, 0, .12); - } -} - -@keyframes fade-in { - 0% { - opacity: 0; - } - - 100% { - opacity: .8; - } -} - -/*新文章提醒样式*/ -.new-post-message { - content: ''; - background: url(https://usj.cc/pics/2023/01/1457247750.png) no-repeat; - width: 26px; - height: 14px; - background-size: contain; - display: inline-block; - vertical-align: middle; - margin-top: -2px; - margin-left: 1px; -} - -/*文章图片懒加载*/ -.load-img { - width: 100%; - height: auto; - background-color: #CCCCCC; - display: block; -} - -/*模糊加载动画*/ -@-webkit-keyframes blur { - 0% { - -webkit-filter: blur(10px); - /* Chrome, Opera */ - -moz-filter: blur(10px); - -ms-filter: blur(10px); - filter: blur(10px); - } - - 50% { - -webkit-filter: blur(50px); - -moz-filter: blur(5px); - -ms-filter: blur(5px); - filter: blur(5px); - } - - 100% { - -webkit-filter: blur(0px); - -moz-filter: blur(0px); - -ms-filter: blur(0px); - filter: blur(0px); - } -} - -.lazy-img { - -webkit-animation-name: blur; - /*动画名称*/ - -webkit-animation-duration: 2s; - /*动画持续时间*/ - -webkit-animation-iteration-count: 1; - /*动画次数*/ - -webkit-animation-delay: 0s; - /*延迟时间*/ -} - -.blog-img { - -webkit-animation-name: blur; - /*动画名称*/ - -webkit-animation-duration: 1s; - /*动画持续时间*/ - -webkit-animation-iteration-count: 1; - /*动画次数*/ - -webkit-animation-delay: 0s; - /*延迟时间*/ -} - -/*弹幕相关css*/ -.container { - text-align: initial !important; -} - -.dm-biaoqing[src*="bqb"] { - width: 37px; - display: inline; -} - -.dm-biaoqing { - width: 36px; - display: inline; - box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; -} - -/*wechat样式*/ -@font-face { - font-family: 'Color Emoji'; - src: local('Apple Color Emoji'), local('Segoe UI Emoji'), local('Segoe UI Symbol'), local('Noto Color Emoji'); -} - -.qmbox .container { - --background_color: #f3f3f3; - --text_color: #191919; -} - -@media (prefers-color-scheme:dark) { - .qmbox .container { - --background_color: #111; - --text_color: #e6e6e6; - } -} - -.qmbox .container { - --font_size_grande: 16px; - --font_size_tall: 14px; - --font_size_short: 12px; - --line_height_grande: 20px; - --line_height_tall: 22px; - --line_height_short: 20px; -} - -.qmbox .container { - padding-top: var(--line_height_short); - padding-bottom: var(--line_height_short); - color: var(--text_color); - /*font: normal var(--font_size_grande) / var(--line_height_grande) 'PingFang SC', 'Microsoft YaHei', 'WenQuanYi Micro Hei', sans-serif, 'Color Emoji';*/ - background: var(--background_color); -} - -@media screen and (min-width: 550px) { - .qmbox .g-width { - width: 550px; - margin: 0 auto; - } -} - -@media screen and (max-width: 459px) { - .qmbox .g-width { - width: 100%; - min-width: 320px; - max-width: 460px; - } -} - -.qmbox .g-clear-both::after { - display: block; - clear: both; - content: ''; -} - -.qmbox .g-left { - display: inline; - float: left; -} - -.qmbox .g-right { - display: inline; - float: right; -} - -.qmbox .g-inline-center { - text-align: center; -} - -.qmbox .date { - --date_text_color: #aaa; -} - -@media (prefers-color-scheme:dark) { - .qmbox .date { - --date_text_color: #595859; - } -} - -.qmbox .date { - height: var(--line_height_short); - color: var(--date_text_color); - font-size: var(--font_size_short); - line-height: var(--line_height_short); - font-weight: 300; -} - -.qmbox .dialog { - --message_text_color: #1e1e1e; - --message_background_color: #fff; - --reply_text_color: #0f170a; - --reply_background_color: #95ec69; - --quote_text_color: #7d7d7d; - --quote_background_color: #e8e8e8; -} - -@media (prefers-color-scheme:dark) { - .qmbox .dialog { - --message_text_color: #eaeaea; - --message_background_color: #2c2c2c; - --reply_text_color: #04120a; - --reply_background_color: #28b561; - --quote_text_color: #989898; - --quote_background_color: #1a1a1a; - } -} - -.qmbox .dialog { - --avatar_size: 36px; - --border_radius: 4px; - --bubble_lr_offset: 20px; - --bubble_arrow_size: 10px; - --bubble_padding_vertical: 10px; - --bubble_padding_vertical_quote: 8px; - --bubble_padding_horizontal: 12px; - margin-top: -10px; -} - -.qmbox .bubble { - max-width: calc(100% - (var(--bubble_lr_offset) * 2) - var(--avatar_size) - var(--bubble_arrow_size)); - margin-top: var(--line_height_short); - clear: both; -} - -.qmbox .bubble:first-child { - margin-top: 0; -} - -.qmbox .message { - margin-left: var(--bubble_lr_offset); -} - -.qmbox .reply { - margin-right: var(--bubble_lr_offset); -} - -.qmbox .bubble-text { - position: relative; - max-width: calc(100% - var(--avatar_size) - var(--bubble_arrow_size) - (var(--bubble_padding_horizontal) * 2)); - padding: var(--bubble_padding_vertical) var(--bubble_padding_horizontal); - border-radius: var(--border_radius); - font-size: var(--font_size_tall); - line-height: var(--line_height_tall); - word-break: break-all; -} - -.qmbox .bubble-text::after { - position: absolute; - top: calc((var(--avatar_size) - var(--bubble_arrow_size)) / 2); - display: block; - width: 0; - height: 0; - border: calc(var(--bubble_arrow_size) / 2) solid transparent; - content: ''; -} - -.qmbox .message-text { - margin-left: var(--bubble_arrow_size); - color: var(--message_text_color); - background-color: var(--message_background_color); -} - -.qmbox .message-text::after { - left: calc(var(--bubble_arrow_size) / 2 * -1); - border-left: 0 none; - border-right: calc(var(--bubble_arrow_size) / 2) solid var(--message_background_color); -} - -.qmbox .reply-text { - margin-right: var(--bubble_arrow_size); - color: var(--reply_text_color); - background-color: var(--reply_background_color); -} - -.qmbox .reply-text::after { - right: calc(var(--bubble_arrow_size) / 2 * -1); - border-left: calc(var(--bubble_arrow_size) / 2) solid var(--reply_background_color); - border-right: 0 none; -} - -.qmbox .bubble-avatar { - width: var(--avatar_size); - height: var(--avatar_size); - border-radius: var(--border_radius); -} - -.qmbox .quote { - max-width: calc(100% - ((var(--bubble_arrow_size) + var(--avatar_size) + var(--bubble_lr_offset) + var(--bubble_padding_horizontal)) * 2)); - margin-top: calc(var(--bubble_padding_horizontal) / 2); - padding: var(--bubble_padding_vertical_quote) var(--bubble_padding_horizontal); - border-radius: var(--border_radius); - color: var(--quote_text_color); - font-size: var(--font_size_short); - line-height: var(--line_height_short); - background-color: var(--quote_background_color); - word-break: break-all; - clear: both; -} - -.qmbox .message+.quote { - margin-left: calc(var(--bubble_arrow_size) + var(--avatar_size) + var(--bubble_lr_offset)); -} - -.qmbox .reply+.quote { - margin-right: calc(var(--bubble_arrow_size) + var(--avatar_size) + var(--bubble_lr_offset)); -} - -.message-text img { - width: 25px !important; - display: inline; - box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; -} - -.reply-text img { - width: 25px !important; - display: inline; - box-shadow: 0 0px 0px rgb(0 0 0 / 0%) !important; -} - -/*鱼塘*/ -#random-post { - min-height: 32px; -} - -.random-friends-post { - text-decoration: none; - font-weight: 700; - padding: 0 4px; -} - -.random-friends-post:hover { - text-decoration: none; - border-radius: 4px; -} - -.random-post-start { - transition: 2s; -} - -#random-post { - min-height: 32px; - border-radius: 12px; - margin-top: 8px; - clear: both; -} - -@media screen and (max-width: 3000px) { - .cf-article[data-v-56cae500] { - margin: 8px; - border-radius: 8px; - font-weight: bolder; - overflow: hidden; - transition: all .3s ease-out; - position: relative; - padding: 1rem; - border: var(--pyq-boder); - height: 160px; - display: flex; - align-content: space-between; - flex-direction: column; - justify-content: space-between; - box-shadow: var(--heo-shadow-border); - } - - .cf-article-item[data-v-56cae500] { - width: 50% !important; - } - - .cf-article-author[data-v-56cae500], - .cf-img-avatar[data-v-56cae500] { - align-self: center; - text-align: center; - transition: .3s; - } - - .cf-img-avatar[data-v-56cae500] { - display: inline-block !important; - position: absolute; - width: 40%; - border-radius: 50%; - margin: 0 0 -4px !important; - background: #fff; - opacity: .1; - z-index: 0; - right: -20px; - bottom: -20px; - } - - .cf-article-title[data-v-56cae500] { - font-weight: 500; - position: relative; - z-index: 2; - width: 100%; - display: block; - letter-spacing: 1.5px; - font-size: 18px; - align-self: start; - text-align: left; - line-height: 40px; - padding: 0; - margin-bottom: 10px; - transition: .3s; - -webkit-line-clamp: 3; - overflow: hidden; - text-overflow: ellipsis; - display: -webkit-box !important; - -webkit-box-orient: vertical; - } - - .cf-article-time[data-v-56cae500] { - font-size: 12px; - text-align: right; - float: right; - font-weight: 400; - transition: .3s; - margin-left: auto; - z-index: 1; - } - - .cf-article-author[data-v-56cae500] { - line-height: 1; - font-size: 14px; - font-weight: 700; - cursor: pointer; - white-space: nowrap; - overflow: hidden; - z-index: 1; - color: var(--pyq-fontcolor); - font-size: .7rem; - background-color: var(--heo-gray-op); - padding: 8px; - border-radius: 20px; - /*display: flex;*/ - align-items: center; - } - - .cf-article-author[data-v-56cae500], - .cf-img-avatar[data-v-56cae500] { - align-self: center; - text-align: center; - transition: .3s; - } - - #cf-footer[data-v-56cae500], - #cf-more[data-v-56cae500] { - display: flex; - flex-direction: column; - } - - #cf-footer[data-v-56cae500] { - width: 100%; - margin-top: .5rem; - align-items: flex-end; - color: var(--pyq-secondtext); - } -} - -@media screen and (max-width: 1400px) { - .cf-article-item[data-v-56cae500] { - width: 100%; - } -} - -@media screen and (max-width: 768px) { - .cf-article-item[data-v-56cae500] { - width: 100% !important; - } -} - -.lazyload { - width: 100%; -} - -/* 设置进度条的背景色 */ -.bar { - background: #2aae67 !important; -} - - -/* 友联样式 */ -.links-item { - padding: 10px 10px 15px 0px; - font-size: 14px; - width: 49%; - box-sizing: border-box; - display: inline-block; - vertical-align: top; - background: #fafafa; - background: var(--light-header); - border-radius: 4px -} - -.links-item img { - border-radius: 4px; - float: left; - width: 45px; - height: 45px; - background: #fff -} - -.links-item a { - display: block; - padding: 0 14px; - margin-top: 13px; - margin-left: 44px; - word-break: keep-all; - height: 32px; -} - -.links-item { - width: 135px; - margin: 0 12px 12px 0; -} - -@media only screen and (max-width: 683px) { - .links-item { - width: 144px; - /* margin: 0 0 8px */ - } -} - -.dark .links-item { - background: #252627; - background: var(--dark-header) -} - -.tocify { - width: 20%; - max-height: 90%; - overflow: auto; - position: absolute; - right: 2%; - border-radius: 6px -} - -.tocify ul, -.tocify li { - list-style: none; - margin: 0; - padding: 0; - border: none; - line-height: 30px -} - -.tocify li a { - display: inline-block; - text-indent: 10px; - font-size: 14px; - text-decoration: none -} - -.tocify ul ul li a:before { - content: "- " -} - -@media only screen and (max-width: 683px) { - .tocify { - display: none - } -} - -.dark .light-wormhole, -.dark-wormhole { - display: none -} - -.dark .dark-wormhole { - display: block -} - -/* 热力图css */ -.ch-plugin-calendar-label { - position: absolute; - top: 20px; - left: 30px; - gutter: 5px; -} - -/** 周几初标签部分样式 **/ -.ch-plugin-calendar-label-text { - fill: var(--gray-500) !important; - font-size: 12px !important; - transform: translate(6px, 0px); -} - -/** 隐藏月份信息 **/ -.ch-domain-text { - display: none; -} - -/* 修改小方块的背景填充颜色 */ -[data-theme=dark] .ch-subdomain-bg { - fill: var(--gray-200); -} - -[data-theme="dark"] canvas[data-zr-dom-id] { - filter: brightness(0.78) contrast(0.9) saturate(0.85); - transition: filter 0.35s ease; -} - -/* 弹幕css */ -.barrage { - display: -webkit-box; - display: -webkit-flex; - display: -moz-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: horizontal; - -webkit-box-direction: normal; - -webkit-flex-direction: row; - -moz-box-orient: horizontal; - -moz-box-direction: normal; - -ms-flex-direction: row; - flex-direction: row; - cursor: pointer; - -webkit-flex-wrap: nowrap; - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; - -webkit-box-align: center; - -webkit-align-items: center; - -moz-box-align: center; - -ms-flex-align: center; - align-items: center; - word-break: keep-all; - white-space: nowrap; - -webkit-border-radius: 20px; - border-radius: 20px; - padding: 0 20px; - padding-left: 15px; - opacity: 0.8; - will-change: transform; - position: absolute; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - pointer-events: auto; - text-shadow: 0ch; - z-index: 11; -} - -.barrage .header-avatar { - -webkit-border-radius: 50%; - border-radius: 50%; - position: relative; - right: 7px; - display: flex; - align-items: center; - justify-content: center; -} - -.barrage .header-avatar img { - width: 100%; - height: 100%; - object-fit: cover; -} - -.pause { - -webkit-animation-play-state: paused; - animation-play-state: paused; -} - -/* artalk样式重写css */ -.artalk { - margin-top: 20px -} - -.atk-list-read-more { - padding-bottom: 0!important -} - -.atk-comment { - padding: 10px 0!important -} - -.artalk>.atk-list>.atk-list-header { - display: none!important -} - -.atk-content p { - font-size: 1rem!important; - color: #000!important -} - -.atk-comment-children>.atk-comment-wrap { - margin-top: 6px!important -} - -.atk-content { - line-height: 1.5!important -} - -.atk-avatar img { - border-radius: 50%!important -} - -.atk-comment>.atk-avatar img { - width: 24px!important; - height: 24px!important; - margin-top: 8px -} - -.atk-main { - margin-left: 34px!important -} - -.atk-comment-children>.atk-comment-wrap>.atk-comment { - padding: 0!important; - margin: auto -} - -.atk-comment>.atk-main>.atk-header { - margin-bottom: 0!important -} - -.atk-textarea { - min-height: 70px!important -} - -.artalk>.atk-list>.atk-list-footer { - bottom: auto!important -} - -/* Artalk 昵称颜色增强 - 白昼模式 */ -.artalk .atk-item.atk-nick, -.atk-item.atk-nick { - color: #000 !important; - font-weight: 700 !important; -} - -.atk-header .atk-nick { - color: #000 !important; - font-weight: normal !important; -} - -.artalk .atk-item.atk-nick a, -.atk-item.atk-nick a { - color: #000!important -} - -.atk-ua { - color: #999!important; - background: var(--frame-color)!important -} - -.atk-ua-wrap { - font-size: 11px -} - -.atk-text { - color: #999!important -} - -.atk-badge { - display: none!important -} - -.atk-list-no-comment,.atk-copyright,.atk-copyright a { - color: #999!important -} - -.atk-send-btn { - padding: 0 10px!important; - min-width: 5em!important; - background: 0 0!important; - border: .5px solid var(--text-highlight-color)!important; - color: var(--text-highlight-color)!important -} - -.atk-send-btn:hover { - opacity: .7 -} - -[data-theme="dark"] .atk-send-btn { - background: rgba(15, 23, 42, 0.9) !important; - border-color: #4b5563 !important; - color: #e5e7eb !important; -} - -.atk-list-header .atk-dropdown-wrap .atk-dropdown-item.active span,.atk-list-header .atk-dropdown-wrap .atk-dropdown-item span:hover { - color: var(--text-highlight-color)!important -} - -.artalk { - --at-color-main: #666!important; - --at-color-pink: var(--text-highlight-color)!important; - --at-color-light: var(--text-highlight-color)!important; - --at-color-meta: #999!important; - --at-color-border: #DDD !important -} - -.artalk, -.atk-layer-wrap { - color: var(--text-content-color) !important; -} - -[data-theme="dark"] .artalk, -[data-theme="dark"] .atk-layer-wrap { - color: var(--text-content-dark-color) !important; -} - -.atk-content img { - max-height: 1.1rem!important; - vertical-align: middle; - margin-left: 2px; - margin-right: 2px; - margin-top: -4px!important -} - -.artalk .atk-content p { - color: var(--text-content-color)!important; -} - -[data-theme="dark"] .artalk .atk-content p { - color: var(--text-content-dark-color)!important; -} - -[data-theme="dark"] .atk-content, -[data-theme="dark"] .atk-header { - color: var(--text-content-dark-color)!important; -} - -[data-theme="dark"] .artalk .atk-item.atk-nick, -[data-theme="dark"] .atk-item.atk-nick, -[data-theme="dark"] .atk-header .atk-nick { - color: var(--text-content-dark-color)!important; -} - -.atk-loading { - padding: 10px 14px; - border-radius: 8px; - background: rgba(255, 255, 255, 0.86); - box-shadow: var(--card-shadow-light); - backdrop-filter: blur(18px); - -webkit-backdrop-filter: blur(18px); -} - -.atk-loading-spinner svg circle { - stroke: var(--text-highlight-color); -} - -/* 通用样式 */ -.artalk .atk-main-editor input.atk-nick, -.artalk .atk-main-editor input.atk-email, -.artalk .atk-main-editor input.atk-link { - color: var(--text-content-color)!important; -} - -/* 暗黑模式样式:重复类选择器,最大化权重 */ -[data-theme="dark"] .artalk.artalk .atk-main-editor input.atk-nick, -[data-theme="dark"] .artalk.artalk .atk-main-editor input.atk-email, -[data-theme="dark"] .artalk.artalk .atk-main-editor input.atk-link { - color: var(--text-content-dark-color)!important; -} - -[data-theme="dark"] .atk-loading { - background: rgba(15, 23, 42, 0.95)!important; - border-radius: 8px; - box-shadow: 0 18px 45px rgba(0, 0, 0, 0.65); - backdrop-filter: blur(20px); - -webkit-backdrop-filter: blur(20px); -} - -[data-theme="dark"] .atk-loading-spinner svg circle { - stroke: #e5e7eb!important; -} - -[data-theme="dark"] .uk-divider-icon { - background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%236b7280%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%3C%2Fsvg%3E"); -} - -[data-theme="dark"] .uk-divider-icon::after, -[data-theme="dark"] .uk-divider-icon::before { - border-bottom-color: #374151; -} - -.atk-comment>.atk-main>.atk-body>.atk-content img { - height: 2rem!important; - box-shadow: 0 0 0 rgba(0, 0, 0, 0.2); -} - -.atk-comment .atk-height-limit:after { - margin-bottom: 20px -} - -.atk-editor-plug-emoticons>.atk-grp-wrap>.atk-grp[data-type=image]>.atk-item { - height: 32px!important; - width: 32px!important -} - -.atk-editor-plug-emoticons>.atk-grp-wrap>.atk-grp>.atk-item { - font-size: 24px!important; - padding: 0!important -} - -.atk-notify.atk-fade-in { - background: #666!important; - margin-bottom: 6px -} - -.atk-pinned-badge { - background: #999!important -} - -.atk-send-reply { - background: 0 0!important -} - -.atk-reply-to { - border-left: 3px solid #fff!important -} - -.atk-plug-panel-wrap { - height: 110px!important -} - -img[atk-emoticon] { - max-height: 20px!important -} - -.atk-bottom { - padding: 5px 10px 10px 5px!important -} - -.atk-main-editor>.atk-header { - padding: 10px 5px 0!important -} - -.atk-main-editor>.atk-plug-panel-wrap { - border-top: .5px solid var(--at-color-border)!important -} - -.atk-textarea { - padding: 10px!important -} - -.atk-main-editor { - border: 1px solid var(--frame-color)!important -} - -.artalk code { - border: 1px solid #ffbe98!important; - border-radius: 4px!important; - background: 0 0!important; - margin: 0 4px!important -} - -.atk-main-editor>.atk-textarea-wrap>.atk-textarea { - line-height: 1.6 -} - -.atk-main-editor>.atk-bottom .atk-state-btn .atk-text-wrap { - color: #999 -} - -.artalk .atk-main-editor { - border: 1px solid var(--artalk-editer-color)!important -} - -@media(prefers-color-scheme: dark) { - .atk-content p { - color:var(--text-content-dark-color)!important - } - - .pinglun { - color: var(--text-content-dark-color) - } - - .artalk .atk-main-editor { - background: 0 0!important; - border: 1px solid var(--frame-dark-color)!important - } - - .atk-textarea { - color: var(--text-content-dark-color)!important; - font-size: 15px; - background: 0 0!important - } - - .atk-ua { - color: #666!important; - background: var(--background-dark-color)!important - } - - .artalk { - --at-color-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0), #242021)!important; - --at-color-bg: #1A1718 !important; - --at-color-border: #332D2F !important; - --at-color-meta: #666 !important; - --at-color-bg-grey: var(--background-dark-color) !important; - --at-color-bg-grey: #332D2E!important - } - - .artalk.atk-dark-mode { - --at-color-grey: #747474 !important - } - - .atk-text,.atk-list-no-comment,.atk-copyright,.atk-copyright a { - color: #666!important - } - - .atk-pinned-badge { - color: var(--text-content-dark-color)!important; - background: #666!important - } - - .atk-reply-to { - border-left: 3px solid #242021!important - } - - .atk-comment .atk-main .atk-footer .atk-actions span:hover { - color: #999!important - } - - .artalk .atk-item.atk-nick a, - .atk-item.atk-nick a { - color: #999!important - } - - .atk-main-editor>.atk-bottom .atk-state-btn { - background: var(--background-dark-color)!important - } - - .atk-main-editor>.atk-bottom .atk-state-btn .atk-text-wrap { - color: #666 - } -} - -.artalk.hidden { - display: none -} - -@media(max-width: 700px) { - .atk-main-editor>.atk-header { - display:block!important - } -} - -#post-writing p{ - margin-bottom: 10px; -} - -#post-writing h2 { - position: relative; /* 确保伪元素的定位相对于 h2 元素 */ - display: inline-block; /* 使 h2 的宽度适应内容 */ - margin-top: 5px; - margin-bottom: 0px; -} - -#post-writing h2:nth-child(1) { - position: relative; /* 确保伪元素的定位相对于 h2 元素 */ - display: inline-block; /* 使 h2 的宽度适应内容 */ - margin-top: 13px; - margin-bottom: 0px; -} - -#post-writing h2::before { - content: ""; - position: absolute; - height: 7px; - bottom: 0px; - left: -1px; - width: 100%; /* 使用 100% 使伪元素宽度跟随文字 */ - z-index: -1; - background-color: #494949; - opacity: 0.15; - transform: skew(-35deg); - transition: opacity .2s ease; - border-radius: 3px 8px 10px 6px; - transition: 0.1s ease background-color; -} - -#post-writing p>code{ - font-size: 14px; - background-color: #e3e3e3!important; - color: #000000!important; -} - - - - -/* Hugo Chroma Syntax Highlighting */ -/* Day Mode (GitHub) */ -/* Background */ .bg { background-color:#fff; } -/* PreWrapper */ .chroma { color:#24292e;background-color:#fff; } -/* Other */ .chroma .x { } -/* Error */ .chroma .err { color:#a61717;background-color:#e3d2d2 } -/* CodeLine */ .chroma .cl { } -/* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit } -/* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; } -/* LineTable */ .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; } -/* LineHighlight */ .chroma .hl { background-color:#e5e5e5 } -/* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } -/* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } -/* Line */ .chroma .line { display:flex; } -/* Keyword */ .chroma .k { color:#000;font-weight:bold } -/* KeywordConstant */ .chroma .kc { color:#000;font-weight:bold } -/* KeywordDeclaration */ .chroma .kd { color:#000;font-weight:bold } -/* KeywordNamespace */ .chroma .kn { color:#000;font-weight:bold } -/* KeywordPseudo */ .chroma .kp { color:#000;font-weight:bold } -/* KeywordReserved */ .chroma .kr { color:#000;font-weight:bold } -/* KeywordType */ .chroma .kt { color:#458;font-weight:bold } -/* Name */ .chroma .n { } -/* NameAttribute */ .chroma .na { color:#008080 } -/* NameBuiltin */ .chroma .nb { color:#0086b3 } -/* NameBuiltinPseudo */ .chroma .bp { color:#999 } -/* NameClass */ .chroma .nc { color:#458;font-weight:bold } -/* NameConstant */ .chroma .no { color:#008080 } -/* NameDecorator */ .chroma .nd { color:#3c5d5d;font-weight:bold } -/* NameEntity */ .chroma .ni { color:#800080 } -/* NameException */ .chroma .ne { color:#900;font-weight:bold } -/* NameFunction */ .chroma .nf { color:#900;font-weight:bold } -/* NameFunctionMagic */ .chroma .fm { } -/* NameLabel */ .chroma .nl { color:#900;font-weight:bold } -/* NameNamespace */ .chroma .nn { color:#555 } -/* NameOther */ .chroma .nx { } -/* NameProperty */ .chroma .py { } -/* NameTag */ .chroma .nt { color:#000080 } -/* NameVariable */ .chroma .nv { color:#008080 } -/* NameVariableClass */ .chroma .vc { color:#008080 } -/* NameVariableGlobal */ .chroma .vg { color:#008080 } -/* NameVariableInstance */ .chroma .vi { color:#008080 } -/* NameVariableMagic */ .chroma .vm { } -/* Literal */ .chroma .l { } -/* LiteralDate */ .chroma .ld { } -/* LiteralString */ .chroma .s { color:#d14 } -/* LiteralStringAffix */ .chroma .sa { color:#d14 } -/* LiteralStringBacktick */ .chroma .sb { color:#d14 } -/* LiteralStringChar */ .chroma .sc { color:#d14 } -/* LiteralStringDelimiter */ .chroma .dl { color:#d14 } -/* LiteralStringDoc */ .chroma .sd { color:#d14 } -/* LiteralStringDouble */ .chroma .s2 { color:#d14 } -/* LiteralStringEscape */ .chroma .se { color:#d14 } -/* LiteralStringHeredoc */ .chroma .sh { color:#d14 } -/* LiteralStringInterpol */ .chroma .si { color:#d14 } -/* LiteralStringOther */ .chroma .sx { color:#d14 } -/* LiteralStringRegex */ .chroma .sr { color:#009926 } -/* LiteralStringSingle */ .chroma .s1 { color:#d14 } -/* LiteralStringSymbol */ .chroma .ss { color:#990073 } -/* LiteralNumber */ .chroma .m { color:#099 } -/* LiteralNumberBin */ .chroma .mb { color:#099 } -/* LiteralNumberFloat */ .chroma .mf { color:#099 } -/* LiteralNumberHex */ .chroma .mh { color:#099 } -/* LiteralNumberInteger */ .chroma .mi { color:#099 } -/* LiteralNumberIntegerLong */ .chroma .il { color:#099 } -/* LiteralNumberOct */ .chroma .mo { color:#099 } -/* Operator */ .chroma .o { color:#000;font-weight:bold } -/* OperatorWord */ .chroma .ow { color:#000;font-weight:bold } -/* Punctuation */ .chroma .p { } -/* Comment */ .chroma .c { color:#998;font-style:italic } -/* CommentHashbang */ .chroma .ch { color:#998;font-style:italic } -/* CommentMultiline */ .chroma .cm { color:#998;font-style:italic } -/* CommentSingle */ .chroma .c1 { color:#998;font-style:italic } -/* CommentSpecial */ .chroma .cs { color:#999;font-weight:bold;font-style:italic } -/* CommentPreproc */ .chroma .cp { color:#999;font-weight:bold;font-style:italic } -/* CommentPreprocFile */ .chroma .cpf { color:#999;font-weight:bold;font-style:italic } -/* Generic */ .chroma .g { } -/* GenericDeleted */ .chroma .gd { color:#000;background-color:#fdd } -/* GenericEmph */ .chroma .ge { color:#000;font-style:italic } -/* GenericError */ .chroma .gr { color:#a00 } -/* GenericHeading */ .chroma .gh { color:#999 } -/* GenericInserted */ .chroma .gi { color:#000;background-color:#dfd } -/* GenericOutput */ .chroma .go { color:#888 } -/* GenericPrompt */ .chroma .gp { color:#555 } -/* GenericStrong */ .chroma .gs { font-weight:bold } -/* GenericSubheading */ .chroma .gu { color:#aaa } -/* GenericTraceback */ .chroma .gt { color:#a00 } -/* GenericUnderline */ .chroma .gl { text-decoration:underline } -/* TextWhitespace */ .chroma .w { color:#bbb } - -/* Night Mode (Dracula) */ -/* Background */ [data-theme="dark"] .bg { color:#f8f8f2;background-color:#282a36; } -/* PreWrapper */ [data-theme="dark"] .chroma { color:#f8f8f2;background-color:#282a36; } -/* Other */ [data-theme="dark"] .chroma .x { } -/* Error */ [data-theme="dark"] .chroma .err { } -/* CodeLine */ [data-theme="dark"] .chroma .cl { } -/* LineLink */ [data-theme="dark"] .chroma .lnlinks { outline:none;text-decoration:none;color:inherit } -/* LineTableTD */ [data-theme="dark"] .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; } -/* LineTable */ [data-theme="dark"] .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; } -/* LineHighlight */ [data-theme="dark"] .chroma .hl { background-color:#3d3f4a } -/* LineNumbersTable */ [data-theme="dark"] .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } -/* LineNumbers */ [data-theme="dark"] .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f } -/* Line */ [data-theme="dark"] .chroma .line { display:flex; } -/* Keyword */ [data-theme="dark"] .chroma .k { color:#ff79c6 } -/* KeywordConstant */ [data-theme="dark"] .chroma .kc { color:#ff79c6 } -/* KeywordDeclaration */ [data-theme="dark"] .chroma .kd { color:#8be9fd;font-style:italic } -/* KeywordNamespace */ [data-theme="dark"] .chroma .kn { color:#ff79c6 } -/* KeywordPseudo */ [data-theme="dark"] .chroma .kp { color:#ff79c6 } -/* KeywordReserved */ [data-theme="dark"] .chroma .kr { color:#ff79c6 } -/* KeywordType */ [data-theme="dark"] .chroma .kt { color:#8be9fd } -/* Name */ [data-theme="dark"] .chroma .n { } -/* NameAttribute */ [data-theme="dark"] .chroma .na { color:#50fa7b } -/* NameBuiltin */ [data-theme="dark"] .chroma .nb { color:#8be9fd;font-style:italic } -/* NameBuiltinPseudo */ [data-theme="dark"] .chroma .bp { } -/* NameClass */ [data-theme="dark"] .chroma .nc { color:#50fa7b } -/* NameConstant */ [data-theme="dark"] .chroma .no { } -/* NameDecorator */ [data-theme="dark"] .chroma .nd { } -/* NameEntity */ [data-theme="dark"] .chroma .ni { } -/* NameException */ [data-theme="dark"] .chroma .ne { } -/* NameFunction */ [data-theme="dark"] .chroma .nf { color:#50fa7b } -/* NameFunctionMagic */ [data-theme="dark"] .chroma .fm { } -/* NameLabel */ [data-theme="dark"] .chroma .nl { color:#8be9fd;font-style:italic } -/* NameNamespace */ [data-theme="dark"] .chroma .nn { } -/* NameOther */ [data-theme="dark"] .chroma .nx { } -/* NameProperty */ [data-theme="dark"] .chroma .py { } -/* NameTag */ [data-theme="dark"] .chroma .nt { color:#ff79c6 } -/* NameVariable */ [data-theme="dark"] .chroma .nv { color:#8be9fd;font-style:italic } -/* NameVariableClass */ [data-theme="dark"] .chroma .vc { color:#8be9fd;font-style:italic } -/* NameVariableGlobal */ [data-theme="dark"] .chroma .vg { color:#8be9fd;font-style:italic } -/* NameVariableInstance */ [data-theme="dark"] .chroma .vi { color:#8be9fd;font-style:italic } -/* NameVariableMagic */ [data-theme="dark"] .chroma .vm { } -/* Literal */ [data-theme="dark"] .chroma .l { } -/* LiteralDate */ [data-theme="dark"] .chroma .ld { } -/* LiteralString */ [data-theme="dark"] .chroma .s { color:#f1fa8c } -/* LiteralStringAffix */ [data-theme="dark"] .chroma .sa { color:#f1fa8c } -/* LiteralStringBacktick */ [data-theme="dark"] .chroma .sb { color:#f1fa8c } -/* LiteralStringChar */ [data-theme="dark"] .chroma .sc { color:#f1fa8c } -/* LiteralStringDelimiter */ [data-theme="dark"] .chroma .dl { color:#f1fa8c } -/* LiteralStringDoc */ [data-theme="dark"] .chroma .sd { color:#f1fa8c } -/* LiteralStringDouble */ [data-theme="dark"] .chroma .s2 { color:#f1fa8c } -/* LiteralStringEscape */ [data-theme="dark"] .chroma .se { color:#f1fa8c } -/* LiteralStringHeredoc */ [data-theme="dark"] .chroma .sh { color:#f1fa8c } -/* LiteralStringInterpol */ [data-theme="dark"] .chroma .si { color:#f1fa8c } -/* LiteralStringOther */ [data-theme="dark"] .chroma .sx { color:#f1fa8c } -/* LiteralStringRegex */ [data-theme="dark"] .chroma .sr { color:#f1fa8c } -/* LiteralStringSingle */ [data-theme="dark"] .chroma .s1 { color:#f1fa8c } -/* LiteralStringSymbol */ [data-theme="dark"] .chroma .ss { color:#f1fa8c } -/* LiteralNumber */ [data-theme="dark"] .chroma .m { color:#bd93f9 } -/* LiteralNumberBin */ [data-theme="dark"] .chroma .mb { color:#bd93f9 } -/* LiteralNumberFloat */ [data-theme="dark"] .chroma .mf { color:#bd93f9 } -/* LiteralNumberHex */ [data-theme="dark"] .chroma .mh { color:#bd93f9 } -/* LiteralNumberInteger */ [data-theme="dark"] .chroma .mi { color:#bd93f9 } -/* LiteralNumberIntegerLong */ [data-theme="dark"] .chroma .il { color:#bd93f9 } -/* LiteralNumberOct */ [data-theme="dark"] .chroma .mo { color:#bd93f9 } -/* Operator */ [data-theme="dark"] .chroma .o { color:#ff79c6 } -/* OperatorWord */ [data-theme="dark"] .chroma .ow { color:#ff79c6 } -/* Punctuation */ [data-theme="dark"] .chroma .p { } -/* Comment */ [data-theme="dark"] .chroma .c { color:#6272a4 } -/* CommentHashbang */ [data-theme="dark"] .chroma .ch { color:#6272a4 } -/* CommentMultiline */ [data-theme="dark"] .chroma .cm { color:#6272a4 } -/* CommentSingle */ [data-theme="dark"] .chroma .c1 { color:#6272a4 } -/* CommentSpecial */ [data-theme="dark"] .chroma .cs { color:#6272a4 } -/* CommentPreproc */ [data-theme="dark"] .chroma .cp { color:#ff79c6 } -/* CommentPreprocFile */ [data-theme="dark"] .chroma .cpf { color:#ff79c6 } -/* Generic */ [data-theme="dark"] .chroma .g { } -/* GenericDeleted */ [data-theme="dark"] .chroma .gd { color:#f55 } -/* GenericEmph */ [data-theme="dark"] .chroma .ge { text-decoration:underline } -/* GenericError */ [data-theme="dark"] .chroma .gr { } -/* GenericHeading */ [data-theme="dark"] .chroma .gh { font-weight:bold } -/* GenericInserted */ [data-theme="dark"] .chroma .gi { color:#50fa7b;font-weight:bold } -/* GenericOutput */ [data-theme="dark"] .chroma .go { color:#44475a } -/* GenericPrompt */ [data-theme="dark"] .chroma .gp { } - -/* Back to Top Button */ -#back-to-top { - position: fixed; - bottom: 30px; - right: 30px; - width: 40px; - height: 40px; - background-color: var(--bankuai-color); - color: var(--text-content-color); - border-radius: 50%; - text-align: center; - line-height: 40px; - font-size: 24px; - box-shadow: 0 2px 5px rgba(0,0,0,0.2); - cursor: pointer; - z-index: 2147483647; - opacity: 0; - visibility: hidden; - transition: opacity 0.3s, visibility 0.3s, background-color 0.3s, transform 0.3s; - display: flex; - justify-content: center; - align-items: center; - text-decoration: none; -} - -#back-to-top.show { - opacity: 1; - visibility: visible; -} - -#back-to-top:hover { - background-color: var(--erji-color); - color: #fff; - transform: translateY(-3px); -} - -[data-theme="dark"] #back-to-top { - background-color: var(--bankuai-dark-color); - color: var(--text-content-dark-color); - box-shadow: 0 2px 5px rgba(255,255,255,0.1); -} - -[data-theme="dark"] #back-to-top:hover { - background-color: #444; - color: #fff; -} -/* GenericStrong */ [data-theme="dark"] .chroma .gs { } -/* GenericSubheading */ [data-theme="dark"] .chroma .gu { font-weight:bold } -/* GenericTraceback */ [data-theme="dark"] .chroma .gt { } -/* GenericUnderline */ [data-theme="dark"] .chroma .gl { text-decoration:underline } -/* TextWhitespace */ [data-theme="dark"] .chroma .w { } - -/* Fix Artalk comment textarea color in light mode */ -.atk-textarea { - color: #1a1a1a !important; -} -[data-theme="dark"] .atk-textarea { - color: #e5e7eb !important; -} - -/* About Page Card Style */ -.about-card { - background-color: transparent; - border-radius: 0; - padding: 0; - box-shadow: none !important; - margin-bottom: 30px; -} -[data-theme="dark"] .about-card { - background-color: transparent; - box-shadow: none !important; -} diff --git a/themes/Ying/static/js/main.js b/themes/Ying/static/js/main.js deleted file mode 100644 index b01af05b..00000000 --- a/themes/Ying/static/js/main.js +++ /dev/null @@ -1,279 +0,0 @@ -// 判断是否为移动端 -function isMobile() { - if (window.navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)) { - return true; // 移动端 - } else { - return false; // PC端 - } -} - -// 文章图片灯箱 -window.ViewImage && ViewImage.init('.post-content img'); - -// Pure JavaScript Back to Top (High Performance) -document.addEventListener('DOMContentLoaded', function() { - var backToTopButton = document.getElementById('back-to-top'); - if (backToTopButton) { - var isVisible = false; - var ticking = false; - - function update() { - if (window.scrollY > 300) { - if (!isVisible) { - backToTopButton.classList.add('show'); - isVisible = true; - } - } else { - if (isVisible) { - backToTopButton.classList.remove('show'); - isVisible = false; - } - } - ticking = false; - } - - window.addEventListener('scroll', function() { - if (!ticking) { - window.requestAnimationFrame(update); - ticking = true; - } - }, { passive: true }); - - backToTopButton.addEventListener('click', function(e) { - e.preventDefault(); - window.scrollTo({ - top: 0, - behavior: 'smooth' - }); - }); - } -}); - -// loader定时器 -$(document).ready(function () { - setTimeout(function () { - $("#loader").addClass("hide"); - }, 30000); -}); -// 点击进入按钮 -$("#closeloader").click(function () { - $("#loader").addClass("hide"); -}); -// nav栏样式调整 -$('#libabys').first().attr("style", "margin-left: -5px"); - -$('#libabys').eq(1).attr("style", "margin-left: -5px"); -// 友链列表版样式调整 -$('.itp-index:odd').attr("style", "float: right;width:48%;"); - -//文章图片懒加载 -lazyLoadInit({ - // coverColor: "white", - // coverDiv: "
优世界·一个记录生活点滴的小站
", - offsetBottom: 800, - offsetTopm: 800, - showTime: 1100 -}); - -async function loadBarrager() { - try { - const commentsData = await initArtalkAndGetComments(); - if (commentsData) { - await createBarragerFromArtalk(commentsData); - } - } catch (error) { - console.error('加载弹幕时发生错误:', error); - } -} - -// 异步初始化 Artalk 并获取评论数据 -function initArtalkAndGetComments() { - return new Promise((resolve, reject) => { - Artalk.use((ctx) => { - ctx.on('list-loaded', () => { - console.log('评论列表加载完毕'); - const commentsData = ctx.getComments(); - if (commentsData) { - resolve(commentsData); - // console.log(commentsData); - } else { - reject('获取评论数据失败'); - } - }); - }); - - Artalk.init({ - el: '#Comments', // 绑定元素的 Selector - server: 'https://artalk.usj.cc', // 后端地址 - site: '优世界', // 你的站点名 - flatMode: true, - emoticons: '/emotion/OwO.json' - }); - }); -} - -// 异步创建弹幕 -async function createBarragerFromArtalk(commentsData) { - const looperTime = 1000; // 每条弹幕的发送间隔,单位毫秒 - const flattenedComments = flattenComments(commentsData); - const totalComments = flattenedComments.length; - let currentIndex = 0; - - // 初始化弹幕插件 - let barrage = new Barrage.default({ - el: 'body', - backColor: "#000000b5", - fontSize: "14px", - isLeft: true, - speed: 0, - height: "33px" - }); - - if (totalComments !== 0) { - while (currentIndex < totalComments) { - const currentComment = flattenedComments[currentIndex]; - const barragerItem = { - headImg: "https://cravatar.cn/avatar/"+currentComment.email_encrypted + "?s=33" || 'static/default-avatar.png', - content: stripHTML(currentComment.content_marked) || 'No comment', - href: currentComment.link || '#', - speed: 10 - }; - - // 发送弹幕 - barrage.start(barragerItem.content, { - speed: barragerItem.speed, - headImg: barragerItem.headImg, - speed: 35 - }); - - currentIndex++; - await delay(looperTime); // 等待指定的时间再发送下一条弹幕 - } - } -} - -// 延迟函数,返回一个 Promise,用于等待指定的毫秒数 -function delay(ms) { - return new Promise(resolve => setTimeout(resolve, ms)); -} - -// 去除 HTML 标签的函数 -function stripHTML(html) { - return html.replace(/<\/?[^>]+(>|$)/g, ""); -} - -// 展平评论数据结构的函数 -function flattenComments(comments) { - let result = []; - comments.forEach(function (comment) { - result.push(comment); - if (comment.children && comment.children.length > 0) { - result = result.concat(flattenComments(comment.children)); - } - }); - return result; -} - -// 调用异步的弹幕加载函数 -if (document.querySelector("#Comments") && !isMobile()) { - loadBarrager() -} - -function getCurrentTheme() { - var theme = document.documentElement.getAttribute('data-theme'); - if (!theme) { - theme = 'light'; - } - return theme; -} - -function applyTheme(theme) { - document.documentElement.setAttribute('data-theme', theme); - try { - localStorage.setItem('theme', theme); - } catch (e) {} -} - -function updateThemeToggle(theme) { - var button = document.getElementById('theme-toggle'); - if (theme === 'dark') { - if (button) { - button.textContent = '日间'; - } - } else { - if (button) { - button.textContent = '夜间'; - } - } -} - -function toggleTheme() { - var current = getCurrentTheme(); - var next = current === 'dark' ? 'light' : 'dark'; - applyTheme(next); - updateThemeToggle(next); - if (window.Artalk && window.Artalk.get) { - try { - var ctx = Artalk.get('#Comments'); - if (ctx && ctx.setDarkMode) { - ctx.setDarkMode(next === 'dark'); - } - } catch (e) {} - } -} - -document.addEventListener('DOMContentLoaded', function () { - var theme = getCurrentTheme(); - updateThemeToggle(theme); - var button = document.getElementById('theme-toggle'); - if (button) { - button.addEventListener('click', toggleTheme); - } - var avatarWrapper = document.querySelector('.head_author_img'); - var avatarTip = document.querySelector('.avatar-theme-tip'); - if (avatarWrapper) { - avatarWrapper.style.cursor = 'pointer'; - avatarWrapper.addEventListener('click', toggleTheme); - } - if (avatarTip) { - avatarTip.classList.add('is-visible'); - var hideOnce = function () { - avatarTip.classList.add('is-hidden'); - }; - setTimeout(hideOnce, 9000); - if (avatarWrapper) { - avatarWrapper.addEventListener('click', hideOnce); - } - } -}); - -// 代码复制功能 -function initCodeCopy() { - var codeBlocks = document.querySelectorAll('.highlight'); - codeBlocks.forEach(function(block) { - if (block.querySelector('.copy-code-btn')) return; - - var btn = document.createElement('button'); - btn.className = 'copy-code-btn'; - btn.innerHTML = ''; - block.appendChild(btn); - - btn.addEventListener('click', function() { - var code = block.querySelector('code').innerText; - navigator.clipboard.writeText(code).then(function() { - btn.innerHTML = ''; - setTimeout(function() { - btn.innerHTML = ''; - }, 2000); - }).catch(function(err) { - console.error('Failed to copy: ', err); - btn.innerText = 'Error'; - }); - }); - }); -} - -// 页面加载完成后初始化 -document.addEventListener('DOMContentLoaded', function() { - initCodeCopy(); -});