html[data-user-color-scheme="dark"] {
  --body-bg-color: #050812;
  --board-bg-color: rgba(8, 14, 28, 0.88);
  --navbar-bg-color: rgba(7, 12, 24, 0.9);
  --text-color: #d8e2f2;
  --sec-text-color: #aab8cc;
  --post-text-color: #d8e2f2;
  --post-heading-color: #eef4ff;
  --post-link-color: #8db8ff;
  --link-hover-color: #ff7a8a;
  --link-hover-bg-color: rgba(148, 36, 58, 0.24);
  --line-color: rgba(137, 166, 214, 0.28);
  --navbar-text-color: #edf4ff;
  --subtitle-color: #f1f6ff;
  --scrollbar-color: #38527a;
  --scrollbar-hover-color: #b54b62;
  --button-hover-bg-color: rgba(134, 44, 68, 0.3);
  --highlight-bg-color: rgba(5, 9, 18, 0.96);
  --inlinecode-bg-color: rgba(118, 154, 214, 0.16);
  --fold-title-color: #d8e2f2;
  --fold-border-color: rgba(137, 166, 214, 0.28);
}

html[data-user-color-scheme="dark"] body {
  background-color: #050812;
}

html[data-user-color-scheme="dark"] #banner,
html[data-user-color-scheme="light"] #banner,
html:not([data-user-color-scheme]) #banner {
  overflow: hidden;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

html[data-user-color-scheme="dark"] #banner.banner-theme-swap::before,
html[data-user-color-scheme="light"] #banner.banner-theme-swap::before,
html:not([data-user-color-scheme]) #banner.banner-theme-swap::before,
html[data-user-color-scheme="dark"] #banner.banner-theme-swap::after,
html[data-user-color-scheme="light"] #banner.banner-theme-swap::after,
html:not([data-user-color-scheme]) #banner.banner-theme-swap::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: opacity 540ms ease, transform 540ms ease, filter 540ms ease;
  will-change: opacity, transform, filter;
}

html[data-user-color-scheme="dark"] #banner.banner-theme-swap::before,
html[data-user-color-scheme="light"] #banner.banner-theme-swap::before,
html:not([data-user-color-scheme]) #banner.banner-theme-swap::before {
  background-image: var(--banner-light-image);
  opacity: 1;
  transform: scale(1.03);
  filter: brightness(0.98) saturate(1);
  z-index: 0;
}

html[data-user-color-scheme="dark"] #banner.banner-theme-swap::after,
html[data-user-color-scheme="light"] #banner.banner-theme-swap::after,
html:not([data-user-color-scheme]) #banner.banner-theme-swap::after {
  background-image: var(--banner-dark-image);
  opacity: 0;
  transform: scale(1.06);
  filter: brightness(0.9) saturate(1.05);
  z-index: 0;
}

html[data-user-color-scheme="dark"] #banner.banner-theme-swap::before {
  opacity: 0;
  transform: scale(1.06);
  filter: brightness(0.9) saturate(0.95);
}

html[data-user-color-scheme="dark"] #banner.banner-theme-swap::after {
  opacity: 1;
  transform: scale(1);
  filter: brightness(1) saturate(1.02);
}

html[data-user-color-scheme="dark"] #banner .full-bg-img,
html[data-user-color-scheme="light"] #banner .full-bg-img,
html:not([data-user-color-scheme]) #banner .full-bg-img,
html[data-user-color-scheme="dark"] #banner .mask,
html[data-user-color-scheme="light"] #banner .mask,
html:not([data-user-color-scheme]) #banner .mask {
  z-index: 1;
}

html[data-user-color-scheme="dark"] #board {
  border: 1px solid rgba(155, 180, 226, 0.14);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(6px);
}

html[data-user-color-scheme="dark"] .navbar .dropdown-collapse,
html[data-user-color-scheme="dark"] .top-nav-collapse,
html[data-user-color-scheme="dark"] .navbar-col-show,
html[data-user-color-scheme="dark"] #mobile-grid-menu {
  backdrop-filter: blur(8px);
}

@media (prefers-color-scheme: dark) {
  html:not([data-user-color-scheme]) {
    --body-bg-color: #050812;
    --board-bg-color: rgba(8, 14, 28, 0.88);
    --navbar-bg-color: rgba(7, 12, 24, 0.9);
    --text-color: #d8e2f2;
    --sec-text-color: #aab8cc;
    --post-text-color: #d8e2f2;
    --post-heading-color: #eef4ff;
    --post-link-color: #8db8ff;
    --link-hover-color: #ff7a8a;
    --link-hover-bg-color: rgba(148, 36, 58, 0.24);
    --line-color: rgba(137, 166, 214, 0.28);
    --navbar-text-color: #edf4ff;
    --subtitle-color: #f1f6ff;
    --scrollbar-color: #38527a;
    --scrollbar-hover-color: #b54b62;
    --button-hover-bg-color: rgba(134, 44, 68, 0.3);
    --highlight-bg-color: rgba(5, 9, 18, 0.96);
    --inlinecode-bg-color: rgba(118, 154, 214, 0.16);
    --fold-title-color: #d8e2f2;
    --fold-border-color: rgba(137, 166, 214, 0.28);
  }

  html:not([data-user-color-scheme]) body {
    background-color: #050812;
  }

  html:not([data-user-color-scheme]) #board {
    border: 1px solid rgba(155, 180, 226, 0.14);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(6px);
  }

  html:not([data-user-color-scheme]) .navbar .dropdown-collapse,
  html:not([data-user-color-scheme]) .top-nav-collapse,
  html:not([data-user-color-scheme]) .navbar-col-show,
  html:not([data-user-color-scheme]) #mobile-grid-menu {
    backdrop-filter: blur(8px);
  }
}
