@charset "UTF-8";
@font-face {
  font-family: "AliFont";
  font-weight: 700;
  src: url("fonts/AlimamaShuHeiTi-Bold.woff2") format("woff2"), url("fonts/AlimamaShuHeiTi-Bold.woff") format("woff");
  font-display: swap
}
@keyframes donut-spin {
  0% {
    transform: rotate(0deg)
  }
  100% {
    transform: rotate(360deg)
  }
}
@keyframes growOut {
  0% {
    transform: scale(0.6)
  }
  80% {
    transform: scale(1.1)
  }
  100% {
    transform: scale(1)
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg)
  }
  25% {
    transform: rotate(20deg)
  }
  50% {
    transform: rotate(0deg)
  }
  75% {
    transform: rotate(-20deg)
  }
  100% {
    transform: rotate(0deg)
  }
}
.jzicon {
  font-size: inherit !important;
  display: inline-block;
  transform: scale(var(--scale, 1.1));
  margin-right: 3px
}
.fali {
  font-family: "AliFont"
}
.fs-7 {
  font-size: .85rem !important
}
.spinner-border-ss {
  --bs-spinner-width: .75rem;
  --bs-spinner-height: .75rem;
  --bs-spinner-border-width: .2em
}
.spinner-b1 {
  --bs-spinner-border-width: .1em !important
}
.spinner-b2 {
  --bs-spinner-width: .75rem;
  --bs-spinner-height: .75rem;
  --bs-spinner-border-width: .15em
}
:root, [data-bs-theme=light] {
  --bs-secondary-color: #79889e;
  --bs-body-color: #203656;
  --bs-border-color-translucent: var(--cbg-grey-color);
  --cx-border-radius: 10px;
  --bs-link-color-rgb: 32, 54, 84;
  --bs-link-hover-color-rgb: 254, 79, 112;
  --cbg-module-bgcolor: #f5f6f9;
  --cbg-navsub-bg: var(--cx-white);
  --cbg-grey-color: #ebebeb;
  --cbg-blue-color: #f1f8ff;
  --cbg-article-color: #4e607a;
  --cbg-color: #fe5872;
  --cbg-gradient: var(--cx-gradient-rad);
  --bs-link-hover-color: #fe4f70;
  --cx-color: #fe4f70;
  --cx-color-2: #ffa387;
  --cx-muted: #8f9bad;
  --cx-white: #fff;
  --swiper-theme-color: var(--cbg-color);
  --swiper-pagination-bullet-width: 16px;
  --swiper-pagination-bullet-height: 2px;
  --swiper-pagination-bullet-border-radius: 2px;
  --swiper-pagination-bullet-inactive-color: var(--cx-white);
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-color: var(--cbg-gradient);
  --cx-gradient-rad: linear-gradient(to right, var(--cx-color) 0, var(--cx-color-2) 51%, var(--cx-color) 100%);
  --cx-gradient-blue: linear-gradient(120deg, #005bea 0, #00c6fb 100%);
  --cx-gradient-purple: linear-gradient(90deg, #3ca5f6 0, #a86af9 100%);
  --cx-gradient-cyan: linear-gradient(315deg, #6772ff 0, #00f9e5 100%);
  --cx-gradient-pink: linear-gradient(120deg, #f093fb 0, #f5576c 100%);
  --cx-gradient-green: linear-gradient(150deg, #2af598 0, #009efd 100%);
  --cx-gradient-deongaree: linear-gradient(to left, #243949 0, #517fa4 100%)
}
[data-bs-theme=dark] {
  --bs-body-bg: #142030;
  --bs-body-color: #d5dde6;
  --bs-link-color: #ddd;
  --bs-link-color-rgb: 200, 200, 200;
  --bs-link-hover-color-rgb: 254, 88, 144;
  --cbg-module-bgcolor: #202b3b;
  --cbg-navsub-bg: #2b384a;
  --cbg-grey-color: #2b384a;
  --cbg-blue-color: #202b3b;
  --cbg-article-color: #adb5bd;
  --cbg-color: #fe5872;
  --cbg-gradient: var(--cx-gradient-rad);
  --bs-link-hover-color: #fe4f70
}
[data-bs-theme=dark] .btn {
  --bs-btn-color: #ddd
}
[data-bs-theme=dark] .pdesc {
  opacity: .6
}
@media(min-width:1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1240px
  }
}
@media(min-width:1200px) {
  .h1, h1 {
    font-size: 2rem
  }
}
.btn-close:focus {
  box-shadow: none
}
.hide {
  display: none
}
img {
  max-width: 100%;
  height: auto
}
html{
  opacity: 0;
  overflow: hidden;
}
.font-inherit {
  font-size: inherit
}
a {
  text-decoration: none;
  transition: color .3s ease
}
.pdesc {
  color: var(--cx-muted)
}
.form-control {
  border-radius: 25px;
  font-size: 14px;
  padding: 8px 24px;
  color: var(--cx-muted)
}
.form-control:focus {
  border-color: var(--cx-color);
  outline: 0;
  box-shadow: none
}
.btn {
  border-radius: 25px;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.btn-default {
  color: var(--cx-white);
  background: var(--cbg-color);
  background: var(--cbg-gradient);
  background-size: 200% auto
}
.btn-default:hover {
  color: var(--cx-white);
  background-position: center right
}
.btn-xsm {
  --bs-btn-padding-y: 0;
  --bs-btn-padding-x: .25rem;
  --bs-btn-font-size: .8rem;
  --bs-btn-border-radius: var(--bs-border-radius-sm);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 49, 132, 253
}
.c-dark {
  display: none
}
.dark .c-light {
  display: none
}
.dark .c-dark {
  display: inherit
}
.cxrow > .col-* {
  width: 100%
}
.cxrow .is-affixed {
  padding-left: 0 !important;
  padding-right: 0 !important
}
.cxrow .is-affixed .rowright {
  padding-left: calc(var(--bs-gutter-x)*.5);
  padding-right: calc(var(--bs-gutter-x)*.5)
}
.banner {
  background: var(--cbg-module-bgcolor)
}
.sticky-color {
  color: var(--cbg-color);
}
.nonebox {
  flex: 1;
  text-align: center
}
.nonebox .iconsvg {
  background: url(images/none.svg) center no-repeat;
  background-size: cover;
  width: 80px;
  height: 80px;
  margin: 20px auto
}
.nonebox p {
  font-size: .85em;
  color: var(--bs-gray-500)
}
.line-tow {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden
}
.line-one {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis
}
.shade {
  position: relative;
  display: block;
  width: 100%;
  height: 100%
}
.shade:after {
  content: "";
  background: #203656;
  display: block;
  height: 100%;
  left: 0;
  opacity: .4;
  top: 0;
  position: absolute;
  width: 100%
}
.trans_2ms, .sub-menu {
  -webkit-transition: all .2s linear;
  -moz-transition: all .2s linear;
  -ms-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear
}
.figure-avatar {
  display: inline-block;
  border-radius: 50%;
  padding: 2px;
  width: 26px;
  line-height: 18px;
  margin-right: 5px;
  transform: translateY(-2px);
  margin-bottom: 0
}
.figure-avatar img {
  border-radius: 50%;
  border: solid 1px var(--cx-white);
  background: var(--cx-white);
  transition: transform .4s ease
}
.author:hover .figure-avatar img {
  transform: rotate(20deg)
}
.bg-auto {
  background: var(--cbg-color);
  background: var(--cbg-gradient);
  background-size: auto 200%
}
.bg-grad {
  background: var(--cx-color);
  background: -webkit-linear-gradient(left, var(--cx-color) 0, var(--cx-color-2) 100%);
  background: linear-gradient(to right, var(--cx-color) 0, var(--cx-color-2) 100%);
  background-size: auto 200%
}
.bg-blue {
  background: #03a9f4;
  background: linear-gradient(120deg, #005bea 0, #00c6fb 100%);
  background-size: auto 200%
}
.text-auto {
  color: var(--cbg-color)
}
.color-grad {
  color: var(--cbg-color);
  opacity: .6
}
.cxline {
  width: 15px;
  height: 2px;
  border-radius: 2px;
  margin-right: 5px;
  background: var(--cbg-color);
  opacity: .6
}
.flex-center {
  display: flex;
  align-items: center
}
.swiper .swiper-pagination-bullets {
  z-index: 10;
  position: absolute;
  top: 10px;
  right: 10px;
  height: 30px;
  width: auto;
  left: auto
}
.swiper .swiper-pagination-progressbar {
  z-index: 1;
  height: 3px;
  bottom: 0;
  top: auto
}
.wi, .swi {
  padding-bottom: 30px
}
.widget-so .index-ht {
  height: 100%;
  padding: 25px;
  display: flex;
  flex-direction: column;
  overflow: hidden
}
.widget-so .index-ht .item-min {
  margin-bottom: 13px
}
.widget-categ .item-eg {
  padding: 20px;
  position: relative;
  overflow: hidden;
  min-height: 100%
}
.widget-categ .item-eg .egbox {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center
}
.widget-categ .item-eg .thumb {
  width: 60px;
  height: 60px;
  position: relative;
  flex-shrink: 0;
  overflow: hidden
}
.widget-categ .item-eg .thumb.fillet {
  border-radius: 10px
}
.widget-categ .item-eg .thumb.round {
  border-radius: 50%
}
.widget-categ .item-eg .subtitle {
  padding-left: 20px
}
.widget-categ .item-eg .subtitle h4 {
  font-size: 1.1em;
  color: var(--bs-nav-link-color)
}
.widget-categ .item-eg .subtitle p {
  font-size: .8em;
  margin-bottom: 0
}
.mso {
  padding: 20px 0
}
.mso .module-tit {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  padding-bottom: 10px;
  margin: 0 20px;
  position: relative
}
.mso .module-tit:not(.noborder):after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  height: 1px;
  width: 100%;
  background: var(--cbg-navsub-bg)
}
.mso .module-tit.item-center {
  align-items: center
}
.mso .module-tit h3 {
  margin-bottom: 0;
  margin-right: 15px;
  letter-spacing: 1px;
  font-size: calc(1.1rem+.2vw);
  display: flex;
  align-items: center;
  font-weight: 600
}
.mso .module-tit h3 span {
  color: var(--cbg-color)
}
.mso .module-tit p {
  margin-bottom: 0;
  color: var(--cx-muted);
  font-size: .9em;
  flex-grow: 1
}
.mso .hyh-ajax {
  transform: scale(0.85);
  transform-origin: top right;
  cursor: pointer;
  opacity: .8;
  padding-left: 15px
}
.mso .more-round {
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 26px;
  opacity: .6;
  padding-left: 15px
}
.mso .more-round i, .mso .more-round:after, .mso .more-round:before {
  width: 10px;
  height: 10px;
  background: #ffcf00;
  border-radius: 50%
}
.mso .more-round i {
  margin: 0 5px
}
.mso .more-round:after {
  content: "";
  background: #ff4e4c
}
.mso .more-round:before {
  content: "";
  background: #58da80
}
.mso .more-sort {
  background: var(--cbg-module-bgcolor);
  border-radius: 20px;
  display: flex;
  padding: 5px 8px;
  align-items: center
}
.mso .module-content {
  padding: 0 10px
}
.mso.nobg .module-tit {
  padding-bottom: 5px;
  margin: 0
}
.mso.nobg .module-content {
  padding: 0;
  margin: 0 -10px
}
.user-popbox {
  position: absolute;
  right: 0;
  top: 34px;
  visibility: hidden;
  opacity: 0;
  padding-top: 15px
}
.user-popbox .popbox {
  background: var(--cbg-navsub-bg);
  border-radius: 6px;
  line-height: 35px;
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  display: flex;
  flex-wrap: wrap;
  font-size: .8em;
  position: relative
}
.user-popbox .popbox:after {
  content: "";
  display: block;
  height: 0;
  width: 0 !important;
  position: absolute;
  top: -5px;
  right: 10px;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 10px solid var(--cbg-navsub-bg)
}
.userlogin-box {
  position: relative;
  opacity: 0
}
.userlogin-box.boxshow {
  opacity: 1
}
.userlogin-box .login_in {
  display: inline-block;
  width: 100%;
  color: var(--cx-white)
}
.userlogin-box .logindata {
  width: 100%;
  padding: 2px;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: .95
}
.userlogin-box .logindata .avatar {
  border-radius: 50%;
  width: 100%;
  animation: spin 5s linear infinite;
  transform-style: preserve-3d;
  backface-visibility: hidden;
  will-change: transform;
  border: solid 2px var(--cx-white);
  background: var(--cx-white)
}
.userlogin-box .logindata:hover .avatar {
  animation-play-state: paused
}
.userlogin-box:hover .user-popbox {
  top: 26px;
  visibility: visible;
  opacity: 1
}
.popl {
  display: flex;
  padding: 0;
  margin: 10px 0;
  flex-direction: column;
  list-style-type: none
}
.popl > li a {
  display: inline-block;
  min-width: 130px;
  width: 100%;
  text-align: left;
  padding: 0 20px
}
.sort {
  background-image: var(--cx-gradient-blue);
  padding: 0 15px 0 10px;
  border-radius: 0 12px 12px 0;
  line-height: 24px;
  display: inline-block;
  font-size: .75rem;
  margin-bottom: 10px
}
.sortbox {
  position: absolute;
  top: 12%;
  transform: scale(0.8);
  transform-origin: left top
}
.sortbox .sort {
  margin-bottom: 0;
  color: var(--cx-white);
  padding: 0 10px 0 6px;
  font-size: .7rem
}
.ranking {
  background-image: linear-gradient(to right, #868f96 0, #596164 100%);
  font-weight: bold;
  background-size: 200% auto
}
.ranking.n-1 {
  background-image: var(--cx-gradient-rad)
}
.ranking.n-2 {
  background-image: var(--cx-gradient-green)
}
.ranking.n-3 {
  background-image: var(--cx-gradient-purple)
}
.donut {
  display: inline-block;
  animation: donut-spin 1.2s linear infinite
}
.hoverline {
  display: inline-block;
  position: relative;
  color: #0087ca
}
.hoverline::after {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: #0087ca;
  transform-origin: bottom right;
  transition: transform .25s ease-out
}
.hoverline:hover::after {
  transform: scaleX(1);
  transform-origin: bottom left
}
.Ptfull {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
.module-content {
  display: flex;
  flex-wrap: wrap
}
.module-content.px--1 {
  margin: 0 -10px
}
.thumb-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
.thumb-inner img {
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  transform: scale(1);
  transition: all .3s ease-in-out
}
.thumb-inner:hover img {
  transform: scale(1.07)
}
.icon-button {
  color: var(--cx-white);
  border: 0;
  border-radius: 50%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 30px;
  line-height: 32px;
  text-align: center;
  vertical-align: middle;
  width: 30px;
  font-size: .8rem;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
  transition: all .2s ease-in-out
}
.popbg-box {
  opacity: 0;
  visibility: hidden;
  filter: blur(5px);
  background: var(--cbg-navsub-bg);
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
  z-index: 20
}
.popbg-box.visible {
  opacity: .6;
  visibility: visible
}
.headernav-top {
  padding-top: 85px;
  position: relative
}
.headernav-top .header-s1 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background-color: var(--bs-body-bg);
  transition: padding .3s ease-in-out
}
.headernav-top .header-s1:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.08);
  border-bottom: solid 1px var(--cbg-grey-color);
  opacity: 0;
  transition: opacity .4s ease-in-out
}
.headernav-top .header-s1.scrolled, .headernav-top .header-s1.onfixed {
  padding-top: 10px;
  padding-bottom: 10px
}
.headernav-top .header-s1.scrolled:after, .headernav-top .header-s1.onfixed:after {
  opacity: 1
}
.header-s1 {
  padding: 20px 0;
  position: relative;
  width: 100%
}
.header-s1 a {
  text-decoration: none
}
.header-s1 .headnav {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  z-index: 2;
  flex-wrap: nowrap;
  justify-content: flex-start
}
.header-s1 .headnav .cxlogo {
  z-index: 1
}
.header-s1 .headnav .cxlogo img {
  height: 45px;
  width: auto
}
.header-s1 .headnav .head-menu {
  display: none;
  flex-basis: auto;
  flex-grow: 1;
  align-items: center;
  justify-content: flex-end
}
.header-s1 .headnav .head-menu::after {
  content: "";
  display: block;
  width: 2px;
  height: 10px;
  background: #cbd3de;
  border-radius: 2px;
  margin-right: 10px
}
.header-s1 .headnav .header-r {
  display: flex;
  align-items: center
}
.header-s1 .headnav .h-btnbox {
  margin-bottom: 0
}
.header-s1 .headnav .h-btnbox a {
  font-size: 16px;
  color: var(--bs-body-color)
}
.header-s1 .headnav .h-buttons {
  margin-left: 30px
}
.header-s1 .headnav .h-buttons .icon-button {
  margin-left: 10px
}
.mobile-navbox {
  background: var(--bs-body-bg);
  height: 100vh;
  overflow-y: auto;
  overflow-x: hidden;
  position: fixed;
  left: 0;
  top: 0;
  width: 260px;
  z-index: 30;
  box-shadow: 4px 0 20px rgba(32, 54, 86, 0.1);
  transform: translateX(-300px);
  display: flex;
  flex-direction: column;
  justify-content: space-between
}
.mobile-navbox.visible {
  transform: translateX(0)
}
.mobile-navbox .btn-close {
  position: absolute;
  right: 20px;
  top: 26px
}
.m-menulogo {
  height: 85px;
  display: flex;
  align-items: flex-end
}
.m-menulogo img {
  height: 45px;
  width: auto
}
.m-btnbox {
  position: relative
}
.m-btnbox:before {
  background: var(--cbg-module-bgcolor);
  border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
  content: ' ';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: .4
}
.m-btnbox .h-btnbox {
  padding: 0;
  margin: 0;
  position: relative
}
.m-navbox {
  flex: 1
}
.m-nav {
  padding-left: 0;
  list-style-type: none
}
.m-nav ul {
  list-style-type: none
}
.m-nav a {
  display: inline-block
}
.m-nav a .menu-children-icon {
  display: none
}
.m-nav .current > a {
  color: var(--cbg-color);
}
.m-nav > li {
  margin-bottom: 10px;
  border-top: solid 1px var(--cbg-grey-color);
  padding-top: 20px
}
.m-nav > li:first-child {
  border-top: 0
}
.m-nav > li > a {
  font-size: .8rem;
  padding: 0 10px;
  opacity: .6;
  margin-bottom: 10px
}
.m-nav > li > a:hover {
  color: inherit
}
.m-nav > li > ul {
  padding-left: 0
}
.m-nav > li > ul > li {
  line-height: 40px;
  font-size: .9rem;
  position: relative
}
.m-nav > li > ul > li > .menu-children-icon {
  position: absolute;
  right: 0;
  top: 0;
  width: 40px;
  text-align: center;
  opacity: .5;
  font-weight: normal;
  transition: all .2s linear;
  transform: scale(0.8)
}
.m-nav > li > ul > li > a {
  padding: 0 1.2rem
}
.m-nav > li > ul > li > ul {
  line-height: 30px;
  font-size: .9em;
  opacity: .7;
  padding-bottom: 10px;
  display: none
}
.m-nav > li > ul > li.current-menu-parent > a {
  font-weight: bold
}
.m-nav > li > ul > li.parent-on > .menu-children-icon {
  transform: scale(0.8) rotate(180deg)
}
.m-nav > li > ul > li.parent-on > ul {
  display: block
}
.navbar-nav {
  display: flex;
  flex-direction: row;
  margin: 0 30px;
  list-style: none;
  font-size: .9rem
}
.navbar-nav .nav-item {
  position: relative;
  list-style-type: none
}
.navbar-nav .nav-item:hover > .sub-menu {
  top: 32px;
  visibility: visible;
  opacity: 1
}
.navbar-nav a {
  padding: 0 1rem;
  font-weight: bold;
  display: inline-block;
  line-height: 32px
}
.navbar-nav a:hover {
  color: var(--bs-link-hover-color)
}
.navbar-nav .current > a {
  color: var(--cx-white) !important;
  border-radius: 25px;
  background: var(--cbg-gradient);
  font-size: .8rem;
  background-size: 200% auto
}
.navbar-nav .nav-item:hover > .sub-menu a {

}
.navbar-nav .sub-menu {
  background: var(--cbg-navsub-bg);
  position: absolute;
  left: 0;
  top: 20px;
  visibility: hidden;
  opacity: 0;
  z-index: 9;
  border-radius: 10px;
  padding: 15px 5px;
  line-height: 35px;
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  display: flex;
  flex-wrap: wrap;
  font-size: .9em;
  list-style: none;
  margin: 0
}
.navbar-nav .sub-menu li a {
  min-width: 150px;
  display: inline-block;
  padding: 0 1rem;
  font-weight: normal;
  white-space: nowrap;
   color: var(--bs-body-color) !important;
 background: transparent;
}
.navbar-nav .sub-menu:after {
  content: "";
  display: block;
  height: 0;
  width: 0 !important;
  position: absolute;
  top: -5px;
  left: 30px;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 10px solid var(--cbg-navsub-bg)
}
.navbar-nav .menu-children-icon {
  font-weight: normal;
  font-size: .8rem;
  opacity: .6
}
.navbar-nav .has-sub > a .down,
.m-nav .has-sub > a .down {
  display: inline-block;
  font-style: normal;
  font-weight: normal;
  margin-left: 5px;
  font-size: .72em;
  opacity: .65;
  vertical-align: middle;
  line-height: 1;
  transition: transform .2s ease
}
.navbar-nav .has-sub:hover > a .down,
.m-nav .has-sub.parent-on > a .down {
  transform: rotate(180deg)
}
.h-container {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
  position: relative
}
.bordered {
  background: var(--cbg-module-bgcolor);
  border-radius: var(--cx-border-radius)
}
.slide-s1 {
  border-radius: var(--cx-border-radius);
  overflow: hidden
}
.apl-slide {
  height: 260px
}
.apl-slide .thumb {
  height: 100%
}
.apl-slide .none-archive {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bs-secondary-color)
}
.apl-slide .sortbox {
  position: initial;
  margin-bottom: 20px
}
.pagination .screen-reader-text {
  display: none
}
.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 1rem
}
.nav-links .page-numbers {
  margin: 0 5px;
  color: var(--cx-muted);
  border-radius: 50%;
  font-size: 14px;
  border: solid 1px var(--cbg-grey-color);
  height: 36px;
  line-height: 36px;
  text-align: center;
  width: 36px;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}
.nav-links .page-numbers.current, .nav-links .page-numbers:hover:not(.dots) {
  color: var(--cx-white);
  border-color: transparent;
  background: var(--cbg-color);
  background: var(--cbg-gradient);
  background-size: 200% auto;
  transition: all .2s ease-in-out
}
.nav-links .dots {
  border: 0;
  width: auto
}
.apl .thumb {
  position: relative
}
.infeed-hr:after {
  content: "";
  display: block;
  height: 1px;
  margin-bottom: 18px;
  margin-top: 18px;
  width: 100%;
  background: var(--cbg-grey-color);
  background: -webkit-linear-gradient(right, var(--cbg-grey-color) 0, transparent 100%);
  background: linear-gradient(to left, var(--cbg-grey-color) 0, transparent 100%)
}
[data-bs-theme=dark] .infeed-hr:after {
  background: 0
}
.apl-sm .thumb {
  width: 80px;
  height: 60px;
  margin-right: 20px;
  float: left;
  border-radius: 10px;
  overflow: hidden
}
.apl-sm .details .post-title {
  font-size: .85rem;
  height: 36px;
  line-height: 1.4;
  letter-spacing: 1px;
  font-weight: normal
}
.apl-sm .details .pm {
  font-size: .8rem;
  color: var(--cx-muted)
}
.apl-sm:last-child:after {
  display: none
}
.apl-slide {
  position: relative
}
.apl-slide .subtitle {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  padding: 20px
}
.apl-slide .subtitle a {
  color: var(--bs-light)
}
.apl-slide .post-title {
  font-size: 1.2rem;
  font-weight: normal;
  margin-bottom: 10px;
  color: var(--bs-light)
}
.apl-slide .post-title a {
  color: var(--bs-light)
}
.apl-slide .post-title a:hover {
  color: var(--bs-link-hover-color)
}
.apl-slide:hover .thumb-inner img {
  transform: scale(1.07)
}
.pmbox {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: .8em
}
.pmbox .l {
  display: flex;
  align-items: baseline
}
.pmbox .time {
  opacity: .8
}
.pmbox .more-link {
  padding: 0 20px;
  opacity: .5
}
.pmbox .more-link:hover {
  opacity: 1
}
.item-blog {
  padding: 15px 10px;
  width: 100%
}
.item-blog .jxbox {
  width: 100%;
  display: flex;
  flex-direction: row;
  position: relative
}
.item-blog .thumb {
  position: relative;
  width: 40%;
  padding-top: 25%;
  height: 0;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0
}
.item-blog .subtitle {
  padding-left: 20px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1
}
.item-blog .subtitle h2 {
  line-height: 1.4;
  margin-bottom: .8em;
  font-size: .9rem
}
.item-blog .subtitle p {
  display: none;
  font-size: .87em;
  height: 45px;
  flex: 1;
  line-height: 1.7;
  letter-spacing: 1px
}
.item-blog .pmbox {
  padding-bottom: 1em
}
.item-blog .pmbox .r {
  display: none
}
.item-min {
  padding: 20px 10px 0;
  width: 100%
}
.item-min .jxbox {
  width: 100%;
  display: flex;
  flex-direction: row;
  position: relative
}
.item-min .thumb {
  position: relative;
  width: 31%;
  padding-top: 21%;
  height: 0;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0
}
.item-min .subtitle {
  padding-left: 20px;
  position: relative;
  display: flex;
  flex-direction: column
}
.item-min .subtitle h5 {
  line-height: 1.4;
  margin-bottom: .8em;
  font-size: .9rem
}
.widget {
  margin-bottom: 35px
}
.widget .widgettitle {
  font-size: 1em
}
.side-head {
  margin-bottom: 10px
}
.side-area {
  padding-left: 10px
}
.zb-block-tag-cloud {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-left: -8px;
  gap:10px
}
.zb-block-tag-cloud a {
  font-size: .8em !important;
  padding: 0 10px;
  border: solid 1px var(--bs-gray-400);
  border-radius: 20px;
  line-height: 26px;
  display: inline-block;
  color: var(--bs-gray-500)
}
.zb-block-tag-cloud a:hover {
  color: var(--bs-link-hover-color);
  border-color: var(--bs-link-hover-color)
}
.zb-block-search .zb-block-search__label {
  display: none
}
.zb-block-search .zb-block-search__inside-wrapper {
  display: flex;
  border: 1px solid var(--cbg-grey-color);
  border-radius: 4px;
  overflow: hidden;
  height: 50px;
  background: var(--cbg-module-bgcolor)
}
.zb-block-search .zb-block-search__input {
  background: 0;
  border: 0;
  border-radius: 0;
  font-size: .8rem;
  padding: 6px 12px;
  flex: 1;
  min-width: 0;
  color: var(--bs-body-color)
}
.zb-block-search .zb-block-search__input:focus {
  outline: 0
}
.zb-block-search .zb-element-button {
  border-radius: 0;
  border: 0;
  background: #6c757d;
  color: var(--cx-white);
  padding: 6px 14px;
  font-size: .8rem;
  flex-shrink: 0;
  transition: all .2s ease
}
.zb-block-search .zb-element-button:hover {
  background: var(--cbg-color)
}
.zb-block-categories {
  padding-left: 0;
  list-style: none
}
.zb-block-categories li {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0 10px;
  line-height: 40px;
  background: var(--cbg-module-bgcolor);
  margin-bottom: .5rem;
  border-radius: 6px;
  font-size: .8rem
}
.zb-block-latest-posts {
  list-style-type: none
}
.zb-block-latest-posts li {
  margin: 5px 0;
  display: flex;
  flex-direction: column;
}
.zb-block-latest-posts li > * {
  margin-top: 10px
}
.zb-block-latest-posts li .zb-block-latest-posts__featured-image {
  height: 100px;
  overflow: hidden;
  border-radius: 6px
}
.zb-block-latest-posts li .zb-block-latest-posts__featured-image a {
  display: inline-block;
  height: 100%;
  width: 100%
}
.zb-block-latest-posts li .zb-block-latest-posts__featured-image img {
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  transition: all .2s linear
}
.zb-block-latest-posts li .zb-block-latest-posts__featured-image:hover img {
  transform: scale(1.07)
}
.zb-block-latest-posts li .zb-block-latest-posts__post-title {
  font-size: .8rem
}
.zb-block-latest-posts li .zb-block-latest-posts__post-author {
  opacity: .5;
  flex-basis: 50%
}
.zb-block-latest-posts li time {
  opacity: .5;
}
.zb-block-latest-posts li .zb-block-latest-posts__post-excerpt {
  font-size: .8em;
  opacity: .6
}
.zb-block-latest-posts li:first-child > *:first-child {
  margin-top: 0
}

@keyframes breathing {
  0% {
    background: var(--bs-yellow)
  }
  50% {
    background: var(--bs-link-hover-color)
  }
  100% {
    background: var(--bs-yellow)
  }
}
.widget_postlist {
  list-style-type: none;
  padding-left: 5px
}
.widget_postlist li {
  margin: 5px 0 15px;
  display: flex;
  align-items: center
}
.widget_postlist li span {
  width: 20px;
  line-height: 14px;
  flex-shrink: 0
}
.widget_postlist li span em {
  width: 10px;
  height: 4px;
  background: var(--bs-gray-500);
  display: inline-block;
  border-radius: 2px
}
.widget_postlist li a {
  position: relative;
  font-size: .85em;
  opacity: .8;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}
.widget_postlist li:hover em {
  animation: breathing 2s infinite
}
.widget_media_image a {
  padding-left: 10px;
  display: inline-block;
  width: 100%
}
.widget_media_image a img {
  width: 100%;
  height: auto;
  border-radius: 10px
}
.comment-list {
  list-style-type: none;
  padding: 0;
  margin: 0
}
.comment-list li {
  margin-bottom: 20px
}
.comment-list li:hover .comment-link {
  opacity: .5
}
.comment-list .comment-head {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
  justify-content: space-between
}
.comment-list .comment-author {
  font-size: .85em;
  margin-bottom: 0;
  line-height: 24px
}
.comment-list .comment-link {
  font-weight: bold;
  opacity: 0;
  transition: opacity .5s ease-in-out
}
.comment-list .comments-box {
  display: flex
}
.comment-list .comments-box .avatar-box {
  width: 50px;
  padding-top: 8px
}
.comment-list .comments-box .avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin-right: 10px
}
.comment-list .comments-box .comment-article {
  flex: 1
}
.comment-list .comments-content {
  font-size: .8em;
  border-radius: 4px;
  background: var(--cbg-module-bgcolor);
  padding: 5px;
  margin-bottom: 5px;
  opacity: .8;
  line-height: 1.7
}
.comment-list .comments-content p {
  margin-bottom: 0
}
.widget-jxbox .item-blog {
  padding-bottom: 10px
}
.linebox {
  width: 100%;
  height: 5px;
  opacity: .5
}
.footmain-box {
  display: flex;
  justify-content: center;
  padding-top: 30px;
  align-items: center;
  font-size: .85em;
  flex-direction: column
}
.aboutus_link {
  margin-bottom: 20px;
  text-align: center
}
.aboutus_link a {
  margin: 0 10px
}
.footer-desc {
  opacity: .6
}
.foot-copyright {
  line-height: 30px;
  text-align: center;
  padding: 10px 0;
  opacity: .5;
  font-size: .8rem
}
.trem-headbox {
  min-height: 200px;
  position: relative
}
.trem-data {
  display: flex;
  align-items: center;
  min-height: 200px;
  padding: 30px 0;
  justify-content: center;
  flex-direction: column
}
.trem-data .page-title {
  border-bottom: solid 3px var(--cbg-color)
}
.statistics-box {
  opacity: .6;
  transform: scale(0.8);
  border-radius: 20px;
  background: #adb5bd8f;
  padding: 0 15px;
  line-height: 36px
}
.statistics-box em {
  font-style: normal
}
.taxonomy-description {
  opacity: .8;
  font-size: .9rem
}
.breadcrumb {
  list-style: none;
  line-height: 30px;
  padding: 10px 0;
  font-size: .85rem
}
.breadcrumb li {
  padding-left: .5rem
}
.breadcrumb li a {
  color: var(--cx-muted)
}
.breadcrumb li a:hover {
  color: var(--cx-color)
}
.breadcrumb li a.active {
  color: var(--cx-muted)
}
.breadcrumb li:before {
  float: left;
  padding-right: .5rem;
  color: var(--cx-muted);
  content: var(--bs-breadcrumb-divider, "/")
}
.breadcrumb li:first-child {
  padding-left: 0
}
.breadcrumb li:first-child:before {
  padding-right: 0;
  content: ""
}
.meta-itembox {
  font-size: 14px;
  color: var(--cx-muted);
  padding-left: 0
}
.meta-itembox i {
  vertical-align: middle
}
.meta-itembox a {
  color: var(--cx-muted);
  font-weight: 400
}
.meta-itembox li:last-child:after {
  content: "";
  display: none
}
.meta-itembox li:after {
  content: "";
  display: inline-block;
  background-color: var(--cx-color);
  border-radius: 50%;
  margin-left: 1rem;
  height: 3px;
  vertical-align: middle;
  position: relative;
  top: -1px;
  width: 3px
}
.meta-itembox li:not(:last-child) {
  margin-right: .8rem
}
.meta-itembox li .author {
  margin-right: 12px;
  vertical-align: middle;
  border-radius: 50%
}
.article-body {
  border-bottom: solid 1px var(--cbg-grey-color);
  border-top: solid 2px var(--cbg-module-bgcolor);
  padding: 30px 0
}
.article-body p {
  color: var(--cbg-article-color);
  line-height: 1.7
}
.tags {
  clear: both;
  overflow: hidden
}
.tags a {
  color: var(--cx-muted);
  border: solid 1px var(--cbg-grey-color);
  border-radius: 25px;
  font-size: 13px !important;
  display: inline-block;
  padding: 3px 14px;
  margin: 4px 5px 4px 0
}
.tags a:last-child {
  margin-right: 0
}
.tags a:hover {
  color: var(--cbg-color)
}
.nextprev-post-wrapper {
  margin-top: 50px
}
.nextprev-post {
  border: solid 1px var(--cbg-grey-color);
  border-radius: 10px;
  padding: 1.5rem;
  height: 100%
}
.nextprev-post .nextprev-text {
  display: block;
  margin-bottom: 10px
}
.nextprev-post .post-title {
  font-size: 16px;
  margin: 0
}
.about-author {
  background: var(--cbg-blue-color);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-items: center
}
.about-author .thumb {
  height: 100px;
  width: 100px;
  overflow: hidden
}
.about-author .thumb .figure-avatar {
  width: 100%;
  transform: none;
  padding: 4px
}
.about-author .thumb .figure-avatar img {
  border-width: 2px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about-author .details {
  flex-grow: 1;
  position: relative;
  text-align: center
}
.about-author .details h4.name {
  font-size: 20px;
  margin: 0 0 10px
}
.about-author .details p {
  margin-bottom: 10px;
  font-size: .95rem;
  opacity: .7
}
.about-author .author-link {
  font-size: .8rem
}
.search-popup {
  background: var(--bs-body-bg);
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: 100%;
  z-index: 5;
  opacity: 0;
  visibility: hidden
}
.search-popup.visible {
  opacity: 1;
  visibility: visible
}
.search-popup.visible .search-form-box {
  animation: growOut .8s ease-in-out forwards
}
.search-popup.visible .search-form-box {
  transform: scale(1)
}
.search-popup .search-content {
  position: absolute;
  top: 40%;
  left: 50%;
  max-width: 650px;
  width: 90%;
  transform: translate(-50%, -50%)
}
.search-popup .btn-close {
  right: 30px;
  top: 30px;
  position: absolute
}
.post-share {
  display: flex;
  align-items: center;
  justify-content: center
}
.post-btnmeta {
  z-index: 1
}
.cxline-1 {
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 15px;
  background: var(--bs-gray-500)
}
.social-icons {
  margin-bottom: 0;
  padding-left: 0
}
.post-like {
  cursor: pointer
}
.post-like.on {
  color: var(--cbg-color)
}
.article-body a:not(.zb-element-button) {
  color: var(--cbg-color);
  padding-left: .2rem;
  padding-right: .2rem;
  text-decoration: underline;
  opacity: .8
}
.article-body a:not(.zb-element-button):hover {
  opacity: 1
}
.article-body cite {
  margin-top: -10px;
  font-size: 12px
}
.article-body > 
.article-body img {
  max-width: 100%;
  height: auto
}
.article-body ol, .article-body ul {
  margin-top: 1rem;
  margin-bottom: 1.5rem
}
html.selected {
  opacity: 1;
  overflow: auto;
}
.eb-style {
  background: var(--cbg-module-bgcolor)
}
.eb-gradient {
  overflow: hidden
}
.eb-gradient:before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .2;
  background-image: linear-gradient(120deg, #e0c3fc 0, #8ec5fc 100%)
}
.eb-diyone {
  border-radius: 0
}
.eb-diyone:before, .eb-diyone:after, .eb-diyone .borders:before, .eb-diyone .borders:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border-color: var(--cbg-color);
  border-style: solid;
  opacity: .8;
  transform: scale(0.8)
}
.eb-diyone:before {
  top: 0;
  left: 0;
  border-width: 2px 0 0 2px
}
.eb-diyone:after {
  top: 0;
  right: 0;
  border-width: 2px 2px 0 0
}
.eb-diyone .borders:before {
  bottom: 0;
  left: 0;
  border-width: 0 0 2px 2px
}
.eb-diyone .borders:after {
  bottom: 0;
  right: 0;
  border-width: 0 2px 2px 0
}
.threads-item .typewriter-cursor {
  display: inline-block;
  width: 1ch;
  animation: xhblink 1s steps(1) infinite;
  color: #9cb1cf;
  vertical-align: middle
}
.threads-item .arrow-container {
  position: absolute;
  right: 10px;
  opacity: .3;
  transition: all .2s ease
}
.threads-item .item-btn {
  padding: 6px 26px 6px 15px !important;
  background: var(--cbg-module-bgcolor);
  border-radius: 20px;
  color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration: none !important;
  display: inline-flex;
  transition: all .2s ease;
  position: relative;
  overflow: hidden
}
.threads-item .item-btn:hover {
  padding-right: 30px !important
}
.threads-item .item-btn:hover .arrow-container {
  opacity: 1
}
.threads-item.xhtheme-aitool-full {
  width: 100%;
  border: 1px solid var(--cbg-module-bgcolor);
  border-radius: 6px
}
.threads-item.xhtheme-aitool-full > a.item-btn {
  width: 100%;
  padding: 10px 15px !important;
  border-radius: 6px;
  font-weight: 600
}
.threads-item.xhtheme-aitool-full > a.item-btn:hover {
  background: var(--cbg-module-bgcolor);
  color: var(--bs-heading-color, inherit) !important
}
.threads-item.xhtheme-aitool-full .jzicon-well {
  color: var(--cbg-color) !important
}
.threads-item .threads-content {
  font-size: .95rem;
  line-height: 1.5;
  min-height: 100px
}
@media(max-width:576px) {
  .maxthumb .jxbox {
    flex-direction: column
  }
  .maxthumb .thumb {
    width: 100%;
    padding-top: 60%
  }
  .maxthumb .subtitle {
    padding-left: 0;
    margin-top: 15px
  }
  .maxthumb .subtitle h5 {
    font-size: 1.1rem
  }
  .widget-categ .row > div .item-eg {
    border-radius: 0;
    border-bottom: solid 1px var(--cbg-navsub-bg)
  }
  .widget-categ .row > div:first-child .item-eg {
    border-top-left-radius: var(--cx-border-radius);
    border-top-right-radius: var(--cx-border-radius)
  }
  .widget-categ .row > div:last-child .item-eg {
    border-bottom-left-radius: var(--cx-border-radius);
    border-bottom-right-radius: var(--cx-border-radius);
    border-bottom: 0
  }
  .sm-cnone {
    display: none
  }
}
@media(min-width:576px) {
  .sortbox {
    transform: scale(1)
  }
  .apl-slide {
    height: 300px
  }
  .item-blog {
    padding: 20px 10px
  }
  .item-blog .thumb {
    width: 31%;
    padding-top: 21%
  }
  .item-blog .subtitle h2 {
    font-size: 1.1rem
  }
  .item-blog .subtitle p {
    display: inline-block
  }
  .item-blog.small .thumb {
    width: 25%;
    padding-top: 17%
  }
  .item-blog.small .subtitle h2 {
    font-size: 1.3em;
    opacity: .85
  }
  .widget-jxbox .item-min {
    width: 50%
  }
  .widget-categ .row > div {
    margin-bottom: 10px;
    margin-top: 10px
  }
}
@media(min-width:768px) {
  .apl-slide {
    height: 500px
  }
  .apl-slide .subtitle {
    padding: 20px 30px 40px
  }
  .apl-slide .post-title {
    font-size: 1.8rem;
    margin-bottom: 20px
  }
  .statistics-box {
    transform: scale(0.9)
  }
}
@media(min-width:992px) {
  .headernav-top {
    padding-top: 125px
  }
  .headernav-top .header-s1.scrolled, .headernav-top .header-s1.onfixed {
    padding-top: 15px;
    padding-bottom: 15px
  }
  .header-s1 {
    padding-top: 40px;
    padding-bottom: 40px
  }
  .header-s1 .headnav {
    flex-wrap: nowrap;
    justify-content: flex-start
  }
  .cxrow .col-left {
    flex: 0 0 auto;
    width: 70%
  }
  .cxrow .col-right {
    flex: 0 0 auto;
    width: 30%
  }
  .nav-links {
    margin: 40px 0
  }
  .nav-links .page-numbers {
    height: 40px;
    line-height: 40px;
    width: 40px
  }
  .icon-button {
    height: 37px;
    line-height: 39px;
    width: 37px;
    font-size: 1rem
  }
}
/* ===== 评论区域 ===== */
.comment-area {
  width: 100%
}
.comments-list {
  margin-bottom: 10px;
  flex: 1
}
.comment-item {
  display: flex;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--cbg-grey-color)
}
.comment-item:last-child {
  border-bottom: 0
}
.comment-avatar img {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--cbg-module-bgcolor)
}
.comment-content {
  flex: 1;
  min-width: 0
}
.comment-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px
}
.comment-author {
  font-weight: bold;
  font-size: .9rem
}
.comment-author a {
  color: var(--bs-body-color)
}
.comment-author a:hover {
  color: var(--bs-link-hover-color)
}
.comment-date {
  font-size: .78rem;
  opacity: .55
}
.comment-text {
  font-size: .88rem;
  line-height: 1.7;
  color: var(--cbg-article-color);
  word-break: break-word
}
.comment-text p {
  margin-bottom: .5rem
}
.comment-actions {
  margin-top: 6px
}
.comment-reply-link {
  font-size: .8rem;
  opacity: .65;
  color: var(--bs-body-color);
  display: inline-block
}
.comment-reply-link:hover {
  color: var(--bs-link-hover-color);
  opacity: 1
}
.child-comments {
  margin-top: 10px;
  padding-left: 20px;
  border-left: 2px solid var(--cbg-grey-color)
}
.child-comments .comment-item {
  border-bottom: 0;
  padding-bottom: 10px
}
.comments-pagination {
  text-align: center;
  padding: 10px 0
}
.comment-message {
  font-size: .85rem;
  margin-bottom: 8px;
  color: var(--cbg-color)
}
.comment-respond {
  width: 100%
}
#commentform {
  width: 100%
}
.comment-userinfo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  padding: 10px 14px;
  background: var(--cbg-module-bgcolor);
  border-radius: 10px
}
.comment-user-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover
}
.comment-user-name {
  font-weight: bold;
  font-size: .9rem
}
.comment-user-tip {
  font-size: .8rem;
  opacity: .6
}
.comment-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px
}
.comment-fields .form-control {
  flex: 1;
  min-width: 170px;
  border-radius: 25px;
  font-size: 14px;
  padding: 8px 20px;
  border: 1px solid var(--cbg-grey-color);
  background: var(--bs-body-bg);
  color: var(--bs-body-color)
}
.comment-fields .form-control:focus {
  border-color: var(--cx-color);
  outline: 0;
  box-shadow: none
}
.comment-form-comment textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--cbg-grey-color);
  border-radius: 10px;
  background: var(--bs-body-bg);
  color: var(--bs-body-color);
  padding: 12px 16px;
  font-size: .9rem;
  resize: vertical;
  line-height: 1.6
}
.comment-form-comment textarea:focus {
  border-color: var(--cx-color);
  outline: 0
}
.comment-form-comment textarea::placeholder {
  color: var(--cx-muted)
}
.comment-verify {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: .85rem;
  flex-wrap: wrap
}
.comment-verify img {
  height: 32px;
  border-radius: 4px;
  cursor: pointer;
  background: var(--cbg-module-bgcolor)
}
.comment-cancel-wrap {
  margin-left: auto
}
#cancelReply {
  border: 1px solid var(--cbg-grey-color);
  border-radius: 25px;
  font-size: .78rem;
  color: var(--bs-body-color)
}
#cancelReply:hover {
  color: var(--bs-link-hover-color);
  border-color: var(--bs-link-hover-color)
}
.form-submit {
  margin-top: 12px
}
.form-submit .btn {
  padding: 8px 28px
}
/* ===== 轮播上下页按钮 ===== */
.slide-s1 .swiper-button-prev, .slide-s1 .swiper-button-next {
  color: var(--cx-white);
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(32, 54, 86, .45);
  backdrop-filter: blur(2px)
}
.slide-s1 .swiper-button-prev:hover, .slide-s1 .swiper-button-next:hover {
  background: var(--cbg-color)
}
.slide-s1 .swiper-button-prev {
  left: 14px
}
.slide-s1 .swiper-button-next {
  right: 14px
}
.slide-s1 .swiper-button-prev:after, .slide-s1 .swiper-button-next:after {
  font-size: 16px
}
/* ===== 文章正文通用元素（适配 Z-Blog 裸标签输出） ===== */
.article-body h1, .article-body h2, .article-body h3, .article-body h4, .article-body h5, .article-body h6 {
  font-weight: 600;
  color: var(--bs-body-color);
  margin: 1.5rem 0 1rem;
  line-height: 1.4
}
.article-body h1 {
  font-size: 1.8rem
}
.article-body h2 {
  font-size: 1.5rem
}
.article-body h3 {
  font-size: 1.2rem
}
.article-body h4 {
  font-size: 1.1rem
}
.article-body h5 {
  font-size: 1rem
}
.article-body h6 {
  font-size: .9rem
}
.article-body blockquote {
  border-left: 5px solid var(--cbg-article-color);
  background-color: var(--cbg-module-bgcolor);
  color: var(--cbg-article-color);
  padding: 15px 18px;
  border-radius: 6px;
  margin: 1.5rem 0;
  font-size: .95rem;
  line-height: 1.7
}
.article-body blockquote p {
  margin: 0
}
.article-body blockquote cite {
  display: block;
  text-align: right;
  font-style: normal;
  margin-top: .5rem;
  opacity: .8;
  font-size: .85rem
}
.article-body pre {
  background: var(--cbg-module-bgcolor);
  color: var(--cbg-article-color);
  padding: 15px 18px;
  border-radius: 6px;
  overflow-x: auto;
  font-size: .9rem;
  line-height: 1.6;
  margin: 1.5rem 0
}
.article-body code {
  background: var(--cbg-module-bgcolor);
  color: var(--bs-link-hover-color);
  padding: .2em .45em;
  border-radius: 4px;
  font-size: .88em;
  word-break: break-all
}
.article-body pre code {
  background: 0;
  color: inherit;
  padding: 0;
  border-radius: 0
}
.article-body table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  font-size: .9rem;
  color: var(--cbg-article-color)
}
.article-body th, .article-body td {
  border: 1px solid var(--cbg-grey-color);
  padding: 10px 14px;
  text-align: left;
  line-height: 1.6
}
.article-body th {
  background: var(--cbg-module-bgcolor);
  font-weight: 600;
  color: var(--bs-body-color)
}
.article-body .table-wrapper {
  overflow-x: auto;
  margin: 1.5rem 0
}
.article-body .table-wrapper table {
  margin: 0
}
.article-body img {
  border-radius: 6px
}
.article-body figure {
  margin: 1.5rem 0;
  text-align: center
}
.article-body figcaption {
  font-size: .85rem;
  opacity: .75;
  color: var(--cbg-article-color);
  margin-top: .5rem
}
.article-body ul, .article-body ol {
  padding-left: 1.4rem;
  color: var(--cbg-article-color);
  line-height: 1.8;
  margin: 1rem 0 1.5rem
}
.article-body li {
  margin-bottom: .35rem
}
.article-body hr {
  border: 0;
  border-top: 1px solid var(--cbg-grey-color);
  margin: 1.5rem 0
}
.article-body strong {
  color: var(--bs-body-color)
}
.article-body iframe, .article-body video {
  max-width: 100%
}
.article-body .article-end {
  text-align: center;
  opacity: .7;
  color: var(--cbg-article-color);
  margin-top: 2rem
}
.article-body a {
  color: var(--cbg-color);
  text-decoration: underline;
  text-decoration-color: rgba(254, 79, 112, .35);
  padding: 0 .2rem
}
.article-body a:hover {
  color: var(--bs-link-hover-color)
}
/* ===== meteor-extra.css 合并（原 css/meteor-extra.css） ===== */
/* ---- 侧栏模块 ---- */
.widget{margin-bottom:30px}
.widget .module-tit{display:flex;align-items:center;margin-bottom:15px;position:relative;padding-bottom:10px;border-bottom:2px solid var(--cbg-module-bgcolor)}
.widget .module-tit h3{font-size:1.05rem;margin:0;font-weight:600;letter-spacing:1px;display:flex;align-items:center}
.widget .module-tit h3:before{content:"";width:4px;height:16px;border-radius:2px;background:var(--cbg-color);background:var(--cbg-gradient);margin-right:8px;display:inline-block}
.widget .widget-body{padding:0 5px}
.widget .widget-body ul{margin-bottom:0}

/* ---- 搜索弹窗 ---- */
.search-popup .search-form-box{transform:scale(.6);transition:transform .8s ease-in-out}
.search-popup.visible .search-form-box{transform:scale(1)}
.search-popup .search-form input.form-control{height:52px;font-size:1rem}
.search-popup .search-form .btn-lg{height:52px;padding:0 36px;border-radius:25px}

/* ---- 文章评论区 ---- */
.comments .comment-item{display:flex;padding:15px 0;border-bottom:1px dashed var(--cbg-grey-color)}
.comments .comment-item .comment-avatar{width:50px;flex-shrink:0}
.comments .comment-item .comment-avatar img{width:44px;height:44px;border-radius:50%;border:2px solid var(--cx-white);box-shadow:0 0 0 2px var(--cbg-grey-color)}
.comments .comment-item .comment-content{flex:1;padding-left:10px;font-size:.9rem}
.comments .comment-item .comment-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.comments .comment-item .comment-author{font-weight:600;color:var(--bs-heading-color)}
.comments .comment-item .comment-date{font-size:.75rem;opacity:.6}
.comments .comment-item .comment-text{line-height:1.7;color:var(--cbg-article-color);word-break:break-word}
.comments .comment-item .comment-actions{margin-top:6px;opacity:.6}
.comments .comment-item .comment-actions a{font-size:.75rem;color:var(--cbg-color)}
.comments .comment-item .child-comments{margin-top:10px;padding-left:30px;border-left:2px solid var(--cbg-grey-color)}
.comments .comment-item .child-comments .comment-item:last-child{border-bottom:0;padding-bottom:0}
.comments .comment-item .child-comments .comment-avatar{width:38px}
.comments .comment-item .child-comments .comment-avatar img{width:34px;height:34px}

/* ---- 评论表单 ---- */
.comment-respond .comment-fields{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.comment-respond .comment-fields input{flex:1;min-width:160px}
.comment-respond .comment-form-comment textarea{width:100%;border:1px solid var(--cbg-grey-color);border-radius:10px;padding:12px 16px;color:var(--bs-body-color);background:var(--bs-body-bg);resize:vertical;font-size:.9rem;line-height:1.7}
.comment-respond .comment-form-comment textarea:focus{outline:0;border-color:var(--cbg-color)}
.comment-respond .comment-userinfo{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:.85rem}
.comment-respond .comment-userinfo img{width:36px;height:36px;border-radius:50%}
.comment-respond .comment-userinfo .comment-user-name{font-weight:600}
.comment-respond .comment-userinfo .comment-user-tip{opacity:.6;font-size:.75rem}
.comment-message{color:var(--cbg-color);font-size:.8rem;margin-bottom:10px}
.comment-verify{margin-bottom:10px}

/* ---- 页脚 ---- */
.foot-copyright{line-height:30px;text-align:center;padding:10px 0;opacity:.5;font-size:.8rem}
.foot-icp{text-align:center}
.foot-icp a{color:inherit}

/* ---- 列表页补白 ---- */
.module-content.px--1{margin:0 -10px}
.item-jx.item-blog.small{padding:12px 10px}

/* ---- 深色模式微调 ---- */
[data-bs-theme=dark] .comments .comment-item{border-bottom-color:var(--cbg-grey-color)}
[data-bs-theme=dark] .widget .module-tit{border-bottom-color:var(--cbg-grey-color)}
[data-bs-theme=dark] .comment-respond .comment-form-comment textarea{border-color:var(--cbg-grey-color)}
