/* =====================================================================
   SechsAI — tema tube adulto (bandeira da Alemanha)
   Preto / vermelho / ouro. Tipografia limpa. Densidade alta.
   Decoracoes sobrias (faixa, rauten, linhas) — sem cartoon infantil.
   Estrutura: bierfest-structure.css · Pele: este arquivo.
   ===================================================================== */

:root {
  --bf-paper: #000000;
  --bf-paper-2: #0d0d0d;
  --bf-card: #1b1b1b;
  --bf-ink: #ffffff;
  --bf-ink-2: #c8c8c8;
  --bf-muted: #8a8a8a;
  --bf-line: rgba(255, 255, 255, 0.1);
  --bf-blue: #dd0000;
  --bf-blue-2: #ffcc00;
  --bf-blue-soft: rgba(221, 0, 0, 0.14);
  --bf-pink: #e10600;
  --bf-pink-2: #ff1a1a;
  --bf-pink-soft: rgba(225, 6, 0, 0.14);
  --bf-beer: #ffcc00;
  --bf-beer-soft: rgba(255, 204, 0, 0.16);
  --bf-pretzel: #ffcc00;
  --bf-green: #2fa866;
  --bf-red: #dd0000;
  --bf-radius: 4px;
  --bf-radius-sm: 3px;
  --bf-radius-lg: 6px;
  --bf-radius-pill: 4px;
  --bf-bw: 1px;
  --bf-shadow: none;
  --bf-shadow-lg: none;
  --bf-shadow-sm: none;
  --bf-font-display: "Oswald", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --bf-font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --bf-rauten: url("../img/bierfest/rauten-de.svg");
  --bf-doodles: none;
  --ff-accent: var(--bf-pink);
  --ff-accent-hot: var(--bf-pink-2);
  color-scheme: dark;
}
/* ---------------------------------------------------------------------
   Base
   --------------------------------------------------------------------- */
html,
body {
  background: var(--bf-paper) !important;
  color: var(--bf-ink) !important;
}

body {
  font-family: var(--bf-font) !important;
  -webkit-font-smoothing: antialiased;
}

body *:not(.material-symbols-outlined):not(.material-icons) {
  font-family: var(--bf-font);
}

::selection {
  background: #dd0000;
  color: #fff;
}

#app,
#app .bg-background-dark,
#app .home-view-root,
#app .main-tabs-root,
#app main {
  background: transparent !important;
  color: var(--bf-ink) !important;
}

#app .text-white,
#app [class*="text-white"] {
  color: var(--bf-ink) !important;
}

h1, h2, h3,
.bf-display {
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  text-transform: none;
}

a {
  color: var(--bf-blue-2);
}

@keyframes bf-wobble {
  from, to { transform: none; }
}

* {
  scrollbar-color: #dd0000 transparent;
}

::-webkit-scrollbar-thumb {
  background: #dd0000 !important;
  border-radius: 4px !important;
  border: 3px solid var(--bf-paper) !important;
}

::-webkit-scrollbar-thumb:hover {
  background: #ff1a1a !important;
}

::-webkit-scrollbar-track {
  background: transparent !important;
}

.ff-layout {
  --ff-accent: #dd0000;
  --ff-accent-hot: #ff1a1a;
}

/* Tudo abaixo herda especificidade de ID via :is(), vencendo as regras
   de classe com !important dos CSS de componentes. */
:is(body, #bf-theme) {

/* Zera o brilho herdado: nada de neon, nada de text-shadow. */
#app *,
.login-modal *,
.recharge-modal *,
.site-footer * {
  text-shadow: none !important;
}

/* Fundo: papel creme com doodles bem sutis */

.bf-backdrop {
  position: fixed;
  inset: 0;
  z-index: -1;
  background: #000 !important;
  pointer-events: none;
}

.bf-backdrop::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

/* Filete vermelho do header — definido no bloco Header abaixo */

/* Sem cartoon antigo; o varal realista é reativado mais abaixo */
.home-undress-feed__header:not(.ff-hero)::before,
.home-undress-feed__header:not(.ff-hero)::after,
.home-undress-wait__orb,
.home-undress-wait__rings {
  display: none !important;
  background: none !important;
  content: none !important;
}

.ff-layout .ff-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto auto 0 !important;
  width: 3px !important;
  height: 100% !important;
  background: linear-gradient(180deg, #dd0000, #ffcc00) !important;
  border: 0 !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

.home-undress-wait__orb,
.home-undress-wait__rings {
  display: block !important;
  width: 2.5rem !important;
  height: 2.5rem !important;
  border-radius: 50% !important;
  border: 2px solid var(--bf-pink) !important;
  background: transparent !important;
  animation: none !important;
}


/* Restos decorativos do tema antigo */
.melon-ambient,
.age-gate-fx__stars,
.age-gate-fx__shoot,
.age-gate-fx__sun,
.age-gate-fx__far,
.age-gate-fx__city,
.age-gate-fx__grid,
.age-gate-hud,
.age-gate-foot,
.site-footer__fx-city,
[class*="cy-fx"],
.cyber-cursor,
.cyber-burst {
  display: none !important;
}

/* BotÃ£o cartoon base reutilizÃ¡vel */
.bf-btn,
.ff-genbar__button,
.home-header-signup-button,
.home-stepper__btn--next,
.home-undress-generate,
.home-porn-generate,
.home-shorts-generate,
.grt-generate,
.image-choose-modal__submit,
.home-photo-guide-action {
  font-family: var(--bf-font) !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  text-transform: none !important;
  color: #fff !important;
  background: var(--bf-pink) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
  transition: transform 0.12s ease, box-shadow 0.12s ease, background-color 0.12s ease !important;
}

.bf-btn:hover:not(:disabled),
.ff-genbar__button:hover:not(:disabled),
.home-header-signup-button:hover,
.home-stepper__btn--next:hover:not(:disabled),
.home-undress-generate:hover:not(:disabled),
.home-porn-generate:hover:not(:disabled),
.home-shorts-generate:hover:not(:disabled),
.grt-generate:hover:not(:disabled),
.image-choose-modal__submit:hover:not(:disabled),
.home-photo-guide-action:hover {
  background: var(--bf-pink-2) !important;
  transform: translateY(-1px);
  box-shadow: var(--bf-shadow) !important;
}

.bf-btn:active:not(:disabled),
.ff-genbar__button:active:not(:disabled),
.home-header-signup-button:active,
.home-stepper__btn--next:active:not(:disabled),
.home-undress-generate:active:not(:disabled),
.home-porn-generate:active:not(:disabled),
.grt-generate:active:not(:disabled),
.image-choose-modal__submit:active:not(:disabled) {
  transform: translateY(1px);
  box-shadow: var(--bf-shadow-sm) !important;
}

.ff-genbar__button:disabled,
.home-stepper__btn--next:disabled,
.home-undress-generate:disabled,
.home-porn-generate:disabled,
.grt-generate:disabled,
.image-choose-modal__submit:disabled {
  background: #2a2026 !important;
  color: var(--bf-muted) !important;
  border-color: rgba(243, 230, 216, 0.12) !important;
  box-shadow: none !important;
  cursor: not-allowed;
}

/* BotÃ£o secundÃ¡rio (contorno) */
.bf-btn--ghost,
.home-header-login-button,
.home-stepper__btn--back {
  font-family: var(--bf-font) !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-header-login-button:hover,
.home-stepper__btn--back:hover {
  background: var(--bf-blue-soft) !important;
}

/* Ãcones Material: traÃ§o mais grosso combina com o contorno cartoon */
.material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 600, "GRAD" 0, "opsz" 24;
}

/* ---------------------------------------------------------------------
   Header
   --------------------------------------------------------------------- */
.home-top-bar.ff-topbar,
.home-top-bar {
  background: #0a0a0a !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.home-top-bar.ff-topbar::after {
  display: block !important;
  content: "" !important;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #ff0015, transparent) !important;
  pointer-events: none;
}

.home-top-bar::before {
  display: none !important;
}

.home-menu-button {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 12px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.site-brand-logo__word,
.home-brand-lockup .site-brand-logo__text,
.site-brand-logo__text {
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
  color: var(--bf-ink) !important;
  letter-spacing: 0.01em !important;
}

.site-brand-logo__word::before,
.site-brand-logo__word::after {
  display: none !important;
  content: none !important;
}

.site-brand-logo__text em,
.site-brand-logo__text span,
.site-brand-logo__accent {
  color: #dd0000 !important;
  font-style: normal !important;
  -webkit-text-fill-color: #dd0000 !important;
  background: none !important;
}

.site-brand-logo__mark,
.site-brand-logo img {
  filter: none !important;
  box-shadow: none !important;
}

.home-promo-banner {
  color: #ffcc00 !important;
  background: #141414 !important;
  border: 1px solid rgba(255, 204, 0, 0.45) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  animation: none !important;
}

.home-promo-banner__icon {
  color: #000 !important;
  background: #ffcc00 !important;
  border: 0 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}

.home-promo-banner__label {
  color: #b8b8b8 !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.home-promo-banner__timer {
  color: #ffcc00 !important;
  font-family: var(--bf-font) !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums;
}

.home-coins-button {
  color: var(--bf-ink) !important;
  background: var(--bf-beer-soft) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-coins-button__value {
  color: var(--bf-ink) !important;
  font-weight: 900 !important;
}

/* ---------------------------------------------------------------------
   Toolbar Festhalle (topo) — sem sidebar FF
   --------------------------------------------------------------------- */
.sx-toolbar.ff-rail,
.ff-rail.sx-toolbar {
  background: #0a0a0a !important;
  border-right: 0 !important;
  box-shadow: none !important;
  scrollbar-color: #dd0000 transparent !important;
}

.ff-rail__label {
  color: var(--bf-muted) !important;
  font-family: var(--bf-font) !important;
  font-size: 0.7rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
}

.ff-rail__label::before,
.ff-rail__label::after {
  display: none !important;
}

/* Não aplicar skin “ghost” nos botões IR (imagine.red) */
.home-tab-button:not(.ir-btn) {
  color: var(--bf-ink) !important;
  background: transparent !important;
  border: var(--bf-bw) solid transparent !important;
  border-radius: var(--bf-radius, 4px) !important;
  box-shadow: none !important;
  font-family: var(--bf-font) !important;
  transition: background-color 0.12s ease, border-color 0.12s ease, transform 0.12s ease !important;
}

.home-tab-button::before,
.home-tab-button::after {
  display: none !important;
}

.home-tab-button:not(.ir-btn):hover {
  background: rgba(35, 32, 58, 0.06) !important;
}

.home-tab-button:not(.ir-btn) .home-tab-module-label {
  color: var(--bf-ink) !important;
  font-family: var(--bf-font) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.home-tab-button .home-tab-module-label::after {
  display: none !important;
  content: none !important;
}

.home-tab-module-label.is-cycling {
  opacity: 0;
  transform: translateY(-4px);
}

.home-tab-button .home-tab-module-label {
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.home-tab-button:not(.ir-btn) .home-tab-module-icon {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

.home-tab-button.home-tab-button--active:not(.ir-btn) {
  background: rgba(226, 61, 114, 0.12) !important;
  border-color: rgba(226, 61, 114, 0.45) !important;
  box-shadow: none !important;
}

.home-tab-button.home-tab-button--active:not(.ir-btn) .home-tab-module-icon {
  color: #fff !important;
  background: var(--bf-pink) !important;
}

.home-primary-tab-arrow,
.home-catalog-arrow {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  box-shadow: none !important;
}

/* Categorias (pÃ­lulas) */
.home-catalog-pill {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 800 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.home-catalog-pill--active {
  color: #fff !important;
  background: var(--bf-blue) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

/* ---------------------------------------------------------------------
   Hero de cada aba
   --------------------------------------------------------------------- */
.ff-layout .ff-hero,
.home-undress-feed__header {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow-lg) !important;
  overflow: hidden;
}

.ff-layout .ff-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  height: 10px !important;
  z-index: 0 !important;
  background: var(--bf-rauten) repeat-x left center / 20px 10px !important;
  border-bottom: var(--bf-bw) solid var(--bf-line) !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

.ff-layout .ff-hero::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 1.4rem 1.2rem auto auto !important;
  z-index: 0 !important;
  width: 8.5rem !important;
  height: 4.6rem !important;
  transform: none !important;
  animation: none !important;
  background:
    none!important;
  pointer-events: none;
  opacity: 1 !important;
}

.ff-layout .ff-hero[data-bf-tab="image"]::after {
  background:
    none!important;
}

.home-undress-feed__header:not(.ff-hero) {
  position: relative !important;
}

.home-undress-feed__header:not(.ff-hero)::before,
.home-undress-feed__header:not(.ff-hero)::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 50% !important;
  width: 3.4rem !important;
  height: 3.4rem !important;
  margin-top: -1.7rem;
  background: none!important;
  border: 0 !important;
  box-shadow: none !important;
  animation: none !important;
  pointer-events: none;
}

.home-undress-feed__header:not(.ff-hero)::before {
  left: 1.4rem !important;
  right: auto !important;
  transform: rotate(-10deg) !important;
}

.home-undress-feed__header:not(.ff-hero)::after {
  right: 1.4rem !important;
  left: auto !important;
  transform: rotate(9deg) !important;
  background-image: none!important;
}

.home-undress-feed__header.home-porn-header::after {
  background-image: none!important;
}

@media (max-width: 640px) {
  .home-undress-feed__header:not(.ff-hero)::before,
  .home-undress-feed__header:not(.ff-hero)::after {
    width: 2.2rem !important;
    height: 2.2rem !important;
    margin-top: -1.1rem;
    top: 1.6rem !important;
  }

  .home-undress-feed__header:not(.ff-hero)::before { left: 0.6rem !important; }
  .home-undress-feed__header:not(.ff-hero)::after { right: 0.6rem !important; }
}

.ff-layout .ff-hero h2,
.home-undress-feed__header h2 {
  color: var(--bf-ink) !important;
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
  letter-spacing: 0.005em !important;
  text-transform: none !important;
  -webkit-text-fill-color: currentColor !important;
  background: none !important;
}

.ff-layout .ff-hero h2::after,
.home-undress-feed__header h2::after,
.ff-layout .ff-hero h2::before {
  display: none !important;
  content: none !important;
}

.ff-layout .ff-hero .home-undress-feed__subtitle,
.home-undress-feed__subtitle {
  color: var(--bf-ink-2) !important;
  font-family: var(--bf-font) !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.home-undress-feed__subtitle::before {
  display: none !important;
  content: none !important;
}

.home-undress-feed__badge {
  color: #fff !important;
  background: var(--bf-blue) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
  font-family: var(--bf-font) !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  transform: none;
}

.home-undress-feed__badge * {
  color: #fff !important;
}

.ff-hero__steps li {
  color: var(--bf-ink) !important;
  background: var(--bf-paper) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 800 !important;
}

.ff-hero__step-num {
  color: var(--bf-ink) !important;
  background: var(--bf-beer) !important;
  border: 1px solid var(--bf-line) !important;
  box-shadow: none !important;
  font-weight: 900 !important;
}

/* ---------------------------------------------------------------------
   Cards do feed (vÃ­deo / imagem)
   --------------------------------------------------------------------- */
.ff-layout .feed-card-grid > div,
.ff-layout .home-template-feed-card > div,
.home-image-card__visual-wrap {
  background: #0a0a0a !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: var(--bf-radius, 4px) !important;
  box-shadow: 0 0.45rem 1.2rem rgba(0, 0, 0, 0.4) !important;
}

.ff-layout .home-template-feed-card.feed-card-grid:hover > div,
.home-image-card:hover .home-image-card__visual-wrap {
  border-color: rgba(255, 255, 255, 0.18) !important;
  box-shadow: 0 0.55rem 1.4rem rgba(0, 0, 0, 0.45) !important;
}

.ff-layout .home-template-feed-card.feed-card-grid.is-ff-selected > div,
.ff-layout .home-image-card.is-ff-selected .home-image-card__visual-wrap {
  border-color: rgba(255, 255, 255, 0.22) !important;
  outline: none !important;
  box-shadow: 0 0.55rem 1.4rem rgba(0, 0, 0, 0.5) !important;
}

.ff-layout .is-ff-selected::after {
  color: #fff !important;
  background: #dd0000 !important;
  border: 1px solid rgba(0, 0, 0, 0.35) !important;
  box-shadow: 0 0.2rem 0.45rem rgba(0, 0, 0, 0.35) !important;
}

.home-feed-card-bottom-shade {
  background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.45)) !important;
}

.feed-media-badge,
.feed-media-badge--video,
.feed-media-badge--image {
  background: linear-gradient(155deg, #ff2a2a 0%, #dd0000 48%, #b80000 100%) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: #fff !important;
  box-shadow:
    0 0.28rem 0.7rem rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(221, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
}

.feed-media-badge .material-symbols-outlined {
  color: #fff !important;
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.35));
}

.feed-card-coin-badge,
.home-feed-meta-badges > * {
  color: #fff !important;
  background: rgba(0, 0, 0, 0.72) !important;
  border: 1px solid rgba(221, 0, 0, 0.45) !important;
  box-shadow: none !important;
}

.feed-pagination button,
.feed-pagination a {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

/* ---------------------------------------------------------------------
   Barra flutuante "Gerar"
   --------------------------------------------------------------------- */
.ff-genbar__inner {
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-lg) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.ff-genbar.has-selection .ff-genbar__inner {
  border-color: var(--bf-ink) !important;
  background: var(--bf-pink-soft) !important;
}

.ff-genbar__thumb {
  color: var(--bf-ink) !important;
  background: var(--bf-beer-soft) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
}

.ff-genbar__copy strong {
  color: var(--bf-ink) !important;
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
}

.ff-genbar__copy span {
  color: var(--bf-muted) !important;
  font-weight: 700 !important;
}

.ff-genbar__cost {
  color: var(--bf-ink) !important;
  background: var(--bf-paper-2) !important;
  border: 1.5px solid var(--bf-line) !important;
}

/* ---------------------------------------------------------------------
   Wizards (Tirar roupa, Troca de roupa, Corpo, PornÃ´, Filmes, Shorts)
   --------------------------------------------------------------------- */
.home-stepper__tab,
.stepper-tab {
  color: var(--bf-muted) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: var(--bf-font) !important;
  font-weight: 900 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
}

.home-stepper__tab::before,
.home-stepper__tab::after,
.home-stepper::before,
.home-stepper::after {
  display: none !important;
}

.home-stepper__tab.is-active,
.home-stepper__tab[aria-selected="true"],
.home-stepper__tab.is-done {
  color: var(--bf-ink) !important;
}

.home-stepper__num {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 900 !important;
}

.home-stepper__tab.is-active .home-stepper__num,
.home-stepper__tab[aria-selected="true"] .home-stepper__num {
  color: #fff !important;
  background: var(--bf-pink) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-stepper__tab.is-done .home-stepper__num {
  background: var(--bf-beer) !important;
}

.stepper-progress,
.home-stepper__progress {
  background: rgba(35, 32, 58, 0.12) !important;
  box-shadow: none !important;
}

.home-tool-step,
.home-porn-step,
.home-body-step,
.home-movies-step,
.home-shorts-panel,
.home-porn-section,
.home-movies-section,
.home-grtkniv-panel,
.home-undress-panel {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.home-movies-section::before,
.home-movies-section::after,
.home-tool-step::before,
.home-tool-step::after,
.home-porn-step::before,
.home-porn-step::after,
.home-body-step::before,
.home-body-step::after,
.home-movies-step::before,
.home-movies-step::after,
.home-undress-panel::before,
.home-undress-panel::after {
  display: none !important;
  content: none !important;
}

.home-porn-section__head,
.home-movies-section__head,
.home-shorts-panel__head,
.home-movies-group__head {
  color: var(--bf-ink) !important;
  border-color: rgba(35, 32, 58, 0.12) !important;
}

.home-porn-section__head *,
.home-movies-section__head *,
.home-shorts-panel__head * {
  color: inherit;
}

.home-porn-section__head h3,
.home-movies-section__head h3,
.home-porn-section__head strong,
.home-movies-section__head strong {
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

/* BotÃµes segmentados Imagem | VÃ­deo */
.home-porn-type,
.home-porn-type--bar {
  background: var(--bf-paper) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}

.home-porn-type__btn,
.grt-type-btn {
  color: var(--bf-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

.home-porn-type__btn.is-active,
.home-porn-type__btn[aria-pressed="true"],
.grt-type-btn.is-active {
  color: #fff !important;
  background: var(--bf-blue) !important;
  box-shadow: inset 0 0 0 var(--bf-bw) var(--bf-ink) !important;
}

/* Cards de modelo / estilo / filme */
.home-porn-card,
.home-movies-card,
.grt-porn-preview,
.grt-clothes-preview,
.grt-movie-preview,
.home-movies-preview,
.home-shorts-card {
  background: var(--bf-paper-2) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
  overflow: hidden;
}

.home-porn-card.is-active,
.home-porn-card.is-selected,
.home-porn-card[aria-pressed="true"],
.home-movies-card.is-active,
.home-movies-card.is-selected,
.home-movies-card[aria-pressed="true"] {
  outline: 2px solid var(--bf-pink) !important;
  outline-offset: 2px;
  box-shadow: var(--bf-shadow) !important;
}

.home-porn-card::before,
.home-porn-card::after,
.home-movies-card::before,
.home-movies-card::after {
  box-shadow: none !important;
}

.home-movies-card__name,
.home-porn-card [class*="name"],
.home-porn-card [class*="title"] {
  color: #fff !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.home-porn-rating {
  color: #fff !important;
  background: var(--bf-red) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 900 !important;
}

.home-porn-rating--sfw {
  background: var(--bf-green) !important;
}

/* Tags / chips */
.home-porn-tag,
.porn-tag,
.gen-options__chips button,
.gen-options__chip,
.home-shorts-dot {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 800 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.home-porn-tag.is-active,
.home-porn-tag[aria-pressed="true"],
.porn-tag.is-active,
.gen-options__chips button.is-active,
.gen-options__chip.is-active,
.gen-options__chips [aria-pressed="true"] {
  color: #fff !important;
  background: var(--bf-pink) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-porn-tags__group-label {
  color: var(--bf-muted) !important;
  font-weight: 900 !important;
}

/* Setas de carrossel */
.home-hscroll__arrow,
.home-body-roulette__nav,
.home-shorts-nav,
.home-movies-compose__arrow {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

/* Roleta de corpo */
.home-body-roulette {
  color: var(--bf-ink) !important;
  background: var(--bf-paper) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}

.home-body-roulette__window,
.home-body-roulette__stage {
  background: transparent !important;
  box-shadow: none !important;
}

.home-body-roulette__media,
.home-body-roulette__focus {
  border: var(--bf-bw) solid var(--bf-line) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-body-dim__label {
  color: var(--bf-ink) !important;
  background: var(--bf-beer-soft) !important;
  border: 1px solid var(--bf-line) !important;
  box-shadow: none !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

.home-body-roulette__value,
.home-body-roulette__name {
  color: var(--bf-pink-2) !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

/* Upload / dropzones */
.home-undress-panel__placeholder,
.home-shorts-dropzone,
.grt-face-placeholder,
.home-feed-user-upload-slot {
  color: var(--bf-ink) !important;
  background: var(--bf-paper) !important;
  border: var(--bf-bw) dashed var(--bf-ink) !important;
  box-shadow: none !important;
}

.home-undress-panel__placeholder-icon,
.home-shorts-dropzone__icon,
.grt-face-icon {
  color: var(--bf-ink) !important;
  background: var(--bf-beer) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

/* Comparador antes/depois */
.undress-compare,
.home-undress-panel__frame {
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow) !important;
  background: var(--bf-paper-2) !important;
}

.undress-compare__handle,
.undress-compare [class*="handle"] {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.undress-compare__line,
.undress-compare [class*="divider"] {
  background: var(--bf-card) !important;
  box-shadow: 0 0 0 1px var(--bf-ink) !important;
}

/* Espera de geraÃ§Ã£o */
.home-undress-wait__card {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow-lg) !important;
}

.home-undress-wait__backdrop {
  background: rgba(35, 32, 58, 0.45) !important;
  backdrop-filter: none !important;
}

.home-undress-wait__orb,
.home-undress-wait__rings {
  background: none!important;
  border: 0 !important;
  box-shadow: none !important;
  animation: bf-wobble 1.4s ease-in-out infinite !important;
}

.home-undress-wait__bar {
  background: var(--bf-paper-2) !important;
  border: 1px solid var(--bf-line) !important;
}

.home-undress-wait__bar > * {
  background: var(--bf-pink) !important;
  box-shadow: none !important;
}

.home-creations-notice {
  color: var(--bf-ink) !important;
  background: var(--bf-blue-soft) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: var(--bf-radius, 4px) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

/* ---------------------------------------------------------------------
   Modais (login, recarga, idioma, feedback, escolher foto, pickers)
   --------------------------------------------------------------------- */
.image-choose-modal__backdrop,
.home-photo-guide-backdrop,
.recharge-modal,
.language-modal,
.feedback-modal,
.model-picker-modal,
.style-picker-modal,
.home-menu-drawer-shell {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.login-modal-backdrop {
  background: rgba(0, 0, 0, 0.78) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.image-choose-modal__backdrop {
  background: rgba(0, 0, 0, 0.82) !important;
}

.login-modal-panel {
  color: #fff !important;
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: var(--bf-radius-lg, 6px) !important;
  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.45),
    0 1.75rem 3.5rem rgba(0, 0, 0, 0.62) !important;
  backdrop-filter: none !important;
}

.image-choose-modal__sheet,
.home-photo-guide-sheet,
.recharge-modal__panel,
.recharge-modal__sheet,
.language-modal__panel,
.language-modal__sheet,
.feedback-modal__panel,
.feedback-modal__sheet,
.wallet-statement__panel {
  color: #fff !important;
  background: #0a0a0a !important;
  border: 1.5px solid rgba(221, 0, 0, 0.55) !important;
  border-radius: var(--bf-radius, 4px) !important;
  box-shadow: 0 1.25rem 2.8rem rgba(0, 0, 0, 0.55) !important;
  backdrop-filter: none !important;
}

.login-modal-panel::before,
.login-modal-panel::after,
.image-choose-modal__sheet::before,
.image-choose-modal__sheet::after {
  display: none !important;
  content: none !important;
}

.image-choose-modal__sheet *:not(.material-symbols-outlined) {
  color: inherit;
}

.image-choose-modal__title,
.home-photo-guide-title {
  color: var(--bf-ink) !important;
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
}

.login-modal-label {
  color: #f3ead0 !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
}

.login-modal-tabs {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 0 0 0.85rem !important;
}

.login-modal-tab {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: rgba(255, 255, 255, 0.38) !important;
  box-shadow: none !important;
}

.login-modal-tab.is-active {
  background: transparent !important;
  color: #fff !important;
}

.login-modal-close {
  background: #f3ead0 !important;
  color: #111 !important;
  border: 0 !important;
  border-radius: var(--bf-radius-pill, 4px) !important;
  box-shadow: 0 0.2rem 0.55rem rgba(0, 0, 0, 0.28) !important;
}

.login-modal-close:hover {
  background: #ffcc00 !important;
  color: #111 !important;
}

.login-modal-submit {
  background: #f3ead0 !important;
  color: #111 !important;
  border: 0 !important;
  border-radius: 0.55rem !important;
  box-shadow: 0 0.35rem 0.9rem rgba(0, 0, 0, 0.35) !important;
}

.login-modal-submit:hover:not(:disabled) {
  background: #ffcc00 !important;
  color: #111 !important;
  transform: none !important;
}

.login-modal-submit:disabled {
  opacity: 0.72 !important;
  background: #f3ead0 !important;
  color: #111 !important;
  cursor: not-allowed !important;
}

.login-modal-submit::after {
  display: none !important;
  content: none !important;
}

.login-modal-label::before,
.login-modal-kicker::before {
  display: none !important;
  content: none !important;
}

.login-modal-subtitle,
.login-modal-hint,
.image-choose-modal__subtitle,
.home-photo-guide-subtitle {
  color: var(--bf-ink-2) !important;
  font-weight: 600 !important;
}

.login-modal-input {
  color: #fff !important;
  background: #0a0a0a !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 0.55rem !important;
  box-shadow: none !important;
  font-weight: 500 !important;
  min-height: 3rem !important;
}

.login-modal-input::placeholder {
  color: rgba(255, 255, 255, 0.34) !important;
}

.login-modal-input:focus {
  outline: none !important;
  border-color: rgba(243, 234, 208, 0.55) !important;
  background: #080808 !important;
  box-shadow: 0 0 0 3px rgba(243, 234, 208, 0.12) !important;
}

.login-modal-forgot {
  color: #f3ead0 !important;
}

.login-modal-legal a {
  color: #f3ead0 !important;
}

.feedback-modal textarea,
.feedback-modal input,
input.bf-input {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: var(--bf-radius, 4px) !important;
  box-shadow: none !important;
  font-family: var(--bf-font) !important;
  font-weight: 700 !important;
}

.login-modal-password-toggle {
  color: rgba(255, 255, 255, 0.45) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0.3rem !important;
  box-shadow: none !important;
}

.login-modal-input-wrap::after {
  display: none !important;
  content: none !important;
}

.image-choose-modal__close,
.home-photo-guide-close {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}

.image-choose-modal__close:hover,
.home-photo-guide-close:hover {
  background: var(--bf-pink-soft) !important;
}

/* Reset claro dentro dos painÃ©is secundÃ¡rios. Especificidade baixa de
   propÃ³sito (:where), para que as regras de componente abaixo venÃ§am. */
:where(#menu-drawer .home-menu-drawer, #language-modal, #recharge-modal .recharge-modal-sheet,
  #feedback-modal, #image-choose-modal .image-choose-modal__sheet,
  #photo-guide-modal .home-photo-guide-sheet, .wallet-statement, #admin-panel, .favorites-view)
  :where(*:not(img, video, svg, svg *, canvas, [class*="icon"], [class*="flag"], [class*="logo"],
    [class*="qr"], [class*="thumb"], [class*="img"], [class*="media"], [class*="preview"], [class*="avatar"],
    .bf-stein, .bf-stein *, [class*="stein"])) {
  background-color: transparent !important;
  background-image: none !important;
  color: var(--bf-ink) !important;
  border-color: rgba(35, 32, 58, 0.16) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.cy-scene,
[class^="cy-scene"] {
  display: none !important;
}

/* PainÃ©is */
#menu-drawer .home-menu-drawer,
#language-modal,
#recharge-modal .recharge-modal-sheet,
.wallet-statement-panel,
.favorites-view {
  color: var(--bf-ink) !important;
  background: var(--bf-paper) !important;
}

#menu-drawer .home-menu-drawer {
  border-right: var(--bf-bw) solid var(--bf-line) !important;
  box-shadow: var(--bf-shadow-lg) !important;
}

#recharge-modal .recharge-modal-sheet,
#feedback-modal [class*="panel"],
#feedback-modal [class*="sheet"] {
  background: var(--bf-paper) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow-lg) !important;
}

/* Style picker: keep dark IR sheet (not bierfest paper) */
#style-picker-modal .style-picker-modal__sheet {
  color: #fff !important;
  background:
    radial-gradient(ellipse 80% 45% at 50% 0%, rgba(221, 0, 0, 0.1), transparent 55%),
    linear-gradient(180deg, #121212 0%, #0a0a0a 48%, #070707 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 1.25rem !important;
  box-shadow:
    0 0 0 1px rgba(221, 0, 0, 0.12),
    0 1.75rem 3.5rem rgba(0, 0, 0, 0.65) !important;
}

#style-picker-modal .style-picker-modal__backdrop {
  background:
    radial-gradient(ellipse 55% 45% at 50% 42%, rgba(221, 0, 0, 0.14), transparent 70%),
    rgba(0, 0, 0, 0.9) !important;
}

#style-picker-modal .style-picker-modal__tab.is-active,
#style-picker-modal .style-picker-modal__generate,
#style-picker-modal .style-picker-modal__card.is-active .style-picker-modal__card-label {
  background: #dd0000 !important;
  color: #fff !important;
  border-color: #dd0000 !important;
}

/* Persona picker: keep dark IR sheet (not bierfest paper) */
#model-picker-modal .model-picker-modal__sheet {
  color: #fff !important;
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(221, 0, 0, 0.1), transparent 55%),
    linear-gradient(180deg, #121212 0%, #0a0a0a 48%, #070707 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 1.25rem !important;
  box-shadow:
    0 0 0 1px rgba(221, 0, 0, 0.12),
    0 1.75rem 3.5rem rgba(0, 0, 0, 0.65) !important;
}

#model-picker-modal .model-picker-modal__backdrop {
  background:
    radial-gradient(ellipse 55% 45% at 50% 42%, rgba(221, 0, 0, 0.14), transparent 70%),
    rgba(0, 0, 0, 0.9) !important;
}

#model-picker-modal .model-picker-card.is-centered.is-selected {
  border-color: #dd0000 !important;
  box-shadow:
    0 0 0 1px rgba(221, 0, 0, 0.55),
    0 0 2rem rgba(221, 0, 0, 0.32),
    0 1.25rem 2.5rem rgba(0, 0, 0, 0.5) !important;
}

#model-picker-modal .model-picker-modal__generate {
  background: #dd0000 !important;
  color: #fff !important;
  border: 0 !important;
}

.home-menu-drawer-backdrop,
.recharge-modal-backdrop,
#feedback-modal [class*="backdrop"],
#language-modal [class*="backdrop"] {
  background: rgba(0, 0, 0, 0.78) !important;
  backdrop-filter: none !important;
}

/* CartÃµes internos */
.home-menu-account-card,
.home-menu-coins-card,
.home-menu-list,
.home-menu-bottom-list,
.home-menu-affiliate,
.language-option,
.recharge-package,
.recharge-pix-amount-card,
.recharge-pix-qr-frame,
.wallet-statement-card,
.wallet-statement-entry {
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-menu-item {
  border-color: rgba(35, 32, 58, 0.12) !important;
}

.home-menu-item:hover,
.language-option:hover {
  background: var(--bf-beer-soft) !important;
}

.home-menu-item-icon {
  color: var(--bf-pink-2) !important;
}

.home-menu-item-title,
.language-option-label {
  font-weight: 800 !important;
}

.home-menu-section__label,
.home-menu-account-kicker,
.home-menu-affiliate__kicker,
.cy-page-kicker,
.recharge-summary-kicker,
.recharge-method-picker__label {
  color: var(--bf-pink-2) !important;
  font-weight: 900 !important;
  letter-spacing: 0.1em !important;
}

.home-menu-coins-card__title,
.language-modal-title,
#recharge-modal-title,
.recharge-pix-heading,
.wallet-statement-title {
  font-family: var(--bf-font-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
}

.home-menu-coins-card__badge,
.recharge-package-bonus,
.recharge-pix-badge {
  color: var(--bf-ink) !important;
  background: var(--bf-beer) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  font-weight: 900 !important;
}

.home-menu-coins-card__badge--recharge {
  color: #fff !important;
  background: var(--bf-pink) !important;
}

.home-menu-close-button,
.language-modal-back,
.recharge-modal-close,
.recharge-pix-back,
.wallet-statement-back,
#feedback-modal [class*="close"] {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}

#style-picker-modal .style-picker-modal__close {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.07) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

#model-picker-modal .model-picker-modal__close {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.07) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

.home-menu-account-login,
.home-menu-drawer .home-login-entry-button {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.home-menu-drawer-header {
  border-bottom: var(--bf-bw) solid var(--bf-line) !important;
}

/* Selecionados */
.language-option.is-selected,
.recharge-package.is-selected {
  background: var(--bf-pink-soft) !important;
  outline: 2px solid var(--bf-pink) !important;
  outline-offset: 2px;
}

.language-option-check,
.recharge-package-check {
  color: var(--bf-pink-2) !important;
}

.language-option:not(.is-selected) .language-option-check,
.recharge-package:not(.is-selected) .recharge-package-check {
  visibility: hidden !important;
}

@media (min-width: 1024px) {
  #menu-drawer .home-menu-drawer {
    border: var(--bf-bw) solid var(--bf-line) !important;
    border-radius: 6px !important;
    box-shadow: var(--bf-shadow-lg) !important;
  }
}

.language-option-code,
.recharge-package-original,
.recharge-summary-original {
  color: var(--bf-muted) !important;
}

.recharge-package-coins,
.recharge-package-price,
.recharge-summary-price,
.recharge-pix-amount-value {
  font-weight: 900 !important;
}

.recharge-method-option,
.recharge-card-provider__option,
.wallet-statement-tab {
  background: var(--bf-card) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  font-weight: 800 !important;
}

.recharge-method-option.is-active,
.recharge-card-provider__option.is-active,
.wallet-statement-tab.is-active {
  color: #fff !important;
  background: var(--bf-blue) !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.recharge-method-option.is-active *,
.wallet-statement-tab.is-active * {
  color: #fff !important;
}

.recharge-pay-button,
.recharge-pix-copy-button,
.wallet-statement-card__cta,
.home-menu-account-signup {
  color: #fff !important;
  background: var(--bf-pink) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow) !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
}

.recharge-pay-button *,
.recharge-pix-copy-button * {
  color: #fff !important;
}

.recharge-pix-code-input {
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 12px !important;
}

.face-creator__hud,
.face-creator__hud-scan {
  display: none !important;
}

/* Como funciona */
.home-photo-guide-step {
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
  overflow: hidden;
}

.home-photo-guide-step-index {
  color: var(--bf-ink) !important;
  background: var(--bf-beer) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  font-weight: 900 !important;
}

.home-photo-guide-copy h3,
.home-photo-guide-copy strong {
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
}

.home-photo-guide-example {
  border-right: var(--bf-bw) solid var(--bf-line) !important;
}

.wallet-statement-entry__coins--positive {
  color: var(--bf-green) !important;
}

.wallet-statement-entry__coins--negative {
  color: var(--bf-red) !important;
}

/* ---------------------------------------------------------------------
   Age gate — vídeo + vinheta + conteúdo IR flutuante
   --------------------------------------------------------------------- */
.age-gate-modal {
  background: #000 !important;
  backdrop-filter: none !important;
}

.age-gate-panel {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.age-gate-panel::before {
  display: none !important;
  content: none !important;
  background: none !important;
}

.age-gate-stein-wrap,
.age-gate-kicker,
.age-gate-hud,
.age-gate-foot {
  display: none !important;
}

.age-gate-fx {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  background: #000 !important;
}

.age-gate-video {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  pointer-events: none !important;
}

.age-gate-fx--video::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(
      ellipse 78% 68% at 50% 42%,
      rgba(0, 0, 0, 0.42) 0%,
      rgba(0, 0, 0, 0.68) 58%,
      rgba(0, 0, 0, 0.88) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.58) 0%,
      rgba(0, 0, 0, 0.38) 35%,
      rgba(0, 0, 0, 0.72) 100%
    ) !important;
}

.age-gate-card,
.age-gate-card--ir,
.age-gate-card--minimal {
  width: min(100%, 32rem) !important;
  max-width: 32rem !important;
  padding: 0 !important;
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  overflow: visible !important;
}

.age-gate-card::before,
.age-gate-card::after {
  display: none !important;
  content: none !important;
}

.age-gate-brand {
  margin-bottom: 1.15rem !important;
}

.age-gate-brand .site-brand-logo--age-gate {
  flex-direction: row !important;
  gap: 0.45rem !important;
}

.age-gate-brand .site-brand-logo--age-gate .site-brand-logo__mark {
  width: clamp(2.1rem, 6vw, 2.6rem) !important;
  height: clamp(2.1rem, 6vw, 2.6rem) !important;
}

.age-gate-brand .site-brand-logo--age-gate .site-brand-logo__word {
  font-size: clamp(1.4rem, 3.5vw, 1.75rem) !important;
}

.age-gate-title {
  color: #fff !important;
  font-family: var(--bf-font) !important;
  font-weight: 800 !important;
  margin: 0 0 0.75rem !important;
  font-size: clamp(1.65rem, 4.5vw, 2.2rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
  max-width: 26rem !important;
}

.age-gate-lead {
  color: rgba(255, 255, 255, 0.78) !important;
  font-weight: 500 !important;
}

.age-gate-confirm-intro {
  color: #fff !important;
  font-weight: 700 !important;
}

.age-gate-bullets {
  color: rgba(255, 255, 255, 0.68) !important;
}

.age-gate-actions {
  gap: 0.7rem !important;
  width: min(100%, 26rem) !important;
}

.age-gate-btn {
  min-height: 3.2rem !important;
  font-size: clamp(0.76rem, 2.2vw, 0.88rem) !important;
  border-radius: var(--bf-radius, 4px) !important;
}

.age-gate-btn--confirm {
  background: #dd0000 !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 0.45rem 1.2rem rgba(0, 0, 0, 0.35) !important;
}

.age-gate-btn--confirm:hover {
  background: #ff1a1a !important;
  color: #fff !important;
}

.age-gate-btn--deny {
  background: rgba(0, 0, 0, 0.28) !important;
  border: 1.5px solid rgba(221, 0, 0, 0.9) !important;
  color: #ff4d4d !important;
  box-shadow: none !important;
}

.age-gate-btn--deny:hover {
  background: rgba(221, 0, 0, 0.12) !important;
  border-color: #ff1a1a !important;
  color: #ff6b6b !important;
}

/* ---------------------------------------------------------------------
   SuperfÃ­cies escuras herdadas -> papel
   --------------------------------------------------------------------- */
.home-movies-grid,
.home-movies-grid-wrap,
.home-body-roulettes,
.home-body-options,
.home-porn-tags,
.home-movies-compose,
.home-image-card,
.home-all-feed-item.feed-slot {
  background: transparent !important;
  box-shadow: none !important;
}

.home-all-feed-item.feed-slot .home-feed-media,
.home-feed-media,
.home-movies-card__fallback,
.home-image-card__img,
.undress-compare__frame,
.home-feed-video-frame-thumb {
  background-color: var(--bf-paper-2) !important;
}

.home-movies-card.is-selected::before,
.home-body-option-card.is-selected::before,
.home-undress-feed .home-movies-card::before {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  -webkit-mask: none !important;
  mask: none !important;
}

.home-undress-feed .home-movies-card.is-selected::after {
  content: "\2713" !important;
  color: #fff !important;
  background: var(--bf-pink) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
  font: 900 0.85rem/1 var(--bf-font) !important;
}

.home-movies-card__fallback,
.home-movies-card__fallback .material-symbols-outlined {
  color: var(--bf-muted) !important;
}

.home-movies-card__media,
.home-porn-card img {
  filter: none !important;
}

.home-movies-card__name,
.home-porn-rating-desc {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.7) !important;
}

.home-movies-card__sound {
  color: var(--bf-ink) !important;
  background: var(--bf-beer) !important;
  border: 1px solid var(--bf-line) !important;
  box-shadow: none !important;
}

.home-movies-section .material-symbols-outlined,
.home-tool-step .material-symbols-outlined {
  color: inherit;
}

.home-movies-group__head,
.home-movies-group__head * {
  color: var(--bf-ink) !important;
}

.home-tool-step h3,
.home-tool-step p,
.home-movies-section h3,
.home-movies-section p,
.home-porn-section h3,
.home-porn-section p {
  color: var(--bf-ink);
}

.home-tool-step h3,
.home-movies-section h3 {
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
  font-size: 1.15rem !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

.home-tool-step h3 + p,
.home-movies-section h3 + p {
  color: var(--bf-muted) !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* Comparador antes/depois: legenda */
.undress-compare__caption {
  color: var(--bf-ink-2) !important;
  font-weight: 800 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.undress-compare__caption::before {
  display: none !important;
  content: none !important;
}

.undress-compare__legend-item {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.undress-compare__legend-item--before {
  background: var(--bf-blue-soft) !important;
}

.undress-compare__legend-item--after {
  background: var(--bf-pink-soft) !important;
}

.undress-compare {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.undress-compare__frame {
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow) !important;
}

/* Dropzone (foto do usuÃ¡rio) */
.home-shorts-dropzone,
.home-shorts-dropzone * {
  color: var(--bf-ink) !important;
}

.home-shorts-dropzone {
  background: var(--bf-card) !important;
  border: var(--bf-bw) dashed var(--bf-ink) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}

.home-shorts-dropzone:hover {
  background: var(--bf-beer-soft) !important;
}

.home-shorts-dropzone strong {
  color: var(--bf-pink-2) !important;
}

.home-shorts-dropzone__icon {
  color: var(--bf-ink) !important;
}

/* Shorts: controles */
.home-shorts-controls {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-shorts-controls *:not(.material-symbols-outlined) {
  color: var(--bf-ink);
}

#app select,
.home-shorts-controls select {
  color: var(--bf-ink) !important;
  background-color: var(--bf-paper) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  font-weight: 800 !important;
}

.home-shorts-kicker,
.home-shorts-title,
.home-shorts-sub,
.home-shorts-copy * {
  color: var(--bf-ink) !important;
}

.home-shorts-title {
  font-family: var(--bf-font-display) !important;
  font-weight: 600 !important;
}

/* Cards de imagem (aba Imagem) */
.home-image-card__badge {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: 1px solid var(--bf-line) !important;
  box-shadow: none !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* Roleta de corpo: rÃ³tulo sem caixa */
.home-body-dim__label {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  font-size: 0.82rem !important;
  line-height: 1.15 !important;
}

/* Badge do Shorts reaproveita o selo azul */
.home-undress-feed__badge.home-shorts-kicker,
.home-undress-feed__badge.home-shorts-kicker * {
  color: #fff !important;
}

/* Carregar mais */
.home-feed-load-more__btn {
  color: #fff !important;
  background: #dd0000 !important;
  border: 1.5px solid #dd0000 !important;
  border-radius: var(--bf-radius, 4px) !important;
  box-shadow: 0 0.45rem 1.25rem rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(221, 0, 0, 0.25) !important;
  padding: 0.8rem 1.65rem !important;
  font-size: 0.82rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  transition: background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease !important;
}

.home-feed-load-more__btn:hover {
  color: #fff !important;
  background: #ff1a1a !important;
  border-color: #ff1a1a !important;
  box-shadow: 0 0.55rem 1.4rem rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 26, 26, 0.35) !important;
  transform: translateY(-2px) !important;
}

.home-feed-load-more__btn:active {
  transform: translateY(0) !important;
  background: #b80000 !important;
  border-color: #b80000 !important;
}

.home-feed-load-more__btn * {
  color: inherit !important;
}

.home-feed-load-more__btn .material-symbols-outlined {
  font-size: 1.25rem !important;
  transition: transform 0.16s ease;
}

.home-feed-load-more__btn:hover .material-symbols-outlined {
  transform: translateY(2px);
}

/* Sub-abas de ediÃ§Ã£o (Tirar roupa / Troca / Corpo) */
.home-photo-modes {
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.home-photo-mode {
  color: var(--bf-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 900 !important;
}

.home-photo-mode * {
  color: inherit !important;
}

.home-photo-mode.is-active {
  color: #fff !important;
  background: var(--bf-pink) !important;
  box-shadow: inset 0 0 0 var(--bf-bw) var(--bf-ink) !important;
}

.home-photo-mode__index {
  display: none !important;
}

/* ---------------------------------------------------------------------
   Rodapé — faixa minimal (acentos bierfest)
   --------------------------------------------------------------------- */
.site-footer {
  margin-top: 2rem !important;
  padding-top: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  --sf-bg: #080808;
  --sf-ink: #f5f5f5;
  --sf-muted: rgba(255, 255, 255, 0.55);
  --sf-hairline: rgba(255, 255, 255, 0.1);
  --sf-accent: #ff0015;
  --sf-chip: rgba(255, 255, 255, 0.06);
  --sf-chip-border: rgba(255, 255, 255, 0.12);
  --sf-radius: 4px;
  --sf-ui: Outfit, Oswald, "Segoe UI", system-ui, sans-serif;
  background: #080808 !important;
  color: #f5f5f5 !important;
  font-family: Outfit, Oswald, "Segoe UI", system-ui, sans-serif !important;
}

.site-footer::before {
  display: block !important;
  content: "" !important;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #ff0015, transparent) !important;
  pointer-events: none;
}

.site-footer::after,
.site-footer__fx,
.site-footer__clothesline,
.site-footer__accent {
  display: none !important;
  content: none !important;
  height: 0 !important;
  opacity: 0 !important;
}

.site-footer__tagline::before,
.site-footer__tagline::after,
.site-footer__link::before {
  display: none !important;
  content: none !important;
}

.site-footer__tagline {
  color: rgba(255, 255, 255, 0.55) !important;
  font-family: Outfit, Oswald, "Segoe UI", system-ui, sans-serif !important;
  font-weight: 500 !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

.site-footer__link {
  color: rgba(255, 255, 255, 0.55) !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  border-radius: 4px !important;
}

.site-footer__link:hover {
  color: #ff0015 !important;
  background: rgba(255, 0, 21, 0.08) !important;
  transform: none !important;
}

.site-footer__r18-box {
  color: #fff !important;
  background: #ff0015 !important;
  border: 0 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-weight: 800 !important;
}

.site-footer__r18-text {
  color: rgba(255, 255, 255, 0.55) !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.site-footer__payment-logos img {
  filter: none !important;
  opacity: 0.92;
  padding: 0.35rem 0.55rem !important;
  border-radius: 4px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12) !important;
}

.site-footer__payment-logos .site-footer__visa-logo {
  filter: brightness(0) invert(1) !important;
  opacity: 0.75;
}

.site-footer__pix-logo {
  display: none !important;
}

.site-footer__copy,
.site-footer__copy-tag {
  color: rgba(255, 255, 255, 0.38) !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

/* ---------------------------------------------------------------------
   Páginas secundárias (sobre, categorias, templates, legal) — visual IR
   --------------------------------------------------------------------- */
.landing-page,
.legal-page,
.landing-page-body,
.legal-page-body {
  color: #fff !important;
  background: #000 !important;
}

.secondary-header {
  background: rgba(10, 10, 10, 0.88) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.secondary-header__lang,
.secondary-header__home {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

.secondary-header__lang:hover,
.secondary-header__home:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: #f3ead0 !important;
}

.landing-page__header,
.legal-page__header,
.landing-page__back,
.legal-page__back {
  display: none !important;
}

.landing-page__main h1,
.landing-page__main h2,
.legal-page__content h1,
.affiliate-page .aff-hero h1,
.affiliate-page .aff-section h2 {
  color: #fff !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  text-transform: none !important;
}

.legal-page__content h2,
.legal-page__content p strong:only-child {
  color: #dd0000 !important;
}

.landing-page__main p,
.legal-page__content p,
.legal-page__content li {
  color: rgba(255, 255, 255, 0.72) !important;
}

.legal-page__content a {
  color: #ffcc00 !important;
}

.legal-page__content strong {
  color: #fff !important;
}

.landing-page__cta {
  color: #fff !important;
  background: #dd0000 !important;
  border: 0 !important;
  border-radius: 0.5rem !important;
  box-shadow: none !important;
  font-weight: 800 !important;
}

.landing-page__cta:hover {
  background: #ff1a1a !important;
}

.landing-page__cta--secondary {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.landing-page__faq details,
.landing-page__featured,
.landing-card,
.legal-page__content {
  background: #141414 !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 0.5rem !important;
  box-shadow: none !important;
}

.landing-page__affiliate-field input,
.landing-page__main input,
.legal-page__main input {
  color: #fff !important;
  background: #0a0a0a !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 0.5rem !important;
  font-weight: 500 !important;
}

.landing-page__tag {
  color: #f3ead0 !important;
  background: transparent !important;
  border: 1px solid rgba(221, 0, 0, 0.4) !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}

.landing-page__tag:hover {
  background: rgba(221, 0, 0, 0.12) !important;
  border-color: rgba(255, 204, 0, 0.45) !important;
  color: #ffcc00 !important;
}

.landing-page__faq summary {
  font-weight: 700 !important;
  color: #fff !important;
}

.landing-card__play {
  color: #fff !important;
  background: #dd0000 !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 4px !important;
}

.landing-card__play * {
  color: #fff !important;
}

.landing-card__media {
  background-color: #0a0a0a !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

h1 *, h2 *, h3 * {
  font-family: inherit !important;
}

/* ---------------------------------------------------------------------
   Funil (Crie sua IA)
   --------------------------------------------------------------------- */
:where(.funil-body, .login-modal--funil .login-modal-panel)
  :where(*:not(img, video, svg, svg *, [class*="icon"], [class*="logo"], [class*="media"],
    [class*="video"], [class*="avatar"], [class*="coin"])) {
  background-color: transparent !important;
  background-image: none !important;
  color: var(--bf-ink) !important;
  border-color: rgba(35, 32, 58, 0.16) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-text-fill-color: currentColor !important;
}

.funil-page,
.funil-body {
  color: var(--bf-ink) !important;
  background: var(--bf-paper) !important;
}

.funil-bg,
.funil-summary__bg,
.funil-summary__overlay {
  display: none !important;
}

.funil-header {
  background: var(--bf-card) !important;
  border-bottom: var(--bf-bw) solid var(--bf-line) !important;
}

.funil-phase-bar {
  background: rgba(35, 32, 58, 0.12) !important;
  border-radius: 4px !important;
}

.funil-phase-bar > * {
  background: var(--bf-pink) !important;
}

.funil-phase,
.funil-phase * {
  color: var(--bf-muted) !important;
  font-weight: 800 !important;
}

.funil-phase.is-active,
.funil-phase.is-done,
.funil-phase.is-active *,
.funil-phase.is-done * {
  color: var(--bf-pink-2) !important;
}

.funil-step,
.funil-summary__shell {
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow-lg) !important;
}

.funil-carousel::before {
  background: linear-gradient(90deg, #fff, rgba(255, 255, 255, 0)) !important;
}

.funil-carousel::after {
  background: linear-gradient(270deg, #fff, rgba(255, 255, 255, 0)) !important;
}

.funil-step__title,
.funil-step-title,
.funil-finish__title,
.funil-summary__title,
.funil-login-hero__title {
  color: var(--bf-ink) !important;
  font-family: var(--bf-font-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
}

.funil-login-hero__accent,
.funil-step__title em,
.funil-step__title span {
  color: var(--bf-pink) !important;
}

.funil-step__subtitle,
.funil-step-subtitle,
.funil-carousel__hint {
  color: var(--bf-muted) !important;
  font-weight: 700 !important;
}

.funil-card,
.funil-summary-card {
  background: var(--bf-paper-2) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 6px !important;
  box-shadow: var(--bf-shadow) !important;
  filter: none !important;
}

.funil-card.is-selected,
.funil-card.is-active,
.funil-card[aria-pressed="true"] {
  outline: 2px solid var(--bf-pink) !important;
  outline-offset: 3px;
}

.funil-card__media,
.funil-summary-card__media {
  background-color: var(--bf-paper-2) !important;
}

.funil-card__label,
.funil-summary-card__label {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 4px !important;
  font-weight: 900 !important;
}

.funil-card.is-selected .funil-card__label,
.funil-card.is-active .funil-card__label {
  color: #fff !important;
  background: var(--bf-pink) !important;
}

.funil-card__check {
  color: #fff !important;
  background: var(--bf-pink) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
}

.funil-footer {
  background: var(--bf-card) !important;
  border-top: var(--bf-bw) solid var(--bf-line) !important;
}

.funil-nav--next,
.funil-next,
.funil-finish__cta,
.funil-login-submit {
  color: #fff !important;
  background: var(--bf-pink) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow) !important;
  font-weight: 900 !important;
}

.funil-nav--next *,
.funil-next *,
.funil-finish__cta *,
.funil-login-submit * {
  color: #fff !important;
}

.funil-nav--back,
.funil-back,
.funil-nav--shuffle,
.funil-shuffle,
.funil-dice {
  color: var(--bf-ink) !important;
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bf-shadow-sm) !important;
}

.funil-login-input {
  background: var(--bf-card) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 14px !important;
}

.funil-login-review,
.funil-login-feature,
.funil-login-urgency {
  background: var(--bf-card) !important;
  border: 1px solid var(--bf-line) !important;
  border-radius: 14px !important;
}

.funil-login-review__stars {
  color: var(--bf-beer) !important;
}

.funil-login-hero__badge {
  color: #fff !important;
  background: var(--bf-blue) !important;
  border: var(--bf-bw) solid var(--bf-line) !important;
  border-radius: 4px !important;
}

.funil-summary__loading-bar {
  background: var(--bf-paper-2) !important;
  border: 1px solid var(--bf-line) !important;
}

.funil-summary__loading-bar > * {
  background: var(--bf-pink) !important;
}

/* ---------------------------------------------------------------------
   Mobile
   --------------------------------------------------------------------- */
@media (max-width: 1023px) {
  .ff-rail,
  .ir-shell.ff-rail {
    background: transparent !important;
    border-right: 0 !important;
    position: relative !important;
  }

  .ir-shell .home-primary-tab-row,
  .ir-shell .ir-row--primary {
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .ir-shell .ir-btn .home-tab-module-label {
    color: inherit !important;
    font-weight: 700 !important;
  }

  .ir-filters.catalog-row,
  .ir-filters .home-catalog-bar {
    background: transparent !important;
    box-shadow: none !important;
  }

  .home-tab-button.home-tab-button--active:not(.ir-btn) {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }

  .home-tab-button.home-tab-button--active:not(.ir-btn) .home-tab-module-icon {
    box-shadow: var(--bf-shadow-sm) !important;
  }

  .ff-layout .ff-hero::after {
    width: 5.6rem !important;
    height: 3rem !important;
    inset: 1.3rem 0.8rem auto auto !important;
    background:
      none!important;
  }

  .ff-genbar__inner {
    border-radius: 6px !important;
  }
}


/* ---- overrides finais tube DE ---- */
.ff-layout .ff-hero::after,
.ff-layout .ff-hero[data-bf-tab="image"]::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  right: 1rem !important;
  top: 50% !important;
  left: auto !important;
  bottom: auto !important;
  width: min(42%, 18rem) !important;
  height: 3.6rem !important;
  margin-top: -1.8rem;
  background: url("../img/bierfest/clothesline-realistic.jpg") right center / auto 100% no-repeat !important;
  opacity: 0.55 !important;
  mix-blend-mode: lighten;
  pointer-events: none;
  filter: saturate(0.9);
}

.home-undress-feed__header:not(.ff-hero)::before,
.home-undress-feed__header:not(.ff-hero)::after {
  display: none !important;
  content: none !important;
  background: none !important;
  width: 0 !important;
  height: 0 !important;
}

.age-gate-card::after {
  display: none !important;
  content: none !important;
}

.ff-layout .ff-hero::before {
  inset: 0 auto auto 0 !important;
  width: 3px !important;
  height: 100% !important;
  background: linear-gradient(180deg, #dd0000, #ffcc00) !important;
  border: 0 !important;
}

.home-top-bar.ff-topbar,
.ff-rail,
.ff-genbar__inner,
.login-modal-panel {
  box-shadow: none !important;
}

.home-feed-load-more__btn:hover {
  transform: translateY(-2px) !important;
}

.home-promo-banner,
.home-promo-banner--clock {
  color: #ffcc00 !important;
  background: #141414 !important;
  border: 1px solid rgba(255, 204, 0, 0.45) !important;
}

.site-footer__clothesline,
.site-footer__accent {
  display: none !important;
  height: 0 !important;
  background: none !important;
}

/* ---- Card de oferta da sidebar (adulto / DE) ---- */
.ff-rail__promo {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 3.25rem 1fr !important;
  grid-template-areas:
    "media copy"
    "cta cta" !important;
  gap: 0.5rem 0.7rem !important;
  margin: auto 0.75rem 0.85rem !important;
  padding: 0.85rem 0.8rem 0.8rem !important;
  overflow: hidden !important;
  color: #fff !important;
  text-align: left !important;
  cursor: pointer !important;
  background: #111 !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  transition: border-color 0.15s ease, background-color 0.15s ease !important;
}

.ff-rail__promo::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #000 0 33.33%, #dd0000 33.33% 66.66%, #ffcc00 66.66% 100%) !important;
  pointer-events: none !important;
}

.ff-rail__promo::after {
  display: none !important;
}

.ff-rail__promo:hover {
  border-color: #dd0000 !important;
  background: #161616 !important;
}

.ff-rail__promo-media {
  grid-area: media !important;
  display: grid !important;
  place-items: center !important;
  width: 3.25rem !important;
  height: 3.25rem !important;
  border-radius: 3px !important;
  border: 1px solid rgba(255, 204, 0, 0.35) !important;
  background:
    linear-gradient(135deg, #000 0 34%, #dd0000 34% 67%, #ffcc00 67% 100%) !important;
  box-shadow: none !important;
}

.ff-rail__promo-media > span {
  display: grid !important;
  place-items: center !important;
  width: 2.15rem !important;
  height: 2.15rem !important;
  border-radius: 2px !important;
  background: rgba(0, 0, 0, 0.72) !important;
  color: #ffcc00 !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1 !important;
}

.ff-rail__promo-icon,
.ff-rail__promo-tag {
  display: none !important;
}

.ff-rail__promo-copy {
  grid-area: copy !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 0.18rem !important;
  min-width: 0 !important;
  padding: 0 !important;
}

.ff-rail__promo-copy strong {
  color: #fff !important;
  font-family: var(--bf-font) !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.2 !important;
}

.ff-rail__promo-copy span {
  color: #9a9a9a !important;
  font-size: 0.66rem !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

.ff-rail__promo-cta {
  grid-area: cta !important;
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 2.2rem !important;
  margin-top: 0.1rem !important;
  padding: 0 0.75rem !important;
  border: 0 !important;
  border-radius: 3px !important;
  background: #dd0000 !important;
  color: #fff !important;
  font-family: var(--bf-font) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.ff-rail__promo:hover .ff-rail__promo-cta {
  background: #f00 !important;
  transform: none !important;
  box-shadow: none !important;
}

@media (max-width: 1023px) {
  .ff-layout .ff-hero::after,
  .ff-layout .ff-hero[data-bf-tab="image"]::after {
    opacity: 0.28 !important;
    width: min(48%, 9rem) !important;
    height: 2.4rem !important;
    margin-top: -1.2rem;
  }

  .bf-backdrop::after {
    opacity: 0.045;
    height: 3.4rem;
  }

  .site-footer__clothesline,
  .site-footer__accent {
    display: none !important;
    height: 0 !important;
  }
}

.home-promo-banner__timer,
.home-promo-banner--clock .home-promo-banner__timer {
  color: #ffcc00 !important;
  background: transparent !important;
}

* {
  scrollbar-color: #dd0000 transparent !important;
}

::-webkit-scrollbar-thumb {
  background: #dd0000 !important;
}

::-webkit-scrollbar-thumb:hover {
  background: #ff1a1a !important;
}

.home-menu-drawer-scroll,
.home-menu-drawer,
#menu-drawer * {
  scrollbar-color: #dd0000 transparent !important;
}

.home-menu-drawer-scroll::-webkit-scrollbar-thumb,
#menu-drawer ::-webkit-scrollbar-thumb {
  background: #dd0000 !important;
}

/* =====================================================================
   Chrome: header + menu conta (tube adulto DE)
   ===================================================================== */

/* Logo: mantém mark original */
.site-brand-logo--header .site-brand-logo__mark,
.site-brand-logo--menu .site-brand-logo__mark,
.site-brand-logo--login .site-brand-logo__mark,
.site-brand-logo--footer .site-brand-logo__mark {
  border: 0 !important;
  background: none !important;
  filter: none !important;
  box-shadow: none !important;
}

.site-brand-logo--header .site-brand-logo__mark::after,
.site-brand-logo--menu .site-brand-logo__mark::after,
.site-brand-logo--login .site-brand-logo__mark::after,
.site-brand-logo--footer .site-brand-logo__mark::after {
  content: none !important;
  display: none !important;
}

.site-brand-logo__word {
  font-family: var(--bf-font) !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  color: #fff !important;
}

.site-brand-logo__accent {
  color: #dd0000 !important;
  -webkit-text-fill-color: #dd0000 !important;
}

/* Topbar */
.home-top-bar.ff-topbar,
.home-top-bar,
.ff-chrome .home-top-bar.home-header-extended-bg.ff-topbar {
  background: #000 !important;
  border-bottom: 1px solid #222 !important;
  box-shadow: none !important;
}

.home-top-bar.ff-topbar::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -1px !important;
  height: 3px !important;
  background: linear-gradient(90deg, #000 0 33.33%, #dd0000 33.33% 66.66%, #ffcc00 66.66% 100%) !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

.home-menu-button {
  color: #fff !important;
  background: transparent !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}

.home-menu-button:hover {
  border-color: #dd0000 !important;
  background: #111 !important;
}

.ff-topbar .ff-account-icon,
.ff-topbar .ff-account-caret {
  color: #fff !important;
}

.home-header-login-button,
.ff-topbar .home-header-login-button,
.home-menu-account-login,
.home-menu-drawer .home-login-entry-button {
  color: #fff !important;
  background: transparent !important;
  border: 1px solid #333 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.home-header-login-button:hover,
.ff-topbar .home-header-login-button:hover,
.home-menu-account-login:hover {
  border-color: #666 !important;
  background: #141414 !important;
}

.home-header-signup-button,
.ff-topbar .home-header-signup-button:not([hidden]),
.home-menu-account-guest .home-header-signup-button:not([hidden]) {
  color: #fff !important;
  background: #dd0000 !important;
  border: 1px solid #dd0000 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

.home-header-signup-button:hover,
.ff-topbar .home-header-signup-button:not([hidden]):hover,
.home-menu-account-guest .home-header-signup-button:not([hidden]):hover {
  background: #f00 !important;
  border-color: #f00 !important;
  filter: none !important;
  transform: none !important;
}

/* Promo countdown */
.home-promo-banner,
.home-promo-banner--clock {
  gap: 0.45rem !important;
  padding: 0.28rem 0.55rem !important;
  color: #ffcc00 !important;
  background: #111 !important;
  border: 1px solid #333 !important;
  border-left: 3px solid #dd0000 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  animation: none !important;
}

.home-promo-banner:hover,
.home-promo-banner--clock:hover {
  border-color: #dd0000 !important;
  border-left-color: #dd0000 !important;
  background: #171717 !important;
}

.home-promo-banner__icon {
  width: 1.35rem !important;
  height: 1.35rem !important;
  display: grid !important;
  place-items: center !important;
  color: #111 !important;
  background: #ffcc00 !important;
  border: 0 !important;
  border-radius: 2px !important;
  font-size: 0.95rem !important;
  box-shadow: none !important;
}

.home-promo-banner__label {
  color: #9a9a9a !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
}

.home-promo-banner__timer {
  color: #ffcc00 !important;
  font-weight: 800 !important;
  font-variant-numeric: tabular-nums !important;
}

/* Moeda = choppe (SVG em coin-icon.css) */
.recharge-coin-icon {
  background: center / contain no-repeat url("../icons/coin-beer.svg") !important;
  border-radius: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 0.15rem 0.35rem rgba(0, 0, 0, 0.45)) drop-shadow(0 0 0.2rem rgba(255, 204, 0, 0.35)) !important;
}

.recharge-coin-icon::after {
  content: none !important;
  display: none !important;
}

.home-coins-button {
  color: #fff !important;
  background: #141414 !important;
  border: 1px solid #333 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}

.home-coins-button__value {
  color: #ffcc00 !important;
  font-weight: 800 !important;
}

/* ---- Menu conta (dropdown / drawer) ---- */
body:has(.ff-layout) .home-menu-drawer-shell .home-menu-drawer,
#menu-drawer .home-menu-drawer {
  position: relative !important;
  color: #fff !important;
  background: #0a0a0a !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 4px !important;
  box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.75) !important;
  overflow: hidden !important;
}

body:has(.ff-layout) .home-menu-drawer-shell .home-menu-drawer::before,
#menu-drawer .home-menu-drawer::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  z-index: 2 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #000 0 33.33%, #dd0000 33.33% 66.66%, #ffcc00 66.66% 100%) !important;
  pointer-events: none !important;
}

body:has(.ff-layout) .home-menu-drawer-backdrop,
.home-menu-drawer-backdrop {
  background: rgba(0, 0, 0, 0.55) !important;
}

body:has(.ff-layout) .home-menu-drawer-scroll {
  padding: 0.75rem !important;
}

.home-menu-section {
  margin-bottom: 0.85rem !important;
}

.home-menu-section__label,
.home-menu-account-kicker,
.home-menu-affiliate__kicker {
  color: #dd0000 !important;
  font-size: 0.62rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

.home-menu-account-card,
.home-menu-coins-card,
.home-menu-list,
.home-menu-bottom-list {
  background: #121212 !important;
  border: 1px solid #262626 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}

.home-menu-account-card {
  margin: 0 0 0.65rem !important;
  padding: 0.85rem 0.8rem !important;
  background:
    linear-gradient(90deg, rgba(221, 0, 0, 0.12), transparent 40%),
    #121212 !important;
}

.home-menu-account-mail,
.home-menu-account-email {
  color: #fff !important;
  font-weight: 600 !important;
}

.home-menu-account-guest__actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0.45rem !important;
  margin-top: 0.7rem !important;
}

.home-menu-account-guest .home-menu-account-login,
.home-menu-account-guest__actions .home-header-signup-button {
  margin: 0 !important;
  min-height: 2.1rem !important;
  width: 100% !important;
  justify-content: center !important;
}

.home-menu-coins-card {
  display: grid !important;
  grid-template-columns: auto 1fr auto !important;
  align-items: center !important;
  gap: 0.65rem !important;
  margin: 0 0 0.65rem !important;
  padding: 0.7rem 0.75rem !important;
}

.home-menu-coins-card:hover {
  border-color: #dd0000 !important;
  background: #161616 !important;
}

.home-menu-coins-card__icon.recharge-coin-icon--menu {
  --coin-size: 1.85rem !important;
}

.home-menu-coins-card__title {
  color: #fff !important;
  font-family: var(--bf-font) !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
}

.home-menu-coins-card__badge,
.home-menu-coins-card__badge--recharge {
  min-width: auto !important;
  height: auto !important;
  padding: 0.32rem 0.55rem !important;
  border-radius: 3px !important;
  border: 0 !important;
  background: #dd0000 !important;
  color: #fff !important;
  font-size: 0.65rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.home-menu-list,
.home-menu-bottom-list {
  padding: 0.2rem 0 !important;
  overflow: hidden !important;
}

.home-menu-item {
  gap: 0.7rem !important;
  padding: 0.72rem 0.75rem !important;
  border: 0 !important;
  border-bottom: 1px solid #1e1e1e !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.home-menu-item:last-child {
  border-bottom: 0 !important;
}

.home-menu-item:hover,
.language-option:hover {
  background: #1a1a1a !important;
}

.home-menu-item-icon {
  color: #dd0000 !important;
  font-size: 1.2rem !important;
}

.home-menu-item-title {
  color: #fff !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
}

.home-menu-close-button {
  color: #fff !important;
  background: #141414 !important;
  border: 1px solid #333 !important;
  border-radius: 3px !important;
}

/* =====================================================================
   Imagine.red shell — neutraliza rail/promo/offsets conflitantes
   ===================================================================== */

.ir-shell.ff-rail,
.ir-shell--inflow.ff-rail {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  height: auto !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.sx-layout .home-feed-scroll--grid {
  left: 0 !important;
  top: var(--home-feed-offset) !important;
}

/* IR buttons — vence qualquer regra ghost do bierfest */
.ir-shell .ir-btn,
.ir-shell a.ir-btn,
.ir-shell button.ir-btn,
.ir-shell .ir-btn.home-tab-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.7rem !important;
  min-height: 3.25rem !important;
  padding: 0.75rem 1.1rem !important;
  border: 1.5px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: var(--sx-radius, 4px) !important;
  background: #111 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-family: Inter, system-ui, sans-serif !important;
}

.ir-shell .ir-btn .home-tab-module-label,
.ir-shell .ir-btn > span:not(.material-symbols-outlined):not(.home-tab-module-icon):not(.ir-btn__badge):not(.ir-btn__timer) {
  color: #fff !important;
  font-size: 0.8rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.ir-shell .ir-btn .home-tab-module-icon,
.ir-shell .ir-btn .material-symbols-outlined {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: 1.3rem !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
}

.ir-shell .ir-row__scroll,
.ir-shell .home-primary-tab-scroll {
  flex-wrap: wrap !important;
  overflow: visible !important;
}

.ir-shell .ir-row--primary .ir-btn,
.ir-shell .ir-row--primary .ir-btn--featured {
  flex: 1 1 calc(25% - 0.3rem) !important;
  min-width: 0;
}

@media (max-width: 720px) {
  .ir-shell .ir-row--primary .ir-btn,
  .ir-shell .ir-row--primary .ir-btn--featured {
    flex: 1 1 calc(50% - 0.2rem) !important;
    min-width: 0;
  }
}

.ir-shell .ir-btn.home-tab-button,
.ir-shell .ir-btn--create,
.ir-shell .ir-btn--create.home-tab-button,
.ir-shell .ir-btn--featured,
.ir-shell .ir-btn--create.ir-btn--featured {
  border: 2px solid #ff0015 !important;
  background: #0a0a0a !important;
  min-width: 0 !important;
  box-shadow: none !important;
}

.ir-shell .ir-btn.home-tab-button:hover,
.ir-shell .ir-btn--create:hover,
.ir-shell .ir-btn--featured:hover {
  border-color: #ff0015 !important;
  background: #ff0015 !important;
  color: #fff !important;
}

.ir-shell .ir-btn.home-tab-button:hover .home-tab-module-label,
.ir-shell .ir-btn.home-tab-button:hover .home-tab-module-icon {
  color: #fff !important;
}

.ir-shell .ir-btn.home-tab-button:hover .home-tab-module-icon {
  background: rgba(0, 0, 0, 0.22) !important;
}

.ir-shell .ir-btn--create.home-tab-button--active,
.ir-shell .ir-btn.home-tab-button--active:not(.ir-btn--util),
.ir-shell .ir-btn--featured.home-tab-button--active,
.ir-shell .ir-btn.home-tab-button--active:hover {
  background: #ff0015 !important;
  border: 2px solid #ff0015 !important;
  color: #fff !important;
  box-shadow: none !important;
}

.ir-shell .ir-btn.home-tab-button--active .home-tab-module-label,
.ir-shell .ir-btn.home-tab-button--active .home-tab-module-icon,
.ir-shell .ir-btn.home-tab-button--active:hover .home-tab-module-label,
.ir-shell .ir-btn.home-tab-button--active:hover .home-tab-module-icon {
  color: #fff !important;
}

.ir-shell .ir-btn.home-tab-button--active .home-tab-module-icon,
.ir-shell .ir-btn.home-tab-button--active:hover .home-tab-module-icon {
  background: rgba(0, 0, 0, 0.22) !important;
}

.ir-shell .ir-rail-eyebrow {
  display: none !important;
}

.ir-shell .ir-btn--util,
.ir-shell .ir-btn--util span {
  color: #ffcc00 !important;
}

.ir-shell .ir-btn--util .material-symbols-outlined {
  color: #ffcc00 !important;
}

.ff-topbar .home-header-login-button {
  border: 1.5px solid #ff0015 !important;
  border-radius: 0.75rem !important;
  background: #0a0a0a !important;
  color: #fff !important;
}

.ff-topbar .home-header-signup-button:not([hidden]) {
  border-radius: 0.65rem !important;
  background: #ff0015 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.ir-filters,
.ir-filters[hidden] {
  display: none !important;
}

.sx-masthead.ff-hero,
.ff-layout .ff-hero.sx-masthead {
  border-radius: 4px !important;
  border: 1px solid #2a2a2a !important;
  background:
    linear-gradient(90deg, rgba(221, 0, 0, 0.14), transparent 38%),
    linear-gradient(180deg, #141414, #0c0c0c) !important;
  box-shadow: none !important;
}

.ff-layout .ff-hero.sx-masthead::before {
  inset: 0 auto 0 0 !important;
  width: 3px !important;
  height: auto !important;
  background: linear-gradient(180deg, #000, #dd0000, #ffcc00) !important;
}

.ff-layout .ff-hero h2 {
  font-family: var(--bf-font-display) !important;
  text-transform: uppercase !important;
}

/* Gerar: cor accent — visibilidade controlada por home-layout (hover/tap) */
.sx-layout .home-feed-upload-button--generate,
.ff-layout .home-feed-upload-button--generate {
  background: #e10600 !important;
  border: 0 !important;
  color: #fff !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.sx-layout .home-feed-upload-button--generate:hover,
.ff-layout .home-feed-upload-button--generate:hover {
  background: #ff1a1a !important;
}

:root,
.sx-layout,
.ff-layout {
  --undress-accent: #dd0000;
  --shorts-accent: #dd0000;
  --primary: #dd0000;
  --melon-red: #dd0000;
  --ff-rail-w: 0px;
  --ff-nav-h: 0px;
}

.bf-backdrop {
  background: #000 !important;
}

.bf-backdrop::after {
  display: none !important;
  content: none !important;
}

/* Stein interativo Oktoberfest */
.bf-stein {
  --stein-size: 3.2rem;
  position: relative;
  display: inline-grid;
  place-items: center;
  width: var(--stein-size);
  height: var(--stein-size);
  flex-shrink: 0;
  transform-origin: 50% 85%;
  transition: transform 0.25s ease;
  cursor: default;
}

.bf-stein:hover,
.bf-stein:focus-visible {
  transform: rotate(-8deg) scale(1.06);
}

.bf-stein__mug {
  width: 72%;
  height: 78%;
  border-radius: 0.2rem 0.2rem 0.55rem 0.55rem;
  background: linear-gradient(160deg, #ffe08a 0%, #ffcc00 42%, #b8860b 100%);
  border: 2px solid #5c4300;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.25);
  position: relative;
}

.bf-stein__mug::after {
  content: "";
  position: absolute;
  right: -0.55rem;
  top: 28%;
  width: 0.55rem;
  height: 38%;
  border: 2px solid #5c4300;
  border-left: 0;
  border-radius: 0 0.45rem 0.45rem 0;
}

.bf-stein__foam {
  position: absolute;
  top: 8%;
  left: 14%;
  width: 58%;
  height: 28%;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 40%, #fff 0%, #f5e6c0 70%);
  box-shadow:
    0.45rem 0.1rem 0 -0.05rem #fff8e7,
    -0.35rem 0.15rem 0 -0.08rem #f0e0b0;
  animation: bf-stein-foam 2.4s ease-in-out infinite;
}

.bf-stein--lg {
  --stein-size: 4.4rem;
}

.bf-stein--sm {
  --stein-size: 2.4rem;
}

@keyframes bf-stein-foam {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-0.12rem) scale(1.04); }
}

@media (prefers-reduced-motion: reduce) {
  .bf-stein__foam {
    animation: none;
  }
  .bf-stein:hover,
  .bf-stein:focus-visible {
    transform: none;
  }
}

.age-gate-stein-wrap {
  display: flex;
  justify-content: center;
  margin: 0 0 1rem;
}

.recharge-modal-heading .recharge-coin-icon {
  --coin-size: 2.55rem !important;
  flex-shrink: 0;
}

/* Upsell / recarga: sem cyan cyber */
.recharge-modal-sheet {
  background: linear-gradient(180deg, #121212 0%, #0a0a0a 100%) !important;
  border: 1.5px solid rgba(221, 0, 0, 0.55) !important;
  border-radius: 0.75rem !important;
}

.recharge-modal .recharge-upsell-decline,
.recharge-modal .recharge-upsell-card__per-coin,
.recharge-modal .recharge-upsell-timer strong {
  color: #ffcc00 !important;
  text-shadow: none !important;
  box-shadow: none !important;
  border-color: rgba(255, 204, 0, 0.35) !important;
  background: transparent !important;
}

.recharge-modal .recharge-upsell-decline::before {
  color: #dd0000 !important;
}

.recharge-modal .recharge-upsell-timer__bar span {
  background: linear-gradient(90deg, #dd0000, #ffcc00) !important;
  box-shadow: none !important;
}

.recharge-package.is-selected {
  border-color: #dd0000 !important;
  box-shadow: 0 0 0 1px rgba(221, 0, 0, 0.35) !important;
}

.ir-account__kicker {
  color: #dd0000 !important;
}

.ir-account__logout {
  border-color: #dd0000 !important;
  color: #fff !important;
}

@media (max-width: 1023px) {
  /* Sem dock inferior — actions ficam no scroll (imagine.red) */
  .ir-shell .ir-row--primary,
  .ir-shell .home-primary-tab-row {
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .ir-shell .ir-btn.home-tab-button--active {
    background: #ff0015 !important;
    border-color: #ff0015 !important;
    color: #fff !important;
    box-shadow: none !important;
  }

  .ir-shell .ir-btn.home-tab-button--active .home-tab-module-icon {
    background: rgba(0, 0, 0, 0.22) !important;
    color: #fff !important;
  }

  .ir-filters.catalog-row,
  .ir-filters .home-catalog-bar {
    background: transparent !important;
    box-shadow: none !important;
  }
}

} /* fecha :is(body, #bf-theme) */

/* ---------------------------------------------------------------------
   Cantos retos — reforço no chrome home (ff/sx)
   --------------------------------------------------------------------- */
.ff-layout.sx-layout {
  --sx-radius: 4px;
  --sx-radius-sm: 3px;
  --sx-radius-lg: 6px;
  --sx-radius-pill: 4px;
  --bf-radius: 4px;
  --bf-radius-sm: 3px;
  --bf-radius-lg: 6px;
  --bf-radius-pill: 4px;
}

.ff-layout.sx-layout .feed-card-grid > div,
.ff-layout.sx-layout .home-template-feed-card > div,
.ff-layout.sx-layout .home-image-card,
.ff-layout.sx-layout .home-image-card__visual-wrap,
.ff-layout.sx-layout .feed-card-grid .home-feed-media {
  border-radius: var(--sx-radius) !important;
}

.ff-layout.sx-layout .ir-btn,
.ff-layout.sx-layout .ir-shell .ir-btn,
.ff-layout.sx-layout .home-feed-upload-button--generate,
.ff-layout.sx-layout .home-feed-load-more__btn,
.ff-layout.sx-layout .home-header-login-button,
.ff-layout.sx-layout .home-header-signup-button {
  border-radius: var(--sx-radius) !important;
}

.ff-layout.sx-layout .feed-media-badge,
.ff-layout.sx-layout .feed-card-coin-badge,
.ff-layout.sx-layout .feed-page-btn,
.ff-layout.sx-layout .is-ff-selected::after {
  border-radius: var(--sx-radius-pill) !important;
}

.ff-layout.sx-layout ~ .login-modal .login-modal-panel,
body:has(.ff-layout.sx-layout) .login-modal-panel {
  border-radius: var(--sx-radius-lg) !important;
}

body:has(.ff-layout.sx-layout) .login-modal-close {
  border-radius: var(--sx-radius-pill) !important;
}
