/**
 * theme-dark.css — Skin ESCURO global do site (default).
 *
 * Todas as regras escopadas em html[data-theme="dark"], então:
 *   - Vencem por especificidade sobre as regras claras base.
 *   - Só valem quando o site está em modo escuro (toggle 🌙/☀️ no header).
 * Trocar para light = data-theme="light" no <html> (botão do header).
 *
 * @package 55acompanhantes
 * @since   6.6.0
 */

/* ═══════════════════════════════════════════════
   PALETA DARK  (rosa-sangue #E11D48)
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] {
  --d-bg:        #0f0f16;   /* fundo base (quase preto) */
  --d-bg-alt:    #15151f;   /* seção alternada */
  --d-card:      #1c1c28;   /* cards */
  --d-card-2:    #23232f;   /* cards elevados / hover */
  --d-border:    rgba(255,255,255,.08);
  --d-border-2:  rgba(255,255,255,.14);
  --d-text:      #f2f2f5;   /* texto principal */
  --d-text-2:    #a7a7b3;   /* texto secundário */
  --d-text-3:    #71717f;   /* texto terciário */
  --d-red:       #fb2c5a;   /* rosa-sangue + aceso pro escuro */
  --d-red-soft:  #26121c;   /* fundo/badge vermelho suave */
  color-scheme: dark;
}

/* ═══════════════════════════════════════════════
   BASE GLOBAL — garante fundo escuro em toda página
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] body {
  background: var(--d-bg);
  color: var(--d-text);
}
html[data-theme="dark"] ::selection { background: rgba(251,44,90,.35); color: #fff; }

/* ═══════════════════════════════════════════════
   HEADER (global)
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .fm-hdr {
  background: #14141d;
  border-bottom: 1px solid var(--d-border);
}
html[data-theme="dark"] .fm-hdr__logo,
html[data-theme="dark"] .fm-hdr__logo-text { color: #fff; }
html[data-theme="dark"] .fm-hdr__logo-text b { color: var(--d-red); }
html[data-theme="dark"] .fm-hdr__link { color: #c7c7d2 !important; }
html[data-theme="dark"] .fm-hdr__link:hover { color: var(--d-red) !important; background: rgba(251,44,90,.12); }
html[data-theme="dark"] .fm-hdr__link--cta { color: var(--d-red) !important; }
html[data-theme="dark"] .fm-hdr__icon,
html[data-theme="dark"] .fm-hdr__hamburger {
  background: #1c1c28; border-color: var(--d-border); color: #b9b9c5;
}
html[data-theme="dark"] .fm-hdr__icon:hover,
html[data-theme="dark"] .fm-hdr__hamburger:hover { color: var(--d-red); border-color: var(--d-red); }
html[data-theme="dark"] .fm-hdr__username { color: #e7e7ee; }
html[data-theme="dark"] .fm-hdr__avatar { border-color: var(--d-border-2); }
html[data-theme="dark"] .fm-hdr--compact { box-shadow: 0 2px 12px rgba(0,0,0,.5); }
/* botão de tema em destaque suave */
html[data-theme="dark"] .fm-hdr__theme { color: var(--d-red); }

/* Mobile menu */
html[data-theme="dark"] .fm-hdr__mobile-menu { background: #14141d; border-top: 1px solid var(--d-border); }
html[data-theme="dark"] .fm-hdr__mobile-menu a { color: #d7d7de !important; }
html[data-theme="dark"] .fm-hdr__mobile-menu a:hover { background: rgba(255,255,255,.05); }
html[data-theme="dark"] .fm-hdr__mobile-menu a i { color: #8a8a96; }
html[data-theme="dark"] .fm-hdr__mobile-user { border-bottom: 1px solid var(--d-border); }
html[data-theme="dark"] .fm-hdr__mobile-user strong { color: #fff; }

/* Nav categorias */
html[data-theme="dark"] .fm-catnav { background: #14141d; border-bottom: 1px solid var(--d-border); }
html[data-theme="dark"] .fm-catnav__tab { color: #d7d7de; }
html[data-theme="dark"] .fm-catnav__tab:hover,
html[data-theme="dark"] .fm-catnav__tab.is-active { color: #fff; }

/* Coins badge (mantém o dourado, escurece o fundo) */
html[data-theme="dark"] .fm-hdr__coins { background: #2a2410; border-color: #6b5a1a; }

/* Footer global (.fm-ft) */
html[data-theme="dark"] .fm-ft { background: #0b0b11; color: #8a8a96; }
html[data-theme="dark"] .fm-ft__logo { color: #fff; }
html[data-theme="dark"] .fm-ft__logo b { color: var(--d-red); }
html[data-theme="dark"] .fm-ft__links a { color: #8a8a96 !important; }
html[data-theme="dark"] .fm-ft__links a:hover { color: #fff !important; }
html[data-theme="dark"] .fm-ft__copy { color: #5c5c68; }

/* Alerta de segurança (fica com o vermelho-sangue — só reforça sombra) */
html[data-theme="dark"] .fm-alert { box-shadow: 0 2px 12px rgba(251,44,90,.2); }

/* ═══════════════════════════════════════════════
   HOME — HERO
   ═══════════════════════════════════════════════ */
html[data-theme="dark"] .fmx-hero { background: var(--d-bg); }
html[data-theme="dark"] .fmx-hero__title { color: #fff; }
html[data-theme="dark"] .fmx-hero__desc { color: var(--d-text-2); }
html[data-theme="dark"] .fmx-hero__statline { color: var(--d-text-3); border-top-color: var(--d-border); }
html[data-theme="dark"] .fmx-btn--outline {
  background: #1c1c28; color: #f2f2f5 !important; border-color: var(--d-border-2);
}
html[data-theme="dark"] .fmx-btn--outline:hover { border-color: var(--d-red); color: var(--d-red) !important; }
html[data-theme="dark"] .fmx-hero__ph { background: var(--d-red-soft); color: var(--d-red); }

/* HOME — BUSCA */
html[data-theme="dark"] .fmx-search {
  background: var(--d-bg);
  border-top: none;
  border-bottom: none;
}
html[data-theme="dark"] .fmx-search__title { color: #fff; }
html[data-theme="dark"] .fmx-search__title em { color: var(--d-red); }
html[data-theme="dark"] .fmx-search__sub { color: var(--d-text-2); }
html[data-theme="dark"] .fmx-search__or { color: var(--d-text-3); }
html[data-theme="dark"] .fmx-geo {
  background: var(--d-card); border: 1px solid var(--d-border);
  box-shadow: 0 8px 28px rgba(0,0,0,.4);
}
html[data-theme="dark"] .fmx-geo:hover { box-shadow: 0 12px 36px rgba(0,0,0,.5); }
html[data-theme="dark"] .fmx-geo__city { color: #fff; }
html[data-theme="dark"] .fmx-geo__sub { color: var(--d-text-3); }
html[data-theme="dark"] .fmx-pill { background: rgba(255,255,255,.06); border-color: var(--d-border-2); color: #e7e7ee !important; }
html[data-theme="dark"] .fmx-pill:hover { background: var(--d-red); color: #fff !important; border-color: var(--d-red); }

/* HOME — ANUNCIAR */
html[data-theme="dark"] .fmx-anunciar { background: var(--d-bg); }
html[data-theme="dark"] .fmx-anunciar__card {
  background: var(--d-card); border: 1px solid var(--d-border);
  box-shadow: 0 16px 48px rgba(0,0,0,.4);
}
html[data-theme="dark"] .fmx-anunciar__title { color: #fff; }
html[data-theme="dark"] .fmx-anunciar__title em { color: var(--d-red); }
html[data-theme="dark"] .fmx-anunciar__sub,
html[data-theme="dark"] .fmx-anunciar__cta-text { color: var(--d-text-2); }
html[data-theme="dark"] .fmx-anunciar__cta-text strong { color: #fff; }
html[data-theme="dark"] .fmx-step__icon { background: var(--d-red-soft); border-color: rgba(251,44,90,.3); color: var(--d-red); }
html[data-theme="dark"] .fmx-step h3 { color: #fff; }
html[data-theme="dark"] .fmx-step h3 em { color: var(--d-red); }
html[data-theme="dark"] .fmx-step p { color: var(--d-text-2); }

/* HOME — PILLARS */
html[data-theme="dark"] .fmx-pillars { background: var(--d-bg-alt); }
html[data-theme="dark"] .fmx-pillars__title { color: #fff; }
html[data-theme="dark"] .fmx-pillars__title em { color: var(--d-red); }
html[data-theme="dark"] .fmx-pillar h4 { color: #fff; }
html[data-theme="dark"] .fmx-pillar p { color: var(--d-text-2); }
html[data-theme="dark"] .fmx-pillars__ph { background: var(--d-red-soft); color: var(--d-red); }

/* HOME — CATEGORIAS */
html[data-theme="dark"] .fmx-cats { background: var(--d-bg); }
html[data-theme="dark"] .fmx-cats__title { color: #fff; }
html[data-theme="dark"] .fmx-cats__title em { color: var(--d-red); }
html[data-theme="dark"] .fmx-cats__sub { color: var(--d-text-2); }
html[data-theme="dark"] .fmx-cat-card { background: var(--d-card); border: 1px solid var(--d-border); }
html[data-theme="dark"] .fmx-cat-card__icon { background: var(--d-red-soft); color: var(--d-red); }
html[data-theme="dark"] .fmx-cat-card__head h3 { color: #fff; }
html[data-theme="dark"] .fmx-cat-card__head p { color: var(--d-text-2); }
html[data-theme="dark"] .fmx-pill--cat { background: transparent; color: var(--d-red) !important; border-color: rgba(251,44,90,.5); }
html[data-theme="dark"] .fmx-pill--cat:hover { background: var(--d-red); color: #fff !important; border-color: var(--d-red); }

/* HOME — SOBRE / SEO */
html[data-theme="dark"] .fmx-about-seo { background: var(--d-bg-alt); }
html[data-theme="dark"] .fmx-about-seo__title { color: #fff; }
html[data-theme="dark"] .fmx-about-seo__title em { color: var(--d-red); }
html[data-theme="dark"] .fmx-about-seo__body { color: var(--d-text-2); }
html[data-theme="dark"] .fmx-about-seo__body strong { color: #fff; }
html[data-theme="dark"] .fmx-about-seo__body a { color: var(--d-red); text-decoration-color: rgba(251,44,90,.4); }

/* HOME — FAQ */
html[data-theme="dark"] .fmx-faq { background: var(--d-bg); }
html[data-theme="dark"] .fmx-faq__title { color: #fff; }
html[data-theme="dark"] .fmx-faq__title em { color: var(--d-red); }
html[data-theme="dark"] .fmx-faq__item { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .fmx-faq__item[open] { border-color: var(--d-red); box-shadow: 0 2px 12px rgba(251,44,90,.12); }
html[data-theme="dark"] .fmx-faq__q { color: #fff; }
html[data-theme="dark"] .fmx-faq__q i { color: var(--d-red); }
html[data-theme="dark"] .fmx-faq__a { color: var(--d-text-2); border-top-color: var(--d-border); }

/* HOME — seções legadas (caso apareçam) */
html[data-theme="dark"] .fm-home--xstyle .fm-seo { background: var(--d-bg-alt); border-top-color: var(--d-border); }
html[data-theme="dark"] .fm-home--xstyle .fm-about { background: var(--d-bg); border-top-color: var(--d-border); }
html[data-theme="dark"] .fm-seo__title,
html[data-theme="dark"] .fm-about__header,
html[data-theme="dark"] .fm-about__col-title { color: #fff; }
html[data-theme="dark"] .fm-seo__body,
html[data-theme="dark"] .fm-about__list a { color: var(--d-text-2); }
html[data-theme="dark"] .fm-seo__body a,
html[data-theme="dark"] .fm-about__list a:hover { color: var(--d-red); }

/* ═══════════════════════════════════════════════════════════════════
   LISTAGEM (archive) + FILTROS
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .arch { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .arch-hero-area { background: var(--d-bg); border-bottom-color: var(--d-border); }

/* Breadcrumb + títulos */
html[data-theme="dark"] .arch-bc { color: var(--d-text-3); }
html[data-theme="dark"] .arch-bc a { color: var(--d-text-3) !important; }
html[data-theme="dark"] .arch-bc a:hover { color: var(--d-red) !important; }
html[data-theme="dark"] .arch-bc .arr { color: #55555f; }
html[data-theme="dark"] .arch-bc strong { color: var(--d-text-2); }
html[data-theme="dark"] .arch-h1 { color: #fff; }
html[data-theme="dark"] .arch-sub { color: var(--d-text-3); }
html[data-theme="dark"] .arch-sub__trust { color: var(--d-text-2); }
html[data-theme="dark"] .arch-count-bar__num { color: #fff; }
html[data-theme="dark"] .arch-count-bar__label,
html[data-theme="dark"] .arch-count-bar__txt { color: var(--d-text-2); }
html[data-theme="dark"] .arch-count-bar__sep { color: #44444e; }

/* Gênero + chips de filtro */
html[data-theme="dark"] .arch-gender a { border-color: var(--d-border-2); color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-gender a:hover { border-color: var(--d-red); color: #fff !important; }
html[data-theme="dark"] .arch-gender a.on { background: var(--d-red); color: #fff !important; border-color: var(--d-red); }
html[data-theme="dark"] .arch-filters__chip { background: var(--d-card); color: var(--d-text-2) !important; border-color: var(--d-border); }
html[data-theme="dark"] .arch-filters__chip:hover { background: var(--d-red-soft); border-color: rgba(251,44,90,.4); color: var(--d-red) !important; }
html[data-theme="dark"] .arch-filters__view { background: var(--d-card); border-color: var(--d-border); color: var(--d-text-3); }
html[data-theme="dark"] .arch-filters__view.on { background: #2a2a38; color: #fff; border-color: var(--d-border-2); }
html[data-theme="dark"] .arch-filters__view:hover:not(.on) { color: var(--d-text-2); }
html[data-theme="dark"] .arch-filters__btn { background: var(--d-card); color: var(--d-text-2); border-color: var(--d-border); }
html[data-theme="dark"] .arch-filters__btn--red:hover { background: var(--d-red-soft); }

/* Stories */
html[data-theme="dark"] .arch-story__name { color: var(--d-text-2); }

/* CARDS */
html[data-theme="dark"] .arch-card { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .arch-card__link { color: var(--d-text) !important; }
html[data-theme="dark"] .arch-card__img,
html[data-theme="dark"] .arch-card__ph { background: #23232f; }
html[data-theme="dark"] .arch-card__name,
html[data-theme="dark"] .arch-card__name * { color: #fff !important; }
html[data-theme="dark"] .arch-card__age { color: var(--d-text-3); }
html[data-theme="dark"] .arch-card__m,
html[data-theme="dark"] .arch-card__m * { color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-card__bio,
html[data-theme="dark"] .arch-card__bio *,
html[data-theme="dark"] .arch-card__phrase,
html[data-theme="dark"] .arch-card__phrase * { color: var(--d-text-3) !important; border-top-color: var(--d-border); }
html[data-theme="dark"] .arch-card__pf { background: #2a2a38; color: var(--d-text-2) !important; border-color: var(--d-border) !important; }
html[data-theme="dark"] .arch-card__cta--off { background: #2a2a38; color: var(--d-text-3) !important; }

/* Paginação */
html[data-theme="dark"] .arch-pag .page-numbers { background: #23232f; color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-pag .page-numbers:hover { background: #2f2f3d; color: #fff !important; }
html[data-theme="dark"] .arch-pag .page-numbers.current { background: var(--d-red); color: #fff !important; }

/* Localidades / About / FAQ / SEO (rodapé do archive) */
html[data-theme="dark"] .arch-loc h2,
html[data-theme="dark"] .arch-about h2,
html[data-theme="dark"] .arch-faq-sec h2 { color: #fff; }
html[data-theme="dark"] .arch-loc__pill { border-color: var(--d-border-2); color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-loc__pill:hover { background: var(--d-red); border-color: var(--d-red); color: #fff !important; }
html[data-theme="dark"] .arch-about,
html[data-theme="dark"] .arch-faq-sec { background: var(--d-bg-alt); border-top-color: var(--d-border); }
html[data-theme="dark"] .arch-media__logo { color: #fff; }
html[data-theme="dark"] .arch-media__txt { color: var(--d-text-2); }
html[data-theme="dark"] .arch-faq__q { color: var(--d-text); }
html[data-theme="dark"] .arch-faq__a,
html[data-theme="dark"] .arch-faq-card__a { color: var(--d-text-2); }
html[data-theme="dark"] .arch-seo { background: var(--d-bg-alt); }
html[data-theme="dark"] .arch-seo p { color: var(--d-text-2); }
html[data-theme="dark"] .arch-seo p strong { color: #fff; }

/* Trust / faq-card / explore */
html[data-theme="dark"] .arch-trust__item,
html[data-theme="dark"] .arch-faq-card { background: var(--d-card); }
html[data-theme="dark"] .arch-trust__icon,
html[data-theme="dark"] .arch-trust--top .arch-trust__icon { background: var(--d-bg-alt); border-color: var(--d-border); }
html[data-theme="dark"] .arch-trust__item h3,
html[data-theme="dark"] .arch-trust--top .arch-trust__item h3,
html[data-theme="dark"] .arch-faq-card__q { color: #fff; }
html[data-theme="dark"] .arch-trust__item p,
html[data-theme="dark"] .arch-trust--top .arch-trust__item p,
html[data-theme="dark"] .arch-faq-card__a { color: var(--d-text-2); }
html[data-theme="dark"] .arch-explore__col h3 { color: #fff; }
html[data-theme="dark"] .arch-explore__col a { color: var(--d-text-2); }

/* ── SIDEBAR DE FILTROS ── */
html[data-theme="dark"] .arch-sidebar { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .arch-sidebar::-webkit-scrollbar-thumb { background: #3a3a48; }
html[data-theme="dark"] .arch-sb-title { color: #fff; }
html[data-theme="dark"] .arch-sb-cat { color: var(--d-text-2); }
html[data-theme="dark"] .arch-sb-cat:hover { background: var(--d-red-soft); color: var(--d-red); }
html[data-theme="dark"] .arch-sb-cat.is-active { background: var(--d-red-soft); border-color: var(--d-red); color: var(--d-red); }
html[data-theme="dark"] .arch-sb-link { color: var(--d-text-2); }
html[data-theme="dark"] .arch-sb-link:hover { background: rgba(255,255,255,.05); color: var(--d-red); }
html[data-theme="dark"] .arch-sb-link.is-active { background: var(--d-red-soft); color: var(--d-red); }
html[data-theme="dark"] .arch-sb-link span,
html[data-theme="dark"] .arch-sb-check__count { color: var(--d-text-3); }
html[data-theme="dark"] .arch-sb-check { color: var(--d-text-2); }
html[data-theme="dark"] .arch-sb-check:hover { background: rgba(255,255,255,.05); }
html[data-theme="dark"] .arch-sb-check__box { border-color: #4a4a58; }
html[data-theme="dark"] .arch-sb-pill { background: transparent; border-color: var(--d-border-2); color: var(--d-text-2); }
html[data-theme="dark"] .arch-sb-pill:hover { border-color: var(--d-red); color: var(--d-red); }

/* ── MODAIS (filtros / distância / bairros) ── */
html[data-theme="dark"] .arch-modal,
html[data-theme="dark"] .arch-dist__panel { background: var(--d-card); color: var(--d-text); }
html[data-theme="dark"] .arch-modal__header,
html[data-theme="dark"] .arch-modal__footer { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .arch-modal__title { color: #fff; }
html[data-theme="dark"] .arch-modal__label { color: var(--d-text-3); }
html[data-theme="dark"] .arch-modal__close { background: #2a2a38; border-color: var(--d-border); color: var(--d-text-2); }
html[data-theme="dark"] .arch-modal__clear,
html[data-theme="dark"] .arch-modal__result { color: var(--d-text-3); }
html[data-theme="dark"] .arch-mpill--cat { background: transparent; border-color: var(--d-border-2); color: var(--d-text-2); }
html[data-theme="dark"] .arch-mpill--cat:hover { background: var(--d-red-soft); border-color: rgba(251,44,90,.4); color: var(--d-red); }
html[data-theme="dark"] .arch-dist__back:hover { background: rgba(255,255,255,.06); }
html[data-theme="dark"] .arch-dist__title { color: #fff; }
html[data-theme="dark"] .arch-dist__desc { color: var(--d-text-2); }
html[data-theme="dark"] .arch-modal-overlay { background: rgba(0,0,0,.6); }

/* Bairro modal */
html[data-theme="dark"] .arch-bmodal__item-label:hover { background: rgba(255,255,255,.05); }
html[data-theme="dark"] .arch-bmodal__radio { background: var(--d-card); }
html[data-theme="dark"] .arch-bmodal__count { background: #2a2a38; color: var(--d-text-2); }
html[data-theme="dark"] .arch-bmodal__footer { background: var(--d-bg-alt); }
html[data-theme="dark"] .arch-bmodal__cancel { background: var(--d-card); border-color: var(--d-border-2); color: var(--d-text-2); }
html[data-theme="dark"] .arch-bmodal__cancel:hover { background: rgba(255,255,255,.05); }

/* ═══════════════════════════════════════════════════════════════════
   FOOTER RICO (.fm-ft--rich) + BARRA INFERIOR MOBILE (.fm-bb)
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .fm-ft--rich { background: #0b0b11; color: var(--d-text-2); border-top-color: var(--d-border); }
html[data-theme="dark"] .fm-ft__col h3.fm-ft__h { color: #fff; border-bottom-color: var(--d-border); }
html[data-theme="dark"] .fm-ft__col a { color: var(--d-text-2); }
html[data-theme="dark"] .fm-ft__col a:hover { color: var(--d-red); }
html[data-theme="dark"] .fm-ft__legal a { color: var(--d-text-3); }
html[data-theme="dark"] .fm-ft__bottom { border-top-color: var(--d-border); }
html[data-theme="dark"] .fm-ft--rich .fm-ft__logo { color: #fff; }
html[data-theme="dark"] .fm-ft--rich .fm-ft__logo b { color: var(--d-red); }
html[data-theme="dark"] .fm-ft--rich .fm-ft__copy,
html[data-theme="dark"] .fm-ft__clock-wrap { color: var(--d-text-3); }

html[data-theme="dark"] .fm-bb { background: #14141d; border-top-color: var(--d-border); box-shadow: 0 -2px 12px rgba(0,0,0,.4); }
html[data-theme="dark"] .fm-bb__item { color: var(--d-text-3); }
html[data-theme="dark"] .fm-bb__item:hover,
html[data-theme="dark"] .fm-bb__item.on { color: var(--d-red); }

/* ── LIST VIEW (Skokka-style) — regras com !important e alta especificidade ── */
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card { background: var(--d-card) !important; border-color: var(--d-border) !important; }
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card:hover { background: var(--d-card-2) !important; border-color: var(--d-border-2) !important; box-shadow: 0 6px 24px rgba(0,0,0,.5); }
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__age { color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__phrase { color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__bio { color: var(--d-text-3) !important; }
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__price { color: #fff !important; }
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__m { color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__cta--off { background: #2a2a38 !important; color: var(--d-text-3) !important; }

/* ═══════════════════════════════════════════════════════════════════
   PERFIL (single .fp-*) — tokenizado: redefine os --fm-* no escopo .fp
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .fp {
  --fm-text:      #f2f2f5;
  --fm-text-2:    #a7a7b3;
  --fm-text-3:    #71717f;
  --fm-border:    rgba(255,255,255,.08);
  --fm-border-lt: rgba(255,255,255,.06);
  --fm-bg:        #1c1c28;   /* usado por cards/pills/avatares */
  --fm-bg-alt:    #23232f;
  --fm-red:       #fb2c5a;
  --fm-red-light: #26121c;
  --fm-red-bg:    #2a1520;
  --fm-shadow:    0 2px 8px rgba(0,0,0,.4);
  --fm-shadow-lg: 0 8px 24px rgba(0,0,0,.5);
  background: #0f0f16;
}
/* containers de página = fundo base (mais escuro que os cards) */
html[data-theme="dark"] .fp-hero,
html[data-theme="dark"] .fp-sec,
html[data-theme="dark"] .fp-bc { background: #0f0f16; }
html[data-theme="dark"] .fp-nav { background: #14141d; }

/* hardcoded que não usam var */
html[data-theme="dark"] .fp-badge--green { background: #0f2416; color: #4ade80; }
html[data-theme="dark"] .fp-rates__l { color: var(--fm-text-2); }
html[data-theme="dark"] .fp-rates__v { color: #fff; }
html[data-theme="dark"] .fp-rates-pay__title { color: var(--fm-text-3); }
html[data-theme="dark"] .fp-rates-pay__pill { background: #23232f; border-color: var(--fm-border); color: var(--fm-text); }
html[data-theme="dark"] .fp-rates-pay__pill:hover { background: #2a2a38; border-color: var(--fm-red); }
html[data-theme="dark"] .fp-rates__v, html[data-theme="dark"] .fp-created { color: var(--fm-text); }

/* ── PERFIL: vence os <style> inline (fp-overrides / sv-co) com !important ── */
html[data-theme="dark"] .fp-hero { background: #0f0f16 !important; }
html[data-theme="dark"] .fp-rates__row { border-bottom-color: var(--fm-border) !important; }
html[data-theme="dark"] .fp-rates__l { color: var(--fm-text-2) !important; }
html[data-theme="dark"] .fp-rates__v { color: #fff !important; }
html[data-theme="dark"] .fp-rates-pay__title { color: var(--fm-text-3) !important; }
html[data-theme="dark"] .fp-rates-pay__pill { background: #23232f !important; border-color: var(--fm-border) !important; color: var(--fm-text) !important; }
html[data-theme="dark"] .fp-svc--list .fp-svc__item { border-bottom-color: var(--fm-border) !important; }
html[data-theme="dark"] .fp-continue__cta { background: linear-gradient(135deg,#241016 0%,#1c1c28 100%) !important; border-color: rgba(251,44,90,.25) !important; }
html[data-theme="dark"] .fp-continue__txt strong { color: #fff !important; }
html[data-theme="dark"] .fp-continue__txt span { color: var(--fm-text-2) !important; }
html[data-theme="dark"] .fp-hero__stat,
html[data-theme="dark"] .fp-hero__views,
html[data-theme="dark"] .fp-hero__fav { color: var(--fm-text-2) !important; }
html[data-theme="dark"] .fp-faq__item { border-bottom-color: var(--fm-border) !important; }
html[data-theme="dark"] .fp-faq__q { color: #fff !important; }
html[data-theme="dark"] .fp-faq__a { color: var(--fm-text-2) !important; }

/* Sexo Virtual CTA card (sem !important no original) */
html[data-theme="dark"] .fp-sv-co__card { background: linear-gradient(135deg,#241016,#1c1c28); border-color: rgba(251,44,90,.25); }
html[data-theme="dark"] .fp-sv-co__title { color: #fff; }
html[data-theme="dark"] .fp-sv-co__desc,
html[data-theme="dark"] .fp-sv-co__more { color: var(--fm-text-2); }

/* ═══════════════════════════════════════════════════════════════════
   DEMAIS PÁGINAS (login, contato, planos, cidades, institucional,
   painel, cadastro, editar, state-landing) — hardcoded → dark
   ═══════════════════════════════════════════════════════════════════ */

/* Inputs/selects/textareas dark — comum a todas */
html[data-theme="dark"] .login-input-wrap,
html[data-theme="dark"] .contato-field input,
html[data-theme="dark"] .contato-field select,
html[data-theme="dark"] .contato-field textarea,
html[data-theme="dark"] .cad-field input,
html[data-theme="dark"] .cad-field select,
html[data-theme="dark"] .cad-field textarea,
html[data-theme="dark"] .edt-field input,
html[data-theme="dark"] .edt-field select,
html[data-theme="dark"] .edt-field textarea,
html[data-theme="dark"] .cid-search input,
html[data-theme="dark"] .cad-sched__time {
  background: #23232f !important; border-color: var(--d-border-2) !important; color: var(--d-text) !important;
}
html[data-theme="dark"] .login-input-wrap input { background: transparent !important; color: var(--d-text) !important; }
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color: var(--d-text-3) !important; }

/* LOGIN */
html[data-theme="dark"] .login-page { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .login-card { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .login-logo, 
html[data-theme="dark"] .login-card h1,
html[data-theme="dark"] .login-ok h2 { color: #fff; }
html[data-theme="dark"] .login-field label { color: var(--d-text-2); }
html[data-theme="dark"] .login-remember { color: var(--d-text-2); }
html[data-theme="dark"] .login-register { border-color: var(--d-border-2); color: var(--d-text) !important; }
html[data-theme="dark"] .login-register:hover { border-color: var(--d-red); color: var(--d-red) !important; }

/* CONTATO */
html[data-theme="dark"] .contato { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .contato-header h1,
html[data-theme="dark"] .contato-ok h2,
html[data-theme="dark"] .contato-card h3 { color: #fff; }
html[data-theme="dark"] .contato-form-wrap,
html[data-theme="dark"] .contato-card { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .contato-field label,
html[data-theme="dark"] .contato-canal strong,
html[data-theme="dark"] .contato-faq summary { color: var(--d-text); }
html[data-theme="dark"] .contato-card p,
html[data-theme="dark"] .contato-faq p { color: var(--d-text-2); }

/* PLANOS */
html[data-theme="dark"] .planos { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .planos-congrats,
html[data-theme="dark"] .planos-saldo,
html[data-theme="dark"] .planos-card,
html[data-theme="dark"] .planos-avulso,
html[data-theme="dark"] .planos-como { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .planos-header h1,
html[data-theme="dark"] .planos-saldo__num,
html[data-theme="dark"] .planos-card__valor,
html[data-theme="dark"] .planos-avulso__preco,
html[data-theme="dark"] .planos-como h2,
html[data-theme="dark"] .planos-avulsos h2,
html[data-theme="dark"] .planos-como__item h4 { color: #fff; }
html[data-theme="dark"] .planos-congrats p,
html[data-theme="dark"] .planos-header p,
html[data-theme="dark"] .planos-card__lista li,
html[data-theme="dark"] .planos-avulsos__sub,
html[data-theme="dark"] .planos-como__item p { color: var(--d-text-2); }
html[data-theme="dark"] .planos-saldo__lbl,
html[data-theme="dark"] .planos-card__cifrao,
html[data-theme="dark"] .planos-card__periodo,
html[data-theme="dark"] .planos-avulso__unit { color: var(--d-text-3); }
html[data-theme="dark"] .planos-card__lista li { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .planos-avulso { border-color: var(--d-border); }
html[data-theme="dark"] .planos-saldo__plano { background: #23232f; color: var(--d-text-2); }
/* Básico é o 1º card (cinza --plano-cor some no dark) — clareia só ele */
html[data-theme="dark"] .planos-card:first-of-type .planos-card__nome { color: #e7e7ee; }

/* CIDADES */
html[data-theme="dark"] .cid-hero,
html[data-theme="dark"] .cid-cta { background: var(--d-bg); border-color: var(--d-border); }
html[data-theme="dark"] .cid-hero h1,
html[data-theme="dark"] .cid-sec h2,
html[data-theme="dark"] .cid-card__name,
html[data-theme="dark"] .cid-cta h2,
html[data-theme="dark"] .cid-geo__city { color: #fff; }
html[data-theme="dark"] .cid-geo,
html[data-theme="dark"] .cid-est,
html[data-theme="dark"] .cid-all__item { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .cid-card { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .cid-est__flag { background: var(--d-red-soft); }
html[data-theme="dark"] .cid-est__name,
html[data-theme="dark"] .cid-all__item { color: var(--d-text) !important; }
html[data-theme="dark"] .cid-search input { background: #23232f !important; }

/* INSTITUCIONAL */
html[data-theme="dark"] .inst { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .inst-content,
html[data-theme="dark"] .inst-nav,
html[data-theme="dark"] .inst-help { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .inst-content h1,
html[data-theme="dark"] .inst-body h2,
html[data-theme="dark"] .inst-body h3,
html[data-theme="dark"] .inst-body strong,
html[data-theme="dark"] .inst-nav h3,
html[data-theme="dark"] .inst-help h3 { color: #fff; }
html[data-theme="dark"] .inst-body,
html[data-theme="dark"] .inst-nav__link { color: var(--d-text-2); }
html[data-theme="dark"] .inst-body h2 { border-top-color: var(--d-border); }
html[data-theme="dark"] .inst-body blockquote { background: var(--d-bg-alt); color: var(--d-text-2); }
html[data-theme="dark"] .inst-nav__link:hover { background: rgba(255,255,255,.05); color: var(--d-red); }

/* PAINEL */
html[data-theme="dark"] .painel-stat,
html[data-theme="dark"] .painel-acao,
html[data-theme="dark"] .painel-extrato { background: var(--d-card); border-color: var(--d-border); color: var(--d-text); }

/* CADASTRO */
html[data-theme="dark"] .cad-inner { background: var(--d-card); }
html[data-theme="dark"] .cad-svc-pill,
html[data-theme="dark"] .cad-sched__add-period,
html[data-theme="dark"] .cad-sched__rm-period,
html[data-theme="dark"] .cad-sched__quick button { background: #23232f !important; border-color: var(--d-border-2) !important; color: var(--d-text) !important; }
html[data-theme="dark"] .cad-sched__time:disabled { background: #1a1a24 !important; color: var(--d-text-3) !important; }
html[data-theme="dark"] .cad-sched__row--off { background: rgba(255,255,255,.03); }

/* EDITAR */
html[data-theme="dark"] .edt { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .edt-header h1,
html[data-theme="dark"] .edt-section h3 { color: #fff; }
html[data-theme="dark"] .edt-tabs,
html[data-theme="dark"] .edt-section { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .edt-btn--outline { background: #23232f; border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .edt-field label { color: var(--d-text-2); }
html[data-theme="dark"] .edt-section h3 { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .edt-hero-cover,
html[data-theme="dark"] .edt-listing-preview { background: #23232f; border-color: var(--d-border); }
html[data-theme="dark"] .edt-tab:hover { color: var(--d-text); }

/* STATE LANDING (SEO) */
html[data-theme="dark"] .sl { color: var(--d-text); }
html[data-theme="dark"] .sl-hero,
html[data-theme="dark"] .sl-toc,
html[data-theme="dark"] .sl-sec--white { background: var(--d-bg); border-color: var(--d-border); }
html[data-theme="dark"] .sl-sec--alt { background: var(--d-bg-alt); }
html[data-theme="dark"] .sl-hero h1,
html[data-theme="dark"] .sl-sec h2,
html[data-theme="dark"] .sl-sec h3,
html[data-theme="dark"] .sl-sec p strong,
html[data-theme="dark"] .sl-hero__desc strong,
html[data-theme="dark"] .sl-trust__title { color: #fff; }
html[data-theme="dark"] .sl-hero__desc,
html[data-theme="dark"] .sl-sec p { color: var(--d-text-2); }
html[data-theme="dark"] .sl-bc a { color: var(--d-text-2) !important; }
html[data-theme="dark"] .sl-toc__item { background: #23232f; border-color: var(--d-border); color: var(--d-text-2) !important; }
html[data-theme="dark"] .sl-kpi__card,
html[data-theme="dark"] .sl-city,
html[data-theme="dark"] .sl-price,
html[data-theme="dark"] .sl-trust__card { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .sl-city { color: var(--d-text) !important; }
html[data-theme="dark"] .sl-pill { border-color: var(--d-border-2); color: var(--d-text-2) !important; }

/* ── MOSAICO (masonry) — estilos inline no archive-acompanhante.php c/ !important ── */
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card { background: var(--d-card) !important; border-color: var(--d-border) !important; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card:hover { border-color: var(--d-border-2) !important; box-shadow: 0 12px 28px rgba(0,0,0,.5); }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__img { background: #23232f !important; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__ph { background: linear-gradient(135deg,#23232f,#1c1c28) !important; color: #55555f; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__name { color: #fff !important; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__age { color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__price { color: var(--d-red) !important; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__m { color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__m i { color: var(--d-text-3) !important; }
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card__cta--off { background: #2a2a38 !important; color: var(--d-text-3) !important; }

/* Card VIP boost (dourado claro → escuro c/ leve dourado).
   Precisa vencer as regras por view (.arch-grid[data-view=...] .arch-card--boost-vip, esp. 0,3,0). */
html[data-theme="dark"] .arch-card--boost-vip,
html[data-theme="dark"] .arch-grid[data-view="grid"] .arch-card--boost-vip,
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card--boost-vip,
html[data-theme="dark"] .arch-grid[data-view="masonry"] .arch-card--boost-vip {
  background: linear-gradient(135deg,#241f14,#1a160d) !important;
  border-color: rgba(245,200,80,.28) !important;
}

/* ═══════════════════════════════════════════════════════════════════
   CORREÇÕES: cadastro (wrapper+steps), modal geo/cidade, pills svc/atd
   ═══════════════════════════════════════════════════════════════════ */

/* CADASTRO — fundo da página + passos (só o card interno estava escuro) */
html[data-theme="dark"] .cad { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .cad-header h1,
html[data-theme="dark"] .cad-logo { color: #fff; }
html[data-theme="dark"] .cad-header p { color: var(--d-text-2); }
html[data-theme="dark"] .cad-progress__bar { background: #23232f; }
html[data-theme="dark"] .cad-step-dot { background: #23232f; color: var(--d-text-3); }
html[data-theme="dark"] .cad-progress__labels { color: var(--d-text-3); }
html[data-theme="dark"] .cad-radio,
html[data-theme="dark"] .cad-check { border-color: var(--d-border-2); color: var(--d-text-2); }

/* Autofill (evita o retângulo azul/amarelo do navegador nos inputs) */
html[data-theme="dark"] input:-webkit-autofill,
html[data-theme="dark"] input:-webkit-autofill:hover,
html[data-theme="dark"] input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--d-text) !important;
  -webkit-box-shadow: 0 0 0 40px #23232f inset !important;
  caret-color: var(--d-text);
}

/* MODAL GEO / BUSCAR CIDADE (home) — estilos inline no front-page.php */
html[data-theme="dark"] .fm-modal-split { background: var(--d-card); }
html[data-theme="dark"] .fm-modal-split__search { background: #14141d; }
html[data-theme="dark"] .fm-modal-split__search-bar { background: #23232f; border-color: var(--d-border-2); }
html[data-theme="dark"] .fm-modal-split__search-bar i { color: var(--d-text-3); }
html[data-theme="dark"] .fm-modal-split__search-bar input { color: var(--d-text); }
html[data-theme="dark"] .fm-modal-split__search-bar input::placeholder { color: var(--d-text-3); }
html[data-theme="dark"] .fm-modal-split__body { background: var(--d-card); }
html[data-theme="dark"] .fm-modal-split__col-title { color: var(--d-text-3); }
html[data-theme="dark"] .fm-modal-split__divider { background: var(--d-border); }
html[data-theme="dark"] .fm-modal-split__item { color: var(--d-text); border-bottom-color: var(--d-border); }
html[data-theme="dark"] .fm-modal-split__item:hover { background: rgba(255,255,255,.05); }
html[data-theme="dark"] .fm-modal-split__item--geo,
html[data-theme="dark"] .fm-modal-split__item--geo .icon { color: var(--d-text); }
html[data-theme="dark"] .fm-modal-split__item .arrow { color: var(--d-text-3); }
html[data-theme="dark"] .fm-modal-split__footer { background: var(--d-card); border-top-color: var(--d-border); }
html[data-theme="dark"] .fm-modal-split__btn--ghost { background: transparent; border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .fm-modal-split__btn--ghost:hover { border-color: var(--d-text-3); }

/* PILLS de SERVIÇO e ATENDIMENTO no modal de filtros (estavam brancas) */
html[data-theme="dark"] .arch-mpill--svc { background: #17202e; border-color: rgba(59,130,246,.35); color: #93c5fd; }
html[data-theme="dark"] .arch-mpill--svc:hover { background: #1c2838; border-color: rgba(59,130,246,.55); color: #bfdbfe; }
html[data-theme="dark"] .arch-mpill--atd { background: #14251a; border-color: rgba(34,197,94,.35); color: #86efac; }
html[data-theme="dark"] .arch-mpill--atd:hover { background: #1a2e20; border-color: rgba(34,197,94,.55); color: #bbf7d0; }
html[data-theme="dark"] .fm-modal-split__btn--primary:disabled { background: #23232f; color: var(--d-text-3); }
html[data-theme="dark"] .fm-modal-split__body::-webkit-scrollbar-thumb { background: #3a3a48; }

/* ═══════════════════════════════════════════════════════════════════
   ARCHIVE — seções de conteúdo SEO que ficaram brancas no dark
   ═══════════════════════════════════════════════════════════════════ */

/* Tabela de preços/dados da cidade (inc/city-data.php) */
html[data-theme="dark"] .fa-citydata { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .fa-citydata__h,
html[data-theme="dark"] .fa-citydata__table tbody th,
html[data-theme="dark"] .fa-citydata__tagcol h3 { color: #fff; }
html[data-theme="dark"] .fa-citydata__lead,
html[data-theme="dark"] .fa-citydata__tagcol p { color: var(--d-text-2); }
html[data-theme="dark"] .fa-citydata__table caption,
html[data-theme="dark"] .fa-citydata__note { color: var(--d-text-3); }
html[data-theme="dark"] .fa-citydata__table th,
html[data-theme="dark"] .fa-citydata__table td { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .fa-citydata__table thead th { background: #23232f; color: var(--d-text-2); }
html[data-theme="dark"] .fa-citydata__table tbody th a { color: var(--d-red); }
html[data-theme="dark"] .fa-citydata__table td:last-child { color: #4ade80; }

/* Box "Sobre ..." (div inline #f9f9f9 no archive + state-landing) —
   vence os estilos inline via seletores de atributo + !important */
html[data-theme="dark"] .arch-sobre-box { background: var(--d-card) !important; border-color: var(--d-border) !important; }
html[data-theme="dark"] .arch-sobre-box [style*="color:#1a1a2e"],
html[data-theme="dark"] .arch-sobre-box [style*="color:#333"] { color: #fff !important; }
html[data-theme="dark"] .arch-sobre-box [style*="color:#777"],
html[data-theme="dark"] .arch-sobre-box [style*="color:#999"] { color: var(--d-text-2) !important; }
html[data-theme="dark"] .arch-sobre-box [style*="color:#e11d48"] { color: var(--d-red) !important; }
html[data-theme="dark"] .arch-sobre-box [style*="border"] { border-color: var(--d-border) !important; }

/* Cross-links SEO (inc/seo-internal-links.php) — pills brancas */
html[data-theme="dark"] .fa-xlinks__heading { color: #fff; }
html[data-theme="dark"] .fa-xlinks__pill { background: var(--d-card); border-color: var(--d-border); color: var(--d-text-2); }
html[data-theme="dark"] .fa-xlinks__pill:hover { background: var(--d-red-soft); border-color: rgba(251,44,90,.4); color: var(--d-red); }
html[data-theme="dark"] .fa-xlinks__pill span { color: var(--d-text-3); }
html[data-theme="dark"] .fa-xlinks__pill--cat { background: #23232f; border-color: var(--d-border); }
html[data-theme="dark"] .fa-xlinks__pill--cat:hover { background: var(--d-red-soft); border-color: rgba(251,44,90,.4); }
html[data-theme="dark"] .fa-related__meta { color: var(--d-text-3); }
html[data-theme="dark"] .fa-related__title,
html[data-theme="dark"] .fa-related__name { color: #fff; }
html[data-theme="dark"] .fa-related__card { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .fa-related__img { background: #23232f; }

/* Navegação por regiões + "Categorias populares" (.fa-br-regions no archive) —
   bloco 100% claro (chips brancos, títulos quase-pretos, divisória #eee). */
html[data-theme="dark"] .fa-br-regions div[style*="border-top"] { border-top-color: var(--d-border) !important; }
html[data-theme="dark"] .fa-br-state__title { color: #fff; }
html[data-theme="dark"] .fa-br-state__title:hover { color: var(--d-red); }
html[data-theme="dark"] .fa-br-state__list a { color: var(--d-text-2); }
html[data-theme="dark"] .fa-br-state__list a:hover { color: var(--d-red); }
html[data-theme="dark"] .fa-br-state__count { color: var(--d-red); }
/* Chips de categoria — dark card + texto claro; :visited fixado para o "Homens" não sumir */
html[data-theme="dark"] .fa-br-cats a,
html[data-theme="dark"] .fa-br-cats a:visited { background: var(--d-card); border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .fa-br-cats a:hover { background: var(--d-card-2); border-color: var(--d-red); color: var(--d-red); }
html[data-theme="dark"] .fa-br-cats a.fa-br-cats__primary,
html[data-theme="dark"] .fa-br-cats a.fa-br-cats__primary:visited { background: var(--d-red); border-color: var(--d-red); color: #fff; }
html[data-theme="dark"] .fa-br-cats a.fa-br-cats__primary:hover { background: #be123c; border-color: #be123c; color: #fff; }

/* ═══════════════════════════════════════════════════════════════════
   PÁGINA 404 (.fa-404) — estilos inline no 404.php
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .fa-404 { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .fa-404__hero,
html[data-theme="dark"] .fa-404__sec,
html[data-theme="dark"] .fa-404__seo { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .fa-404__icon { background: linear-gradient(135deg,#2a1520,#1c1c28); }
html[data-theme="dark"] .fa-404__h1,
html[data-theme="dark"] .fa-404__sec h2,
html[data-theme="dark"] .fa-404__suggest__txt strong,
html[data-theme="dark"] .fa-404__seo strong { color: #fff; }
html[data-theme="dark"] .fa-404__intro,
html[data-theme="dark"] .fa-404__seo { color: var(--d-text-2); }
html[data-theme="dark"] .fa-404__sec h2 { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .fa-404__suggest { background: linear-gradient(135deg,#241016,#1c1c28); border-color: rgba(251,44,90,.25); }
html[data-theme="dark"] .fa-404__search { background: #23232f; border-color: var(--d-border-2); }
html[data-theme="dark"] .fa-404__search input { color: var(--d-text); }
html[data-theme="dark"] .fa-404__quick a.sec { background: #23232f; color: var(--d-text); border-color: var(--d-border-2); }
html[data-theme="dark"] .fa-404__quick a.sec:hover { border-color: var(--d-red); color: var(--d-red); }
html[data-theme="dark"] .fa-404__chip { background: #23232f; border-color: var(--d-border); color: var(--d-text-2); }
html[data-theme="dark"] .fa-404__chip:hover { border-color: rgba(251,44,90,.4); color: var(--d-red); background: var(--d-red-soft); }
html[data-theme="dark"] .fa-404__chip__count { color: var(--d-text-3); }

/* ═══════════════════════════════════════════════════════════════════
   SEXO VIRTUAL (.sv-*) — landing page (estilos inline page-sexo-virtual.php)
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .sv { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .sv h1,
html[data-theme="dark"] .sv h2,
html[data-theme="dark"] .sv h3,
html[data-theme="dark"] .sv h4,
html[data-theme="dark"] .sv-card-name,
html[data-theme="dark"] .sv strong { color: #fff; }
html[data-theme="dark"] .sv-hero { background: linear-gradient(135deg,#1a1119 0%,#160f16 50%,#15151f 100%); }
html[data-theme="dark"] .sv-hero-photo--placeholder { background: linear-gradient(135deg,#241016,#1c1c28); border-color: rgba(251,44,90,.3); }
html[data-theme="dark"] .sv-eyebrow { background: var(--d-red-soft); border-color: rgba(251,44,90,.3); color: var(--d-red); }
html[data-theme="dark"] .sv-trust-pill { background: var(--d-card); color: var(--d-text); }
html[data-theme="dark"] .sv-float-card { background: var(--d-card); box-shadow: 0 14px 40px rgba(0,0,0,.5); }
html[data-theme="dark"] .sv-float-card__icon { background: #0f2416; }
html[data-theme="dark"] .sv-how,
html[data-theme="dark"] .sv-faq,
html[data-theme="dark"] .sv-content { background: var(--d-bg); }
html[data-theme="dark"] .sv-content { color: var(--d-text-2); border-top-color: var(--d-border); }
html[data-theme="dark"] .sv-mp { background: var(--d-bg-alt); }
html[data-theme="dark"] .sv-step,
html[data-theme="dark"] .sv-card,
html[data-theme="dark"] .sv-faq-item,
html[data-theme="dark"] .sv-dur,
html[data-theme="dark"] .sv-empty { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .sv-card-img { background: #23232f; }
html[data-theme="dark"] .sv-card-price { border-top-color: var(--d-border); }
html[data-theme="dark"] .sv-verified { background: var(--d-card); }
html[data-theme="dark"] .sv-modal-box { background: var(--d-card); }
html[data-theme="dark"] .sv-modal-close { background: #23232f; color: var(--d-text-2); }
html[data-theme="dark"] .sv-pix-code { background: #23232f; color: var(--d-text); }
html[data-theme="dark"] .sv-pix-status { background: #2a2410; border-color: #6b5a1a; color: #fcd34d; }
html[data-theme="dark"] .sv-content-tbl { border-color: var(--d-border); }
html[data-theme="dark"] .sv-content-tbl th,
html[data-theme="dark"] .sv-content-tbl td { border-color: var(--d-border); }
html[data-theme="dark"] .sv-content-tbl thead th { background: #23232f; color: var(--d-text-2); }

/* ═══════════════════════════════════════════════════════════════════
   AVALIAÇÕES (.av-*) — template-avaliacoes.php
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .av-page { background: var(--d-bg); }
html[data-theme="dark"] .av-hero,
html[data-theme="dark"] .av-card,
html[data-theme="dark"] .av-side__box,
html[data-theme="dark"] .av-empty { background: var(--d-card); box-shadow: 0 1px 3px rgba(0,0,0,.4); }
html[data-theme="dark"] .av-hero__title,
html[data-theme="dark"] .av-stat__num,
html[data-theme="dark"] .av-card__profile-name,
html[data-theme="dark"] .av-side__title,
html[data-theme="dark"] .av-top-item__name { color: #fff; }
html[data-theme="dark"] .av-hero__sub,
html[data-theme="dark"] .av-card__author,
html[data-theme="dark"] .av-card__comment { color: var(--d-text-2); }
html[data-theme="dark"] .av-hero__breadcrumb,
html[data-theme="dark"] .av-hero__breadcrumb a,
html[data-theme="dark"] .av-stat__label,
html[data-theme="dark"] .av-card__loc,
html[data-theme="dark"] .av-top-item__rating,
html[data-theme="dark"] .av-empty { color: var(--d-text-3); }
html[data-theme="dark"] .av-hero__stats { border-top-color: var(--d-border); }
html[data-theme="dark"] .av-chip { background: var(--d-card); border-color: var(--d-border); color: var(--d-text-2); }
html[data-theme="dark"] .av-card__avatar,
html[data-theme="dark"] .av-top-item__avatar { background: #23232f; }
html[data-theme="dark"] .av-top-item { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .av-empty i { color: #44444e; }
html[data-theme="dark"] .av-empty__title { color: #fff; }
html[data-theme="dark"] .av-pag a,
html[data-theme="dark"] .av-pag span { background: var(--d-card); border-color: var(--d-border); color: var(--d-text-2); }

/* ═══════════════════════════════════════════════════════════════════
   CHAT IN-APP (.chat-*) — inc/in-app-chat.php  (páginas logadas)
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .chat-wrap { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .chat-msgs { background: var(--d-bg); }
html[data-theme="dark"] .chat-msg.theirs { background: #23232f; color: var(--d-text); border-color: var(--d-border); }
html[data-theme="dark"] .chat-msg.system { background: #17202e; color: #93c5fd; }
html[data-theme="dark"] .chat-premium-tip { background: linear-gradient(135deg,#2a2410,#1f1a0a); color: #fcd34d; }
html[data-theme="dark"] .chat-tip { background: #2a2410; color: #fcd34d; border-bottom-color: #6b5a1a; }
html[data-theme="dark"] .chat-form { background: var(--d-card); border-top-color: var(--d-border); }
html[data-theme="dark"] .chat-input { background: #23232f; border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .chat-warn { background: #2a1015; color: #fca5a5; border-top-color: #5a1a1a; }

/* ═══════════════════════════════════════════════════════════════════
   MINHA CONTA / PAINEL DO CLIENTE (.cli-*) — page-minha-conta.php
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .cli-panel { color: var(--d-text); }
html[data-theme="dark"] .cli-hdr,
html[data-theme="dark"] .cli-card,
html[data-theme="dark"] .cli-voice,
html[data-theme="dark"] .cli-rev,
html[data-theme="dark"] .cli-ref { background: var(--d-card); box-shadow: 0 1px 3px rgba(0,0,0,.4); }
html[data-theme="dark"] .cli-hdr__name,
html[data-theme="dark"] .cli-list__nm,
html[data-theme="dark"] .cli-ref__more { color: #fff; }
html[data-theme="dark"] .cli-hdr__hello,
html[data-theme="dark"] .cli-verify__item,
html[data-theme="dark"] .cli-list__auto,
html[data-theme="dark"] .cli-lists__more,
html[data-theme="dark"] .cli-voice__head,
html[data-theme="dark"] .cli-rev__txt,
html[data-theme="dark"] .cli-ref__txt { color: var(--d-text-2); }
html[data-theme="dark"] .cli-list__count,
html[data-theme="dark"] .cli-hist__empty,
html[data-theme="dark"] .cli-rev__sub,
html[data-theme="dark"] .arr-link,
html[data-theme="dark"] .cli-ref__copy { color: var(--d-text-3); }
html[data-theme="dark"] .cli-hdr__btn,
html[data-theme="dark"] .cli-hdr__balance { background: #23232f; border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .cli-hdr__btn:hover { background: #2a2a38; border-color: var(--d-border-2); color: #fff; }
html[data-theme="dark"] .cli-lists__btn { border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .cli-lists__btn:hover { background: rgba(255,255,255,.05); color: #fff; }
html[data-theme="dark"] .cli-verify__bar { background: #23232f; }
html[data-theme="dark"] .ico { background: #23232f; color: var(--d-text-2); }
html[data-theme="dark"] .cli-hist__card { background: #23232f; }
html[data-theme="dark"] .cli-rev__btn { background: transparent; border-color: var(--d-red); color: var(--d-red); }
html[data-theme="dark"] .cli-rev__btn:hover { background: var(--d-red-soft); color: var(--d-red); }
html[data-theme="dark"] .cli-ref__input { background: #23232f; border-color: var(--d-border-2); color: var(--d-text); }

/* Botão "Sexo Virtual" no header (pill claro → escuro) */
html[data-theme="dark"] .fm-hdr__link--sv {
  background: var(--d-red-soft);
  border-color: rgba(251,44,90,.35);
  color: var(--d-red) !important;
}
html[data-theme="dark"] .fm-hdr__link--sv:hover {
  background: linear-gradient(135deg,#e11d48,#fb2c5a);
  border-color: var(--d-red);
  color: #fff !important;
}
html[data-theme="dark"] .fm-hdr__mobile-menu a.fm-hdr__mobile-sv {
  background: var(--d-red-soft);
  color: var(--d-red) !important;
}
html[data-theme="dark"] .fm-hdr__mobile-menu a.fm-hdr__mobile-sv i { color: var(--d-red); }

/* ═══════════════════════════════════════════════════════════════════
   CIDADES — seções com bg inline (#f5f5f5 / #fff) + índice A-Z
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .cid-sec[style*="f5f5f5"] { background: var(--d-bg-alt) !important; }
html[data-theme="dark"] .cid-sec[style*="#fff"] { background: var(--d-bg) !important; border-bottom-color: var(--d-border) !important; }
html[data-theme="dark"] .cid-alpha-nav { background: var(--d-bg-alt); }
html[data-theme="dark"] .cid-alpha__link { background: #23232f; border-color: var(--d-border-2); color: var(--d-text-2); }
html[data-theme="dark"] .cid-letter-head,
html[data-theme="dark"] .cid-sec h2 { color: #fff; }
html[data-theme="dark"] .cid-all__item { border-bottom-color: var(--d-border); color: var(--d-text-2); }
html[data-theme="dark"] .cid-all__item:hover { background: rgba(255,255,255,.05); color: var(--d-red); }
html[data-theme="dark"] .cid-all__item--empty { color: var(--d-text-3); }
html[data-theme="dark"] .cid-all__uf { color: var(--d-text-2); background: #23232f; }
html[data-theme="dark"] .cid-all__count { color: var(--d-red); background: var(--d-red-soft); }

/* ═══════════════════════════════════════════════════════════════════
   STATE LANDING (/acompanhantes/{uf}/) — REMODEL dark
   Faixas vermelhas cheias → seções escuras com destaque vermelho.
   ═══════════════════════════════════════════════════════════════════ */

/* Seções que eram VERMELHO CHEIO → escuras */
html[data-theme="dark"] .sl-sec--red { background: var(--d-bg-alt) !important; color: var(--d-text); }
html[data-theme="dark"] .sl-sec--red h2,
html[data-theme="dark"] .sl-sec--red p { color: var(--d-text); }
html[data-theme="dark"] .sl-sec--red h2 em { color: var(--d-red); }
html[data-theme="dark"] .sl-sec--red .sl-sec__sub { color: var(--d-text-2); opacity: 1; }
/* Cidades dentro da seção → pills escuras */
html[data-theme="dark"] .sl-sec--red .sl-city { background: #23232f; border-color: var(--d-border-2); color: var(--d-text) !important; }
html[data-theme="dark"] .sl-sec--red .sl-city:hover { background: var(--d-red); color: #fff !important; border-color: var(--d-red); }
html[data-theme="dark"] .sl-sec--red .sl-city span { color: var(--d-text-3); }
html[data-theme="dark"] .sl-sec--red .sl-city:hover span { color: rgba(255,255,255,.75); }
/* Cards de preço dentro da seção → escuros */
html[data-theme="dark"] .sl-sec--red .sl-price { background: var(--d-card); box-shadow: 0 8px 24px rgba(0,0,0,.4); }
html[data-theme="dark"] .sl-sec--red .sl-price__label { color: var(--d-text-2); }
html[data-theme="dark"] .sl-sec--red .sl-price__val { color: #fff; }
html[data-theme="dark"] .sl-sec--red .sl-price__range { color: var(--d-text-3); }
html[data-theme="dark"] .sl-sec--red .sl-note { color: var(--d-text-3); }
html[data-theme="dark"] .sl-sec--red .sl-note i { color: var(--d-red); }

/* Botão outline claro → escuro */
html[data-theme="dark"] .sl-btn--outline { background: #23232f; color: var(--d-text) !important; border-color: var(--d-border-2); }
html[data-theme="dark"] .sl-btn--outline:hover { border-color: var(--d-red); color: var(--d-red) !important; }

/* Cards de perfil (galeria de destaque) */
html[data-theme="dark"] .sl-profile { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .sl-profile:hover { border-color: var(--d-red); box-shadow: 0 8px 24px rgba(251,44,90,.2); }
html[data-theme="dark"] .sl-profile__img { background: #23232f; }
html[data-theme="dark"] .sl-profile__ph { color: #55555f; }
html[data-theme="dark"] .sl-profile__name { color: #fff; }

/* Box E-E-A-T (Segurança) */
html[data-theme="dark"] .sl-eeat { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .sl-eeat h3 { color: #fff; }
html[data-theme="dark"] .sl-eeat p,
html[data-theme="dark"] .sl-eeat ul { color: var(--d-text-2); }

/* Rodapé de links "Bairros com acompanhantes" (sl-mfl) */
html[data-theme="dark"] .sl-mfl { background: var(--d-bg); border-top-color: var(--d-border); }
html[data-theme="dark"] .sl-mfl--alt { background: var(--d-bg-alt); }
html[data-theme="dark"] .sl-mfl h3 { color: #fff; }
html[data-theme="dark"] .sl-mfl__col h4 { color: var(--d-text-3); border-bottom-color: var(--d-border); }
html[data-theme="dark"] .sl-mfl__col a { color: var(--d-text-2) !important; }

/* Sub-títulos, tabela de ranking, FAQ, trust, cross-links */
html[data-theme="dark"] .sl-sec__sub { color: var(--d-text-3); }
html[data-theme="dark"] .sl-tbl thead th { color: var(--d-text-3); border-bottom-color: var(--d-border-2); }
html[data-theme="dark"] .sl-tbl tbody td { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .sl-trust__title { color: #fff; }
html[data-theme="dark"] .sl-trust__txt { color: var(--d-text-2); }
html[data-theme="dark"] .sl-faq summary { color: var(--d-text); border-bottom-color: var(--d-border); }
html[data-theme="dark"] .sl-faq p { color: var(--d-text-2); }
html[data-theme="dark"] .sl-cross a { background: var(--d-card); border-color: var(--d-border); color: var(--d-text-2) !important; }
html[data-theme="dark"] .sl-cross a:hover { border-color: var(--d-red); color: var(--d-red) !important; }

/* Pills de "Bairros com acompanhantes" (sl-mfl__grid--single) — eram brancas */
html[data-theme="dark"] .sl-mfl__grid--single .sl-mfl__col a {
  background: #23232f;
  border-color: var(--d-border-2);
  color: var(--d-text-2) !important;
}
html[data-theme="dark"] .sl-mfl__grid--single .sl-mfl__col a:hover {
  background: var(--d-red-soft);
  border-color: var(--d-red);
  color: var(--d-red) !important;
}

/* Barra inferior da HOME (.fm-footer) — ficou clara */
html[data-theme="dark"] .fm-footer { background: #0b0b11; border-top-color: var(--d-border); }
html[data-theme="dark"] .fm-footer__inner,
html[data-theme="dark"] .fm-footer__links a { color: var(--d-text-3); }
html[data-theme="dark"] .fm-footer__logo { color: #fff; }
html[data-theme="dark"] .fm-footer__logo b { color: var(--d-red); }
html[data-theme="dark"] .fm-footer__links a:hover { color: #fff; }

/* ═══════════════════════════════════════════════════════════════════
   PAINEL (anunciante) — wrapper + boosts + vídeo card
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .painel { background: var(--d-bg); color: var(--d-text); }
html[data-theme="dark"] .painel-stat__lbl { color: var(--d-text-3); }
html[data-theme="dark"] .painel-alert--err,
html[data-theme="dark"] .painel-boost-msg.err { background: #2a1015; color: #fca5a5; border-color: #5a1a1a; }
html[data-theme="dark"] .painel-alert--warn { background: #2a2410; color: #fcd34d; border-color: #6b5a1a; }
html[data-theme="dark"] .painel-tag--out { background: #2a1015; color: #fca5a5; }

/* Seção Impulsionar perfil (boosts) */
html[data-theme="dark"] .painel-boosts { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .painel-boosts h2,
html[data-theme="dark"] .painel-boost-card__hd h3 { color: #fff; }
html[data-theme="dark"] .painel-boosts__sub,
html[data-theme="dark"] .painel-boost-card__desc { color: var(--d-text-2); }
html[data-theme="dark"] .painel-boost-card { background: #23232f; border-color: var(--d-border); }
html[data-theme="dark"] .painel-boost-card:hover { border-color: var(--d-border-2); }
html[data-theme="dark"] .painel-boost-card--active { background: var(--d-red-soft); border-color: var(--d-red); }
html[data-theme="dark"] .painel-boost-card__credits { background: #14251a; color: #86efac; border-color: rgba(34,197,94,.3); }
html[data-theme="dark"] .painel-boost-buy { background: #1c1c28; border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .painel-boost-buy:hover { background: var(--d-red-soft); border-color: var(--d-red); }
html[data-theme="dark"] .painel-boost-warn { background: #2a2012; border-color: #7a5a1a; color: #fcd34d; }
html[data-theme="dark"] .painel-boost-warn__item { background: #4a3a1a; color: #fcd34d; }

/* Vídeo no Card (upload) */
html[data-theme="dark"] .painel-card-video { background: #23232f; border-color: var(--d-border); }
html[data-theme="dark"] .painel-card-video__preview,
html[data-theme="dark"] .painel-card-video__upload { background: #1c1c28; border-color: var(--d-border-2); color: var(--d-text-2); }
html[data-theme="dark"] .painel-card-video__upload:hover { border-color: var(--d-red); color: var(--d-red); }

/* ── PAINEL: boxes com estilo INLINE (Stories/Shorts/Sexo Virtual) ── */
html[data-theme="dark"] .painel-section { background: var(--d-card) !important; border-color: var(--d-border) !important; }
/* Fundos inline claros */
html[data-theme="dark"] .painel [style*="background:#fff5f5"] { background: var(--d-red-soft) !important; border-color: rgba(251,44,90,.4) !important; }
html[data-theme="dark"] .painel [style*="background:#fff;"] { background: #1c1c28 !important; border-color: var(--d-border-2) !important; }
html[data-theme="dark"] .painel [style*="background:#fafafa"] { background: #23232f !important; border-color: var(--d-border) !important; }
html[data-theme="dark"] .painel [style*="background:#dcfce7"] { background: #14251a !important; }
html[data-theme="dark"] .painel [style*="background:#fef9e7"],
html[data-theme="dark"] .painel [style*="background:#fff7ed"] { background: #2a2012 !important; }
html[data-theme="dark"] .painel [style*="background:#f1f5f9"] { background: #1a2230 !important; }
/* Textos inline escuros → claros */
html[data-theme="dark"] .painel [style*="color:#1A1A2E"],
html[data-theme="dark"] .painel [style*="color:#1a1a2e"] { color: #fff !important; }
html[data-theme="dark"] .painel [style*="color:#888"],
html[data-theme="dark"] .painel [style*="color:#666"],
html[data-theme="dark"] .painel [style*="color:#6B7280"],
html[data-theme="dark"] .painel [style*="color:#6b7280"] { color: var(--d-text-2) !important; }
html[data-theme="dark"] .painel [style*="color:#15803d"] { color: #4ade80 !important; }
html[data-theme="dark"] .painel [style*="color:#92400e"] { color: #fcd34d !important; }
html[data-theme="dark"] .painel [style*="color:#475569"],
html[data-theme="dark"] .painel [style*="color:#64748b"] { color: var(--d-text-2) !important; }

/* ── MODAL "Buscar por bairros" (.arch-bmodal) — header/box/search/all ── */
html[data-theme="dark"] .arch-bmodal__panel { background: var(--d-card); }
html[data-theme="dark"] .arch-bmodal__header { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .arch-bmodal__title,
html[data-theme="dark"] .arch-bmodal__sub strong,
html[data-theme="dark"] .arch-bmodal__all-text { color: #fff; }
html[data-theme="dark"] .arch-bmodal__sub { color: var(--d-text-2); }
html[data-theme="dark"] .arch-bmodal__close { background: #23232f; color: var(--d-text-2); }
html[data-theme="dark"] .arch-bmodal__close:hover { background: var(--d-red-soft); color: var(--d-red); }
html[data-theme="dark"] .arch-bmodal__search-icon { color: var(--d-text-3); }
html[data-theme="dark"] .arch-bmodal__search { background: #23232f; border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .arch-bmodal__search-clear { background: #2a2a38; color: var(--d-text-2); }
html[data-theme="dark"] .arch-bmodal__all { background: var(--d-red-soft); border-color: rgba(251,44,90,.4); }
html[data-theme="dark"] .arch-bmodal__all:hover { border-color: var(--d-red); }
html[data-theme="dark"] .arch-bmodal__item-name { color: var(--d-text); }
html[data-theme="dark"] input[type="radio"]:checked ~ .arch-bmodal__item-name { color: var(--d-red); }
html[data-theme="dark"] .arch-bmodal__empty i { color: #44444e; }
html[data-theme="dark"] .arch-bmodal__empty { color: var(--d-text-3); }

/* ── ARCHIVE: boxes com estilo INLINE (aviso "Não encontramos", CTA "Anuncie") ── */
html[data-theme="dark"] .arch [style*="background:#fef2f2"] { background: var(--d-red-soft) !important; border-color: rgba(251,44,90,.4) !important; }
html[data-theme="dark"] .arch [style*="background:#fafafa"] { background: var(--d-card) !important; }
html[data-theme="dark"] .arch [style*="background:#fff;"] { background: var(--d-card) !important; }
html[data-theme="dark"] .arch [style*="color:#1a1a2e"] { color: #fff !important; }
html[data-theme="dark"] .arch [style*="color:#888"] { color: var(--d-text-3) !important; }

/* ═══════════════════════════════════════════════════════════════════
   CADASTRO/EDITAR — Etapa Fotos (photo-roles .fa-pr-*)
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .fa-pr-split { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .fa-pr-preview { border-right-color: var(--d-border); }
html[data-theme="dark"] .fa-pr-mini { background: #23232f; border-color: var(--d-border); }
html[data-theme="dark"] .fa-pr-mini-avatar { background: #2a2a38; border-color: var(--d-card); }
html[data-theme="dark"] .fa-pr-mini-name,
html[data-theme="dark"] .fa-pr-slot-title { color: #fff; }
html[data-theme="dark"] .fa-pr-preview-label,
html[data-theme="dark"] .fa-pr-mini-empty,
html[data-theme="dark"] .fa-pr-mini-meta,
html[data-theme="dark"] .fa-pr-mini-section,
html[data-theme="dark"] .fa-pr-icon,
html[data-theme="dark"] .fa-pr-gal-add,
html[data-theme="dark"] .fa-pr-mini-principal { color: var(--d-text-3); }
html[data-theme="dark"] .fa-pr-mini-principal,
html[data-theme="dark"] .fa-pr-mini-thumb,
html[data-theme="dark"] .fa-pr-mini-thumb.empty,
html[data-theme="dark"] .fa-pr-slot-thumb { background: #2a2a38; }
html[data-theme="dark"] .fa-pr-slot { border-color: var(--d-border); }
html[data-theme="dark"] .fa-pr-action { background: #23232f; border-color: var(--d-border-2); color: var(--d-text); }
html[data-theme="dark"] .fa-pr-action:hover { background: var(--d-red-soft); border-color: var(--d-red); color: var(--d-red); }
html[data-theme="dark"] .fa-pr-gal-add { background: #23232f; border-color: var(--d-border-2); }
html[data-theme="dark"] .fa-pr-gal-add:hover { background: #2a2a38; border-color: var(--d-text-3); }
/* Badges obrigatório / recomendada / opcional */
html[data-theme="dark"] .fa-pr-split .req { background: #2a1015; color: #fca5a5; }
html[data-theme="dark"] .fa-pr-split .rec { background: #2a2012; color: #fcd34d; }
html[data-theme="dark"] .fa-pr-split .opt { background: #23232f; color: var(--d-text-2); }
html[data-theme="dark"] .fa-pr-msg--error { background: #2a1015; color: #fca5a5; }

/* Sexo Virtual — FAQ: pergunta estava invisível (texto escuro no dark) */
html[data-theme="dark"] .sv-faq-q { color: #fff; }
html[data-theme="dark"] .sv-faq-a { color: var(--d-text-2); }
html[data-theme="dark"] .sv-faq-item:hover { border-color: rgba(251,44,90,.3); }

/* ═══════════════════════════════════════════════════════════════════
   PREÇOS (/precos/) — page-precos.php (.precos-*)
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .precos { background: var(--d-bg); }
html[data-theme="dark"] .precos-hero h1,
html[data-theme="dark"] .precos-sec h2,
html[data-theme="dark"] .precos-lead strong,
html[data-theme="dark"] .precos-factor h3,
html[data-theme="dark"] .precos-faq__item summary { color: #fff; }
html[data-theme="dark"] .precos-lead,
html[data-theme="dark"] .precos-sub,
html[data-theme="dark"] .precos-factor p,
html[data-theme="dark"] .precos-faq__item p { color: var(--d-text-2); }
html[data-theme="dark"] .precos-bc,
html[data-theme="dark"] .precos-bc a,
html[data-theme="dark"] .precos-note,
html[data-theme="dark"] .precos-table caption,
html[data-theme="dark"] .precos-table thead th,
html[data-theme="dark"] .precos-city span { color: var(--d-text-3); }
html[data-theme="dark"] .precos-table-wrap,
html[data-theme="dark"] .precos-factor,
html[data-theme="dark"] .precos-faq__item { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .precos-table th,
html[data-theme="dark"] .precos-table td { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .precos-table tbody th { color: var(--d-text); }
html[data-theme="dark"] .precos-table tbody th a { color: var(--d-red); }
html[data-theme="dark"] .precos-table__val { color: #4ade80; }
html[data-theme="dark"] .precos-city { background: #23232f; border-color: var(--d-border-2); color: var(--d-text-2); }
html[data-theme="dark"] .precos-city:hover { border-color: var(--d-red); color: var(--d-red); }

/* ═══════════════════════════════════════════════════════════════════
   PÁGINA PADRÃO WP (.fa-page) — page.php (guias, páginas de conteúdo)
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .fa-page { color: var(--d-text); }
html[data-theme="dark"] .fa-page__header { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .fa-page__title,
html[data-theme="dark"] .fa-page__content h1,
html[data-theme="dark"] .fa-page__content h2,
html[data-theme="dark"] .fa-page__content h3,
html[data-theme="dark"] .fa-page__content strong { color: #fff; }
html[data-theme="dark"] .fa-page__meta { color: var(--d-text-3); }
html[data-theme="dark"] .fa-page__content { color: var(--d-text-2); }
html[data-theme="dark"] .fa-page__content a { color: var(--d-red); }
html[data-theme="dark"] .fa-page__content blockquote { color: var(--d-text-2); border-left-color: var(--d-red); }

/* ═══════════════════════════════════════════════════════════════════
   PERFIL — MODAIS (Valores/Localidade/Contato) + caixa SEO silo
   Renderizam fora do escopo .fp → redefine os --fm-* neles.
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .fp-modal,
html[data-theme="dark"] .fp-modal-ct {
  --fm-text: #f2f2f5; --fm-text-2: #a7a7b3; --fm-text-3: #71717f;
  --fm-border: rgba(255,255,255,.08); --fm-bg: #1c1c28; --fm-bg-alt: #23232f;
  --fm-red: #fb2c5a; --fm-red-light: #26121c; --fm-red-bg: #2a1520;
  color: var(--d-text);
}
/* fundos hardcoded #fff dos modais */
html[data-theme="dark"] .fp-modal__box,
html[data-theme="dark"] .fp-modal-ct__box { background: var(--d-card); }
html[data-theme="dark"] .fp-modal__foot-btn,
html[data-theme="dark"] .fp-modal__wa-btn--out,
html[data-theme="dark"] .fp-btn-sched { background: #23232f; color: var(--d-text); border-color: var(--d-border-2); }
html[data-theme="dark"] .fp-modal__title,
html[data-theme="dark"] .fp-modal__pay-title { color: #fff; }
html[data-theme="dark"] .fp-modal__offline-bar { background: #3a3a48; }
/* modal de contato — hardcoded #1a1a1a / #ececec / #f5f5f7 */
html[data-theme="dark"] .fp-modal-ct .fp-modal__title,
html[data-theme="dark"] .fp-modal-ct__num { color: #fff; }
html[data-theme="dark"] .fp-modal-ct .fp-modal__hd,
html[data-theme="dark"] .fp-modal-ct__row { border-bottom-color: var(--d-border); }
html[data-theme="dark"] .fp-modal-ct .fp-modal__close { background: #23232f; color: var(--d-text-2); }
html[data-theme="dark"] .fp-modal-ct .fp-modal__close:hover { background: #2a2a38; }
/* caixa SEO "é uma das acompanhantes..." (reverse-silo) */
html[data-theme="dark"] .fp-silo__txt { background: var(--d-card); border-color: var(--d-border); color: var(--d-text-2); }
html[data-theme="dark"] .fp-silo__txt a { color: var(--d-red); }

/* ═══════════════════════════════════════════════════════════════════
   MOBILE — barra fixa "Chamar no WhatsApp" do perfil (.fp-sticky)
   Renderiza fora do escopo .fp → redefine tokens + fundo escuro.
   ═══════════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .fp-sticky {
  --fm-text: #f2f2f5; --fm-text-2: #a7a7b3; --fm-text-3: #71717f;
  --fm-border: rgba(255,255,255,.08); --fm-bg: #14141d; --fm-bg-alt: #23232f;
  background: #14141d;
  border-top: 1px solid var(--d-border);
  box-shadow: 0 -2px 14px rgba(0,0,0,.55);
  color: var(--d-text);
}
html[data-theme="dark"] .fp-sticky__price strong { color: #fff; }
html[data-theme="dark"] .fp-sticky__sched { background: #23232f; border-color: var(--d-border-2); color: var(--d-text); }

/* ── MOBILE list: coração de favoritar sobre a foto (dark translúcido) ── */
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__actions .fa-fav-btn,
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__img > .fa-fav-btn {
  background: rgba(0,0,0,.55) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: none !important;
}
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__actions .fa-fav-btn.active,
html[data-theme="dark"] .arch-grid[data-view="list"] .arch-card__img > .fa-fav-btn.active {
  color: var(--d-red) !important;
}

/* ═══════════════════════════════════════════════════════════════════
   PREMIUM (/premium/) — landing page-premium.php (.pm-*)
   ═══════════════════════════════════════════════════════════════════ */
/* Seções que eram claras */
html[data-theme="dark"] .pm-plans { background: var(--d-bg-alt); border-top-color: var(--d-border); border-bottom-color: var(--d-border); }
html[data-theme="dark"] .pm-faq { background: var(--d-bg-alt); }
/* Títulos de seção (h2 sem cor própria) */
html[data-theme="dark"] .pm-benefits h2,
html[data-theme="dark"] .pm-plans h2,
html[data-theme="dark"] .pm-compare h2,
html[data-theme="dark"] .pm-faq h2 { color: #fff; }
html[data-theme="dark"] .pm-plans .lead { color: var(--d-text-2); }

/* Cards de benefício */
html[data-theme="dark"] .pm-ben { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .pm-ben:hover { border-color: var(--d-red); }
html[data-theme="dark"] .pm-ben h3 { color: #fff; }
html[data-theme="dark"] .pm-ben p { color: var(--d-text-2); }
html[data-theme="dark"] .pm-ben__ico { background: linear-gradient(135deg,#2a1520,#1c1c28); color: var(--d-red); }

/* Cards de plano */
html[data-theme="dark"] .pm-plan { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .pm-plan:hover,
html[data-theme="dark"] .pm-plan--pop { border-color: var(--d-red); }
html[data-theme="dark"] .pm-plan__nm { color: var(--d-text-2); }
html[data-theme="dark"] .pm-plan__price { color: #fff; }
html[data-theme="dark"] .pm-plan__period { color: var(--d-text-3); }
html[data-theme="dark"] .pm-plan__feats li { color: var(--d-text-2); }
html[data-theme="dark"] .pm-plan__cta { background: transparent; color: var(--d-red); border-color: var(--d-red); }
html[data-theme="dark"] .pm-plan__cta:disabled,
html[data-theme="dark"] .pm-plan__cta.is-off { background: #23232f; color: var(--d-text-3); border-color: var(--d-border-2); }

/* Comparativo Grátis vs Premium */
html[data-theme="dark"] .pm-vs { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .pm-vs--free { background: var(--d-bg-alt); }
html[data-theme="dark"] .pm-vs--prem { background: linear-gradient(135deg,#241016,#1c1c28); border-color: rgba(251,44,90,.3); }
html[data-theme="dark"] .pm-vs--free h3 { color: var(--d-text-2); }
html[data-theme="dark"] .pm-vs li { color: var(--d-text-2); }
html[data-theme="dark"] .pm-vs--free li i { color: var(--d-text-3); }

/* FAQ */
html[data-theme="dark"] .pm-faq__item { background: var(--d-card); border-color: var(--d-border); }
html[data-theme="dark"] .pm-faq__item summary { color: #fff; }
html[data-theme="dark"] .pm-faq__item p { color: var(--d-text-2); }
