/* ================================================================
   OHRROR — Dark Mode Glassmorphism Skin v2
   File: public/themes/september/css/dark-theme.css
   All rules scoped under body.dark-theme
   ================================================================ */

/* ----------------------------------------------------------------
   CSS CUSTOM PROPERTIES
   ---------------------------------------------------------------- */
body.dark-theme {
  --dt-bg-primary: #000000;
  --dt-bg-secondary: #0a0a0a;
  --dt-crimson-deep: #8B0000;
  --dt-crimson-dark: #4a0000;
  --dt-crimson-mid: #b40000;
  --dt-crimson-glow: rgba(180, 0, 0, 0.5);
  --dt-crimson-subtle: rgba(180, 0, 0, 0.2);
  --dt-crimson-btn: rgba(180, 0, 0, 0.15);
  --dt-crimson-btn-hover: rgba(180, 0, 0, 0.35);
  --dt-glass-bg: rgba(255, 255, 255, 0.04);
  --dt-glass-border: rgba(255, 255, 255, 0.08);
  --dt-glass-highlight: rgba(255, 255, 255, 0.06);
  --dt-glass-blur: blur(16px);
  --dt-glass-saturate: saturate(180%);
  --dt-text-primary: #ffffff;
  --dt-text-body: #e0e0e0;
  --dt-text-muted: #999999;
  --dt-link-hover: #ff4444;
  --dt-shadow-heavy: 0 8px 32px rgba(0, 0, 0, 0.6);
  --dt-shadow-inset: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  --dt-transition: 0.3s ease;
}

/* ----------------------------------------------------------------
   BASE / BODY — Dark background + animated blobs
   ---------------------------------------------------------------- */
body.dark-theme {
  background-color: var(--dt-bg-primary) !important;
  color: var(--dt-text-body) !important;
  position: relative;
  min-height: 100vh;
}

body.dark-theme::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 600px 600px at 10% 10%, rgba(139, 0, 0, 0.18) 0%, transparent 70%),
    radial-gradient(ellipse 500px 500px at 90% 20%, rgba(74, 0, 0, 0.22) 0%, transparent 70%),
    radial-gradient(ellipse 700px 700px at 50% 80%, rgba(139, 0, 0, 0.12) 0%, transparent 70%);
  animation: dt-blob-drift 25s ease-in-out infinite alternate;
}

@keyframes dt-blob-drift {
  0% {
    background:
      radial-gradient(ellipse 600px 600px at 10% 10%, rgba(139, 0, 0, 0.18) 0%, transparent 70%),
      radial-gradient(ellipse 500px 500px at 90% 20%, rgba(74, 0, 0, 0.22) 0%, transparent 70%),
      radial-gradient(ellipse 700px 700px at 50% 80%, rgba(139, 0, 0, 0.12) 0%, transparent 70%);
  }
  33% {
    background:
      radial-gradient(ellipse 650px 550px at 20% 30%, rgba(139, 0, 0, 0.20) 0%, transparent 70%),
      radial-gradient(ellipse 550px 600px at 80% 50%, rgba(74, 0, 0, 0.18) 0%, transparent 70%),
      radial-gradient(ellipse 600px 650px at 40% 70%, rgba(139, 0, 0, 0.15) 0%, transparent 70%);
  }
  66% {
    background:
      radial-gradient(ellipse 550px 650px at 30% 15%, rgba(74, 0, 0, 0.20) 0%, transparent 70%),
      radial-gradient(ellipse 600px 500px at 75% 40%, rgba(139, 0, 0, 0.16) 0%, transparent 70%),
      radial-gradient(ellipse 650px 600px at 55% 85%, rgba(74, 0, 0, 0.22) 0%, transparent 70%);
  }
  100% {
    background:
      radial-gradient(ellipse 600px 600px at 15% 25%, rgba(139, 0, 0, 0.16) 0%, transparent 70%),
      radial-gradient(ellipse 500px 550px at 85% 15%, rgba(74, 0, 0, 0.20) 0%, transparent 70%),
      radial-gradient(ellipse 700px 700px at 45% 75%, rgba(139, 0, 0, 0.14) 0%, transparent 70%);
  }
}

/* ----------------------------------------------------------------
   NUKE ALL WHITE BACKGROUNDS
   Every container, section, wrapper, column, card, page
   ---------------------------------------------------------------- */
body.dark-theme,
body.dark-theme #app,
body.dark-theme #page-home,
body.dark-theme .ck-content,
body.dark-theme .container,
body.dark-theme .section--homepage,
body.dark-theme .home-products,
body.dark-theme .home-collection,
body.dark-theme .home-blog,
body.dark-theme .section__header,
body.dark-theme .section__content,
body.dark-theme .page--inner,
body.dark-theme .page--shop,
body.dark-theme .page--blog,
body.dark-theme .page--product--detail,
body.dark-theme .section--blog,
body.dark-theme .section--auth,
body.dark-theme .section--instagram,
body.dark-theme .ps-site-features,
body.dark-theme .simple-slider-wrapper,
body.dark-theme main,
body.dark-theme section,
body.dark-theme div[class*="section"],
body.dark-theme .row,
body.dark-theme .col,
body.dark-theme [class*="col-"],
body.dark-theme .breadcrumb-wrapper,
body.dark-theme .customer-page,
body.dark-theme .block__content,
body.dark-theme .card,
body.dark-theme .card-header,
body.dark-theme .card-body,
body.dark-theme .widget,
body.dark-theme aside,
body.dark-theme .sidebar,
body.dark-theme .block,
body.dark-theme .panel,
body.dark-theme .wrapper,
body.dark-theme .inner,
body.dark-theme .content,
body.dark-theme .generic-form,
body.dark-theme .form__section,
body.dark-theme .form__header,
body.dark-theme .form--auth,
body.dark-theme .checkout-step,
body.dark-theme .payment-method,
body.dark-theme .review-checkout,
body.dark-theme .product__overlay {
  background-color: transparent !important;
  background: transparent !important;
}

/* Catch inline white backgrounds */
body.dark-theme [style*="background-color: #fff"],
body.dark-theme [style*="background-color:#fff"],
body.dark-theme [style*="background-color: #FFF"],
body.dark-theme [style*="background-color:#FFF"],
body.dark-theme [style*="background-color: white"],
body.dark-theme [style*="background: #fff"],
body.dark-theme [style*="background:#fff"],
body.dark-theme [style*="background: white"],
body.dark-theme [style*="background-color: #ffffff"],
body.dark-theme [style*="background-color:#ffffff"],
body.dark-theme [style*="background-color: rgb(255"],
body.dark-theme [style*="background: rgb(255"] {
  background-color: transparent !important;
  background: transparent !important;
}

/* ----------------------------------------------------------------
   TYPOGRAPHY
   ---------------------------------------------------------------- */
body.dark-theme h1,
body.dark-theme h2,
body.dark-theme h3,
body.dark-theme h4,
body.dark-theme h5,
body.dark-theme h6 {
  color: var(--dt-text-primary) !important;
  text-shadow: 0 0 20px rgba(180, 0, 0, 0.4);
}

body.dark-theme p,
body.dark-theme span,
body.dark-theme li,
body.dark-theme td,
body.dark-theme th,
body.dark-theme label,
body.dark-theme small,
body.dark-theme strong,
body.dark-theme div {
  color: var(--dt-text-body) !important;
}

body.dark-theme a {
  color: var(--dt-text-body);
  transition: color 0.2s ease;
}

body.dark-theme a:hover {
  color: var(--dt-link-hover) !important;
}

/* ----------------------------------------------------------------
   SECTION TITLES — "LATEST DROP" etc.
   ---------------------------------------------------------------- */
body.dark-theme .section__header h3 {
  color: var(--dt-text-primary) !important;
  text-shadow: 0 0 24px rgba(180, 0, 0, 0.5), 0 0 48px rgba(139, 0, 0, 0.2);
}

/* ----------------------------------------------------------------
   NAVIGATION BAR — Glass effect
   ---------------------------------------------------------------- */
body.dark-theme .header {
  background: rgba(0, 0, 0, 0.4) !important;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.dark-theme .header.header--sticky {
  background: rgba(0, 0, 0, 0.65) !important;
}

body.dark-theme .header.header--mobile {
  background: rgba(0, 0, 0, 0.5) !important;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

body.dark-theme .top-header {
  background: transparent !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

body.dark-theme .navigation {
  background: transparent !important;
}

/* Logo red glow pulse */
body.dark-theme .logo img {
  filter: drop-shadow(0 0 8px rgba(200, 0, 0, 0.6));
  animation: dt-logo-pulse 3s ease-in-out infinite;
}

@keyframes dt-logo-pulse {
  0%, 100% { filter: drop-shadow(0 0 8px rgba(200, 0, 0, 0.4)); }
  50%      { filter: drop-shadow(0 0 12px rgba(200, 0, 0, 0.8)); }
}

/* Nav links */
body.dark-theme .menu > li > a,
body.dark-theme .menu--mobile > li > a {
  color: var(--dt-text-body) !important;
}

body.dark-theme .menu > li > a:hover,
body.dark-theme .menu > li.current-menu-item > a,
body.dark-theme .menu--mobile > li > a:hover,
body.dark-theme .menu--mobile > li.current-menu-item > a {
  color: var(--dt-link-hover) !important;
}

/* Header actions icons */
body.dark-theme .header__actions a,
body.dark-theme .header__actions a i,
body.dark-theme .header_list li a,
body.dark-theme .contact-detail li,
body.dark-theme .contact-detail li a {
  color: var(--dt-text-body) !important;
}

body.dark-theme .header__actions a:hover,
body.dark-theme .header_list li a:hover {
  color: var(--dt-link-hover) !important;
}

/* Mobile header icons */
body.dark-theme .header--mobile .search-btn,
body.dark-theme .header--mobile .panel-trigger,
body.dark-theme .header--mobile .search-btn i,
body.dark-theme .header--mobile .panel-trigger i {
  color: var(--dt-text-body) !important;
}

/* Cart/wishlist count badge */
body.dark-theme .btn-shopping-cart span,
body.dark-theme .compare-count span {
  color: var(--dt-text-primary) !important;
}

/* ----------------------------------------------------------------
   HERO SLIDER
   ---------------------------------------------------------------- */
body.dark-theme .slider__content__wrapper__content h2 {
  text-shadow: 0 0 30px rgba(180, 0, 0, 0.5), 0 2px 8px rgba(0, 0, 0, 0.8) !important;
}

body.dark-theme .slider__content__wrapper__content p {
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.8);
}

/* ----------------------------------------------------------------
   BUTTONS — CTAs, Add to Cart, Shop Now
   ---------------------------------------------------------------- */
body.dark-theme .btn--custom,
body.dark-theme button.btn--custom,
body.dark-theme .product__actions li a,
body.dark-theme .slider__content__wrapper__content .btn--custom {
  background: var(--dt-crimson-btn) !important;
  border: 1px solid var(--dt-crimson-glow) !important;
  color: var(--dt-text-primary) !important;
  border-radius: 8px !important;
  position: relative;
  overflow: hidden;
  transition: all var(--dt-transition);
}

body.dark-theme .btn--custom:hover,
body.dark-theme button.btn--custom:hover,
body.dark-theme .product__actions li a:hover,
body.dark-theme .slider__content__wrapper__content .btn--custom:hover {
  background: var(--dt-crimson-btn-hover) !important;
  box-shadow: 0 0 20px var(--dt-crimson-subtle);
}

body.dark-theme .btn--custom:active,
body.dark-theme button.btn--custom:active,
body.dark-theme .product__actions li a:active {
  transform: scale(0.97);
}

/* Shimmer sweep on hover */
body.dark-theme .btn--custom::after,
body.dark-theme .product__actions li a::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.08), transparent);
  transition: left 0.5s ease;
  pointer-events: none;
}

body.dark-theme .btn--custom:hover::after,
body.dark-theme .product__actions li a:hover::after {
  left: 100%;
}

/* Outline variant */
body.dark-theme .btn--outline {
  background: transparent !important;
  border: 1px solid var(--dt-glass-border) !important;
  color: var(--dt-text-primary) !important;
}

body.dark-theme .btn--outline:hover {
  border-color: var(--dt-crimson-glow) !important;
  background: var(--dt-crimson-btn) !important;
}

/* Fill-out buttons */
body.dark-theme .btn-fill-out {
  background: var(--dt-crimson-btn) !important;
  border: 1px solid var(--dt-crimson-glow) !important;
  color: var(--dt-text-primary) !important;
}

body.dark-theme .btn-fill-out:hover {
  background: var(--dt-crimson-btn-hover) !important;
}

/* ----------------------------------------------------------------
   PRODUCT CARDS — Glass morphism
   ---------------------------------------------------------------- */
body.dark-theme .product {
  transition: transform var(--dt-transition), box-shadow var(--dt-transition);
}

body.dark-theme .product .product__wrapper {
  background: var(--dt-glass-bg) !important;
  -webkit-backdrop-filter: var(--dt-glass-blur) var(--dt-glass-saturate);
  backdrop-filter: var(--dt-glass-blur) var(--dt-glass-saturate);
  border: 1px solid var(--dt-glass-border);
  border-radius: 16px;
  box-shadow: var(--dt-shadow-heavy), var(--dt-shadow-inset);
  overflow: hidden;
  transition: all var(--dt-transition);
}

body.dark-theme .product .product__wrapper:hover {
  border-color: var(--dt-crimson-glow);
  box-shadow: var(--dt-shadow-heavy), var(--dt-shadow-inset), 0 0 20px var(--dt-crimson-subtle);
  transform: translateY(-4px);
}

/* Product thumbnail vignette */
body.dark-theme .product__thumbnail {
  position: relative;
  overflow: hidden;
  border-radius: 16px 16px 0 0;
}

body.dark-theme .product__thumbnail::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(ellipse at center, transparent 50%, rgba(0, 0, 0, 0.35) 100%);
  pointer-events: none;
  z-index: 1;
}

body.dark-theme .product__thumbnail img {
  transition: transform 0.3s ease;
}

body.dark-theme .product .product__wrapper:hover .product__thumbnail img {
  transform: scale(1.04);
}

/* Product content area */
body.dark-theme .product__content {
  padding: 12px 14px;
}

body.dark-theme .product__title {
  color: var(--dt-text-primary) !important;
}

body.dark-theme .product__title:hover {
  color: var(--dt-link-hover) !important;
}

body.dark-theme .product__price span {
  color: var(--dt-text-primary) !important;
  font-weight: 600;
}

body.dark-theme .product__price del span {
  color: var(--dt-text-muted) !important;
  font-weight: 400;
}

/* Wishlist heart */
body.dark-theme .product__favorite,
body.dark-theme .product__favorite i {
  color: var(--dt-text-body) !important;
  z-index: 2;
}

body.dark-theme .product__favorite:hover,
body.dark-theme .product__favorite:hover i {
  color: var(--dt-link-hover) !important;
}

/* Product actions overlay */
body.dark-theme .product__actions {
  z-index: 2;
}

/* ----------------------------------------------------------------
   BADGES — Glass pills
   ---------------------------------------------------------------- */
body.dark-theme .product__badges .badge {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-radius: 999px !important;
  font-size: 11px;
  padding: 4px 10px;
  border: 1px solid transparent;
  z-index: 2;
  position: relative;
}

body.dark-theme .product__badges .badge[style*="background-color: #ec2434"],
body.dark-theme .product__badges .badge[style*="background-color:#ec2434"] {
  background: rgba(180, 0, 0, 0.3) !important;
  border-color: rgba(180, 0, 0, 0.6) !important;
  box-shadow: 0 0 10px rgba(180, 0, 0, 0.3);
  color: #ff6666 !important;
}

body.dark-theme .product__badges .badge[style*="background-color: #00c9a7"],
body.dark-theme .product__badges .badge[style*="background-color:#00c9a7"] {
  background: rgba(0, 180, 100, 0.2) !important;
  border-color: rgba(0, 180, 100, 0.5) !important;
  box-shadow: 0 0 10px rgba(0, 180, 100, 0.2);
  color: #66ffcc !important;
}

body.dark-theme .product__badges .badge[style*="background-color: #fe9931"],
body.dark-theme .product__badges .badge[style*="background-color:#fe9931"] {
  background: rgba(254, 153, 49, 0.2) !important;
  border-color: rgba(254, 153, 49, 0.5) !important;
  box-shadow: 0 0 10px rgba(254, 153, 49, 0.2);
  color: #ffc266 !important;
}

body.dark-theme .product__badges .badge[style*="background-color: #000"],
body.dark-theme .product__badges .badge[style*="background-color:#000"] {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.15) !important;
  color: var(--dt-text-muted) !important;
}

body.dark-theme .badge--sale {
  background: rgba(180, 0, 0, 0.3) !important;
  color: #ff6666 !important;
}

/* ----------------------------------------------------------------
   COLLECTION / BANNER
   ---------------------------------------------------------------- */
body.dark-theme .home-collection .collection {
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid var(--dt-glass-border);
}

body.dark-theme .collection__more_link {
  color: var(--dt-text-primary) !important;
  text-shadow: 0 0 12px rgba(180, 0, 0, 0.4);
}

/* ----------------------------------------------------------------
   SITE FEATURES BAR
   ---------------------------------------------------------------- */
body.dark-theme .ps-block--features {
  background: var(--dt-glass-bg) !important;
  -webkit-backdrop-filter: var(--dt-glass-blur);
  backdrop-filter: var(--dt-glass-blur);
  border: 1px solid var(--dt-glass-border);
  border-radius: 16px;
  padding: 24px;
}

body.dark-theme .ps-block--feature .ps-block__left i {
  color: var(--dt-crimson-mid) !important;
}

body.dark-theme .ps-block--feature .ps-block__right p {
  color: var(--dt-text-primary) !important;
  font-weight: 600;
}

body.dark-theme .ps-block--feature .ps-block__right small {
  color: var(--dt-text-muted) !important;
}

/* ----------------------------------------------------------------
   FOOTER — Glass treatment
   ---------------------------------------------------------------- */
body.dark-theme .footer {
  background: rgba(0, 0, 0, 0.4) !important;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

body.dark-theme .widget--footer .widget__title {
  color: var(--dt-text-primary) !important;
}

body.dark-theme .widget__links li a,
body.dark-theme .widget--footer .widget__content p,
body.dark-theme .widget--footer .widget__content a {
  color: var(--dt-text-body) !important;
}

body.dark-theme .widget__links li a:hover,
body.dark-theme .widget--footer .widget__content a:hover {
  color: var(--dt-link-hover) !important;
}

/* Social icons */
body.dark-theme .list--social li a {
  border-color: rgba(255, 255, 255, 0.15) !important;
  color: var(--dt-text-body) !important;
}

body.dark-theme .list--social li a i {
  color: var(--dt-text-body) !important;
}

body.dark-theme .list--social li a:hover {
  background-color: var(--dt-crimson-deep) !important;
  border-color: var(--dt-crimson-deep) !important;
}

body.dark-theme .list--social li a:hover i {
  color: var(--dt-text-primary) !important;
}

/* Newsletter form */
body.dark-theme .form--subscribe .form-control {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid var(--dt-glass-border) !important;
  color: var(--dt-text-primary) !important;
}

body.dark-theme .form--subscribe .form-control::placeholder {
  color: var(--dt-text-muted) !important;
}

body.dark-theme .form--subscribe button {
  background: var(--dt-crimson-btn) !important;
  border: 1px solid var(--dt-crimson-glow) !important;
  color: var(--dt-text-primary) !important;
}

body.dark-theme .form--subscribe button:hover {
  background: var(--dt-crimson-btn-hover) !important;
}

/* Copyright */
body.dark-theme .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

body.dark-theme .copyright p,
body.dark-theme .copyright a {
  color: var(--dt-text-muted) !important;
}

body.dark-theme .copyright a:hover {
  color: var(--dt-link-hover) !important;
}

/* ----------------------------------------------------------------
   PANELS — Cart sidebar, menu sidebar, search
   ---------------------------------------------------------------- */
body.dark-theme .panel--sidebar {
  background: rgba(10, 10, 10, 0.95) !important;
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  border-left: 1px solid rgba(255, 255, 255, 0.06);
}

body.dark-theme .panel__header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

body.dark-theme .panel__header h4 {
  color: var(--dt-text-primary) !important;
}

body.dark-theme .panel__close::before,
body.dark-theme .panel__close::after {
  background-color: var(--dt-text-body) !important;
}

body.dark-theme .panel--search {
  background: rgba(0, 0, 0, 0.9) !important;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

body.dark-theme .panel--search .panel__close i {
  color: var(--dt-text-body) !important;
}

body.dark-theme .form--primary-search .form-control {
  border-color: rgba(255, 255, 255, 0.15) !important;
  color: var(--dt-text-primary) !important;
}

body.dark-theme .form--primary-search button {
  color: var(--dt-text-body) !important;
}

body.dark-theme .site-mask {
  background: rgba(0, 0, 0, 0.6) !important;
}

/* Empty cart state */
body.dark-theme .empty-state-mini i {
  color: var(--dt-text-muted) !important;
}

body.dark-theme .empty-state-mini h5 {
  color: var(--dt-text-body) !important;
}

body.dark-theme .product--on-cart {
  border-color: rgba(255, 255, 255, 0.06) !important;
}

/* ----------------------------------------------------------------
   MOBILE BOTTOM NAV BAR
   ---------------------------------------------------------------- */
body.dark-theme .mobile-menu-bar {
  background: rgba(0, 0, 0, 0.7) !important;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

body.dark-theme .mobile-menu-item a,
body.dark-theme .mobile-menu-item-btn,
body.dark-theme .mobile-menu-item-btn i,
body.dark-theme .mobile-menu-item-btn span {
  color: var(--dt-text-body) !important;
}

body.dark-theme .mobile-menu-item a:hover,
body.dark-theme .mobile-menu-item-btn:hover {
  color: var(--dt-link-hover) !important;
}

/* ----------------------------------------------------------------
   BREADCRUMBS
   ---------------------------------------------------------------- */
body.dark-theme .breadcrumb-wrapper {
  background: rgba(0, 0, 0, 0.3) !important;
}

body.dark-theme .breadcrumb--custom li,
body.dark-theme .breadcrumb--custom li a {
  color: var(--dt-text-body) !important;
}

body.dark-theme .breadcrumb--custom li a:hover {
  color: var(--dt-link-hover) !important;
}

/* ----------------------------------------------------------------
   INNER PAGES
   ---------------------------------------------------------------- */

/* Product detail */
body.dark-theme .product--detail .product__header h1 {
  color: var(--dt-text-primary) !important;
}

body.dark-theme .product--detail .product__price span {
  color: var(--dt-link-hover) !important;
}

body.dark-theme .product--detail .product__attribute {
  border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Tabs */
body.dark-theme .nav-tabs {
  border-color: rgba(255, 255, 255, 0.08) !important;
}

body.dark-theme .nav-tabs .nav-link {
  color: var(--dt-text-body) !important;
  border-color: transparent !important;
}

body.dark-theme .nav-tabs .nav-link.active {
  color: var(--dt-text-primary) !important;
  border-bottom-color: var(--dt-crimson-mid) !important;
}

/* Blog */
body.dark-theme .page--blog .post__title a,
body.dark-theme .section--blog .post__title a {
  color: var(--dt-text-primary) !important;
}

body.dark-theme .page--blog .post__title a:hover,
body.dark-theme .section--blog .post__title a:hover {
  color: var(--dt-link-hover) !important;
}

/* Auth card */
body.dark-theme .auth-card,
body.dark-theme .section--auth .card {
  background: var(--dt-glass-bg) !important;
  -webkit-backdrop-filter: var(--dt-glass-blur);
  backdrop-filter: var(--dt-glass-blur);
  border: 1px solid var(--dt-glass-border);
  border-radius: 16px;
}

/* Shop sidebar */
body.dark-theme .widget--shop {
  background: var(--dt-glass-bg) !important;
  -webkit-backdrop-filter: var(--dt-glass-blur);
  backdrop-filter: var(--dt-glass-blur);
  border: 1px solid var(--dt-glass-border);
  border-radius: 16px;
  padding: 16px;
}

body.dark-theme .widget--shop .widget__title {
  color: var(--dt-text-primary) !important;
}

/* Customer account */
body.dark-theme .customer-information-box {
  background: var(--dt-glass-bg) !important;
  border: 1px solid var(--dt-glass-border);
  border-radius: 16px;
  -webkit-backdrop-filter: var(--dt-glass-blur);
  backdrop-filter: var(--dt-glass-blur);
}

/* Contact */
body.dark-theme .block--contact-info {
  background: var(--dt-glass-bg) !important;
  border: 1px solid var(--dt-glass-border);
  border-radius: 16px;
}

/* ----------------------------------------------------------------
   FORM CONTROLS (global)
   ---------------------------------------------------------------- */
body.dark-theme .form-control,
body.dark-theme .form-select,
body.dark-theme select,
body.dark-theme textarea,
body.dark-theme input[type="text"],
body.dark-theme input[type="email"],
body.dark-theme input[type="password"],
body.dark-theme input[type="number"],
body.dark-theme input[type="search"],
body.dark-theme input[type="tel"],
body.dark-theme input[type="url"] {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: var(--dt-text-primary) !important;
  border-radius: 8px;
}

body.dark-theme .form-control:focus,
body.dark-theme .form-select:focus,
body.dark-theme input:focus {
  border-color: var(--dt-crimson-glow) !important;
  box-shadow: 0 0 12px var(--dt-crimson-subtle) !important;
}

body.dark-theme .form-control::placeholder,
body.dark-theme input::placeholder {
  color: var(--dt-text-muted) !important;
}

/* ----------------------------------------------------------------
   TABLES
   ---------------------------------------------------------------- */
body.dark-theme table {
  border-color: rgba(255, 255, 255, 0.06) !important;
}

body.dark-theme table thead th {
  background: rgba(255, 255, 255, 0.04) !important;
  color: var(--dt-text-primary) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

body.dark-theme table td {
  border-color: rgba(255, 255, 255, 0.06) !important;
}

body.dark-theme table tbody tr:hover {
  background: rgba(255, 255, 255, 0.02) !important;
}

/* ----------------------------------------------------------------
   COOKIE CONSENT
   ---------------------------------------------------------------- */
body.dark-theme .js-site-notice.site-notice {
  background-color: rgba(10, 10, 10, 0.95) !important;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

/* ----------------------------------------------------------------
   SCROLLBAR
   ---------------------------------------------------------------- */
body.dark-theme ::-webkit-scrollbar {
  width: 10px;
}

body.dark-theme ::-webkit-scrollbar-track {
  background: var(--dt-bg-secondary);
}

body.dark-theme ::-webkit-scrollbar-thumb {
  background: var(--dt-crimson-deep);
  border-radius: 5px;
}

body.dark-theme ::-webkit-scrollbar-thumb:hover {
  background: var(--dt-crimson-mid);
}

body.dark-theme {
  scrollbar-color: var(--dt-crimson-deep) var(--dt-bg-secondary);
  scrollbar-width: thin;
}

/* ----------------------------------------------------------------
   OWL CAROUSEL NAV
   ---------------------------------------------------------------- */
body.dark-theme .owl-carousel .owl-nav button {
  color: var(--dt-text-primary) !important;
  background: var(--dt-glass-bg) !important;
  border: 1px solid var(--dt-glass-border) !important;
  border-radius: 50%;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

body.dark-theme .owl-carousel .owl-nav button:hover {
  background: var(--dt-crimson-btn) !important;
  border-color: var(--dt-crimson-glow) !important;
}

body.dark-theme .owl-carousel .owl-nav button span {
  color: var(--dt-text-primary) !important;
}

/* ----------------------------------------------------------------
   ALERTS
   ---------------------------------------------------------------- */
body.dark-theme .alert {
  background: var(--dt-glass-bg) !important;
  border: 1px solid var(--dt-glass-border) !important;
  color: var(--dt-text-body) !important;
  -webkit-backdrop-filter: var(--dt-glass-blur);
  backdrop-filter: var(--dt-glass-blur);
  border-radius: 12px;
}

body.dark-theme .alert-success {
  border-color: rgba(0, 180, 100, 0.3) !important;
}

/* ----------------------------------------------------------------
   CART PAGE
   ---------------------------------------------------------------- */
body.dark-theme .cart__summary {
  background: var(--dt-glass-bg) !important;
  -webkit-backdrop-filter: var(--dt-glass-blur);
  backdrop-filter: var(--dt-glass-blur);
  border: 1px solid var(--dt-glass-border);
  border-radius: 16px;
}

body.dark-theme .cart__footer {
  border-color: rgba(255, 255, 255, 0.06) !important;
}

/* ----------------------------------------------------------------
   DROPDOWNS & SUBMENUS
   ---------------------------------------------------------------- */
body.dark-theme .dropdown-menu,
body.dark-theme .menu .sub-menu {
  background: rgba(15, 15, 15, 0.95) !important;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 12px;
}

body.dark-theme .dropdown-menu a,
body.dark-theme .dropdown-item,
body.dark-theme .menu .sub-menu li a {
  color: var(--dt-text-body) !important;
}

body.dark-theme .dropdown-menu a:hover,
body.dark-theme .dropdown-item:hover,
body.dark-theme .menu .sub-menu li a:hover {
  background: var(--dt-crimson-btn) !important;
  color: var(--dt-text-primary) !important;
}

/* ----------------------------------------------------------------
   TOGGLE BUTTON — Floating pill
   ---------------------------------------------------------------- */
#dt-toggle-btn {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 9999;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #ffffff;
  font-size: 13px;
  font-family: var(--primary-font, 'Poppins', sans-serif);
  font-weight: 500;
  padding: 10px 18px;
  border-radius: 999px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: all 0.3s ease;
  outline: none;
  line-height: 1.4;
  white-space: nowrap;
}

#dt-toggle-btn:hover {
  background: rgba(180, 0, 0, 0.25);
  border-color: rgba(180, 0, 0, 0.5);
  box-shadow: 0 4px 24px rgba(180, 0, 0, 0.3);
}

body:not(.dark-theme) #dt-toggle-btn {
  background: rgba(0, 0, 0, 0.7);
  border: 1px solid rgba(0, 0, 0, 0.3);
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}

body:not(.dark-theme) #dt-toggle-btn:hover {
  background: rgba(0, 0, 0, 0.85);
}

/* ----------------------------------------------------------------
   PAGINATION
   ---------------------------------------------------------------- */
body.dark-theme .page-link {
  background: var(--dt-glass-bg) !important;
  border-color: var(--dt-glass-border) !important;
  color: var(--dt-text-body) !important;
}

body.dark-theme .page-item.active .page-link {
  background: var(--dt-crimson-btn-hover) !important;
  border-color: var(--dt-crimson-glow) !important;
  color: var(--dt-text-primary) !important;
}

/* ----------------------------------------------------------------
   RATING / SLIDER
   ---------------------------------------------------------------- */
body.dark-theme .rating_wrap .rating_num {
  color: var(--dt-text-muted) !important;
}

body.dark-theme .noUi-target {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: transparent !important;
}

body.dark-theme .noUi-connect {
  background: var(--dt-crimson-deep) !important;
}

body.dark-theme .noUi-handle {
  background: var(--dt-crimson-mid) !important;
  border-color: var(--dt-crimson-deep) !important;
  box-shadow: 0 0 8px var(--dt-crimson-subtle) !important;
}

/* ----------------------------------------------------------------
   EMPTY / WISHLIST / COMPARE
   ---------------------------------------------------------------- */
body.dark-theme .wishlist-empty,
body.dark-theme .empty-state {
  color: var(--dt-text-body) !important;
}

/* ----------------------------------------------------------------
   prefers-reduced-motion
   ---------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  body.dark-theme::before {
    animation: none !important;
  }

  body.dark-theme .logo img {
    animation: none !important;
    filter: drop-shadow(0 0 8px rgba(200, 0, 0, 0.6));
  }

  body.dark-theme .btn--custom::after,
  body.dark-theme .product__actions li a::after {
    display: none;
  }

  body.dark-theme .product .product__wrapper:hover {
    transform: none;
  }

  body.dark-theme .product .product__wrapper:hover .product__thumbnail img {
    transform: none;
  }
}

/* ----------------------------------------------------------------
   MOBILE — Reduce blur for performance
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  body.dark-theme .header,
  body.dark-theme .header--mobile {
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }

  body.dark-theme .product .product__wrapper {
    -webkit-backdrop-filter: blur(8px) saturate(150%);
    backdrop-filter: blur(8px) saturate(150%);
    border-radius: 12px;
  }

  body.dark-theme .product__thumbnail {
    border-radius: 12px 12px 0 0;
  }

  body.dark-theme .ps-block--features {
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    border-radius: 12px;
  }

  body.dark-theme .footer {
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }

  body.dark-theme .panel--sidebar {
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }

  #dt-toggle-btn {
    bottom: 80px;
    right: 16px;
    font-size: 12px;
    padding: 8px 14px;
  }
}
