2025-2-26-fixed

This commit is contained in:
2025-02-26 09:16:07 +08:00
parent bf50b6c865
commit 4968d276dc
456 changed files with 27801 additions and 1 deletions

View File

@@ -0,0 +1,8 @@
theme-config(config, predef)
unquote(hexo-config(config) ? hexo-config(config):predef)
theme-config-unit(config, predef, unit)
unit(hexo-config(config) ? hexo-config(config):predef, unit)
theme-config-origin(config, predef)
(hexo-config(config) ? hexo-config(config):predef)

View File

@@ -0,0 +1,23 @@
/* */
anchor-offset()
&::before
display block
content ""
margin-top -5rem
height 5rem
width 1px
visibility hidden
/* */
ground-glass($px, $bg-color, $alpha)
/* backdrop-filter */
@supports (-webkit-backdrop-filter: blur($px)) or (backdrop-filter: blur($px))
&
background rgba(convert($bg-color), $alpha)
-webkit-backdrop-filter blur($px)
backdrop-filter blur($px)
/* 使 */
@supports not ((-webkit-backdrop-filter: blur($px)) or (backdrop-filter: blur($px)))
&
background rgb(convert($bg-color))

View File

@@ -0,0 +1,32 @@
.about-avatar
position relative
margin -8rem auto 1rem
width 10rem
height 10rem
z-index 3
img
width 100%
height 100%
border-radius 50%
background-color transparent
object-fit cover
box-shadow 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12)
.about-info
& > div
margin-bottom .5rem
.about-name
font-size 1.75rem
font-weight bold
.about-intro
font-size 1rem
.about-icons
& > a:not(:last-child)
margin-right .5rem
& > a > i
font-size 1.5rem

View File

@@ -0,0 +1,31 @@
.list-group
a ~ p.h5
margin-top 1rem
.list-group-item
display flex
background-color transparent
border 0
time
flex 0 0 5rem
.list-group-item-title
white-space nowrap
overflow hidden
text-overflow ellipsis
@media (max-width: 575px)
.list-group-item
font-size .95rem
padding 0.5rem 0.75rem
time
flex 0 0 4rem
.list-group-item-action
color var(--text-color)
&:focus, &:hover
color var(--link-hover-color)
background-color var(--link-hover-bg-color)

View File

@@ -0,0 +1,8 @@
// Rewrite anchorjs
.anchorjs-link
text-decoration none !important
transition opacity .2s ease-in-out
.markdown-body h1, h2, h3, h4, h5, h6
&:hover > .anchorjs-link
opacity 1

View File

@@ -0,0 +1,29 @@
.banner
height 100%
position relative
overflow hidden
cursor default
.mask
position absolute
width 100%
height 100%
background-color rgba(0, 0, 0, 0.3)
&[parallax="true"]
will-change transform
-webkit-transform-style preserve-3d
-webkit-backface-visibility hidden
transition transform .05s ease-out
if $banner-width-height-ratio > 0
@media (max-width: unit($banner-width-height-ratio * 100, "vh"))
.header-inner
max-height unit(100 / $banner-width-height-ratio, "vw")
#board
margin-top -1rem !important
@media (max-width: unit($scroll-arrow-height-limit - 0.01, "vh"))
.scroll-down-bar
display none

View File

@@ -0,0 +1,10 @@
#board
position relative
margin-top -2rem
padding 3rem 0
background-color var(--board-bg-color)
transition background-color .2s ease-in-out
border-radius 0.5rem
z-index 3
-webkit-box-shadow 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19)
box-shadow 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19)

View File

@@ -0,0 +1,36 @@
.code-widget
display inline-block
background-color transparent
font-size .75rem
line-height 1
font-weight bold
padding .3rem .1rem .1rem .1rem
position absolute
right .45rem
top .15rem
z-index 1
.code-widget-light
color #999
.code-widget-dark
color #bababa
.copy-btn
cursor pointer
user-select none
-webkit-appearance none
outline none
& > i
font-size .75rem !important
font-weight 400
margin-right .15rem
opacity 0
transition opacity .2s ease-in-out
.markdown-body pre:hover > .copy-btn > i
opacity 0.9
.markdown-body pre:hover > .copy-btn, .markdown-body pre:not(:hover) > .copy-btn
outline none

View File

@@ -0,0 +1,90 @@
// Modified from [hexo-theme-icarus](https://github.com/ppoffice/hexo-theme-icarus)
.license-box
background-color rgba(#1b1f23, .05)
transition background-color .2s ease-in-out
border-radius 4px
font-size .9rem
overflow hidden
padding 1.25rem
position relative
z-index 1
.license-icon
position absolute
top 50%
left 100%
&::after
content "\e8e4"
font-size 12.5rem
line-height 1
opacity 0.1
position relative
left -.85em
bottom .5em
z-index -1
.license-title
margin-bottom 1rem
div:nth-child(1)
line-height 1.2
margin-bottom .25rem
div:nth-child(2)
color var(--sec-text-color)
font-size .8rem
.license-meta
align-items center
display flex
flex-wrap wrap
justify-content flex-start
.license-meta-item
align-items center
justify-content center
margin-right 1.5rem
div:nth-child(1)
color var(--sec-text-color)
font-size .8rem
font-weight normal
i.iconfont
font-size 1rem
@media (max-width: 575px) and (min-width: 425px)
.license-meta
.license-meta-item
display flex
justify-content flex-start
flex-wrap wrap
font-size .8rem
flex 0 0 50%
max-width 50%
margin-right 0
div:nth-child(1)
margin-right .5rem
.license-meta-date
order -1
@media (max-width: 424px)
&::after
top -65px
.license-meta
flex-direction column
align-items flex-start
.license-meta-item
display flex
flex-wrap wrap
font-size .8rem
div:nth-child(1)
margin-right .5rem

View File

@@ -0,0 +1,65 @@
.footer-inner
padding 3rem 0 1rem 0
text-align center
& > div:not(:first-child)
margin .25rem 0
font-size .85rem
.statistics
display flex
flex-direction row
justify-content center
& > span
flex 1
margin 0 .25rem
& > *:nth-last-child(2):first-child
text-align right
& > *:nth-last-child(2):first-child ~ *
text-align left
.beian
display flex
flex-direction row
justify-content center
& > *
margin 0 .25rem
.beian-police
position relative
overflow hidden
display inline-flex
align-items center
justify-content left
img
margin-right 3px
width 1rem
height 1rem
margin-bottom .1rem
@media (max-width: 424px)
.statistics
flex-direction column
& > *:nth-last-child(2):first-child
text-align center
& > *:nth-last-child(2):first-child ~ *
text-align center
.beian
flex-direction column
.beian-police
justify-content center
& > *:nth-last-child(2):first-child
text-align center
& > *:nth-last-child(2):first-child ~ *
text-align center

View File

@@ -0,0 +1,25 @@
sup > a, .footnote-text
anchor-offset()
&::before
display inline-block
.footnote-item
anchor-offset()
.footnote-list
ol
list-style-type none
counter-reset sectioncounter
padding-left .5rem
font-size .95rem
li:before
font-family "Helvetica Neue", monospace, "Monaco"
content "["counter(sectioncounter)"]"
counter-increment sectioncounter
li+li
margin-top .5rem
.footnote-text
padding-left .5em

View File

@@ -0,0 +1,174 @@
// Rewrite navbar
.navbar
background-color transparent
font-size 0.875rem
box-shadow 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12)
-webkit-box-shadow 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12)
.navbar-brand
color var(--navbar-text-color)
.navbar-toggler .animated-icon span
background-color var(--navbar-text-color)
.nav-item .nav-link
display block
color var(--navbar-text-color)
transition color .2s ease-in-out, background-color .2s ease-in-out
&:hover
color var(--link-hover-color)
&:focus
color var(--navbar-text-color)
i
font-size 0.875rem
line-height inherit
i:only-child
margin 0 .2rem
.navbar-toggler
border-width 0
outline 0
&.scrolling-navbar
will-change background, padding
-webkit-transition background 0.5s ease-in-out, padding 0.5s ease-in-out
transition background 0.5s ease-in-out, padding 0.5s ease-in-out
@media (min-width: 600px)
&
padding-top 12px
padding-bottom 12px
& .navbar-nav > li
-webkit-transition-duration 1s
transition-duration 1s
&.top-nav-collapse
padding-top 5px
padding-bottom 5px
.dropdown-menu
font-size 0.875rem
color var(--navbar-text-color)
background-color rgba(0, 0, 0, 0.3)
border none
min-width 8rem
-webkit-transition background .5s ease-in-out,padding .5s ease-in-out
transition background .5s ease-in-out,padding .5s ease-in-out
@media (max-width: 991.98px)
text-align center
.dropdown-item
color var(--navbar-text-color)
&:hover, &:focus
color var(--link-hover-color)
background-color rgba(0, 0, 0, 0.1)
@media (min-width: 992px)
.dropdown:hover > .dropdown-menu
display block
.dropdown > .dropdown-toggle:active
pointer-events none
.dropdown-menu
top 95%
.animated-icon
width 30px
height 20px
position relative
margin 0
-webkit-transform rotate(0deg)
-moz-transform rotate(0deg)
-o-transform rotate(0deg)
transform rotate(0deg)
-webkit-transition .5s ease-in-out
-moz-transition .5s ease-in-out
-o-transition .5s ease-in-out
transition .5s ease-in-out
cursor pointer
span
display block
position absolute
height 3px
width 100%
border-radius 9px
opacity 1
left 0
-webkit-transform rotate(0deg)
-moz-transform rotate(0deg)
-o-transform rotate(0deg)
transform rotate(0deg)
-webkit-transition .25s ease-in-out
-moz-transition .25s ease-in-out
-o-transition .25s ease-in-out
transition .25s ease-in-out
background #ffffff
&:nth-child(1)
top 0
&:nth-child(2)
top 10px
&:nth-child(3)
top 20px
&.open
span
&:nth-child(1)
top 11px
-webkit-transform rotate(135deg)
-moz-transform rotate(135deg)
-o-transform rotate(135deg)
transform rotate(135deg)
&:nth-child(2)
opacity 0
left -60px
&:nth-child(3)
top 11px
-webkit-transform rotate(-135deg)
-moz-transform rotate(-135deg)
-o-transform rotate(-135deg)
transform rotate(-135deg)
.navbar .dropdown-collapse, .top-nav-collapse, .navbar-col-show
if $navbar-glass-enable
ground-glass($navbar-glass-px, $navbar-bg-color, $navbar-glass-alpha)
else
background-color var(--navbar-bg-color)
@media (max-width: 767px)
.navbar
font-size 1rem
line-height 2.5rem
.banner-text
color var(--subtitle-color)
max-width calc(960px - 6rem)
width 80%
overflow-wrap break-word
.typed-cursor
margin 0 .2rem
@media (max-width: 767px)
#subtitle, .typed-cursor
font-size 1.5rem
@media (max-width: 575px)
.banner-text
font-size 0.9rem
#subtitle, .typed-cursor
font-size 1.35rem

View File

@@ -0,0 +1,100 @@
// Rewrite modal
.modal-dialog .modal-content
background-color var(--board-bg-color)
border 0
border-radius .125rem
-webkit-box-shadow 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15)
box-shadow 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15)
.modal-dialog .modal-content .modal-header
border-bottom-color var(--line-color)
transition border-bottom-color .2s ease-in-out
.close
color var(--text-color)
&:hover
color var(--link-hover-color)
&:focus
outline 0
.modal-dialog .modal-content .modal-header
border-top-left-radius .125rem
border-top-right-radius .125rem
border-bottom 1px solid #dee2e6
.md-form
position relative
margin-top 1.5rem
margin-bottom 1.5rem
.md-form
input[type]
-webkit-box-sizing content-box
box-sizing content-box
background-color transparent
border none
border-bottom 1px solid #ced4da
border-radius 0
outline none
-webkit-box-shadow none
box-shadow none
transition border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out
$normal = #4285f4
&:focus:not([readonly])
border-bottom 1px solid $normal
-webkit-box-shadow 0 1px 0 0 $normal
box-shadow 0 1px 0 0 $normal
& + label
color: $normal
$valid = #00c851
&.valid, &:focus.valid
border-bottom 1px solid $valid
-webkit-box-shadow 0 1px 0 0 $valid
box-shadow 0 1px 0 0 $valid
& + label
color: $valid
$invalid = #f44336
&.invalid, &:focus.invalid
border-bottom 1px solid $invalid
-webkit-box-shadow 0 1px 0 0 $invalid
box-shadow 0 1px 0 0 $invalid
& + label
color $invalid
&.validate
margin-bottom 2.5rem
&.form-control
height auto
padding .6rem 0 .4rem 0
margin 0 0 .5rem 0
color var(--text-color)
background-color transparent
border-radius 0
label
font-size 0.8rem
position absolute
top -1rem
left 0
color #757575
cursor text
transition color .2s ease-out
.modal-open[style]
padding-right: 0 !important
overflow auto
#navbar[style]
padding-right 1rem !important

View File

@@ -0,0 +1,12 @@
// Rewrite nprogress
$npColor = theme-config("fun_features.progressbar.color", "#29d")
#nprogress
.bar
height theme-config-unit("fun_features.progressbar.height_px", 3, "px") !important
background-color $npColor !important
.peg
box-shadow 0 0 14px $npColor, 0 0 8px $npColor !important
@media (max-width: 575px)
.bar
display none

View File

@@ -0,0 +1,12 @@
.noscript-warning
background-color #f55
color #fff
font-family sans-serif
font-size 1rem
font-weight bold
position fixed
left 0
bottom 0
text-align center
width 100%
z-index 99

View File

@@ -0,0 +1,23 @@
// Rewrite pagination
.pagination
margin-top 3rem
justify-content center
.space
align-self flex-end
.page-number, .current, .extend
outline 0
border 0
background-color transparent
font-size .9rem
padding .5rem .75rem
line-height 1.25
border-radius .125rem
.page-number
margin 0 .05rem
.page-number:hover, .current
transition background-color .2s ease-in-out
background-color var(--link-hover-bg-color)

View File

@@ -0,0 +1,17 @@
.qr-trigger
cursor pointer
position relative
&:hover .qr-img
display block
transition all .3s
.qr-img
max-width 12rem
position absolute
right -5.25rem
z-index 99
display none
border-radius .2rem
background-color transparent
box-shadow 0 0 20px -5px hsla(0, 0%, 62%, .2)

View File

@@ -0,0 +1,46 @@
.scroll-down-bar
position absolute
width 100%
height 6rem
text-align center
cursor pointer
bottom 0
i.iconfont
font-size 2rem
font-weight bold
display inline-block
position relative
padding-top 2rem
color var(--subtitle-color)
transform translateZ(0)
animation scroll-down 1.5s infinite
#scroll-top-button
position fixed
z-index 99
background var(--board-bg-color)
transition background-color .2s ease-in-out, bottom .3s ease
border-radius 4px
min-width 40px
min-height 40px
bottom -60px
outline none
display flex
display -webkit-flex
align-items center
box-shadow 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12)
i
font-size 32px
margin auto
color var(--sec-text-color)
&:hover i, &:active i
animation-name scroll-top
animation-duration 1s
animation-delay .1s
animation-timing-function ease-in-out
animation-iteration-count infinite
animation-fill-mode forwards
animation-direction alternate

View File

@@ -0,0 +1,9 @@
#local-search-result
.search-list-title
border-left 3px solid #0d47a1
.search-list-content
padding 0 1.25rem
.search-word
color orangered

View File

@@ -0,0 +1,75 @@
#toc
visibility hidden
.toc-header
margin-bottom .5rem
font-weight bold
line-height 1.2
&, & > i
font-size 1.25rem
.toc-body
max-height 75vh
overflow-y auto
overflow -moz-scrollbars-none
-ms-overflow-style none
ol
list-style none
padding-inline-start 1rem
&::-webkit-scrollbar
display none
.tocbot-list
position relative
ol
list-style none
padding-left 1rem
a
font-size 0.95rem
.tocbot-link
color var(--text-color)
.tocbot-active-link
font-weight bold
color var(--link-hover-color)
.tocbot-is-collapsed
max-height 0
.tocbot-is-collapsible
overflow hidden
transition all .3s ease-in-out
.toc-list-item
white-space nowrap
overflow hidden
text-overflow ellipsis
&.is-active-li::before
height 1rem
margin 0.25rem 0
visibility visible
&::before
width 0.15rem
height 0.2rem
position absolute
left 0.25rem
content ""
border-radius 2px
margin 0.65rem 0
background var(--link-hover-color)
visibility hidden
transition height .1s ease-in-out, margin .1s ease-in-out, visibility .1s ease-in-out
.sidebar
position -webkit-sticky
position sticky
top 2rem
padding 3rem 0

View File

@@ -0,0 +1,68 @@
@import "_widget/*"
html
font-size $font-size
letter-spacing $letter-spacing
html, body
height 100%
font-family $font-family
overflow-wrap break-word
body
transition color .2s ease-in-out, background-color .2s ease-in-out
background-color var(--body-bg-color)
color var(--text-color)
-webkit-font-smoothing antialiased
-moz-osx-font-smoothing grayscale
a
color var(--text-color)
text-decoration none
cursor pointer
transition color .2s ease-in-out, background-color .2s ease-in-out
&:hover
color var(--link-hover-color)
text-decoration none
transition color .2s ease-in-out, background-color .2s ease-in-out
code
color inherit
table
font-size inherit
color var(--post-text-color)
img[lazyload]
object-fit cover
*[align="left"]
text-align left
*[align="center"]
text-align center
*[align="right"]
text-align right
::-webkit-scrollbar
width 6px
height 6px
::-webkit-scrollbar-thumb
background-color var(--scrollbar-color)
border-radius 6px
&:hover
background-color var(--scrollbar-hover-color)
::-webkit-scrollbar-corner
background-color transparent
label
margin-bottom 0
i.iconfont
font-size 1em
line-height 1

View File

@@ -0,0 +1,79 @@
:root
--color-mode "light"
--body-bg-color $body-bg-color
--board-bg-color $board-bg-color
--text-color $text-color
--sec-text-color $sec-text-color
--post-text-color $post-text-color
--post-heading-color $post-heading-color
--post-link-color $post-link-color
--link-hover-color $link-hover-color
--link-hover-bg-color $link-hover-bg-color
--line-color $line-color
--navbar-bg-color $navbar-bg-color
--navbar-text-color $navbar-text-color
--subtitle-color $subtitle-color
--scrollbar-color $scrollbar-color
--scrollbar-hover-color $scrollbar-hover-color
--button-bg-color $button-bg-color
--button-hover-bg-color $button-hover-bg-color
--highlight-bg-color $highlight-bg-color
--inlinecode-bg-color $inlinecode-bg-color
--fold-title-color $text-color
--fold-border-color $line-color
dark-colors()
--body-bg-color $body-bg-color-dark
--board-bg-color $board-bg-color-dark
--text-color $text-color-dark
--sec-text-color $sec-text-color-dark
--post-text-color $post-text-color-dark
--post-heading-color $post-heading-color-dark
--post-link-color $post-link-color-dark
--link-hover-color $link-hover-color-dark
--link-hover-bg-color $link-hover-bg-color-dark
--line-color $line-color-dark
--navbar-bg-color $navbar-bg-color-dark
--navbar-text-color $navbar-text-color-dark
--subtitle-color $subtitle-color-dark
--scrollbar-color $scrollbar-color-dark
--scrollbar-hover-color $scrollbar-hover-color-dark
--button-bg-color $button-bg-color-dark
--button-hover-bg-color $button-hover-bg-color-dark
--highlight-bg-color $highlight-bg-color-dark
--inlinecode-bg-color $inlinecode-bg-color-dark
--fold-title-color $text-color-dark
--fold-border-color $line-color-dark
img
-webkit-filter brightness(.9)
filter brightness(.9)
transition filter .2s ease-in-out
.navbar .dropdown-collapse, .top-nav-collapse, .navbar-col-show
if $navbar-glass-enable
ground-glass($navbar-glass-px, $navbar-bg-color-dark, $navbar-glass-alpha)
.license-box
background-color rgba(#3e4b5e, .35)
transition background-color .2s ease-in-out
.gt-comment-admin .gt-comment-content
background-color transparent
transition background-color .2s ease-in-out
if (hexo-config("dark_mode.enable"))
@media (prefers-color-scheme: dark)
:root
--color-mode "dark"
:root:not([data-user-color-scheme])
dark-colors()
@media not print
[data-user-color-scheme="dark"]
dark-colors()
@media print
:root
--color-mode "light"

View File

@@ -0,0 +1,51 @@
.fade-in-up
-webkit-animation-name fade-in-up
animation-name fade-in-up
.hidden-mobile
display block
.visible-mobile
display none
@media (max-width: 575px)
.hidden-mobile
display none
.visible-mobile
display block
.nomargin-x
margin-left 0 !important
margin-right 0 !important
.nopadding-x
padding-left 0 !important
padding-right 0 !important
@media (max-width: 767px)
.nopadding-x-md
padding-left 0 !important
padding-right 0 !important
.flex-center
display -webkit-box
display -ms-flexbox
display flex
-webkit-box-align center
-ms-flex-align center
align-items center
-webkit-box-pack center
-ms-flex-pack center
justify-content center
height 100%
.hover-with-bg
display inline-block
line-height 1
&:hover
background-color var(--link-hover-bg-color)
transition-duration .2s
transition-timing-function ease-in-out
border-radius .2rem

View File

@@ -0,0 +1,31 @@
@keyframes fade-in-up
from
opacity 0
-webkit-transform translate3d(0, 100%, 0)
transform translate3d(0, 100%, 0)
to
opacity 1
-webkit-transform translate3d(0, 0, 0)
transform translate3d(0, 0, 0)
@keyframes scroll-down
0%
opacity 0.8
top 0
50%
opacity 0.4
top -1em
100%
opacity 0.8
top 0
@keyframes scroll-top
0%
-webkit-transform translateY(0)
transform translateY(0)
50%
-webkit-transform translateY(-0.35rem)
transform translateY(-0.35rem)
100%
-webkit-transform translateY(0)
transform translateY(0)

View File

@@ -0,0 +1,38 @@
@media print
header, footer, .side-col, #scroll-top-button, .post-prevnext, #comments
display none !important
.markdown-body
a:not([href^='#']):not([href^='javascript:']):not(.print-no-link)::after
content ' (' attr(href) ')'
font-size 0.8rem
color var(--post-text-color)
opacity 0.8
& > h1, h2
border-bottom-color transparent !important
& > h1, h2, h3, h4, h5, h6
margin-top 1.25em !important
margin-bottom 0.25em !important
[data-anchorjs-icon]::after
display none
figure.highlight
table, tbody, tr, td.code, td.code pre
width 100% !important
display block !important
pre > code
white-space pre-wrap
.gutter, .code-widget
display none !important
.post-metas a
text-decoration none
@media not print
#seo-header
display none

View File

@@ -0,0 +1,58 @@
.category-bar
.category-list
max-height 85vh
overflow-y auto
overflow-x hidden
&::-webkit-scrollbar
display none
& > .category-sub > a
font-weight bold
font-size 1.2rem
.category-item-action i
margin 0
.category-subitem
&.list-group-item
padding-left .5rem
padding-right 0
.category-collapse
.category-post-list
margin-top .25rem
margin-bottom .5rem
.category-post
font-size .9rem
line-height 1.75
.category-item-action:hover
background-color initial
.list-group-item
padding 0
&.active
color var(--link-hover-color)
background-color initial
font-weight bold
font-family "iconfont"
font-style normal
-webkit-font-smoothing antialiased
&::before
content "\e61f"
font-weight initial
margin-right .25rem
.list-group-count
margin-left .2rem
margin-right .2rem
font-size .9em
.list-group-item-action
&:focus, &:hover
background-color initial

View File

@@ -0,0 +1,6 @@
.category-chains
display flex
flex-wrap wrap
& > *:not(:last-child)
margin-right 1em

View File

@@ -0,0 +1,62 @@
.category
&:not(:last-child)
margin-bottom 1rem
.category-sub
pass
.category-item, .category-subitem
font-weight bold
display flex
align-items center
.category-item
font-size 1.25rem
.category-subitem
font-size 1.1rem
.category-collapse
padding-left: 1.25rem
width 100%
.category-count
font-size .9rem
font-weight initial
min-width 1.3em
line-height 1.3em
display flex
align-items center
i
padding-right .25rem
span
width 2rem
.category-post
white-space nowrap
overflow hidden
text-overflow ellipsis
.category-item-action
&:not(.collapsed) > i
transform rotate(90deg)
transform-origin center center
i
transition transform .3s ease-out
display inline-block
margin-left .25rem
.category:hover
z-index 1
color var(--link-hover-color)
text-decoration none
background-color var(--link-hover-bg-color)
.row
margin-left 0
margin-right 0

View File

@@ -0,0 +1,80 @@
.index-card
margin-bottom 2.5rem
.index-img
img
display block
width 100%
height 10rem
object-fit cover
box-shadow 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15)
border-radius .25rem
background-color transparent
.index-info
display flex
flex-direction column
justify-content space-between
padding-top .5rem
padding-bottom .5rem
.index-header
color var(--text-color)
font-size 1.5rem
font-weight bold
line-height 1.4
white-space nowrap
overflow hidden
text-overflow ellipsis
margin-bottom .25rem
.index-pin
color var(--text-color)
font-size 1.5rem
margin-right .15rem
.index-btm
color var(--sec-text-color)
a
color var(--sec-text-color)
.index-excerpt
color var(--sec-text-color)
margin 0.5rem 0
height calc(1.4rem * 3)
overflow hidden
display flex
& > div
width 100%
line-height 1.4rem
word-break break-word
display -webkit-box
-webkit-box-orient vertical
-webkit-line-clamp 3
.index-excerpt__noimg
height auto
max-height calc(1.4rem * 3)
@media (max-width: 767px)
.index-info
padding-top 1.25rem
.index-header
font-size 1.25rem
white-space normal
overflow hidden
word-break break-word
display -webkit-box
-webkit-box-orient vertical
-webkit-line-clamp 2
.index-pin
font-size 1.25rem
.index-excerpt
height auto
max-height calc(1.4rem * 3)
margin 0.25rem 0

View File

@@ -0,0 +1,79 @@
.links
.card
box-shadow none
min-width 33%
background-color transparent
border 0
.card-body
margin 1rem 0
padding 1rem
border-radius .3rem
display block
width 100%
height 100%
&:hover
.link-avatar
transform scale(1.1)
.card-content
display flex
flex-wrap nowrap
width 100%
height 3.5rem
.link-avatar
flex none
width 3rem
height 3rem
margin-right .75rem
object-fit cover
transition-duration .2s
transition-timing-function ease-in-out
img
width 100%
height 100%
border-radius 50%
background-color transparent
object-fit cover
.link-text
flex 1
display grid
flex-direction column
line-height 1.5
.link-title
overflow hidden
text-overflow ellipsis
white-space nowrap
color var(--text-color)
font-weight bold
.link-intro
max-height 2rem
font-size 0.85rem
line-height 1.2
color var(--sec-text-color)
display -webkit-box
-webkit-box-orient vertical
-webkit-line-clamp 2
text-overflow ellipsis
overflow hidden
@media (max-width 767px)
.links
display flex
flex-direction column
justify-content center
align-items center
.card
padding-left 2rem
padding-right 2rem
@media (min-width 768px)
.link-text:only-child
margin-left 1rem

View File

@@ -0,0 +1,27 @@
// Rewrite valine
#valine.v[data-class=v]
.status-bar, .veditor, .vinput, .vbtn, p, pre code
color var(--text-color)
.vinput::placeholder
color var(--sec-text-color)
.vicon
fill var(--text-color)
// Rewrite gitalk
.gt-container
.gt-comment-content:hover
-webkit-box-shadow none
box-shadow none
.gt-comment-body
color var(--text-color) !important
transition color .2s ease-in-out
// Rewrite remark42
#remark-km423lmfdslkm34-back
z-index 1030
#remark-km423lmfdslkm34-node
z-index 1031

View File

@@ -0,0 +1,67 @@
.markdown-body
.highlight pre, pre
padding 1.45rem 1rem
pre code.hljs
padding 0
pre[class*="language-"]
padding-top 1.45rem
padding-bottom 1.45rem
padding-right 1rem
line-height 1.5
margin-bottom 1rem
.code-wrapper
position relative
border-radius 4px
margin-bottom 1rem
.hljs, .highlight pre, .code-wrapper pre, figure.highlight td.gutter
transition color .2s ease-in-out, background-color .2s ease-in-out
background-color var(--highlight-bg-color)
pre[class*=language-].line-numbers
position initial
figure
margin 1rem 0
figure.highlight
position relative
table
border 0
margin 0
width auto
border-radius 4px
td
border 0
padding 0
tr
border 0
td.code
width 100%
td.gutter
display table-cell
position -webkit-sticky
position sticky
left 0
z-index 1
pre
text-align right
padding 0 .75rem
border-radius initial
border-right 1px solid #999
span.line
color #999
td.code > pre
border-top-left-radius 0
border-bottom-left-radius 0

View File

@@ -0,0 +1,92 @@
// Rewrite github-markdown.css
.markdown-body
font-size 1rem
line-height 1.6
font-family $font-family
margin-bottom 2rem
color var(--post-text-color)
& > h1, h2
border-bottom-color var(--line-color)
& > h1, h2, h3, h4, h5, h6
anchor-offset()
color var(--post-heading-color)
transition color .2s ease-in-out, border-bottom-color 0.2s ease-in-out
font-weight bold
margin-bottom .75em
margin-top 2em
&:focus
outline none
a
color var(--post-link-color)
strong
font-weight bold
code
tab-size 4
background-color var(--inlinecode-bg-color)
transition background-color .2s ease-in-out
table
tr
background-color var(--board-bg-color)
transition background-color .2s ease-in-out
tr:nth-child(2n)
background-color var(--board-bg-color)
transition background-color .2s ease-in-out
th, td
border-color var(--line-color)
transition border-color .2s ease-in-out
pre
font-size $code-font-size !important
.mermaid
text-align center
& > svg
min-width 100%
p > img, p > a > img, figure > img, figure > a > img
max-width 90%
margin 1.5rem auto
display block
box-shadow $img-shadow
border-radius 4px
background-color transparent
blockquote
color var(--sec-text-color)
details
cursor pointer
summary
outline none
// Rewrite hr
hr, .markdown-body hr
background-color initial
border-top 1px solid var(--line-color)
transition border-top-color .2s ease-in-out
.markdown-body hr
height 0
margin 2rem 0
// Rewrite figcaption
.markdown-body
figcaption.image-caption
font-size .8rem
color var(--post-text-color)
opacity 0.65
line-height 1
margin -0.75rem auto 2rem
text-align center
figcaption:not(.image-caption)
display none

View File

@@ -0,0 +1,181 @@
.post-content, post-custom
box-sizing border-box
padding-left 10%
padding-right 10%
@media (max-width: 767px)
.post-content, post-custom
padding-left 2rem
padding-right 2rem
.page-content, .post-content
overflow hidden
@media (max-width: 424px)
.post-content, post-custom
padding-left 1rem
padding-right 1rem
.page-content, .post-content
overflow hidden
.anchorjs-link-left
opacity 0 !important
.page-content, .post-content
strong
font-weight bold
& > *:nth-child(2)
margin-top 0
img
object-fit cover
max-width 100%
.post-metas
display flex
flex-wrap wrap
font-size .9rem
.post-meta
& > *:not(.hover-with-bg)
margin-right .2rem
.post-prevnext
display flex
flex-wrap wrap
justify-content space-between
font-size .9rem
margin-left -.35rem
margin-right -.35rem
.post-prev, .post-next
display flex
padding-left 0
padding-right 0
i
font-size 1.5rem
a
display flex
align-items center
.hidden-mobile
display -webkit-box
-webkit-box-orient vertical
-webkit-line-clamp 2
text-overflow ellipsis
overflow hidden
@media (max-width: 575px)
.hidden-mobile
display none
.post-prev:hover i, .post-prev:active i, .post-next:hover i, .post-next:active i
-webkit-animation-duration 1s
animation-duration 1s
-webkit-animation-delay .1s
animation-delay .1s
-webkit-animation-timing-function ease-in-out
animation-timing-function ease-in-out
-webkit-animation-iteration-count infinite
animation-iteration-count infinite
-webkit-animation-fill-mode forwards
animation-fill-mode forwards
-webkit-animation-direction alternate
animation-direction alternate
.post-prev:hover i, .post-prev:active i
-webkit-animation-name post-prev-anim
animation-name post-prev-anim
.post-next:hover i, .post-next:active i
-webkit-animation-name post-next-anim
animation-name post-next-anim
.post-next
justify-content flex-end
.fa-chevron-left
margin-right .5rem
.fa-chevron-right
margin-left .5rem
@keyframes post-prev-anim
0%
-webkit-transform translateX(0)
transform translateX(0)
50%
-webkit-transform translateX(-0.35rem)
transform translateX(-0.35rem)
100%
-webkit-transform translateX(0)
transform translateX(0)
@keyframes post-next-anim
0%
-webkit-transform translateX(0)
transform translateX(0)
50%
-webkit-transform translateX(0.35rem)
transform translateX(0.35rem)
100%
-webkit-transform translateX(0)
transform translateX(0)
#seo-header
color var(--post-heading-color)
font-weight bold
margin-top 0.5em
margin-bottom 0.75em
border-bottom-color var(--line-color)
border-bottom-style solid
border-bottom-width 2px
line-height 1.5
.custom, #comments
margin-top 2rem
#comments
noscript
display block
text-align center
padding 2rem 0
.visitors
font-size .8em
padding .45rem
float right
a.fancybox:hover
text-decoration none
// Rewrite mathjax
mjx-container, .mjx-container
overflow-x auto
overflow-y hidden !important
padding .5em 0
&:focus, svg:focus
outline none
.mjx-char
line-height 1
// Rewrite katex
.katex-block
overflow-x auto
.katex, .mjx-mrow
white-space pre-wrap !important
// Rewrite hint
.footnote-ref [class*=hint--][aria-label]:after
max-width 12rem
white-space nowrap
overflow hidden
text-overflow ellipsis

View File

@@ -0,0 +1,168 @@
// fold
.fold
margin 1rem 0
border 0.5px solid var(--fold-border-color)
position relative
clear both
border-radius 0.125rem
.fold-title
color var(--fold-title-color)
padding 0.5rem 0.75rem
font-size 0.9rem
font-weight bold
border-radius 0.125rem
&:not(.collapsed) > .fold-arrow
transform rotate(90deg)
transform-origin center center
.fold-arrow
display inline-block
margin-right 0.35rem
transition transform .3s ease-out
.fold-content
padding 1rem 1rem
& > *:last-child
margin-bottom 0
.fold-default, .fold-secondary
background-color rgba(#bbbbbb, 0.25)
.fold-primary
background-color rgba(#b7a0e0, 0.25)
.fold-info
background-color rgba(#a0c5e4, 0.25)
.fold-success
background-color rgba(#aedcae, 0.25)
.fold-warning
background-color rgba(#f8d6a6, 0.25)
.fold-danger
background-color rgba(#eca9a7, 0.25)
.fold-light
background-color rgba(#fefefe, 0.25)
// note
.note
padding 0.75rem
border-left 0.35rem solid
border-radius 0.25rem
margin 1.5rem 0
color var(--text-color)
transition color .2s ease-in-out
font-size 0.9rem
a
color var(--text-color)
transition color .2s ease-in-out
*:last-child
margin-bottom 0
.note-default, .note-secondary
background-color rgba(#bbbbbb, 0.25)
border-color #777
.note-primary
background-color rgba(#b7a0e0, 0.25)
border-color #6f42c1
.note-success
background-color rgba(#aedcae, 0.25)
border-color #5cb85c
.note-danger
background-color rgba(#eca9a7, 0.25)
border-color #d9534f
.note-warning
background-color rgba(#f8d6a6, 0.25)
border-color #f0ad4e
.note-info
background-color rgba(#a0c5e4, 0.25)
border-color #428bca
.note-light
background-color rgba(#fefefe, 0.25)
border-color #0f0f0f
// label
.label
display inline
border-radius 3px
font-size 85%
margin 0
padding .2em .4em
color var(--text-color)
transition color .2s ease-in-out
.label-default, .label-secondary
background-color rgba(#bbbbbb, 0.25)
.label-primary
background-color rgba(#b7a0e0, 0.25)
.label-info
background-color rgba(#a0c5e4, 0.25)
.label-success
background-color rgba(#aedcae, 0.25)
.label-warning
background-color rgba(#f8d6a6, 0.25)
.label-danger
background-color rgba(#eca9a7, 0.25)
// button
.markdown-body .btn
border 1px solid var(--line-color)
background-color var(--button-bg-color)
color var(--text-color)
transition color .2s ease-in-out, background .2s ease-in-out, border-color .2s ease-in-out
border-radius .25rem
display inline-block
font-size .875em
line-height 2
padding 0 .75rem
margin-bottom 1rem
&:hover
background-color var(--button-hover-bg-color)
text-decoration none
// group-image
.group-image-container
margin 1.5rem auto
& img
margin 0 auto
border-radius 3px
background-color transparent
box-shadow 0 3px 9px 0 rgba(0, 0, 0, 0.15), 0 3px 9px 0 rgba(0, 0, 0, 0.15)
.group-image-row
margin-bottom .5rem
display flex
justify-content center
.group-image-wrap
flex 1
display flex
justify-content center
&:not(:last-child)
margin-right .25rem
// checkbox
input[type=checkbox]
margin 0 0.2em 0.2em 0
vertical-align middle

View File

@@ -0,0 +1,9 @@
.tagcloud
padding 1rem 5%
a
display inline-block
padding .5rem
&:hover
color var(--link-hover-color) !important

View File

@@ -0,0 +1,8 @@
@import "_base/*"
@import "_index/*"
@import "_post/*"
@import "_archive/*"
@import "_about/*"
@import "_category/*"
@import "_tag/*"
@import "_links/*"

View File

@@ -0,0 +1,71 @@
// font
$font-size = theme-config("font.font_size", "16px")
$letter-spacing = theme-config("font.letter_spacing", "0.02em")
$font-family = theme-config("font.font_family", "var(--font-family-sans-serif)")
$code-font-size = theme-config("font.code_font_size", "85%")
// body
$body-bg-color = theme-config("color.body_bg_color", "#eee")
$body-bg-color-dark = theme-config("color.body_bg_color_dark", "#181c27")
// text
$text-color = theme-config("color.text_color", "#3c4858")
$text-color-dark = theme-config("color.text_color_dark", "#c4c6c9")
$sec-text-color = theme-config("color.sec_text_color", "#718096")
$sec-text-color-dark = theme-config("color.sec_text_color_dark", "#a7a9ad")
// post
$post-text-color = theme-config("color.post_text_color", "#2c3e50")
$post-text-color-dark = theme-config("color.post_text_color_dark", "#c4c6c9")
$post-heading-color = theme-config("color.post_heading_color", "#1a202c")
$post-heading-color-dark = theme-config("color.post_heading_color_dark", "#c4c6c9")
$post-link-color = theme-config("color.post_link_color", "#2c3e50")
$post-link-color-dark = theme-config("color.post_link_color_dark", "#c4c6c9")
$link-hover-color = theme-config("color.link_hover_color", "#30a9de")
$link-hover-color-dark = theme-config("color.link_hover_color_dark", "#30a9de")
$link-hover-bg-color = theme-config("color.link_hover_bg_color", "#ebedef")
$link-hover-bg-color-dark = theme-config("color.link_hover_bg_color_dark", "#364151")
$line-color = theme-config("color.line_color", "#eaecef")
$line-color-dark = theme-config("color.line_color_dark", "#435266")
$button-bg-color = theme-config("color.button_bg_color", "#f6f8fa")
$button-bg-color-dark = theme-config("color.button_bg_color_dark", "#2f4154")
$button-hover-bg-color = theme-config("color.button_hover_bg_color", "#f2f3f5")
$button-hover-bg-color-dark = theme-config("color.button_hover_bg_color_dark", "#46647e")
// navbar
$navbar-bg-color = theme-config("color.navbar_bg_color", "#2f4154")
$navbar-bg-color-dark = theme-config("color.navbar_bg_color_dark", "#1f3144")
$navbar-text-color = theme-config("color.navbar_text_color", "#fff")
$navbar-text-color-dark = theme-config("color.navbar_text_color_dark", "d0d0d0")
$navbar-glass-enable = theme-config-origin("navbar.ground_glass.enable", false)
$navbar-glass-px = theme-config-unit("navbar.ground_glass.px", 0, "px")
$navbar-glass-alpha = theme-config-origin("navbar.ground_glass.alpha", 0)
// banner
$banner-width-height-ratio = theme-config-origin("banner.width_height_ratio", 0)
// subtitle
$subtitle-color = theme-config("color.subtitle_color", "#fff")
$subtitle-color-dark = theme-config("color.subtitle_color_dark", "d0d0d0")
// scroll arrow
$scroll-arrow-height-limit = theme-config-origin("scroll_down_arrow.banner_height_limit", 0)
// board
$board-bg-color = theme-config("color.board_color", "#fff")
$board-bg-color-dark = theme-config("color.board_color_dark", "#252d38")
// scrollbar
$scrollbar-color = theme-config("color.scrollbar_color", "#c4c6c9")
$scrollbar-color-dark = theme-config("color.scrollbar_color_dark", "#687582")
$scrollbar-hover-color = theme-config("color.scrollbar_hover_color", "#a6a6a6")
$scrollbar-hover-color-dark = theme-config("color.scrollbar_hover_color_dark", "#9da8b3")
// code
$highlight-bg-color = hexo-config("code.highlight.highlightjs.light.backgroundColor") && hexo-config("code.highlight.highlightjs.light.backgroundColor") != "#fff" ? unquote(hexo-config("code.highlight.highlightjs.light.backgroundColor")):#f6f8fa
$highlight-bg-color-dark = hexo-config("code.highlight.highlightjs.dark.backgroundColor") && hexo-config("code.highlight.highlightjs.dark.backgroundColor") != "#fff" ? unquote(hexo-config("code.highlight.highlightjs.dark.backgroundColor")):#2d333b
$inlinecode-bg-color = rgba(175, 184, 193, .2)
$inlinecode-bg-color-dark = rgba(99, 110, 123, .4)
// shadow
$img-shadow = 0 5px 11px 0 rgba(0, 0, 0, .18), 0 4px 15px 0 rgba(0, 0, 0, .15)

View File

@@ -0,0 +1,546 @@
@font-face {
font-family: octicons-link;
src: url(data:font/woff;charset=utf-8;base64,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) format('woff');
}
/* variables */
/* functions & mixins */
/* variables - calculated */
/* styles */
.gt-container {
-webkit-box-sizing: border-box;
box-sizing: border-box;
font-size: 16px;
/* loader */
/* error */
/* initing */
/* no int */
/* link */
/* meta */
/* popup */
/* header */
/* comments */
/* comment */
}
.gt-container * {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.gt-container a {
color: #6190e8;
}
.gt-container a:hover {
color: #81a6ed;
border-color: #81a6ed;
}
.gt-container a.is--active {
color: #333;
cursor: default !important;
}
.gt-container a.is--active:hover {
color: #333;
}
.gt-container .hide {
display: none !important;
}
.gt-container .gt-svg {
display: inline-block;
width: 1em;
height: 1em;
vertical-align: sub;
}
.gt-container .gt-svg svg {
width: 100%;
height: 100%;
fill: #6190e8;
}
.gt-container .gt-ico {
display: inline-block;
}
.gt-container .gt-ico-text {
margin-left: 0.3125em;
}
.gt-container .gt-ico-github {
width: 100%;
height: 100%;
}
.gt-container .gt-ico-github .gt-svg {
width: 100%;
height: 100%;
}
.gt-container .gt-ico-github svg {
fill: inherit;
}
.gt-container .gt-spinner {
position: relative;
}
.gt-container .gt-spinner::before {
content: '';
-webkit-box-sizing: border-box;
box-sizing: border-box;
position: absolute;
top: 3px;
width: 0.75em;
height: 0.75em;
margin-top: -0.1875em;
margin-left: -0.375em;
border-radius: 50%;
border: 1px solid #fff;
border-top-color: #6190e8;
-webkit-animation: gt-kf-rotate 0.6s linear infinite;
animation: gt-kf-rotate 0.6s linear infinite;
}
.gt-container .gt-loader {
position: relative;
border: 1px solid #999;
-webkit-animation: ease gt-kf-rotate 1.5s infinite;
animation: ease gt-kf-rotate 1.5s infinite;
display: inline-block;
font-style: normal;
width: 1.75em;
height: 1.75em;
line-height: 1.75em;
border-radius: 50%;
}
.gt-container .gt-loader:before {
content: '';
position: absolute;
display: block;
top: 0;
left: 50%;
margin-top: -0.1875em;
margin-left: -0.1875em;
width: 0.375em;
height: 0.375em;
background-color: #999;
border-radius: 50%;
}
.gt-container .gt-avatar {
display: inline-block;
width: 3.125em;
height: 3.125em;
}
@media (max-width: 479px) {
.gt-container .gt-avatar {
width: 2em;
height: 2em;
}
}
.gt-container .gt-avatar img {
width: 100%;
height: auto;
border-radius: 3px;
}
.gt-container .gt-avatar-github {
width: 3em;
height: 3em;
}
@media (max-width: 479px) {
.gt-container .gt-avatar-github {
width: 1.875em;
height: 1.875em;
}
}
.gt-container .gt-btn {
padding: 0.75em 1.25em;
display: inline-block;
line-height: 1;
text-decoration: none;
white-space: nowrap;
cursor: pointer;
border: 1px solid #6190e8;
border-radius: 5px;
background-color: #6190e8;
color: #fff;
outline: none;
font-size: 0.75em;
}
.gt-container .gt-btn-text {
font-weight: 400;
}
.gt-container .gt-btn-loading {
position: relative;
margin-left: 0.5em;
display: inline-block;
width: 0.75em;
height: 1em;
vertical-align: top;
}
.gt-container .gt-btn.is--disable {
cursor: not-allowed;
opacity: 0.5;
}
.gt-container .gt-btn-login {
margin-right: 0;
}
.gt-container .gt-btn-preview {
background-color: #fff;
color: #6190e8;
}
.gt-container .gt-btn-preview:hover {
background-color: #f2f2f2;
border-color: #81a6ed;
}
.gt-container .gt-btn-public:hover {
background-color: #81a6ed;
border-color: #81a6ed;
}
.gt-container .gt-error {
text-align: center;
margin: 0.625em;
color: #ff3860;
}
.gt-container .gt-initing {
padding: 1.25em 0;
text-align: center;
}
.gt-container .gt-initing-text {
margin: 0.625em auto;
font-size: 92%;
}
.gt-container .gt-no-init {
padding: 1.25em 0;
text-align: center;
}
.gt-container .gt-link {
border-bottom: 1px dotted #6190e8;
}
.gt-container .gt-link-counts,
.gt-container .gt-link-project {
text-decoration: none;
}
.gt-container .gt-meta {
margin: 1.25em 0;
padding: 1em 0;
position: relative;
border-bottom: 1px solid #e9e9e9;
font-size: 1em;
position: relative;
z-index: 10;
}
.gt-container .gt-meta:before,
.gt-container .gt-meta:after {
content: " ";
display: table;
}
.gt-container .gt-meta:after {
clear: both;
}
.gt-container .gt-counts {
margin: 0 0.625em 0 0;
}
.gt-container .gt-user {
float: right;
margin: 0;
font-size: 92%;
}
.gt-container .gt-user-pic {
width: 16px;
height: 16px;
vertical-align: top;
margin-right: 0.5em;
}
.gt-container .gt-user-inner {
display: inline-block;
cursor: pointer;
}
.gt-container .gt-user .gt-ico {
margin: 0 0 0 0.3125em;
}
.gt-container .gt-user .gt-ico svg {
fill: inherit;
}
.gt-container .gt-user .is--poping .gt-ico svg {
fill: #6190e8;
}
.gt-container .gt-version {
color: #a1a1a1;
margin-left: 0.375em;
}
.gt-container .gt-copyright {
margin: 0 0.9375em 0.5em;
border-top: 1px solid #e9e9e9;
padding-top: 0.5em;
}
.gt-container .gt-popup {
position: absolute;
right: 0;
top: 2.375em;
background: #fff;
display: inline-block;
border: 1px solid #e9e9e9;
padding: 0.625em 0;
font-size: 0.875em;
letter-spacing: 0.5px;
}
.gt-container .gt-popup .gt-action {
cursor: pointer;
display: block;
margin: 0.5em 0;
padding: 0 1.125em;
position: relative;
text-decoration: none;
}
.gt-container .gt-popup .gt-action.is--active:before {
content: '';
width: 0.25em;
height: 0.25em;
background: #6190e8;
position: absolute;
left: 0.5em;
top: 0.4375em;
}
.gt-container .gt-header {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.gt-container .gt-header-comment {
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
margin-left: 1.25em;
}
@media (max-width: 479px) {
.gt-container .gt-header-comment {
margin-left: 0.875em;
}
}
.gt-container .gt-header-textarea {
padding: 0.75em;
display: block;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
min-height: 5.125em;
max-height: 15em;
border-radius: 5px;
border: 1px solid rgba(0,0,0,0.1);
font-size: 0.875em;
word-wrap: break-word;
resize: vertical;
background-color: #f6f6f6;
outline: none;
-webkit-transition: all 0.25s ease;
transition: all 0.25s ease;
}
.gt-container .gt-header-textarea:hover {
background-color: #fbfbfb;
}
.gt-container .gt-header-preview {
padding: 0.75em;
border-radius: 5px;
border: 1px solid rgba(0,0,0,0.1);
background-color: #f6f6f6;
}
.gt-container .gt-header-controls {
position: relative;
margin: 0.75em 0 0;
}
.gt-container .gt-header-controls:before,
.gt-container .gt-header-controls:after {
content: " ";
display: table;
}
.gt-container .gt-header-controls:after {
clear: both;
}
@media (max-width: 479px) {
.gt-container .gt-header-controls {
margin: 0;
}
}
.gt-container .gt-header-controls-tip {
font-size: 0.875em;
color: #6190e8;
text-decoration: none;
vertical-align: sub;
}
@media (max-width: 479px) {
.gt-container .gt-header-controls-tip {
display: none;
}
}
.gt-container .gt-header-controls .gt-btn {
float: right;
margin-left: 1.25em;
}
@media (max-width: 479px) {
.gt-container .gt-header-controls .gt-btn {
float: none;
width: 100%;
margin: 0.75em 0 0;
}
}
.gt-container:after {
content: '';
position: fixed;
bottom: 100%;
left: 0;
right: 0;
top: 0;
opacity: 0;
}
.gt-container.gt-input-focused {
position: relative;
}
.gt-container.gt-input-focused:after {
content: '';
position: fixed;
bottom: 0%;
left: 0;
right: 0;
top: 0;
background: #000;
opacity: 0.6;
-webkit-transition: opacity 0.3s, bottom 0s;
transition: opacity 0.3s, bottom 0s;
z-index: 9999;
}
.gt-container.gt-input-focused .gt-header-comment {
z-index: 10000;
}
.gt-container .gt-comments {
padding-top: 1.25em;
}
.gt-container .gt-comments-null {
text-align: center;
}
.gt-container .gt-comments-controls {
margin: 1.25em 0;
text-align: center;
}
.gt-container .gt-comment {
position: relative;
padding: 0.625em 0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.gt-container .gt-comment-content {
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
margin-left: 1.25em;
padding: 0.75em 1em;
background-color: #f9f9f9;
overflow: auto;
-webkit-transition: all ease 0.25s;
transition: all ease 0.25s;
}
.gt-container .gt-comment-content:hover {
-webkit-box-shadow: 0 0.625em 3.75em 0 #f4f4f4;
box-shadow: 0 0.625em 3.75em 0 #f4f4f4;
}
@media (max-width: 479px) {
.gt-container .gt-comment-content {
margin-left: 0.875em;
padding: 0.625em 0.75em;
}
}
.gt-container .gt-comment-header {
margin-bottom: 0.5em;
font-size: 0.875em;
position: relative;
}
.gt-container .gt-comment-block-1 {
float: right;
height: 1.375em;
width: 2em;
}
.gt-container .gt-comment-block-2 {
float: right;
height: 1.375em;
width: 4em;
}
.gt-container .gt-comment-username {
font-weight: 500;
color: #6190e8;
text-decoration: none;
}
.gt-container .gt-comment-username:hover {
text-decoration: underline;
}
.gt-container .gt-comment-text {
margin-left: 0.5em;
color: #a1a1a1;
}
.gt-container .gt-comment-date {
margin-left: 0.5em;
color: #a1a1a1;
}
.gt-container .gt-comment-like,
.gt-container .gt-comment-edit,
.gt-container .gt-comment-reply {
position: absolute;
height: 1.375em;
}
.gt-container .gt-comment-like:hover,
.gt-container .gt-comment-edit:hover,
.gt-container .gt-comment-reply:hover {
cursor: pointer;
}
.gt-container .gt-comment-like {
top: 0;
right: 2em;
}
.gt-container .gt-comment-edit,
.gt-container .gt-comment-reply {
top: 0;
right: 0;
}
.gt-container .gt-comment-body {
color: #333 !important;
}
.gt-container .gt-comment-body .email-hidden-toggle a {
display: inline-block;
height: 12px;
padding: 0 9px;
font-size: 12px;
font-weight: 600;
line-height: 6px;
color: #444d56;
text-decoration: none;
vertical-align: middle;
background: #dfe2e5;
border-radius: 1px;
}
.gt-container .gt-comment-body .email-hidden-toggle a:hover {
background-color: #c6cbd1;
}
.gt-container .gt-comment-body .email-hidden-reply {
display: none;
white-space: pre-wrap;
}
.gt-container .gt-comment-body .email-hidden-reply .email-signature-reply {
padding: 0 15px;
margin: 15px 0;
color: #586069;
border-left: 4px solid #dfe2e5;
}
.gt-container .gt-comment-body .email-hidden-reply.expanded {
display: block;
}
.gt-container .gt-comment-admin .gt-comment-content {
background-color: #f6f9fe;
}
@-webkit-keyframes gt-kf-rotate {
0% {
-webkit-transform: rotate(0);
transform: rotate(0);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes gt-kf-rotate {
0% {
-webkit-transform: rotate(0);
transform: rotate(0);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}

View File

@@ -0,0 +1,6 @@
if hexo-config("code.highlight.enable") && hexo-config("dark_mode.enable")
if hexo-config("code.highlight.highlightjs.dark.file")
@require hexo-config("code.highlight.highlightjs.dark.file")
if hexo-config("code.highlight.prismjs.dark.file")
@require hexo-config("code.highlight.prismjs.dark.file")

View File

@@ -0,0 +1,6 @@
if hexo-config("code.highlight.enable")
if hexo-config("code.highlight.highlightjs.light.file")
@require hexo-config("code.highlight.highlightjs.light.file")
if hexo-config("code.highlight.prismjs.light.file")
@require hexo-config("code.highlight.prismjs.light.file")

View File

@@ -0,0 +1,19 @@
// --------------------------------------
// Fluid
// https://github.com/fluid-dev/hexo-theme-fluid
// --------------------------------------
@import "_variables/base"
for $inject_variable in hexo-config("injects.variable")
@import $inject_variable;
@import "_functions/base"
@import "_mixins/base"
for $inject_mixin in hexo-config("injects.mixin")
@import $inject_mixin;
@import "_pages/pages"
for $inject_style in hexo-config("injects.style")
@import $inject_style;