/* Dark-only overrides loaded after page-specific styles */

/* Theme toggle (must be available on pages without styles.css, e.g. promo.php/tpl) */
.menu-item--theme {
  cursor: pointer;
}
.theme-toggle-icon {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid #e5e5e5;
  position: relative;
  background: #fff;
}
.theme-toggle-icon::before {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 999px;
  background: #f33737;
  opacity: .18;
}
.theme-switch {
  margin-left: auto;
  width: 36px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid #e5e5e5;
  background: #eff0f1;
  position: relative;
}
.theme-switch__thumb {
  position: absolute;
  top: 1px;
  left: 1px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #fff;
  transition: transform 150ms ease;
}
.menu-item--theme.is-on .theme-switch__thumb {
  transform: translateX(16px);
}

html.theme-dark,
body.theme-dark {
  background: #252526;
  color: #c3c3c3;
}

body.theme-dark .site-header,
body.theme-dark .mobile-panel,
body.theme-dark .site-footer {
  background: #1f1f1f !important;
  border-color: #3C3C3C !important;
}

body.theme-dark .search,
body.theme-dark .expiring,
body.theme-dark .block10 {
  background: #252526 !important;
  border-color: #3C3C3C !important;
}

body.theme-dark .expiring__body {
  background-color: #1f1f1f !important;
}
html.theme-dark body .expiring__body {
  background-color: #1f1f1f !important;
}
body.theme-dark .expiring__head {
  border-bottom-color: #3C3C3C !important;
}

body.theme-dark .promo-expired-reco,
body.theme-dark .promo-expired-reco .hot-card {
  background: #1f1f1f !important;
  border-color: #3C3C3C !important;
}
body.theme-dark .promo-expired-reco__text {
  color: #c3c3c3 !important;
}

body.theme-dark .soft-divider {
  background-color: #3C3C3C !important;
}

body.theme-dark .lead,
body.theme-dark .shop-head__subtitle,
body.theme-dark .shop-head__title {
  color: #c3c3c3 !important;
}

body.theme-dark .hot-card,
body.theme-dark .promo-card:not(.promo-card--special),
body.theme-dark .shop-card,
body.theme-dark .latest-empty,
body.theme-dark .promo-modal__body,
body.theme-dark .promo-codegroup,
body.theme-dark .promo-codebox,
body.theme-dark .promo-copybtn,
body.theme-dark .faq-item,
body.theme-dark .faq-accordion .faq-item {
  background: #1f1f1f !important;
  border-color: #3C3C3C !important;
}

body.theme-dark .menu-text,
body.theme-dark .hot-title,
body.theme-dark .section-title,
body.theme-dark .hot-card__title,
body.theme-dark .hot-card__text,
body.theme-dark .promo-card__shop,
body.theme-dark .promo-card__headline,
body.theme-dark .promo-card__subtitle,
body.theme-dark .shop-card__title,
body.theme-dark .shop-card__text,
body.theme-dark .copyright,
body.theme-dark .promo-modal__subtitle,
body.theme-dark .promo-modal__text,
body.theme-dark .promo-modal__shopname,
body.theme-dark .promo-modal__category,
body.theme-dark .faq-item,
body.theme-dark .faq-item summary,
body.theme-dark .faq-item p,
body.theme-dark .faq-accordion .faq-answer__text {
  color: #c3c3c3 !important;
}

/* Expired promo cards must stay visually dimmer than active ones */
body.theme-dark .promo-card.is-expired .promo-card__shop,
body.theme-dark .promo-card.is-expired .promo-card__headline,
body.theme-dark .promo-card.is-expired .promo-card__subtitle,
body.theme-dark .promo-card.is-expired .btn-pill,
body.theme-dark .promo-card.is-expired .promo-codebox {
  color: #5F6061 !important;
}
body.theme-dark .promo-card.is-expired .promo-copybtn::before,
body.theme-dark .promo-card.is-expired .promo-copybtn.is-copied::before {
  background: #5F6061 !important;
}

body.theme-dark .promo-codebox,
body.theme-dark .promo-codebox--modal .promo-codebox__label,
body.theme-dark .promo-codebox--modal .promo-codebox__value {
  color: #c3c3c3 !important;
}

body.theme-dark .promo-codebox.is-truncated::before {
  background: linear-gradient(90deg, rgba(31,31,31,0), #1f1f1f 95%) !important;
}

/* Expired status chip on promo.php */
body.theme-dark .chip--grey {
  background: #3C3C3C !important;
  color: #a6a6a6 !important;
}

/* SVG icons as <img>: best-effort recolor without replacing source files */
body.theme-dark .search-icon,
body.theme-dark .menu-icon:not([src*="_active.svg"]) {
  filter: brightness(0) saturate(100%) invert(81%) sepia(0%) saturate(0%) hue-rotate(180deg) brightness(92%) contrast(88%);
}
body.theme-dark .menu-item.is-active .menu-icon {
  filter: brightness(0) saturate(100%) invert(81%) sepia(0%) saturate(0%) hue-rotate(180deg) brightness(92%) contrast(88%) !important;
}

body.theme-dark .menu-item.is-active,
body.theme-dark .menu-item:is(:hover, :focus-visible),
body.theme-dark .btn-pill,
body.theme-dark .section-link,
body.theme-dark .theme-switch {
  background: #3C3C3C !important;
  border-color: #3C3C3C !important;
}
body.theme-dark .section-link {
  color: #c3c3c3 !important;
}
body.theme-dark .search-input,
body.theme-dark .search-input::placeholder {
  color: #c3c3c3 !important;
}
body.theme-dark .btn-pill,
body.theme-dark .btn-pill--bold,
body.theme-dark .btn-pill--special,
body.theme-dark .promo-modal__partnerbtn {
  color: #c3c3c3 !important;
}
body.theme-dark .btn-pill--special {
  background: #3C3C3C !important;
  border-color: #3C3C3C !important;
}

body.theme-dark .promo-copybtn::before,
body.theme-dark .promo-copybtn.is-copied::before,
body.theme-dark .promo-copybtn--modal::before,
body.theme-dark .promo-copybtn--modal.is-copied::before {
  background: #c3c3c3 !important;
  filter: none !important;
}

body.theme-dark .burger-lines,
body.theme-dark .burger-lines::before,
body.theme-dark .burger-lines::after {
  background: #c3c3c3 !important;
}
body.theme-dark .burger-btn {
  background: #252526 !important;
  border-color: #3C3C3C !important;
}
body.theme-dark .site-header.is-open .burger-lines {
  background: transparent !important;
}

/* Keep original special-offer gradient background, only darken it */
body.theme-dark .promo-card--special {
  border-color: #3C3C3C !important;
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.66) !important;
}

/* Applied by theme.js for inline style="color:#d2d2d2" on data-nosnippet spans */
body.theme-dark .theme-dim-nosnippet {
  opacity: 0.2 !important;
}

body.theme-dark .tg-notification {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.66) !important;
}

body.theme-dark .expiring__head,
body.theme-dark .promo-expiring__head {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.66) !important;
}

/* Blog quote colors: dark mode only */
body.theme-dark .promo-modal__inner blockquote {
  background: #3C3C3C !important;
  color: #c3c3c3 !important;
}
body.theme-dark .promo-modal__inner blockquote strong {
  color: #c3c3c3 !important;
}

/* Search page empty state: keep it plain (no card background/border) */
body.theme-dark .content > .latest-empty {
  color: #c3c3c3 !important;
  text-align: start !important;
  align-items: start !important;
  background: none !important;
  border-color: transparent !important;
}

