@font-face {
  font-family: Letter;
  font-style: normal;
  font-weight: normal;
  src: url('../fonts/lettergothicstdbold.eot');
  src: url('../fonts/lettergothicstdbold.eot?#iefix') format('embedded-opentype'), url('../fonts/lettergothicstdbold.woff') format('woff'), url('../fonts/lettergothicstdbold.ttf') format('truetype'), url('../fonts/lettergothicstdbold.svg') format('svg');
}
@font-face {
  font-family: Didot;
  font-style: normal;
  font-weight: normal;
  src: url('../fonts/Didot.eot');
  src: url('../fonts/Didot.eot?#iefix') format('eot'), url('../fonts/Didot.woff') format('woff'), url('../fonts/Didot.ttf') format('truetype');
}
@font-face {
  font-family: 'IBM Plex Sans';
  src: url('../font/IBMPlexSans-Regular.ttf') format('truetype');
}
.body-bg {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #151515;
}
.body-bg img {
  opacity: 0.05;
}
.body-bg .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: radial-gradient(56.3164% 64.6006% at 50% -6%, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.3;
}
.menus {
  -webkit-animation: intro 0.3s both;
  animation: intro 0.3s both;
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
  z-index: 20;
  text-align: left;
  flex: 0 0 auto;
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: perspective(1200px);
  will-change: transform;
  color: var(--font-color);
  z-index: 3;
  border-radius: 40px;
  transform: translateX(-50%);
  backdrop-filter: blur(4px);
  background: linear-gradient(rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
}
.menus .menus-content {
  display: flex;
  justify-content: space-between;
  padding: 8px;
  border-radius: 40px;
  background: var(--menu-bg-color);
  border: 1px solid var(--menu-border-color);
}
.menus .menus-content ul {
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 8px;
  display: flex;
}
.menus .menus-content ul li {
  width: 44px;
  height: 44px;
  display: grid;
  justify-items: center;
  align-items: center;
  border-radius: 40px;
  overflow: hidden;
  box-shadow: 0.4px -0.4px 0px 0px var(--menu-item-shadow-color);
  background: var(--menu-item-gradient-color);
}
.menus .menus-content ul li.home a {
  background: transparent;
  border: 0px solid var(--active-color);
}
.menus .menus-content ul li.home a.active,
.menus .menus-content ul li.home a:hover {
  transition: all 0.2s;
  border: 1px solid var(--active-color);
}
.menus .menus-content ul a {
  position: relative;
  width: 44px;
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.2s;
  background: var(--menu-item-color);
  border: 1px solid transparent;
  border-radius: 100em;
  overflow: hidden;
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
}
.menus .menus-content ul a i {
  font-size: 17px;
  margin-bottom: 1px;
}
.menus .menus-content ul a span {
  display: none;
  font-size: 1rem;
  transform: translateX(-24px);
}
.menus .menus-content ul a img {
  width: 44px;
  height: auto;
  border-radius: 100em;
  padding: 3px;
}
.menus .menus-content ul a .dot {
  position: absolute;
  opacity: 0;
  top: 8px;
  right: 12px;
  width: 4px;
  height: 4px;
  border-radius: 4px;
  background: var(--active-color);
}
.menus .menus-content ul a.active .dot {
  opacity: 1;
}
.menus .menus-content ul a.active,
.menus .menus-content ul a:hover {
  border: 1px solid var(--menu-border-color);
  transition: all 0.3s;
  background: var(--menu-item-hover-color);
  color: var(--accent-color);
}
.menus .menus-content .social {
  display: flex;
  align-items: center;
  gap: 12px;
}
.menus .menus-content .social i {
  font-size: 1rem;
}
.site-main {
  animation: intro 0.3s both;
  animation-delay: 0.35s;
  gap: 0px;
  height: min-content;
  overflow: visible;
  margin: 0 auto;
  padding: 16px 0px 100px;
  position: relative;
  width: 100%;
  max-width: 1280px;
  min-height: calc(100vh - 85px);
}
.site-main .content {
  flex: 1;
}
.site-main::after {
  clear: both;
  content: '';
  display: table;
}
.site-header {
  padding: 32px 0;
}
.site-header .header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.site-header .header-content .right {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
}
.site-header .header-content #mode {
  cursor: pointer;
  border-radius: 100em;
  border: 1px solid var(--border-color);
  background: var(--op-bg-color);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  transition: all 0.3s;
}
.site-header .header-content #mode:hover {
  transition: all 0.3s;
  background: rgba(255, 255, 255, 0.05);
}
.site-header .header-content #mode i {
  font-size: 16px;
}
.site-header .header-content #mode.light .ri-sun-line {
  display: none;
}
.site-header .header-content #mode.dark .ri-moon-fill {
  display: none;
}
.row {
  place-content: center;
  align-items: center;
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}
.posts {
  flex: 0 0 auto;
  height: min-content;
  overflow: visible;
  justify-content: left;
  padding: 0px;
  position: relative;
  transform: perspective(1200px);
  width: 100%;
  margin: 0 auto;
}
.posts h3.year {
  margin: 1rem 0 0.6rem;
  font-weight: normal;
  border-bottom: 1px solid var(--border-color);
}
.posts h3.year i {
  margin-right: 6px;
}
.list-item {
  margin-bottom: 1.2rem;
  padding: 1.5rem;
  border-radius: 8px;
  border: 1px solid var(--border-color);
  cursor: pointer;
  transition: all 0.3s;
  background: var(--op-bg-color);
}
.list-item:hover {
  transition: all 0.3s;
  background: rgba(255, 255, 255, 0.05);
}
.list-item .title {
  font-size: 1.2rem;
  text-decoration: none;
  color: var(--accent-color);
  margin-bottom: 8px;
}
.list-item .meta {
  display: flex;
  gap: 6px;
  color: var(--title-color);
  font-size: 1rem;
}
.list-item .meta i {
  margin-right: 4px;
}
.list-item .meta a {
  color: var(--title-color);
}
.list-item time {
  color: var(--title-color);
  font-size: 1rem;
}
.card-item {
  padding: 8px;
  flex: 1 0 0px;
  height: calc((1280px - 30px) / 3);
  border-radius: 24px;
  border: 1px solid var(--border-color);
  cursor: pointer;
  transition: all 0.3s;
  flex: 0 0 calc((1280px - 30px) / 3);
  background: var(--op-bg-color);
}
.card-item:hover {
  transition: all 0.3s;
  background: rgba(255, 255, 255, 0.05);
}
.card-item .meta {
  font-size: 0.8rem;
  color: var(--title-color);
}
.card-item .meta span {
  margin-right: 4px;
}
.card-item .meta a {
  color: var(--title-color);
}
.card-item .meta i {
  margin-right: 2px;
}
.card-item .header {
  padding: 8px 12px;
  font-size: 1rem;
  color: var(--subtitle-color);
}
.card-item .header i {
  margin-right: 4px;
}
.card-item .list {
  display: flex;
  background: var(--op-bg-color);
  gap: 15px;
  flex-wrap: wrap;
  padding: 24px 0;
  border-radius: 16px;
}
.card-item .info {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  overflow: hidden;
}
.card-item .info .cover {
  position: absolute;
  height: 100%;
  min-width: 100%;
  bottom: 0;
  display: flex;
  justify-content: center;
  max-width: 100%;
  border-radius: 16px;
  overflow: hidden;
  z-index: -1;
}
.card-item .info .cover img {
  height: 100%;
  width: auto;
}
.card-item .info .cover img.svg {
  width: 40%;
  height: 76%;
  filter: drop-shadow(1000px 0 0 var(--subtitle-color));
  transform: translate(-1000px);
}
.card-item .info .cover::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  background: var(--cover-bg-color);
}
.card-item .info .dec {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.5rem;
}
.card-item .info .dec .title {
  font-size: 1.5rem;
  text-decoration: none;
  color: var(--accent-color);
  width: 25rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.card-item .info .dec .tags {
  margin-top: 20px;
  font-size: 0.8rem;
  color: var(--font-color);
}
.card-item .info .dec .tags a {
  margin-right: 8px;
}
.card-item .info .dec .excerpt {
  font-size: 1rem;
  color: var(--subtitle-color);
  height: 3rem;
  width: 25rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.project .card-item {
  flex: 0 0 calc((1280px - 15px) / 2);
}
.card-item.info {
  display: flex;
  place-content: space-between;
  align-items: start;
  flex-direction: column;
}
.card-item.info .list {
  flex-direction: column;
  width: 100%;
  padding: 8px;
  gap: 0;
}
.card-item.info .list .item {
  display: flex;
  padding: 10px;
  flex-direction: column;
}
.card-item.info .list .item .title {
  font-size: 1rem;
  color: var(--subtitle-color);
}
.card-item.info .list .item .msg {
  display: flex;
  justify-content: space-between;
  color: var(--title-color);
}
.card-item.info .list .item .msg i {
  color: var(--font-color);
  font-size: 1.3rem;
}
.skill {
  place-content: space-between;
  align-items: start;
  display: flex;
  flex-direction: column;
  flex: 0 0 calc((1280px - 15px) * 0.67);
  cursor: default;
}
.skill .list {
  column-count: 3;
  column-gap: 10px;
}
.skill .item {
  width: calc((100% - 20px) / 3);
  display: flex;
  align-items: center;
  padding: 6px 30px;
}
.skill .item .logo {
  display: flex;
  background: var(--op-bg-color);
  padding: 4px;
  border-radius: 12px;
  width: 48px;
  height: 48px;
  border: 1px solid var(--border-color);
  margin-right: 8px;
}
.skill .item .logo img {
  width: 100%;
  height: auto;
  border-radius: 8px;
}
.skill .item span {
  font-size: 16px;
}
.social {
  display: flex;
  place-content: space-between;
  align-items: start;
  flex-direction: column;
}
.social .list {
  flex-direction: column;
  width: 100%;
  padding: 8px;
  gap: 0;
}
.social .list .item {
  display: flex;
  padding: 10px;
}
.social .list .item:not(:last-of-type) {
  border-bottom: 1px solid var(--op-bg-color);
}
.social .list .item i {
  font-size: 1.5rem;
  margin-right: 8px;
  line-height: 22px;
  color: var(--font-color);
  background: var(--op-bg-color);
  border-radius: 6px;
  padding: 4px;
}
.social .list .item .msg {
  font-size: 1rem;
  color: var(--subtitle-color);
}
.social .list .item .msg p:first-of-type {
  color: var(--accent-color);
}
.my-info {
  display: flex;
  align-items: center;
  gap: 12px;
}
.my-info img {
  width: 100%;
}
.my-info p,
.my-info li {
  font-size: 1.4rem;
  line-height: 1.5;
}
.my-info a {
  font-size: 0.8em;
  color: var(--accent-color);
}
.my-info .avatar {
  display: table-cell;
  vertical-align: top;
  width: 48px;
  height: 48px;
  border: 1px solid var(--border-color);
  border-radius: 100em;
  padding: 3px;
  transition: all 0.3s;
}
.my-info .avatar img {
  width: 100%;
  border-radius: 44px;
}
.my-info .avatar:hover {
  transition: all 0.3s;
  border-color: var(--active-color);
}
.my-info .discrip {
  display: table-cell;
  vertical-align: top;
  line-height: 1;
}
.my-info .discrip h3 {
  margin: 0px;
  font-size: 16px;
}
.my-info .discrip p {
  font-size: 1rem;
  margin-top: 2px;
  color: var(--title-color);
}
.page {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.page .page-content {
  width: 100%;
  max-width: 758px;
  padding: 40px 0 120px;
  margin: 0 auto;
  color: var(--font-color);
  font-size: 15px;
}
.page .page-content .inline {
  text-align: center;
  display: flex;
  gap: 0.4rem;
}
.page .page-content .inline .post-img {
  width: 100% !important;
  margin: 20px 4px;
  display: inline-block;
}
.page .page-content .post-header {
  margin-bottom: 40px;
}
.page .page-content .post-header .post-title {
  color: var(--accent-color);
  font-size: 2em;
  margin: 20px 0 12px;
}
.page .page-content .post-header .post-meta {
  display: flex;
  font-weight: 400;
  color: var(--subtitle-color);
}
.page .page-content .post-header .post-meta .item {
  margin-right: 10px;
}
.page .page-content .post-header .post-meta .item i {
  margin-right: 4px;
}
.page .page-content .headerlink i {
  margin-right: 2px;
}
.page .page-content .post-img {
  margin: 20px auto;
}
.page .page-content .post-img .img-alt {
  text-align: center;
  font-size: 0.8rem;
  color: var(--font-color);
}
.page .page-content .post-a {
  display: inline;
  color: var(--active-color);
}
.page .page-content .post-a a {
  color: var(--active-color);
  margin-left: 4px;
}
.page .page-content .post-toc {
  position: fixed;
  top: 0px;
  right: -20px;
  border-left: 1px solid var(--border-color);
  padding: 40px 20px;
  background: var(--op-bg-color);
  min-width: 240px;
  max-width: 300px;
  height: 100vh;
  opacity: 0;
  transition: all 0.3s;
  backdrop-filter: blur(40px);
}
.page .page-content .post-toc.active {
  opacity: 1;
  right: 0px;
}
.page .page-content .post-toc .item-headline {
  font-size: 16px;
  margin-bottom: 4px;
}
.page .page-content .post-toc .item-headline i {
  margin-right: 2px;
}
.page .page-content .post-toc .toc ol,
.page .page-content .post-toc .toc ul {
  margin-left: 8px;
}
.page .page-content .post-toc .toc li {
  list-style: none;
  margin-left: 0px;
  font-size: 1rem;
  margin: 4px;
}
.page .page-content .post-toc .toc .toc-child li {
  margin-left: 20px;
}
.page .page-content .post-toc .toc .active > a {
  color: var(--active-color);
}
.page .page-content img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  border-radius: 8px;
  padding: 8px;
  border: 1px solid var(--border-color);
  background: var(--op-bg-color);
}
.page .page-content article {
  line-height: 2em;
  text-align: center;
}
.page .page-content h1 a,
.page .page-content h2 a,
.page .page-content h3 a,
.page .page-content h4 a,
.page .page-content h5 a,
.page .page-content h6 a {
  color: var(--active-color);
  opacity: 0.9;
}
.page .page-content h1 a:hover,
.page .page-content h2 a:hover,
.page .page-content h3 a:hover,
.page .page-content h4 a:hover,
.page .page-content h5 a:hover,
.page .page-content h6 a:hover {
  opacity: 1;
}
.page .page-content h1 + p,
.page .page-content h2 + p,
.page .page-content h3 + p,
.page .page-content h4 + p,
.page .page-content h5 + p,
.page .page-content h6 + p {
  margin-top: 1rem !important;
}
.page .page-content h1 {
  font-size: 24px;
  color: var(--accent-color);
  margin: 60px 0 10px;
  text-align: left;
}
.page .page-content h2 {
  font-size: 1.5rem;
  color: var(--accent-color);
  margin: 50px 0 10px;
  text-align: left;
}
.page .page-content h3 {
  font-size: 18px;
  color: var(--accent-color);
  margin: 40px 0 10px;
  text-align: left;
}
.page .page-content h4 {
  font-size: 16px;
  color: var(--accent-color);
  margin: 30px 0 10px;
  text-align: left;
}
.page .page-content h5 {
  font-size: 15px;
  color: var(--accent-color);
  margin: 20px 0 10px;
  text-align: left;
}
.page .page-content article p {
  margin-top: 2rem;
  text-align: left;
  line-height: 2.2rem;
}
.page .page-content article p img.emoticon {
  border: none;
  background: transparent;
  width: fit-content;
  display: inline-block;
  vertical-align: text-bottom;
  max-width: 50px;
  padding: 0;
  margin: 0 0.6rem;
  border-radius: 4px;
}
.page .page-content ol,
.page .page-content ul {
  text-align: left;
}
.page .page-content li {
  list-style: outside;
  margin-left: 40px;
}
.page .page-content li::marker {
  color: var(--active-color);
}
.page .page-content .note {
  margin: 1em 0;
  padding: 10px 20px;
  border-radius: 8px;
  color: var(--subtitle-color);
}
.page .page-content .note .title {
  text-align: start;
  font-weight: bold;
  color: var(--accent-color);
}
.page .page-content .note .title i {
  font-size: 1.2rem;
  font-weight: normal;
  margin-right: 0.2rem;
}
.page .page-content .note p {
  margin: 0;
}
.page .page-content .note.success {
  border: 1px solid var(--note-success-color);
  background: var(--note-success-bg-color);
}
.page .page-content .note.info {
  border: 1px solid var(--note-info-color);
  background: var(--note-info-bg-color);
}
.page .page-content .note.warning {
  border: 1px solid var(--note-warning-color);
  background: var(--note-warning-bg-color);
}
.page .page-content .note.danger {
  border: 1px solid var(--note-danger-color);
  background: var(--note-danger-bg-color);
}
.page .page-content .more {
  display: flex;
  justify-content: space-between;
  margin-top: 80px;
  gap: 20px;
}
.page .page-content .more .prev,
.page .page-content .more .next {
  width: 100%;
  padding: 10px 20px;
  border: 1px solid var(--border-color);
  cursor: pointer;
  background: var(--op-bg-color);
  border-radius: 8px;
}
.page .page-content .more .prev p,
.page .page-content .more .next p {
  color: var(--font-color);
}
.page .page-content .more .prev h5,
.page .page-content .more .next h5 {
  margin-top: 10px;
  color: var(--subtitle-color);
}
.page .page-content .more .next p,
.page .page-content .more .next h5 {
  text-align: right;
}
.page-header {
  margin-bottom: 16px;
}
.page-header .title {
  font-size: 18px;
}
.page-header .title span {
  vertical-align: middle;
}
.page-header .title .circle {
  width: 12px;
  height: 12px;
  border-radius: 20px;
  background: linear-gradient(-10deg, #f0d4d4, #8affd6, #57ffc4);
  display: inline-block;
  vertical-align: middle;
  margin-right: 6px;
}
.page-header .title .circle.essay {
  background: linear-gradient(-10deg, #f0d4d4, #ef7d7c, #ea504e);
}
.page-header .title .circle.category {
  background: linear-gradient(-10deg, #f0d4d4, #f6e574, #f3dc44);
}
.page-header .info {
  font-size: 1rem;
  color: var(--subtitle-color);
}
#docsearch .DocSearch-Button {
  border: 1px solid var(--border-color);
  transition: all 0.3s;
  box-shadow: none;
}
.DocSearch .DocSearch-Hit-content-wrapper {
  overflow: hidden;
}
.DocSearch .DocSearch-Hit a {
  transition: all 0.3s;
}
.DocSearch .DocSearch-Logo svg path,
.DocSearch .DocSearch-Logo svg rect {
  fill: var(--subtitle-color);
}
.pagination {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}
.pagination .extend {
  width: fit-content;
  padding: 0 16px;
}
.pagination .page-number,
.pagination .extend {
  width: fit-content;
  min-width: 38px;
  height: 38px;
  line-height: 36px;
  display: block;
  background: var(--op-bg-color);
  text-align: center;
  border-radius: 38px;
  font-size: 0.8em;
  margin-right: 10px;
  cursor: pointer;
  border: 1px solid var(--border-color);
}
.pagination .current {
  background: var(--menu-bg-color);
  color: var(--accent-color);
}
.pagination .space {
  margin-right: 10px;
  color: var(--font-color);
}
.pagination input {
  width: 40px;
  height: 26px;
  border-radius: 4px;
  border: 1px solid var(--border-color);
}
.about .page-content h1 {
  text-align: center;
  margin: 0 auto 40px;
  font-weight: normal;
}
/* 基本样式 */
.waterfall {
  width: 100%;
  position: relative;
  margin: 0 auto;
}
.waterfall-item {
  margin-bottom: 10px;
  width: calc((100% - 20px) / 3);
}
.waterfall-item .item-content {
  padding: 10px;
  border: 1px solid var(--border-color);
  color: var(--font-color);
  background-color: var(--op-bg-color);
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  font-size: 14px;
}
.waterfall-item .item-content p {
  margin-bottom: 10px;
}
.waterfall-item .item-content .bottom {
  color: var(--subtitle-color);
}
.waterfall-item .item-content img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}
.waterfall-item .item-content i {
  margin-right: 4px;
}
.waterfall-tips {
  text-align: center;
  font-size: 1rem;
  margin-top: 60px;
  color: var(--font-color);
}
.category-list,
.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 16px;
  margin-bottom: 40px;
}
.category-list a,
.tag-list a {
  display: flex;
  width: fit-content;
  justify-content: center;
  align-items: center;
  padding: 4px 10px;
  color: var(--subtitle-color);
  border: 1px solid var(--border-color);
  border-radius: 8px;
}
.category-list a i,
.tag-list a i {
  margin-right: 4px;
}
.category-list a .count,
.tag-list a .count {
  font-size: 0.8rem;
  padding: 2px 6px;
  border-radius: 4px;
  background: var(--op-bg-color);
  margin-left: 4px;
}
#comments {
  width: 100%;
  max-width: 758px;
  margin: 30px auto 0;
}
#comments * {
  line-height: normal !important;
}
#comments .vpanel {
  margin-bottom: 20px;
}
#comments .vwrap {
  border: 1px solid var(--border-color);
  border-radius: 8px;
  background: var(--op-bg-color);
}
#comments .vwrap .vinput {
  color: var(--accent-color);
  background: var(--op-bg-color);
  padding: 10px 16px;
  border-radius: 4px;
}
#comments .vwrap .vheader {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
#comments .vwrap .vheader .vinput {
  border-color: var(--border-color);
  border: none;
}
#comments .vwrap .vrow {
  padding-bottom: 0;
  margin-top: 4px;
}
#comments .vwrap .vrow .vicon {
  height: 18px;
}
#comments .vwrap .vrow .vicon i {
  font-size: 18px;
  color: #555;
}
#comments .vwrap .vrow .vicon.actived i {
  color: var(--title-color);
}
#comments .vwrap .vbtn {
  border-color: var(--border-color);
  border-radius: 24px;
  width: 80px;
  background: var(--op-bg-color);
  padding: 8px 12px;
  color: var(--font-color);
}
#comments .vwrap .vbtn:hover {
  color: var(--subtitle-color);
  background: rgba(255, 255, 255, 0.1);
}
#comments .vcount {
  font-size: 1em;
  font-weight: normal;
}
#comments .vcards .vcard .vat,
#comments .vcards .vcard .vsys {
  color: var(--font-color);
}
#comments .vcards .vcard .vnick {
  color: var(--subtitle-color);
}
#comments .vcards .vcard .vcontent p {
  color: var(--accent-color);
}
#comments .vcards .vcard .vcontent a {
  color: var(--active-color);
}
#comments .vcards .vcard .vcontent a:hover {
  color: var(--active-color);
}
#comments .vcards .vcard .vimg {
  width: 2.6em;
  height: 2.6em;
  border: 1px solid var(--border-color);
}
#comments .vcards .vcard:last-child .vh {
  border: none;
}
#comments .vcards .vcard .vh {
  border: none;
}
#comments .vcards .vcard .vquote {
  border: none;
}
#comments .vpower {
  display: none;
}
#comments .vempty {
  font-size: 1rem;
}
#comments .vpreview {
  margin-top: 10px;
}
#comments .vemojis {
  margin-top: 10px;
  border-radius: 8px;
  border: 1px solid var(--border-color);
  box-shadow: none;
}
#comments .vemojis .vemoji {
  background: none;
  border-radius: 0;
  padding: 0;
}
#comments .vemojis i {
  width: 43px;
  line-height: 2;
}
footer {
  display: flex;
  justify-content: space-between;
  padding: 36px 48px 28px;
  font-size: 1rem;
  color: var(--title-color);
}
@media screen and (max-width: 1320px) {
  .post-toc {
    display: none;
  }
}
@media screen and (max-width: 1290px) {
  .site-main {
    padding: 16px 20px 100px;
  }
  .project .card-item {
    flex: 0 0 calc((100vw - 70px) / 2) !important;
  }
  .card-item {
    flex: 0 0 calc((100vw - 85px) / 3) !important;
    height: calc((100vw - 85px) / 3);
  }
  .card-item.skill {
    flex: 0 0 calc((100vw - 55px) * 0.66) !important;
  }
}
@media screen and (max-width: 980px) {
  .menus {
    bottom: 66px;
  }
  .project .card-item {
    flex: 0 0 calc(100vw - 40px) !important;
  }
  .card-item {
    flex: 0 0 calc(100vw - 40px) !important;
    height: calc(100vw - 40px);
  }
  .card-item.skill {
    flex: 0 0 calc(100vw - 40px) !important;
  }
  .card-item {
    flex: 0 0 calc(100vw - 40px) !important;
    height: calc(100vw - 40px);
  }
  .skill {
    height: auto;
  }
  .skill .list {
    gap: 2px;
    column-count: 1;
  }
  .skill .list .item {
    width: 100%;
    padding: 6px 10px;
  }
  .page .page-content {
    padding: 0px 0 120px;
  }
  .page .page-content .post-header .post-meta .item:first-of-type {
    display: none;
  }
  .page .page-content .inline {
    flex-direction: column;
  }
  .page .page-content .inline .post-img {
    margin-bottom: 0px;
  }
  .page .page-content .more .prev,
  .page .page-content .more .next {
    padding: 10px;
  }
  .page .page-content .more .prev h4,
  .page .page-content .more .next h4 {
    margin-top: 2px;
  }
  .waterfall .waterfall-item {
    width: 100%;
  }
  footer {
    padding: 36px 20px 28px;
  }
}
body[data-theme='light'] .card-item.is-img .info .cover:before {
  background: linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2));
}
body[data-theme='light'] .card-item.is-img .header,
body[data-theme='light'] .card-item.is-img .meta,
body[data-theme='light'] .card-item.is-img a,
body[data-theme='light'] .card-item.is-img .info .dec .title,
body[data-theme='light'] .card-item.is-img .info .dec .excerpt {
  color: #ffffff;
}
/* PrismJS 1.29.0
https://prismjs.com/download.html#themes=prism-tomorrow&languages=markup+css+clike+javascript+bash+dart+docker+git+go+go-module+graphql+json+less+markdown+markup-templating+nginx+php+plsql+python+sql+swift+typescript+yaml */
code[class*='language-'],
pre[class*='language-'] {
  position: relative;
  color: #ccc;
  background: 0 0;
  font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
  font-size: 1em;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  word-wrap: normal;
  line-height: 1.5;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  hyphens: none;
}
pre[class*='language-'] {
  padding: 1em;
  margin: 1em 0;
  overflow: auto;
  border-radius: 8px;
  border: 1.2px solid var(--border-color);
}
:not(pre) > code[class*='language-'],
pre[class*='language-'] {
  background: var(--pre-bg-color);
}
:not(pre) > code[class*='language-'] {
  padding: 0.1em;
  border-radius: 0.3em;
  white-space: normal;
}
pre[class*='language-']:before {
  content: attr(data-language);
  position: absolute;
  z-index: 3;
  top: 0.8em;
  right: 1em;
  font-size: 0.75rem;
  color: #ccc;
}
.token.block-comment,
.token.cdata,
.token.comment,
.token.doctype,
.token.prolog {
  color: #999;
}
.token.punctuation {
  color: #ccc;
}
.token.attr-name,
.token.deleted,
.token.namespace,
.token.tag {
  color: #e2777a;
}
.token.function-name {
  color: #6196cc;
}
.token.boolean,
.token.function,
.token.number {
  color: #f08d49;
}
.token.class-name,
.token.constant,
.token.property,
.token.symbol {
  color: #f8c555;
}
.token.atrule,
.token.builtin,
.token.important,
.token.keyword,
.token.selector {
  color: #cc99cd;
}
.token.attr-value,
.token.char,
.token.regex,
.token.string,
.token.variable {
  color: #7ec699;
}
.token.entity,
.token.operator,
.token.url {
  color: #67cdcc;
}
.token.bold,
.token.important {
  font-weight: 700;
}
.token.italic {
  font-style: italic;
}
.token.entity {
  cursor: help;
}
.token.inserted {
  color: green;
}
a,
body,
code,
div,
em,
h1,
h2,
h3,
h4,
h5,
h6,
html,
i,
img,
li,
ol,
p,
span,
strong,
ul {
  margin: 0;
  padding: 0;
  border: 0;
}
li,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
li:focus,
ul:focus {
  outline: -webkit-focus-ring-color auto 0;
}
html {
  box-sizing: border-box;
  height: 100%;
  color: var(--font-color);
}
*,
*:after,
*:before {
  box-sizing: border-box;
  -webkit-text-size-adjust: none;
}
a:active,
a:focus {
  outline: none;
}
a {
  transition: all 0.3s;
  color: var(--font-color);
}
a:focus,
a:hover {
  transition: all 0.3s;
  cursor: pointer;
  text-decoration: none;
  color: inherit;
}
div:focus {
  outline: none;
}
html {
  height: 100%;
  margin: 0;
  font-size: 14px;
  box-sizing: border-box;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
body {
  height: 100%;
  margin: 0;
  padding: 0;
  color: var(--accent-color);
  line-height: 1.5;
  font-family: 'IBM Plex Sans', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', Arial, Helvetica, sans-serif;
  scroll-behavior: smooth;
  background: var(--bg-color);
}
hr {
  opacity: 0.2;
  margin: 2rem 0;
  border-color: #000;
}
a,
span,
.btn {
  font-family: 'IBM Plex Sans', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', Arial, Helvetica, sans-serif;
}
a {
  color: var(--font-color);
  text-decoration: none;
  cursor: pointer;
}
blockquote {
  position: relative;
  color: var(--font-color);
  font-size: 14px;
  background-color: var(--search-bg-color);
  border: 1px solid var(--border-color);
  padding: 1rem 1rem 1rem 1.5rem;
  margin: 2rem 0;
  border-radius: 8px;
}
blockquote p {
  margin: 0 !important;
}
p code {
  background-color: var(--search-bg-color);
  border-radius: 4px;
  border: 1px solid var(--border-color);
  padding: 0.2rem;
  margin: 0 0.4rem;
}
table {
  width: 100%;
  border: 1px solid var(--border-color);
  background-color: var(--op-bg-color);
  border-radius: 4px;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  margin: 2rem 0;
}
table td,
table th {
  border-left: 1px solid var(--border-color);
  border-width: 0 0 0 1px;
  font-size: inherit;
  margin: 0;
  overflow: visible;
  padding: 0.5em 1em;
  text-align: center;
}
table td {
  background-color: transparent;
}
table td {
  border-bottom: 1px solid var(--border-color);
}
table thead {
  background-color: var(--op-bg-color);
  text-align: left;
  vertical-align: bottom;
}
table caption {
  padding: 1em 0;
  text-align: center;
}
table tbody > tr:last-child > td {
  border-bottom-width: 0;
}
::-webkit-input-placeholder {
  font-size: 14px;
  letter-spacing: normal;
  color: var(--subtitle-color);
}
:-moz-placeholder {
  font-size: 14px;
  letter-spacing: normal;
  color: var(--subtitle-color);
}
::-moz-placeholder {
  font-size: 14px;
  letter-spacing: normal;
  color: var(--subtitle-color);
}
:-ms-input-placeholder {
  font-size: 14px;
  letter-spacing: normal;
  color: var(--subtitle-color);
}
@media screen and (max-width: 768px) {
  body {
    -webkit-user-select: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  ::-webkit-input-placeholder {
    font-size: 14px;
  }
  :-moz-placeholder {
    font-size: 14px;
  }
  ::-moz-placeholder {
    font-size: 14px;
  }
  :-ms-input-placeholder {
    font-size: 14px;
  }
}
::selection {
  background: var(--color-selection);
  color: var(--color-neutral-n80);
}
@media (prefers-color-scheme: dark) {
  body[data-theme='system'] {
    --active-color: #57ffc4;
    --accent-color: #fff;
    --title-color: #e6e6e6;
    --subtitle-color: #ccc;
    --font-color: #fafafa;
    --note-success-color: #18774f;
    --note-success-bg-color: rgba(37, 86, 65, 0.5);
    --note-info-color: #1d4672;
    --note-info-bg-color: rgba(37, 60, 86, 0.5);
    --note-warning-color: #775c18;
    --note-warning-bg-color: rgba(86, 72, 37, 0.5);
    --note-danger-color: #741b25;
    --note-danger-bg-color: rgba(91, 32, 39, 0.5);
    --border-color: rgba(255, 255, 255, 0.1);
    --bg-color: #161616;
    --op-bg-color: rgba(255, 255, 255, 0.03);
    --pre-bg-color: rgba(255, 255, 255, 0.03);
    --menu-bg-color: rgba(44, 43, 43, 0.95);
    --menu-border-color: transparent;
    --menu-item-color: #1f1f1f;
    --menu-item-hover-color: transparent;
    --menu-item-shadow-color: rgba(255, 255, 255, 0.08);
    --menu-item-gradient-color: linear-gradient(rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);
    --cover-bg-color: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7));
    --search-bg-color: #1c1c1c;
    --search-item-bg-color: #2b2b2b;
    --docsearch-primary-color: #1bc589;
    --docsearch-text-color: var(--subtitle-color);
    --docsearch-spacing: 12px;
    --docsearch-icon-stroke-width: 1.4;
    --docsearch-highlight-color: #1bc589;
    --docsearch-muted-color: var(--subtitle-color);
    --docsearch-container-background: rgba(24, 24, 24, 0.8);
    --docsearch-logo-color: var(--subtitle-color);
    /* modal */
    --docsearch-modal-width: 560px;
    --docsearch-modal-height: 600px;
    --docsearch-modal-background: var(--search-bg-color);
    --docsearch-modal-shadow: inset 1px 1px 0 0 var(--bg-color), 0 3px 8px 0 rgba(15, 15, 15, 0.4);
    /* searchbox */
    --docsearch-searchbox-height: 56px;
    --docsearch-searchbox-background: var(--op-bg-color);
    --docsearch-searchbox-focus-background: var(--op-bg-color);
    --docsearch-searchbox-shadow: inset 0 0 0 1px var(--docsearch-primary-color);
    /* hit */
    --docsearch-hit-height: 56px;
    --docsearch-hit-color: var(--title-color);
    --docsearch-hit-active-color: var(--accent-color);
    --docsearch-hit-background: #202020;
    --docsearch-hit-shadow: 0 1px 3px 0 var(--bg-color);
    /* key */
    --docsearch-key-gradient: linear-gradient(-225deg, var(--bg-color) 0%, var(--search-bg-color) 100%);
    --docsearch-key-shadow: inset 0 -2px 0 0 var(--bg-color), inset 0 0 1px 1px #323232, 0 1px 2px 1px rgba(0, 0, 0, 0.6);
    /* footer */
    --docsearch-footer-height: 44px;
    --docsearch-footer-background: var(--search-bg-color);
    --docsearch-footer-shadow: 0 -1px 0 0 var(--bg-color), 0 -3px 6px 0 rgba(15, 15, 15, 0.3);
  }
}
@media (prefers-color-scheme: light) {
  body[data-theme='system'] {
    --active-color: #ea504e;
    --accent-color: #000;
    --title-color: #000;
    --subtitle-color: #181818;
    --font-color: #030303;
    --note-success-color: #82edc0;
    --note-success-bg-color: rgba(199, 240, 223, 0.5);
    --note-info-color: #81bbf8;
    --note-info-bg-color: rgba(192, 221, 252, 0.5);
    --note-warning-color: #f5d480;
    --note-warning-bg-color: rgba(246, 225, 172, 0.5);
    --note-danger-color: #f1a2ab;
    --note-danger-bg-color: rgba(248, 206, 211, 0.5);
    --border-color: rgba(0, 0, 0, 0.1);
    --bg-color: #fff;
    --op-bg-color: rgba(0, 0, 0, 0.03);
    --pre-bg-color: #1e1e1e;
    --menu-bg-color: rgba(255, 255, 255, 0.5);
    --menu-border-color: rgba(64, 64, 64, 0.1);
    --menu-item-color: transparent;
    --menu-item-hover-color: rgba(255, 255, 255, 0.3);
    --menu-item-shadow-color: rgba(0, 0, 0, 0.06);
    --menu-item-gradient-color: linear-gradient(rgba(0, 0, 0, 0.04) 0%, rgba(0, 0, 0, 0.03) 100%);
    --cover-bg-color: transparent;
    --search-bg-color: #f8f8f8;
    --search-item-bg-color: #2b2b2b;
    --docsearch-primary-color: #ea504e;
    --docsearch-text-color: var(--subtitle-color);
    --docsearch-spacing: 12px;
    --docsearch-icon-stroke-width: 1.4;
    --docsearch-highlight-color: #ea504e;
    --docsearch-muted-color: var(--subtitle-color);
    --docsearch-container-background: rgba(24, 24, 24, 0.8);
    --docsearch-logo-color: var(--subtitle-color);
    /* modal */
    --docsearch-modal-width: 560px;
    --docsearch-modal-height: 600px;
    --docsearch-modal-background: var(--search-bg-color);
    --docsearch-modal-shadow: inset 1px 1px 0 0 var(--bg-color), 0 3px 8px 0 rgba(76, 76, 76, 1);
    /* searchbox */
    --docsearch-searchbox-height: 56px;
    --docsearch-searchbox-background: var(--op-bg-color);
    --docsearch-searchbox-focus-background: rgba(255, 255, 255, 0.05);
    --docsearch-searchbox-shadow: inset 0 0 0 1.5px var(--docsearch-primary-color);
    /* hit */
    --docsearch-hit-height: 56px;
    --docsearch-hit-color: var(--title-color);
    --docsearch-hit-active-color: #ffffff;
    --docsearch-hit-background: #f2f2f2;
    --docsearch-hit-shadow: 0 1px 3px 0 var(--bg-color);
    /* key */
    --docsearch-key-gradient: linear-gradient(-225deg, var(--bg-color) 0%, var(--search-bg-color) 100%);
    /* footer */
    --docsearch-footer-height: 44px;
    --docsearch-footer-background: var(--search-bg-color);
    --docsearch-footer-shadow: 0 -1px 0 0 var(--bg-color), 0 -3px 6px 0 rgba(0, 0, 0, 0.03);
  }
}
body[data-theme='light'] {
  --active-color: #ea504e;
  --accent-color: #000;
  --title-color: #000;
  --subtitle-color: #181818;
  --font-color: #030303;
  --note-success-color: #82edc0;
  --note-success-bg-color: rgba(199, 240, 223, 0.5);
  --note-info-color: #81bbf8;
  --note-info-bg-color: rgba(192, 221, 252, 0.5);
  --note-warning-color: #f5d480;
  --note-warning-bg-color: rgba(246, 225, 172, 0.5);
  --note-danger-color: #f1a2ab;
  --note-danger-bg-color: rgba(248, 206, 211, 0.5);
  --border-color: rgba(0, 0, 0, 0.1);
  --bg-color: #fff;
  --op-bg-color: rgba(0, 0, 0, 0.03);
  --pre-bg-color: #1e1e1e;
  --menu-bg-color: rgba(255, 255, 255, 0.5);
  --menu-border-color: rgba(64, 64, 64, 0.1);
  --menu-item-color: transparent;
  --menu-item-hover-color: rgba(255, 255, 255, 0.3);
  --menu-item-shadow-color: rgba(0, 0, 0, 0.06);
  --menu-item-gradient-color: linear-gradient(rgba(0, 0, 0, 0.04) 0%, rgba(0, 0, 0, 0.03) 100%);
  --cover-bg-color: transparent;
  --search-bg-color: #f8f8f8;
  --search-item-bg-color: #2b2b2b;
  --docsearch-primary-color: #ea504e;
  --docsearch-text-color: var(--subtitle-color);
  --docsearch-spacing: 12px;
  --docsearch-icon-stroke-width: 1.4;
  --docsearch-highlight-color: #ea504e;
  --docsearch-muted-color: var(--subtitle-color);
  --docsearch-container-background: rgba(24, 24, 24, 0.8);
  --docsearch-logo-color: var(--subtitle-color);
  /* modal */
  --docsearch-modal-width: 560px;
  --docsearch-modal-height: 600px;
  --docsearch-modal-background: var(--search-bg-color);
  --docsearch-modal-shadow: inset 1px 1px 0 0 var(--bg-color), 0 3px 8px 0 rgba(76, 76, 76, 1);
  /* searchbox */
  --docsearch-searchbox-height: 56px;
  --docsearch-searchbox-background: var(--op-bg-color);
  --docsearch-searchbox-focus-background: rgba(255, 255, 255, 0.05);
  --docsearch-searchbox-shadow: inset 0 0 0 1.5px var(--docsearch-primary-color);
  /* hit */
  --docsearch-hit-height: 56px;
  --docsearch-hit-color: var(--title-color);
  --docsearch-hit-active-color: #ffffff;
  --docsearch-hit-background: #f2f2f2;
  --docsearch-hit-shadow: 0 1px 3px 0 var(--bg-color);
  /* key */
  --docsearch-key-gradient: linear-gradient(-225deg, var(--bg-color) 0%, var(--search-bg-color) 100%);
  /* footer */
  --docsearch-footer-height: 44px;
  --docsearch-footer-background: var(--search-bg-color);
  --docsearch-footer-shadow: 0 -1px 0 0 var(--bg-color), 0 -3px 6px 0 rgba(0, 0, 0, 0.03);
}
body[data-theme='dark'] {
  --active-color: #57ffc4;
  --accent-color: #fff;
  --title-color: #e6e6e6;
  --subtitle-color: #ccc;
  --font-color: #fafafa;
  --note-success-color: #18774f;
  --note-success-bg-color: rgba(37, 86, 65, 0.5);
  --note-info-color: #1d4672;
  --note-info-bg-color: rgba(37, 60, 86, 0.5);
  --note-warning-color: #775c18;
  --note-warning-bg-color: rgba(86, 72, 37, 0.5);
  --note-danger-color: #741b25;
  --note-danger-bg-color: rgba(91, 32, 39, 0.5);
  --border-color: rgba(255, 255, 255, 0.1);
  --bg-color: #161616;
  --op-bg-color: rgba(255, 255, 255, 0.03);
  --pre-bg-color: rgba(255, 255, 255, 0.03);
  --menu-bg-color: rgba(44, 43, 43, 0.95);
  --menu-border-color: transparent;
  --menu-item-color: #1f1f1f;
  --menu-item-hover-color: transparent;
  --menu-item-shadow-color: rgba(255, 255, 255, 0.08);
  --menu-item-gradient-color: linear-gradient(rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);
  --cover-bg-color: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7));
  --search-bg-color: #1c1c1c;
  --search-item-bg-color: #2b2b2b;
  --docsearch-primary-color: #1bc589;
  --docsearch-text-color: var(--subtitle-color);
  --docsearch-spacing: 12px;
  --docsearch-icon-stroke-width: 1.4;
  --docsearch-highlight-color: #1bc589;
  --docsearch-muted-color: var(--subtitle-color);
  --docsearch-container-background: rgba(24, 24, 24, 0.8);
  --docsearch-logo-color: var(--subtitle-color);
  /* modal */
  --docsearch-modal-width: 560px;
  --docsearch-modal-height: 600px;
  --docsearch-modal-background: var(--search-bg-color);
  --docsearch-modal-shadow: inset 1px 1px 0 0 var(--bg-color), 0 3px 8px 0 rgba(15, 15, 15, 0.4);
  /* searchbox */
  --docsearch-searchbox-height: 56px;
  --docsearch-searchbox-background: var(--op-bg-color);
  --docsearch-searchbox-focus-background: var(--op-bg-color);
  --docsearch-searchbox-shadow: inset 0 0 0 1px var(--docsearch-primary-color);
  /* hit */
  --docsearch-hit-height: 56px;
  --docsearch-hit-color: var(--title-color);
  --docsearch-hit-active-color: var(--accent-color);
  --docsearch-hit-background: #202020;
  --docsearch-hit-shadow: 0 1px 3px 0 var(--bg-color);
  /* key */
  --docsearch-key-gradient: linear-gradient(-225deg, var(--bg-color) 0%, var(--search-bg-color) 100%);
  --docsearch-key-shadow: inset 0 -2px 0 0 var(--bg-color), inset 0 0 1px 1px #323232, 0 1px 2px 1px rgba(0, 0, 0, 0.6);
  /* footer */
  --docsearch-footer-height: 44px;
  --docsearch-footer-background: var(--search-bg-color);
  --docsearch-footer-shadow: 0 -1px 0 0 var(--bg-color), 0 -3px 6px 0 rgba(15, 15, 15, 0.3);
}
::-webkit-scrollbar {
  width: 13px;
}
::-webkit-scrollbar-thumb {
  border: 3px solid rgba(0, 0, 0, 0);
  background-clip: padding-box;
  border-radius: 7px;
  min-height: 84px;
  background-color: rgba(0, 0, 0, 0.4) !important;
}
::-webkit-scrollbar-thumb:hover {
  background-color: rgba(0, 0, 0, 0.5) !important;
}
::-webkit-scrollbar-track {
  background-color: rgba(248, 250, 252, 0) !important;
}
::selection {
  background: #262a30;
  color: #fff;
}
/* Make clicks pass-through */
#nprogress {
  pointer-events: none;
}
#nprogress .bar {
  background: var(--active-color);
  position: fixed;
  z-index: 1031;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
}
/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0px;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px #57ffc4, 0 0 5px #57ffc4;
  opacity: 1;
  -webkit-transform: rotate(3deg) translate(0px, -4px);
  -ms-transform: rotate(3deg) translate(0px, -4px);
  transform: rotate(3deg) translate(0px, -4px);
}
/* Remove these to get rid of the spinner */
#nprogress .spinner {
  display: block;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px;
}
#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border: solid 1px transparent;
  border-top-color: #57ffc4;
  border-left-color: #57ffc4;
  border-radius: 50%;
  -webkit-animation: nprogress-spinner 400ms linear infinite;
  animation: nprogress-spinner 400ms linear infinite;
}
.nprogress-custom-parent {
  overflow: hidden;
  position: relative;
}
.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute;
}
@-webkit-keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes nprogress-spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media screen and (max-width: 980px) {
  html {
    font-size: 12px;
  }
}
