/* ============================================================
   DARK MODE v2.0 — Complete Coverage
   All pages: Header, Home, Single, Archive, Categories,
   About, Privacy, Contact, Footer, 404
   ============================================================ */

/* ═══════════════════════════════════════════════
   0. DESIGN TOKENS (Global)
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] {
  --bg-light: #151311 !important;
  --neutral-dark: #f5ebe6 !important;
  --neutral-warm: #a6988f !important;
  --text-muted: #968c85 !important;
  --white: #231e1a !important;
  --border: #38302a !important;
  --primary: #f0893e !important;
  --primary-light: rgba(240, 137, 62, 0.15) !important;
  --primary-dark: #d96a18 !important;
  --primary-shadow: rgba(240, 137, 62, 0.3) !important;

  /* Header Overrides */
  --header-bg: rgba(35, 30, 26, 0.92) !important;
  --header-border: rgba(255, 255, 255, 0.08) !important;

  /* Header element colors */
  --ink: #f5ebe6 !important;
  --ink-2: #a6988f !important;
  --muted: #968c85 !important;
  --primary-lt: rgba(240, 137, 62, 0.15) !important;
  --primary-dk: #d96a18 !important;

  /* Single recipe page tokens */
  --font-main: 'Work Sans', system-ui, sans-serif;
  --radius-sm: 0.375rem;
  --radius: 0.625rem;
  --radius-lg: 1rem;
  --radius-xl: 1.25rem;
  --radius-full: 9999px;
}

/* Homepage Design Tokens */
html[data-theme="dark"] .fp-main {
  --fp-primary: #f0893e !important;
  --fp-primary-dk: #d96a18 !important;
  --fp-primary-lt: rgba(240, 137, 62, 0.1) !important;
  --fp-primary-sh: rgba(240, 137, 62, 0.25) !important;
  --fp-ink: #f5ebe6 !important;
  --fp-ink-2: #a6988f !important;
  --fp-muted: #968c85 !important;
  --fp-border: #38302a !important;
  --fp-bg: #151311 !important;
  --fp-white: #231e1a !important;
}

/* Archive Page Tokens */
html[data-theme="dark"] .rb-page {
  --primary: #f0893e !important;
  --primary-dk: #d96a18 !important;
  --primary-lt: rgba(240, 137, 62, 0.1) !important;
  --primary-sh: rgba(240, 137, 62, 0.25) !important;
  --ink: #f5ebe6 !important;
  --ink-2: #a6988f !important;
  --muted: #968c85 !important;
  --border: #38302a !important;
  --bg: #151311 !important;
  --white: #231e1a !important;
}

/* ═══════════════════════════════════════════════
   1. BODY & GLOBAL
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] body {
  background-color: #151311 !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] img {
  filter: brightness(.85) contrast(1.05);
}

/* Global typography headings */
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] p,
html[data-theme="dark"] li {
  color: #a6988f !important;
}

html[data-theme="dark"] a {
  color: #f0893e;
}

/* ═══════════════════════════════════════════════
   2. HEADER
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .site-header {
  background: rgba(35, 30, 26, 0.92) !important;
  backdrop-filter: blur(16px) !important;
  border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

html[data-theme="dark"] .site-header.scrolled {
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3) !important;
}

/* Logo */
html[data-theme="dark"] .header-logo {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .header-logo__name {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .header-logo__tagline {
  color: #968c85 !important;
}

/* Navigation links */
html[data-theme="dark"] .header-menu li a {
  color: #a6988f !important;
}

html[data-theme="dark"] .header-menu li a:hover {
  color: #f0893e !important;
  background: rgba(240, 137, 62, 0.15) !important;
}

html[data-theme="dark"] .header-menu li.current-menu-item > a,
html[data-theme="dark"] .header-menu li.current_page_item > a,
html[data-theme="dark"] .header-menu li.current-menu-ancestor > a {
  color: #f0893e !important;
  background: rgba(240, 137, 62, 0.15) !important;
}

/* Hamburger bars */
html[data-theme="dark"] .header-hamburger__bar {
  background: #f5ebe6 !important;
}

/* Search toggle */
html[data-theme="dark"] .header-search-toggle {
  color: #a6988f !important;
}

html[data-theme="dark"] .header-search-toggle:hover {
  color: #f0893e !important;
  background: rgba(240, 137, 62, 0.15) !important;
}

/* Search bar */
html[data-theme="dark"] .header-search {
  background: #231e1a !important;
  border-top-color: #38302a !important;
}

html[data-theme="dark"] .header-search__input {
  background: #151311 !important;
  color: #f5ebe6 !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .header-search__input::placeholder {
  color: #968c85 !important;
}

/* Mobile nav panel */
@media (max-width: 960px) {
  html[data-theme="dark"] .header-nav {
    background: rgba(35, 30, 26, 0.98) !important;
    border-bottom-color: #38302a !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3) !important;
  }
}

/* ═══════════════════════════════════════════════
   3. HOMEPAGE (.fp-main)
   ═══════════════════════════════════════════════ */

/* Hero */
html[data-theme="dark"] .fp-hero {
  background: #1a1209 !important;
}

html[data-theme="dark"] .fp-hero__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-hero__sub {
  color: rgba(245, 235, 230, 0.6) !important;
}

html[data-theme="dark"] .fp-hero__search input {
  background: rgba(255,255,255,0.1) !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-hero__search input::placeholder {
  color: rgba(245, 235, 230, 0.45) !important;
}

/* Spotlight */
html[data-theme="dark"] .fp-spotlight {
  background-color: #1a1209 !important;
}

html[data-theme="dark"] .fp-spotlight__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-spotlight__desc {
  color: rgba(245, 235, 230, 0.65) !important;
}

html[data-theme="dark"] .fp-spotlight__eyebrow {
  background: rgba(240, 137, 62, 0.12) !important;
  border-color: rgba(240, 137, 62, 0.3) !important;
}

html[data-theme="dark"] .fp-spotlight__tag {
  background: rgba(255,255,255,0.08) !important;
  border-color: rgba(255,255,255,0.15) !important;
  color: rgba(245, 235, 230, 0.85) !important;
}

/* Category Section (hardcoded #f5f2ef) */
html[data-theme="dark"] .fp-cats-section {
  background: #1a1612 !important;
}

html[data-theme="dark"] .fp-cats-hero {
  background: transparent !important;
}

html[data-theme="dark"] .fp-cats-hero__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-cats-hero__sub {
  color: #968c85 !important;
}

html[data-theme="dark"] .fp-cat-row {
  border-bottom-color: #38302a !important;
}

html[data-theme="dark"] .fp-cat-row__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-cat-row__title a {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-cat-row__title a:hover {
  color: #f0893e !important;
}

html[data-theme="dark"] .fp-circle-card__label {
  color: #a6988f !important;
}

/* Trending Section */
html[data-theme="dark"] .fp-trending-section {
  background: #151311 !important;
}

html[data-theme="dark"] .fp-section__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-recipe-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .fp-recipe-card:hover {
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.3) !important;
}

html[data-theme="dark"] .fp-recipe-card__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-recipe-card__title a {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-meta-item {
  color: #968c85 !important;
}

html[data-theme="dark"] .fp-meta-item--rating {
  color: #a6988f !important;
}

/* Latest Stories */
html[data-theme="dark"] .fp-stories-section {
  background: #231e1a !important;
}

html[data-theme="dark"] .fp-story-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .fp-story-card:hover {
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.3) !important;
}

html[data-theme="dark"] .fp-story-card__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-story-card__title a {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-story-card__date {
  color: #968c85 !important;
}

html[data-theme="dark"] .fp-story-card__excerpt {
  color: #968c85 !important;
}

html[data-theme="dark"] .fp-story-card__footer {
  border-top-color: #38302a !important;
}

/* Latest Recipes Section */
html[data-theme="dark"] .fp-latest-section {
  background: #151311 !important;
}

html[data-theme="dark"] .fp-latest-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .fp-latest-card:hover {
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.3) !important;
}

html[data-theme="dark"] .fp-latest-card__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-latest-card__title a {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-latest-card__date {
  color: #968c85 !important;
}

html[data-theme="dark"] .fp-latest-card__excerpt {
  color: #968c85 !important;
}

html[data-theme="dark"] .fp-latest-card__dot {
  color: #968c85 !important;
}

/* About Strip */
html[data-theme="dark"] .fp-about-strip {
  background: #1a1612 !important;
  border-top-color: #38302a !important;
}

html[data-theme="dark"] .fp-about-strip__site-name {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-about-strip__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-about-strip__desc {
  color: #968c85 !important;
}

html[data-theme="dark"] .fp-about-strip__btn--outline {
  color: #f5ebe6 !important;
  border-color: #38302a !important;
  background: transparent !important;
}

html[data-theme="dark"] .fp-about-strip__btn--outline:hover {
  background: #38302a !important;
  color: #f5ebe6 !important;
}

/* View All buttons */
html[data-theme="dark"] .fp-view-all {
  border-color: rgba(240, 137, 62, 0.35) !important;
}

html[data-theme="dark"] .fp-btn-outline {
  background: #231e1a !important;
  color: #f0893e !important;
  border-color: #f0893e !important;
}

html[data-theme="dark"] .fp-btn-outline:hover {
  background: #f0893e !important;
  color: #fff !important;
}

/* ═══════════════════════════════════════════════
   4. SINGLE RECIPE PAGE
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .recipe-page-wrapper {
  background-color: #151311 !important;
}

/* Breadcrumb */
html[data-theme="dark"] .recipe-breadcrumb {
  color: #968c85 !important;
}

html[data-theme="dark"] .recipe-breadcrumb a {
  color: #968c85 !important;
}

html[data-theme="dark"] .recipe-breadcrumb .bc-sep {
  color: #38302a !important;
}

html[data-theme="dark"] .recipe-breadcrumb .bc-current {
  color: #f5ebe6 !important;
}

/* Badge */
html[data-theme="dark"] .recipe-badge {
  background: rgba(240, 137, 62, 0.15) !important;
  color: #f0893e !important;
}

/* Title & description */
html[data-theme="dark"] .recipe-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .recipe-description {
  color: #a6988f !important;
}

/* Author bar */
html[data-theme="dark"] .recipe-author-bar {
  color: #a6988f !important;
}

html[data-theme="dark"] .author-name {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .review-count {
  color: #a6988f !important;
}

/* Hero image actions */
html[data-theme="dark"] .hero-action-btn {
  background: rgba(35, 30, 26, 0.95) !important;
  color: #f0893e !important;
  border: 1px solid #38302a !important;
}

/* Meta bar */
html[data-theme="dark"] .recipe-meta-bar {
  background: #231e1a !important;
  border-color: rgba(240, 137, 62, 0.15) !important;
  box-shadow: 0 1px 6px rgba(0,0,0,0.2) !important;
}

html[data-theme="dark"] .meta-label {
  color: #968c85 !important;
}

html[data-theme="dark"] .meta-value {
  color: #f5ebe6 !important;
}

@media (min-width: 768px) {
  html[data-theme="dark"] .recipe-meta-bar .meta-item + .meta-item {
    border-left-color: rgba(240, 137, 62, 0.15) !important;
  }
}

/* Section headings */
html[data-theme="dark"] .section-heading {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .section-heading-icon {
  background: rgba(240, 137, 62, 0.15) !important;
}

html[data-theme="dark"] .section-heading-plain {
  color: #f5ebe6 !important;
}

/* Ingredients */
html[data-theme="dark"] .ingredients-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .ingredient-group-title {
  border-bottom-color: rgba(240, 137, 62, 0.15) !important;
}

html[data-theme="dark"] .ingredient-item {
  border-bottom-color: #2a241e !important;
}

html[data-theme="dark"] .ingredient-text {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .ingredient-checkbox {
  border-color: #f0893e !important;
  background: transparent !important;
}

html[data-theme="dark"] .ingredient-checkbox:checked ~ .ingredient-text {
  color: #968c85 !important;
}

/* Instructions / Steps */
html[data-theme="dark"] .steps-timeline-line {
  background: #38302a !important;
}

html[data-theme="dark"] .step-number-circle {
  background: #231e1a !important;
  border-color: #f0893e !important;
  color: #f0893e !important;
}

html[data-theme="dark"] .step-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .step-description {
  color: #a6988f !important;
}

html[data-theme="dark"] .step-body,
html[data-theme="dark"] .step-body *:not(img) {
  color: #a6988f !important;
}

html[data-theme="dark"] .step-title,
html[data-theme="dark"] .step-title * {
  color: #f5ebe6 !important;
}

/* Chef Tips */
html[data-theme="dark"] .chef-tips-box {
  background: rgba(240, 137, 62, 0.05) !important;
  border-left-color: #f0893e !important;
}

html[data-theme="dark"] .chef-tips-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .chef-tips-content {
  color: #a6988f !important;
}

html[data-theme="dark"] .chef-tips-content li {
  color: #a6988f !important;
}

/* Tags */
html[data-theme="dark"] .recipe-tags-section {
  border-top-color: #38302a !important;
}

html[data-theme="dark"] .recipe-tag {
  background: #231e1a !important;
  border-color: #38302a !important;
  color: #a6988f !important;
}

html[data-theme="dark"] .recipe-tag:hover {
  background: #f0893e !important;
  color: #fff !important;
  border-color: #f0893e !important;
}

/* Reviews */
html[data-theme="dark"] .recipe-reviews-section {
  border-top-color: #38302a !important;
}

html[data-theme="dark"] .review-form-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .review-form-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .form-label {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .form-input,
html[data-theme="dark"] .form-textarea {
  background: #151311 !important;
  color: #f5ebe6 !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .form-input:focus,
html[data-theme="dark"] .form-textarea:focus {
  border-color: #f0893e !important;
  box-shadow: 0 0 0 3px rgba(240, 137, 62, 0.2) !important;
}

html[data-theme="dark"] .no-reviews-msg {
  background: #1a1612 !important;
  color: #968c85 !important;
}

html[data-theme="dark"] .tc-pending {
  background: #1a1612 !important;
  color: #968c85 !important;
}

/* Testimonial cards */
html[data-theme="dark"] .testimonial-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .testimonial-card:hover {
  box-shadow: 0 8px 28px rgba(0,0,0,0.3) !important;
}

html[data-theme="dark"] .tc-text {
  color: #a6988f !important;
}

html[data-theme="dark"] .tc-author-row {
  border-top-color: #38302a !important;
}

html[data-theme="dark"] .tc-author-name {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .tc-author-date {
  color: #968c85 !important;
}

html[data-theme="dark"] .tc-dots .tc-dot {
  background: #38302a !important;
}

html[data-theme="dark"] .tc-dots .tc-dot--active {
  background: #f0893e !important;
}

html[data-theme="dark"] .tc-arrow {
  background: #231e1a !important;
  border-color: #38302a !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .tc-arrow:hover {
  background: #f0893e !important;
  border-color: #f0893e !important;
  color: #fff !important;
}

/* Star rating */
html[data-theme="dark"] .star-picker label {
  color: #38302a !important;
}

/* Sidebar */
html[data-theme="dark"] .newsletter-card {
  background: #1a1612 !important;
}

html[data-theme="dark"] .newsletter-desc {
  color: #968c85 !important;
}

html[data-theme="dark"] .newsletter-input {
  background: rgba(255,255,255,0.08) !important;
  border-color: rgba(255,255,255,0.15) !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .newsletter-input::placeholder {
  color: #968c85 !important;
}

html[data-theme="dark"] .sidebar-widget-title {
  color: #f5ebe6 !important;
  border-bottom-color: rgba(240, 137, 62, 0.15) !important;
}

html[data-theme="dark"] .recent-post-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .recent-post-date {
  color: #968c85 !important;
}

html[data-theme="dark"] .related-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .related-post-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .related-post-time {
  color: #968c85 !important;
}

html[data-theme="dark"] .tag-cloud-item {
  background: #231e1a !important;
  border-color: #38302a !important;
  color: #a6988f !important;
}

html[data-theme="dark"] .tag-cloud-item:hover {
  background: #f0893e !important;
  color: #fff !important;
  border-color: #f0893e !important;
}

html[data-theme="dark"] .sidebar-cat-pill {
  background: #1a1612 !important;
  border-color: #38302a !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .sidebar-cat-pill:hover {
  background: rgba(240, 137, 62, 0.15) !important;
  border-color: rgba(240, 137, 62, 0.3) !important;
  color: #f0893e !important;
}

html[data-theme="dark"] .sidebar-cat-pill--parent {
  color: #968c85 !important;
  background: transparent !important;
  border-color: transparent !important;
}

/* ═══════════════════════════════════════════════
   5. ARCHIVE / ALL RECIPES PAGE (.rb-page)
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .rb-page {
  background: #151311 !important;
}

html[data-theme="dark"] .rb-hero {
  background: #1a1209 !important;
}

html[data-theme="dark"] .rb-breadcrumb {
  color: #968c85 !important;
}

/* Controls bar */
html[data-theme="dark"] .rb-controls {
  background: #231e1a !important;
  border-color: #38302a !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2) !important;
}

html[data-theme="dark"] .rb-search-input {
  background: #151311 !important;
  border-color: #38302a !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .rb-search-input::placeholder {
  color: #968c85 !important;
}

html[data-theme="dark"] .rb-search-input:focus {
  border-color: #f0893e !important;
  box-shadow: 0 0 0 3px rgba(240, 137, 62, 0.12) !important;
}

html[data-theme="dark"] .rb-sort-label {
  color: #968c85 !important;
}

html[data-theme="dark"] .rb-sort-select {
  background: #151311 !important;
  border-color: #38302a !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .rb-results-count {
  color: #968c85 !important;
}

html[data-theme="dark"] .rb-results-count span {
  color: #f5ebe6 !important;
}

/* Cards */
html[data-theme="dark"] .rb-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .rb-card:hover {
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.3) !important;
}

html[data-theme="dark"] .rb-card__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .rb-card__desc {
  color: #968c85 !important;
}

html[data-theme="dark"] .rb-meta-item {
  color: #968c85 !important;
}

html[data-theme="dark"] .rb-card__save {
  background: rgba(35, 30, 26, 0.92) !important;
  color: #968c85 !important;
}

/* Skeletons */
html[data-theme="dark"] .rb-skeleton {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .rb-skeleton__img,
html[data-theme="dark"] .rb-skeleton__line {
  background: linear-gradient(90deg, #231e1a 25%, #38302a 50%, #231e1a 75%) !important;
}

/* Load more */
html[data-theme="dark"] .rb-load-more {
  background: #231e1a !important;
  color: #f0893e !important;
  border-color: #f0893e !important;
}

html[data-theme="dark"] .rb-load-more:hover:not(:disabled) {
  background: #f0893e !important;
  color: #fff !important;
}

/* No results */
html[data-theme="dark"] .rb-no-results {
  color: #968c85 !important;
}

html[data-theme="dark"] .rb-no-results h3 {
  color: #f5ebe6 !important;
}

/* ═══════════════════════════════════════════════
   6. CATEGORIES PAGE (.bc-page)
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .bc-page {
  background: #151311 !important;
}

html[data-theme="dark"] .bc-hero {
  background: transparent !important;
}

html[data-theme="dark"] .bc-hero__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .bc-hero__sub {
  color: #968c85 !important;
}

html[data-theme="dark"] .bc-cat-section {
  border-bottom-color: #38302a !important;
}

html[data-theme="dark"] .bc-cat-title,
html[data-theme="dark"] .bc-cat-title a {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .bc-cat-title a:hover {
  color: #f0893e !important;
}

html[data-theme="dark"] .bc-circle-label {
  color: #a6988f !important;
}

html[data-theme="dark"] .bc-newsletter {
  background: #1a1612 !important;
  border-top-color: #38302a !important;
}

html[data-theme="dark"] .bc-newsletter__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .bc-newsletter__sub {
  color: #968c85 !important;
}

html[data-theme="dark"] .bc-newsletter__input {
  background: #231e1a !important;
  border-color: #38302a !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .bc-newsletter__input::placeholder {
  color: #968c85 !important;
}

html[data-theme="dark"] .bc-newsletter__input:focus {
  border-color: #f0893e !important;
}

/* Category single banner */
html[data-theme="dark"] .cat-banner__breadcrumb a {
  color: rgba(245, 235, 230, 0.7) !important;
}

/* ═══════════════════════════════════════════════
   7. GLOBAL COMPONENTS
   ═══════════════════════════════════════════════ */

/* Cards and containers */
html[data-theme="dark"] .home-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .home-card__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .home-card__excerpt {
  color: #a6988f !important;
}

html[data-theme="dark"] .home-cat-pill {
  background: #231e1a !important;
  border-color: #38302a !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .home-cat-pill:hover {
  background: rgba(240, 137, 62, 0.15) !important;
  color: #f0893e !important;
  border-color: #f0893e !important;
}

html[data-theme="dark"] .home-hero {
  background: #1a1209 !important;
}

html[data-theme="dark"] .home-section__title {
  color: #f5ebe6 !important;
}

/* Form inputs globally */
html[data-theme="dark"] input[type="text"],
html[data-theme="dark"] input[type="email"],
html[data-theme="dark"] input[type="search"],
html[data-theme="dark"] input[type="url"],
html[data-theme="dark"] input[type="password"],
html[data-theme="dark"] textarea,
html[data-theme="dark"] select {
  background-color: #151311 !important;
  color: #f5ebe6 !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color: #968c85 !important;
}

/* ═══════════════════════════════════════════════
   8. FOOTER
   ═══════════════════════════════════════════════ */
/* Footer is already dark in light mode, keep it dark */
html[data-theme="dark"] .site-footer {
  background: #1a1209 !important;
}

html[data-theme="dark"] .footer-bottom {
  border-top-color: rgba(255, 255, 255, 0.1) !important;
}

html[data-theme="dark"] .footer-newsletter__input {
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
  border: none !important;
}

/* ═══════════════════════════════════════════════
   9. ABOUT PAGE
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .about-page {
  background: #151311 !important;
}

html[data-theme="dark"] .about-page-hero {
  background: #1a1209 !important;
}

html[data-theme="dark"] .about-page-hero__title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .about-page-hero__sub {
  color: rgba(245, 235, 230, 0.85) !important;
}

html[data-theme="dark"] .about-entry-content {
  color: #a6988f !important;
}

html[data-theme="dark"] .about-section-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .about-value-card {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .about-value-card:hover {
  box-shadow: 0 10px 28px rgba(0,0,0,0.3) !important;
}

html[data-theme="dark"] .about-value-card h3 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .about-value-card p {
  color: #a6988f !important;
}

html[data-theme="dark"] .about-newsletter {
  background: #1a1209 !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .about-newsletter h2 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .about-newsletter p {
  color: rgba(245, 235, 230, 0.8) !important;
}

/* ═══════════════════════════════════════════════
   10. LEGAL PAGES (Privacy, Terms, etc.)
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .legal-content {
  color: #a6988f !important;
}

html[data-theme="dark"] .legal-content h2 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .legal-content h3 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .legal-content a {
  color: #f0893e !important;
}

html[data-theme="dark"] .priv-wrapper {
  background: transparent !important;
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .priv-hero {
  background: linear-gradient(135deg, #231e1a 0%, #151311 100%) !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .priv-intro {
  background: #231e1a !important;
  color: #a6988f !important;
  border-left-color: #f0893e !important;
}

html[data-theme="dark"] .priv-content section {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .priv-content h2 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .priv-content p {
  color: #a6988f !important;
}

html[data-theme="dark"] .priv-content a {
  color: #f0893e !important;
}

/* Disclaimer/Terms pages */
html[data-theme="dark"] .page-header {
  border-bottom-color: #38302a !important;
}

html[data-theme="dark"] .page-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .last-updated {
  color: #968c85 !important;
}

html[data-theme="dark"] .page-body {
  color: #a6988f !important;
}

html[data-theme="dark"] .page-body h2 {
  color: #f5ebe6 !important;
  border-bottom-color: #38302a !important;
}

html[data-theme="dark"] .page-body strong {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .page-body a {
  color: #f0893e !important;
}

/* Page content (generic WP pages) */
html[data-theme="dark"] .page-content {
  background: #151311 !important;
}

html[data-theme="dark"] .page-content .entry-title {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .page-content .entry-content {
  color: #a6988f !important;
}

html[data-theme="dark"] .page-content .entry-content h2,
html[data-theme="dark"] .page-content .entry-content h3 {
  color: #f5ebe6 !important;
}

/* ═══════════════════════════════════════════════
   11. CONTACT PAGE
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .contact-form {
  background: #231e1a !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .contact-form label {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .contact-form input,
html[data-theme="dark"] .contact-form textarea {
  background-color: #151311 !important;
  color: #f5ebe6 !important;
  border-color: #38302a !important;
}

html[data-theme="dark"] .btn-submit {
  background: #f0893e !important;
  color: #fff !important;
}

html[data-theme="dark"] .btn-submit:hover {
  background: #d96a18 !important;
}

html[data-theme="dark"] .contact-info {
  background: rgba(240, 137, 62, 0.08) !important;
  border-left-color: #f0893e !important;
  color: #a6988f !important;
}

html[data-theme="dark"] .contact-info h2 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .contact-info strong {
  color: #f5ebe6 !important;
}

/* ═══════════════════════════════════════════════
   12. 404 PAGE
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .page-404 {
  background: #151311 !important;
}

html[data-theme="dark"] .error-404__sub {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .error-404__text {
  color: #a6988f !important;
}

html[data-theme="dark"] .error-404__search input {
  background: #231e1a !important;
  border-color: #38302a !important;
  color: #f5ebe6 !important;
}

/* ═══════════════════════════════════════════════
   13. BLOG SINGLE POST
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .blog-post-wrapper,
html[data-theme="dark"] .single-blog-wrapper {
  background: #151311 !important;
}

html[data-theme="dark"] .blog-post-content,
html[data-theme="dark"] .single-blog-content {
  color: #a6988f !important;
}

html[data-theme="dark"] .blog-post-title,
html[data-theme="dark"] .single-blog-title {
  color: #f5ebe6 !important;
}

/* ═══════════════════════════════════════════════
   14. THEME SWITCHER (Floating Button)
   ═══════════════════════════════════════════════ */
.theme-switcher-container {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 99999;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.theme-switcher-inner {
  display: flex;
  position: relative;
  gap: 4px;
  padding: 4px;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 9999px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
  transition: all 0.3s ease;
}

html[data-theme="dark"] .theme-switcher-inner {
  background: rgba(35, 30, 26, 0.85);
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.theme-btn {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: none;
  background: none;
  color: #8b7e74;
  border-radius: 50%;
  cursor: pointer;
  transition: color 0.3s ease;
}

.theme-btn:hover {
  color: #4a3b32;
}

html[data-theme="dark"] .theme-btn {
  color: #a6988f;
}

html[data-theme="dark"] .theme-btn:hover {
  color: #f5ebe6;
}

.theme-btn.active {
  color: #ee7c2b !important;
}

html[data-theme="dark"] .theme-btn.active {
  color: #f0893e !important;
}

.theme-slider {
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: 1;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

html[data-theme="dark"] .theme-slider {
  background: rgba(255, 255, 255, 0.08);
  box-shadow: none;
}

/* ═══════════════════════════════════════════════
   15. WORDPRESS ADMIN BAR
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] #wpadminbar {
  /* Don't change admin bar colors */
}

/* ═══════════════════════════════════════════════
   16. CATCH-ALL OVERRIDES
   These ensure no white backgrounds leak through
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .wp-block-group,
html[data-theme="dark"] .wp-block-column,
html[data-theme="dark"] .wp-block-cover {
  background: transparent !important;
}

html[data-theme="dark"] .wp-block-group__inner-container,
html[data-theme="dark"] .entry-content {
  color: #a6988f !important;
}

html[data-theme="dark"] .entry-content h1,
html[data-theme="dark"] .entry-content h2,
html[data-theme="dark"] .entry-content h3,
html[data-theme="dark"] .entry-content h4 {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .entry-content a {
  color: #f0893e !important;
}

/* Scrollbar */
html[data-theme="dark"] ::-webkit-scrollbar {
  width: 10px;
}

html[data-theme="dark"] ::-webkit-scrollbar-track {
  background: #151311;
}

html[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background: #38302a;
  border-radius: 5px;
}

html[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background: #4a3b32;
}

/* ============================================================
   v2.1 TARGETED FIXES
   - Badge text colors (white on dark/colored backgrounds)
   - Browse All Recipes / Categories buttons
   - Hero primary button
   - Card overlay badges on homepage
   - Footer new structure
   - Misc small fixes
   ============================================================ */

/* ===========================================
   BADGE TEXT — Force white on all badge types
   rb-badge uses color: var(--white) which
   resolves to #231e1a in dark mode — WRONG
   =========================================== */
html[data-theme="dark"] .rb-badge,
html[data-theme="dark"] .rb-badge--cat,
html[data-theme="dark"] .rb-badge--green,
html[data-theme="dark"] .rb-badge--amber,
html[data-theme="dark"] .rb-badge--red,
html[data-theme="dark"] .rb-badge--gray {
  color: #ffffff !important;
}

/* Homepage card overlay badges — dark bg + white text */
html[data-theme="dark"] .fp-recipe-card__badge,
html[data-theme="dark"] .fp-story-card__badge,
html[data-theme="dark"] .fp-latest-card__badge {
  background: rgba(20, 14, 8, 0.82) !important;
  color: #ffffff !important;
}

/* recipe-badge on single post page */
html[data-theme="dark"] .recipe-badge {
  background: rgba(240, 137, 62, 0.15) !important;
  color: #f0893e !important;
}

/* ===========================================
   BROWSE ALL RECIPES / CATEGORIES BUTTONS
   fp-btn-outline - orange text on dark bg
   =========================================== */
html[data-theme="dark"] .fp-btn-outline,
html[data-theme="dark"] a.fp-btn-outline {
  background: transparent !important;
  color: #f0893e !important;
  border-color: #f0893e !important;
}

html[data-theme="dark"] .fp-btn-outline *,
html[data-theme="dark"] a.fp-btn-outline * {
  color: #f0893e !important;
  stroke: currentColor !important;
}

html[data-theme="dark"] .fp-btn-outline:hover,
html[data-theme="dark"] a.fp-btn-outline:hover {
  background: #f0893e !important;
  color: #ffffff !important;
}

html[data-theme="dark"] .fp-btn-outline:hover *,
html[data-theme="dark"] a.fp-btn-outline:hover * {
  color: #ffffff !important;
}

/* ===========================================
   HERO PRIMARY BUTTON
   =========================================== */
html[data-theme="dark"] .fp-hero__btn--primary {
  background: #f0893e !important;
  color: #ffffff !important;
}

html[data-theme="dark"] .fp-hero__btn--primary * {
  color: #ffffff !important;
}

html[data-theme="dark"] .fp-hero__btn--primary:hover {
  background: #d96a18 !important;
}

/* Hero search wrap - dark glass effect */
html[data-theme="dark"] .fp-hero__search-wrap {
  background: rgba(255,255,255,0.08) !important;
  border-color: rgba(255,255,255,0.15) !important;
}

html[data-theme="dark"] .fp-hero__search-wrap:focus-within {
  border-color: #f0893e !important;
}

html[data-theme="dark"] .fp-hero__search input {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-hero__search input::placeholder {
  color: rgba(245, 235, 230, 0.45) !important;
}

/* ===========================================
   VIEW ALL / fp-view-all BUTTON
   =========================================== */
html[data-theme="dark"] .fp-view-all {
  color: #f0893e !important;
  border-color: rgba(240, 137, 62, 0.4) !important;
}

html[data-theme="dark"] .fp-view-all:hover {
  background: #f0893e !important;
  color: #ffffff !important;
}

/* ===========================================
   STORY CARD ADDITIONAL FIXES
   =========================================== */
html[data-theme="dark"] .fp-story-card__cat {
  color: #f0893e !important;
}

html[data-theme="dark"] .fp-story-card__meta-top {
  border-color: #38302a !important;
}

/* ===========================================
   CIRCLE CARD IMAGES (no dark filter needed)
   =========================================== */
html[data-theme="dark"] .fp-circle-card__img img,
html[data-theme="dark"] .bc-circle-img img {
  filter: brightness(.85) contrast(1.05);
}

/* ===========================================
   RB-CONTROLS (sort select — arrow icon)
   =========================================== */
html[data-theme="dark"] .rb-sort-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23968c85' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 0.65rem center !important;
}

/* ===========================================
   FOOTER — New footer structure variables
   =========================================== */
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] footer {
  background: #0f0a05 !important;
  color: rgba(255,255,255,0.7) !important;
}

/* ===========================================
   BREADCRUMB — Archive page
   =========================================== */
html[data-theme="dark"] .rb-breadcrumb {
  color: #968c85 !important;
}

html[data-theme="dark"] .rb-breadcrumb a {
  color: #f0893e !important;
}

/* ===========================================
   SEARCH ICON COLOR IN HEADER
   =========================================== */
html[data-theme="dark"] .header-search-toggle svg,
html[data-theme="dark"] .rb-search-icon {
  color: #968c85 !important;
}

/* ===========================================
   META ITEMS ON CARDS
   =========================================== */
html[data-theme="dark"] .fp-meta-item svg,
html[data-theme="dark"] .rb-meta-item svg {
  color: #f0893e !important;
}

html[data-theme="dark"] .fp-meta-item,
html[data-theme="dark"] .rb-meta-item {
  color: #968c85 !important;
}

/* ===========================================
   STORY CARD CTA LINK
   =========================================== */
html[data-theme="dark"] .fp-story-card__cta,
html[data-theme="dark"] .fp-latest-card__cta {
  color: #f0893e !important;
  border-color: rgba(240, 137, 62, 0.3) !important;
}

html[data-theme="dark"] .fp-story-card__cta:hover,
html[data-theme="dark"] .fp-latest-card__cta:hover {
  background: #f0893e !important;
  color: #ffffff !important;
}

/* ===========================================
   SECTION EYEBROWS (small uppercase labels)
   =========================================== */
html[data-theme="dark"] .fp-section__eyebrow,
html[data-theme="dark"] .fp-cats-hero__eyebrow,
html[data-theme="dark"] .fp-about-strip__eyebrow {
  color: #f0893e !important;
}

/* ===========================================
   HOME CARD (archive-style on home)
   =========================================== */
html[data-theme="dark"] .home-card__img-wrap {
  background: rgba(240, 137, 62, 0.08) !important;
}

/* ===========================================
   SINGLE BLOG POST page fixes
   =========================================== */
html[data-theme="dark"] .blog-header,
html[data-theme="dark"] .blog-hero {
  background: #1a1209 !important;
}

html[data-theme="dark"] .blog-content,
html[data-theme="dark"] .blog-content p,
html[data-theme="dark"] .post-content p {
  color: #a6988f !important;
}

html[data-theme="dark"] .blog-content h2,
html[data-theme="dark"] .blog-content h3,
html[data-theme="dark"] .post-content h2,
html[data-theme="dark"] .post-content h3 {
  color: #f5ebe6 !important;
}

/* ===========================================
   WORDPRESS GUTENBERG BLOCKS
   =========================================== */
html[data-theme="dark"] .wp-block-paragraph {
  color: #a6988f !important;
}

html[data-theme="dark"] .wp-block-heading {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .wp-block-image figcaption {
  color: #968c85 !important;
}

/* ===========================================
   SELECTION HIGHLIGHT
   =========================================== */
html[data-theme="dark"] ::selection {
  background: rgba(240, 137, 62, 0.3);
  color: #f5ebe6;
}

/* ============================================================
   v2.2 TARGETED FIXES
   1. Hero search input — glass look, not solid black
   2. About strip primary btn — white text on orange bg
   ============================================================ */

/* FIX 1: Hero search input — glass/transparent dark (not solid black) */
html[data-theme="dark"] .fp-hero__search-wrap {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 999px !important;
}

html[data-theme="dark"] .fp-hero__search-wrap:focus-within {
  border-color: rgba(240, 137, 62, 0.6) !important;
  background: rgba(255, 255, 255, 0.11) !important;
}

/* Override the global input[type="search"] dark background ONLY inside hero */
html[data-theme="dark"] .fp-hero__search input[type="search"],
html[data-theme="dark"] .fp-hero__search input {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  color: #f5ebe6 !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .fp-hero__search input::placeholder {
  color: rgba(245, 235, 230, 0.45) !important;
}

html[data-theme="dark"] .fp-hero__search-wrap svg {
  color: rgba(245, 235, 230, 0.5) !important;
}

/* FIX 2: About strip PRIMARY button — white text on orange bg */
html[data-theme="dark"] .fp-about-strip__btn--primary,
html[data-theme="dark"] a.fp-about-strip__btn--primary {
  background: #f0893e !important;
  color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(240, 137, 62, 0.35) !important;
}

html[data-theme="dark"] .fp-about-strip__btn--primary *,
html[data-theme="dark"] a.fp-about-strip__btn--primary * {
  color: #ffffff !important;
}

html[data-theme="dark"] .fp-about-strip__btn--primary:hover,
html[data-theme="dark"] a.fp-about-strip__btn--primary:hover {
  background: #d96a18 !important;
  color: #ffffff !important;
}

/* FIX 2b: About strip OUTLINE button — ensure visible in dark */
html[data-theme="dark"] .fp-about-strip__btn--outline,
html[data-theme="dark"] a.fp-about-strip__btn--outline {
  background: transparent !important;
  color: #f5ebe6 !important;
  border-color: #5a4a3e !important;
}

html[data-theme="dark"] .fp-about-strip__btn--outline *,
html[data-theme="dark"] a.fp-about-strip__btn--outline * {
  color: #f5ebe6 !important;
}

html[data-theme="dark"] .fp-about-strip__btn--outline:hover,
html[data-theme="dark"] a.fp-about-strip__btn--outline:hover {
  background: #f5ebe6 !important;
  color: #1a1209 !important;
  border-color: #f5ebe6 !important;
}

/* FIX 3: ALL primary/filled orange buttons — always white text */
html[data-theme="dark"] .fp-hero__btn--primary,
html[data-theme="dark"] a.fp-hero__btn--primary,
html[data-theme="dark"] .fp-spotlight__btn,
html[data-theme="dark"] a.fp-spotlight__btn,
html[data-theme="dark"] .about-newsletter__btn,
html[data-theme="dark"] a.about-newsletter__btn,
html[data-theme="dark"] .rb-load-more {
  color: #ffffff !important;
}

html[data-theme="dark"] .fp-hero__btn--primary *,
html[data-theme="dark"] .fp-spotlight__btn *,
html[data-theme="dark"] .about-newsletter__btn * {
  color: #ffffff !important;
}
