/* MEUS ACHADINHOS / BLACK FRIDAY — ACABAMENTO DARK
   Aplicado após os estilos específicos das páginas, no rodapé do front.
   ÚNICA área branca projetada: molduras de fotografias de produto.
   Painel administrativo não é afetado. */
body.bf-theme {
  --bf-bg: #09090d;
  --bf-surface: #15151b;
  --bf-elevated: #1e1e25;
  --bf-stroke: #393943;
  --bf-text: #f6f6f8;
  --bf-muted: #b7b9c5;
  --bf-orange: #ff7328;
  --bf-yellow: #ffcb47;
  --bf-red: #e62f3e;
  --bs-body-bg: #09090d;
  --bs-body-color: #f6f6f8;
  --bs-secondary-color: #b7b9c5;
  --bs-border-color: #393943;
  background: var(--bf-bg) !important;
  color: var(--bf-text) !important;
}
body.bf-theme :is(.stores-page,.cupons-page,.produto-page,.products-page-shell,.category-container,.busca-page,.wishlist-page,.institutional-page,.institutional-document-section,.institutional-hero,.pagina-shell,.pagina-content,.page-content,.front-marketplace-home,main) {
  background-color: var(--bf-bg) !important;
  color: var(--bf-text) !important;
}
body.bf-theme :is(.stores-page,.cupons-page,.produto-page,.institutional-document-section,.institutional-hero,.pagina-shell,main) {
  background-image: linear-gradient(180deg,#0b0b10 0%,#101016 70%,#0b0b0f 100%) !important;
}
/* Superfícies de leitura: pretos e grafites, NUNCA branco */
body.bf-theme :is(
  .bg-white,.bg-light,.card,.card-body,.alert-light,.modal-content,.modal-header,.modal-footer,.dropdown-menu,.popover,
  .front-category-panel,.front-deal-card,.bf-category-tile,.front-store-pill,.bf-official-card,.bf-brand-name,
  .stores-filter-panel,.promo-filter-panel,.stores-logo-card,.promo-logo-card,.stores-filter-mini-stat,.promo-filter-mini-stat,
  .stores-result-pill,.promo-result-pill,.stores-filter-option,.promo-filter-option,.stores-empty,.stores-no-results,.cupons-empty,.promo-no-results,
  .filter-panel,.filter-store-option,.filter-mini-stat,.category-results-bar,.empty-category-box,
  .products-page-card,.produto-card,.products-page-filters,.products-page-total,.products-store-option,.products-filter,.products-view-label,.products-infinite-loader,.products-empty-box,.products-page-hero,
  .busca-card,.busca-empty,.busca-filter-panel,.busca-filter-sheet,.busca-filter-head,.busca-toolbar,.busca-pagination,.search-suggest,
  .store-product-card,.store-profile-stat,.store-timeline-step,.store-info-card,.store-hero-card,
  .produto-detalhe,.produto-web-gallery,.produto-web-card,.produto-web-side-card,.produto-web-steps,.produto-price-chart,.descricao-box,.media-box,.avaliacao-ml-card,.avaliacao-summary,.avaliacao-cta,.produto-recommend-section,.produto-recommend-card,
  .wishlist-page-hero,.wishlist-page-toolbar,.wishlist-page-summary-card,.wishlist-page-card,.wishlist-page-empty,.wishlist-item,.wishlist-empty,
  .wishlist-offcanvas,.wishlist-offcanvas .offcanvas-header,.wishlist-offcanvas .offcanvas-body,
  .institutional-update-card,.institutional-document-card,.institutional-document-content,.institutional-content,.institutional-card,.page-card,
  .cookie-consent-card,.front-chat-window,.front-chat-header,.front-chat-body,.front-chat-composer
) {
  background: linear-gradient(160deg,#1c1c23 0%,#15151b 100%) !important;
  border-color: #373741 !important;
  color: #f6f6f9 !important;
}
/* Caixas menores / elementos de seleção */
body.bf-theme :is(
 .stores-filter-option,.promo-filter-option,.stores-filter-mini-stat,.promo-filter-mini-stat,
 .stores-result-pill,.promo-result-pill,.products-store-option,.products-view-label,
 .wishlist-open-page,.wishlist-clear,.wishlist-item-actions a,.wishlist-item-actions button,
 .wishlist-page-card-actions a,.wishlist-page-card-actions button,
 .products-pagination span,.products-pagination a,.busca-pagination a,.busca-pagination span,
 .product-view-toggle,.products-filter-actions a,.filter-reset-btn,.btn-light,.btn-outline-light,.btn-outline-secondary,
 .wishlist-page-secondary-btn,.wishlist-page-clear-btn,.stores-filter-reset,.promo-filter-reset,
 .cookie-consent-btn--ghost,.filter-clear-top,.product-view-btn
) {
  background: #24242c !important;
  border-color: #444450 !important;
  color: #f3f3f7 !important;
}
body.bf-theme :is(.stores-filter-option,.promo-filter-option,.products-store-option,.filter-store-option):hover,
body.bf-theme :is(.stores-filter-option,.promo-filter-option,.products-store-option,.filter-store-option).is-selected {
  background: #30251f !important;
  border-color: #ff8b45 !important;
}
/* Texto claro sobre superfícies escuras: título, nome de loja, valor, navegação */
body.bf-theme :is(h1,h2,h3,h4,h5,h6,.section-title,.products-page-title,.produto-title,.produto-title-detalhe,.produto-web-steps h2,.produto-web-side-card h2,.produto-web-step strong,
 .avaliacao-ml-title,.avaliacao-section-title,.avaliacao-media,.avaliacao-cta strong,.produto-recommend-title,
 .stores-filter-head h2,.promo-filter-head h2,.stores-logo-card h2,.promo-logo-card h2,
 .wishlist-page-title,.wishlist-page-toolbar-info strong,.wishlist-page-summary-card strong,.wishlist-item-title,.wishlist-page-card-title,
 .front-store-pill-content strong,.bf-official-card .front-store-pill-content strong,.products-results-head strong,
 .stores-content-head strong,.promo-content-head strong,.category-results-bar strong,.products-page-card .products-page-title,.produto-web-seller strong,
 .stores-filter-mini-stat strong,.promo-filter-mini-stat strong,.products-store-option strong,
 .institutional-document-section h2,.institutional-document-section h3
) { color: #fafafd !important; }
/* Texto de apoio: nunca cinza quase-preto sobre grafite */
body.bf-theme :is(.text-muted,.text-secondary,.text-dark,.text-body,.form-text,.small,.muted,
 .stores-filter-head span,.promo-filter-head span,.stores-content-head span,.promo-content-head span,
 .stores-logo-card-products,.stores-logo-card-discount,.promo-logo-card-discount,
 .stores-filter-mini-stat span,.promo-filter-mini-stat span,.stores-filter-option span,.promo-filter-option span,
 .stores-filter-label,.promo-filter-label,.products-filter-group>label,.products-filter-group label,
 .products-page-total,.products-results-head span,.products-page-old,.front-deal-old,.produto-old-price,.preco-antigo,
 .produto-action-note,.produto-web-seller,.produto-web-step,.produto-web-share-card small,.produto-chart-labels,
 .produto-recommend-head p,.produto-similar-empty,.wishlist-page-text,.wishlist-item-store,.wishlist-page-card-store,
 .avaliacao-ml-subtitle,.avaliacao-section-subtitle,.avaliacao-bar-row span,.institutional-update-copy span,
 .stores-empty p,.stores-no-results p,.promo-no-results p,.cupons-empty p
) { color: #bdbfc9 !important; }
body.bf-theme :is(.front-deal-title,.products-page-card a:not(.products-page-btn),.produto-recommend-body h3,.produto-similar-title,.store-product-title) {
  color: #f1f1f5 !important;
}
body.bf-theme :is(.front-deal-title,.products-page-card a:not(.products-page-btn),.produto-recommend-body h3,.produto-similar-title):hover { color: #ffb27c !important; }
body.bf-theme :is(.front-deal-price,.products-page-price,.produto-price,.busca-card-price,.store-product-price,.wishlist-item-price,.wishlist-page-card-price,.preco-destaque,.produto-similar-price,.produto-recommend-price-row strong) {
  color: #ff832d !important;
}
body.bf-theme :is(.stores-filter-mini-stat strong,.promo-filter-mini-stat strong,.promo-filter-option em,.stores-filter-option em) {color:#ffb560 !important;}
/* Formulários: campos escuros inclusive busca do topo, selects e placeholders */
body.bf-theme :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,select,.form-control,.form-select,.search-input,.products-filter-select,.stores-filter-select,.promo-filter-select,.busca-sort) {
  background-color: #25252d !important;
  background-image: none !important;
  border: 1px solid #484852 !important;
  color: #fbfbfd !important;
  -webkit-text-fill-color: #fbfbfd;
}
body.bf-theme :is(input,textarea)::placeholder { color: #b7b9c5 !important; opacity: 1; }
body.bf-theme :is(input,select,textarea):focus-visible { border-color:#ff963e !important; outline:2px solid rgba(255,148,69,.48) !important;outline-offset:1px; }
body.bf-theme input[type="checkbox"], body.bf-theme input[type="radio"] { accent-color:#ff7328 !important; }
body.bf-theme select option {background:#212129;color:#fff;}
/* Botões: laranja de alto contraste ou cinza escuro de alto contraste */
body.bf-theme :is(.front-deal-btn,.products-page-btn,.btn-comprar,.stores-logo-card-cta,.promo-logo-card-cta,
 .bf-hero-button,.stores-filter-apply,.promo-filter-apply,.filter-submit-btn,
 .products-filter-actions button,.wishlist-page-primary-btn,.btn-primary,.btn-custom,.btn-custom-front,.btn-primary-store,
 .front-chat-window .btn-success,.avaliacao-cta .btn,.produto-carousel-control,.cookie-consent-btn--primary,
 .products-empty-box a,.wishlist-page-primary-btn,.bf-official-cta
) {
  background: linear-gradient(180deg,#ff832b,#f04919) !important;
  border: 1px solid #ff923e !important;
  color: #fff !important;
  text-shadow:none !important;
  box-shadow: 0 8px 18px rgba(255,76,26,.18) !important;
  font-weight: 750 !important;
  text-decoration:none !important;
}
body.bf-theme :is(.front-deal-btn,.products-page-btn,.btn-comprar,.stores-logo-card-cta,.promo-logo-card-cta,
 .bf-hero-button,.stores-filter-apply,.promo-filter-apply,.filter-submit-btn,.products-filter-actions button,
 .wishlist-page-primary-btn,.btn-primary,.btn-custom,.btn-custom-front,.btn-primary-store,.bf-official-cta
):hover { filter:brightness(1.08); color:#fff !important; }
body.bf-theme :is(.wishlist-primary-btn,.wishlist-page-secondary-btn,.wishlist-page-clear-btn,.stores-filter-reset,.promo-filter-reset,.filter-reset-btn,.btn-light,.btn-outline-secondary,.btn-outline-light,.products-filter-actions a) {
  background:#25252d !important;
  border:1px solid #4a4a55 !important;
  color:#f6f6f9 !important;
  box-shadow:none !important;
}
body.bf-theme :is(.wishlist-primary-btn,.wishlist-page-secondary-btn,.wishlist-page-clear-btn,.stores-filter-reset,.promo-filter-reset,.filter-reset-btn,.btn-light,.btn-outline-secondary,.btn-outline-light,.products-filter-actions a):hover {
  background:#34343e !important;
  color:#fff !important;
  border-color:#ff8d3c !important;
}
/* Estado e botões de avaliação */
body.bf-theme :is(.avaliacao-tabs .nav-link,.nav-tabs .nav-link,.product-view-btn,.busca-mobile-filter) {
  background:#282830 !important;
  border-color:#45454f !important;
  color:#efeff4 !important;
}
body.bf-theme :is(.avaliacao-tabs .nav-link.active,.nav-tabs .nav-link.active,.product-view-btn.is-active) {
  background:linear-gradient(180deg,#ff812b,#ef401b) !important;
  color:#fff !important;
  border-color:#ff8d37 !important;
}
body.bf-theme .avaliacao-ml-card :is(.avaliacao-bar,.avaliacao-bar-track,.avaliacao-bar-bg) {background:#363640 !important;}
body.bf-theme .avaliacao-ml-card :is(.avaliacao-bar-fill,.avaliacao-bar-progress) {background:#ff8736 !important;}
/* Apenas fotografias de produtos sobre branco, com respiro em volta */
body.bf-theme :is(
 .front-deal-image-link,.products-page-image,.produto-card .produto-img-wrap,.busca-card-image,.busca-card-img-wrap,
 .store-product-image,.produto-recommend-img-wrap,.produto-web-main-image,.produto-web-thumb,.galeria-principal,.media-thumb,
 .wishlist-item-thumb,.wishlist-page-thumb,.produto-similar-img,.produto-web-image,.produto-gallery-main
) {
  background:#fff !important;
  background-image:none !important;
  border-color: #eeeeef !important;
}
body.bf-theme :is(.front-deal-image-link,.products-page-image,.produto-card .produto-img-wrap,.busca-card-image,.busca-card-img-wrap,.store-product-image,.produto-recommend-img-wrap) {
  padding: 10px !important;
  overflow:hidden;
  border-radius: 9px !important;
}
body.bf-theme :is(.front-deal-image-link,.products-page-image,.produto-card .produto-img-wrap,.busca-card-image,.busca-card-img-wrap,.store-product-image,.produto-recommend-img-wrap) img {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  padding: 5px !important;
  max-width:100% !important;
  max-height:100% !important;
  background:transparent !important;
}
body.bf-theme .front-deal-image-link {height:150px !important;min-height:150px !important;}
body.bf-theme .products-page-image {height:184px !important;}
body.bf-theme .produto-card .produto-img-wrap {height:186px !important;}
body.bf-theme :is(.produto-web-main-image,.produto-web-thumb,.galeria-principal,.wishlist-item-thumb,.wishlist-page-thumb) img {
  object-fit:contain !important;
}
/* Logos da marca: fundo branco é exceção controlada no tema dark.
   Nunca force logo de marketplace a ficar escuro, pois alguns arquivos usam azul/preto. */
body.bf-theme :is(.front-store-logo,.products-page-store,.products-store-logo,.filter-store-logo,.front-store-pill-logo,.bf-official-card .front-store-pill-logo,
 .stores-logo-card-logo,.promo-logo-card-logo,.store-profile-logo,.marketplace-logo-badge) {
  border-radius:0 !important;
  background:#fff !important;
  background-image:none !important;
  border-color:#e8e8ed !important;
}
body.bf-theme :is(.front-store-logo,.products-page-store,.products-store-logo,.filter-store-logo,.front-store-pill-logo,
 .stores-logo-card-logo,.promo-logo-card-logo,.store-profile-logo,.marketplace-logo-badge) img {
  border-radius:0 !important;
  background:transparent !important;
  object-fit:contain !important;
  filter:none !important;
}
/* Loja parceira no rodapé da home: cartão completo DARK, horizontal e compacto */
body.bf-theme .bf-official-grid {gap:12px !important;}
body.bf-theme .bf-official-card {
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  align-items:center !important;
  justify-items:start !important;
  gap:9px 11px !important;
  padding:13px !important;
  min-height:104px !important;
  border-radius:12px !important;
  border:1px solid #3d3d47 !important;
  background:linear-gradient(150deg,#23232b,#17171d) !important;
  color:#fafafd !important;
}
body.bf-theme .bf-official-card .front-store-pill-logo {
  width:47px !important;height:43px !important;grid-column:1;grid-row:1;
  display:grid !important;place-items:center !important;
  padding:3px !important;border:0 !important; background:transparent !important;
}
body.bf-theme .bf-official-card .front-store-pill-logo img { width:100% !important;height:100% !important;object-fit:contain !important; }
body.bf-theme .bf-official-card .front-store-pill-content {grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:3px;min-width:0;}
body.bf-theme .bf-official-card .front-store-pill-content strong {font-size:12px!important;line-height:1.3;color:#fff!important;font-weight:800!important;}
body.bf-theme .bf-official-card .front-store-pill-content small {font-size:10px!important;color:#b9bbc5!important;line-height:1.3;}
body.bf-theme .bf-official-card .bf-official-cta {grid-column:1/-1;grid-row:2;min-height:30px!important; margin:0!important;padding:6px 12px!important;font-size:11px!important; border-radius:8px!important;}
body.bf-theme .bf-official-card:hover {border-color:#ff8732 !important;background:linear-gradient(150deg,#30251f,#1a1a20)!important;}
/* Popups e sacola de desejos permanecem dark, inclusive botões de ação */
body.bf-theme .wishlist-offcanvas {background:#141419 !important;}
body.bf-theme .wishlist-offcanvas :is(.offcanvas-header,.offcanvas-body,.wishlist-panel-tools,.wishlist-panel-meta) {background:#141419!important;color:#f7f7f9!important;border-color:#383843!important;}
body.bf-theme :is(.wishlist-item,.wishlist-empty) {background:#1e1e25!important;color:#f4f4f8!important;border-color:#3e3e49!important;}
body.bf-theme :is(.wishlist-item-title,.wishlist-panel-meta strong,.wishlist-offcanvas .offcanvas-title) {color:#fff!important;}
body.bf-theme .wishlist-item-actions :is(a,button) {background:#292932!important;color:#fff!important;border-color:#4a4a56!important;}
body.bf-theme .wishlist-item-actions :is(a,button):hover {background:#373742!important;border-color:#ff8d42!important;}
body.bf-theme .search-suggest {background:#24242a!important;color:#f5f5f9!important;border-color:#42424c!important;}
body.bf-theme .search-suggest-item {color:#ededf3!important;}
body.bf-theme .search-suggest-item:hover {background:#32323b!important;}
/* Nenhum sublinhado em links; preço anterior pode manter riscados de desconto */
body.bf-theme a,body.bf-theme a:hover,body.bf-theme a:focus {text-decoration:none!important;}
body.bf-theme :is(.front-deal-old,.products-page-old,.produto-old-price,.preco-antigo,.produto-recommend-price-row small) {text-decoration:line-through!important;}
/* Acessibilidade */
body.bf-theme :is(a,button,input,select,textarea):focus-visible {outline:2px solid #ffbb61!important;outline-offset:2px!important;}
@media (max-width: 767.98px){
 body.bf-theme .bf-official-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 body.bf-theme .bf-official-card{grid-template-columns:40px minmax(0,1fr)!important;padding:11px!important;min-height:99px!important;}
 body.bf-theme .bf-official-card .front-store-pill-logo {width:40px!important;height:40px!important;}
 body.bf-theme .front-deal-image-link {height:139px!important;min-height:139px!important;}
 body.bf-theme .products-page-image{height:168px!important;}
}
@media (max-width: 480px){body.bf-theme .bf-official-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}}

/* Perfil de loja e páginas institucionais não podem herdar branco */
body.bf-theme :is(.store-profile-page,.institutional-stage,.institutional-document-section,.institutional-page,.institutional-shell) {
  background:#0d0d12 !important;color:#f8f8fb!important;
}
body.bf-theme :is(.store-profile-cover,.store-profile-logo,.store-profile-stat,.store-timeline-step,
 .institutional-intro,.institutional-update-card,.institutional-document-section,.institutional-document-card,
 .institutional-document-content,.institutional-text,.institutional-illustration,
 .institutional-feature,.institutional-info-card,.pagina-document-card,.institutional-content,
 .produto-web-side-card .produto-price-chart) {
  background:linear-gradient(160deg,#202026,#141419)!important;
  border-color:#3b3b45!important;
  color:#f4f4f8!important;
}
body.bf-theme :is(.store-profile-title,.store-products-head h2,.store-timeline-step strong,
 .institutional-heading-copy h1,.institutional-update-copy strong,.institutional-document-content h1,
 .institutional-document-content h2,.institutional-document-content strong) {color:#f9f9fb!important;}
body.bf-theme :is(.store-profile-desc,.store-profile-stat span,.store-profile-kicker,
 .store-timeline-step span,.store-products-head span,.store-profile-breadcrumb,.store-profile-breadcrumb span,
 .institutional-heading-copy p,.institutional-update-copy span,.institutional-document-content p,
 .institutional-document-content li,.institutional-breadcrumb strong) {color:#c6c7d1!important;}
body.bf-theme :is(.store-products-link,.store-product-btn) {
  background:linear-gradient(180deg,#ff8231,#f04319)!important;
  border:1px solid #ff923e!important;
  color:#fff!important;
}
body.bf-theme :is(.store-products-link,.store-product-btn):hover {filter:brightness(1.1);color:#fff!important;}
/* Na vitrine e nos detalhes, o bloco textual da foto permanece dark. */
body.bf-theme .produto-web-card :is(.produto-web-info,.produto-web-steps,.produto-web-seller,.produto-actions,.info-row) {background:transparent!important;}
body.bf-theme :is(.produto-web-share-card,.produto-web-share,.produto-web-side-card) {border-color:#393943!important;}
body.bf-theme .produto-web-step i {color:#ffad68!important;background:#303038!important;border-color:#45454f!important;}
body.bf-theme .produto-price-chart svg {background:transparent!important;}
/* Dicas e badges: luz suficiente contra o grafite; descontos continuam vermelhos */
body.bf-theme :is(.produto-selo,.info-tag,.stores-logo-card-meta,.promo-logo-card-meta) {
  background:#3a2a1e!important;border:1px solid #6d4227!important;color:#ffe1b7!important;
}
body.bf-theme :is(.produto-selo,.info-tag,.stores-logo-card-meta,.promo-logo-card-meta) i {color:inherit!important;}
body.bf-theme :is(.stores-logo-card-discount,.promo-logo-card-discount,.products-page-discount,.discount-badge,.desconto-selo,.produto-recommend-discount,.store-product-discount) {
  background:#d32639!important;color:#fff!important;border-color:#f34d5e!important;
}
body.bf-theme :is(.stores-logo-card-discount,.promo-logo-card-discount,.products-page-discount,.discount-badge,.desconto-selo,.produto-recommend-discount,.store-product-discount) :is(span,i) {color:#fff!important;}
body.bf-theme .bf-free-ship {color:#e5ffea!important;background:#18572b!important;}
body.bf-theme .bf-feature-tag {color:#f0dcff!important;background:#483161!important;}
body.bf-theme .bf-limited-label {color:#fff!important;background:#88121c!important;}
body.bf-theme :is(.bf-promo,.bf-promo strong,.bf-promo small,.bf-promo>b,.bf-brand-feature strong,.bf-brand-feature small) {color:#fff!important;}
body.bf-theme .bf-promo-shipping :is(strong,small,b) {color:#181207!important;}
body.bf-theme .bf-hero-highlight {color:#221900!important;}
/* Rodapé escuro, mas textos suficientemente claros */
body.bf-theme .footer-modern {background:#141418!important;color:#f5f5f7!important;}
body.bf-theme .footer-modern :is(h5,.footer-brand-link) {color:#f4f4f8!important;}
body.bf-theme .footer-modern :is(p,.footer-contact-line,.footer-extra-link,.footer-bottom,.footer-nav-link) {color:#bec0ca!important;}
body.bf-theme .footer-modern :is(.footer-nav-link,.footer-extra-link):hover {color:#ffa35e!important;}

/* Revisão automática das áreas claras remanescentes */
body.bf-theme :is(
  .stores-filter-option em,.promo-filter-option em,
  .products-page-wish,.front-deal-wish,.produto-card .produto-wish,
  .wishlist-page-kicker,.wishlist-page-empty-icon,
  .marketplace-logo-badge,.marketplace-logo-badge img,
  .avaliacao-empty,.avaliacao-item,.avaliacao-avatar,
  .institutional-document,
  .front-chat-panel,.front-chat-body,.front-chat-card,.front-chat-bubble,.front-chat-product,
  .front-chat-notice,.front-chat-avatar,.front-chat-close
) {
  background:#24242c !important;
  border-color:#42424d !important;
  color:#f4f4f8 !important;
}
body.bf-theme :is(.stores-filter-option em,.promo-filter-option em) {
  background:#343039!important;border-color:#544a55!important;color:#ffb76b!important;
}
body.bf-theme :is(.products-page-wish,.front-deal-wish,.produto-card .produto-wish) {
  display:inline-flex;align-items:center;justify-content:center;
  color:#f7f7f9!important;background:#282832!important;border:1px solid #4b4b55!important;
}
body.bf-theme :is(.products-page-wish,.front-deal-wish,.produto-card .produto-wish):hover {color:#ffac63!important;border-color:#ff8c3d!important;}
body.bf-theme .marketplace-logo-badge {
  border-radius:8px!important;
  padding:5px 9px!important;
  font-size:11px!important;
  background:#292932!important;
  color:#f9f9fc!important;
  border-color:#474752!important;
}
body.bf-theme .marketplace-logo-badge img {border-radius:0!important;background:transparent!important;object-fit:contain!important;}
body.bf-theme .marketplace-logo-badge > span {color:#f4f4f9!important;}
body.bf-theme .avaliacao-empty {background:#222229!important;color:#c7c8d2!important;border-style:dashed!important;}
body.bf-theme .avaliacao-empty p {color:#c7c8d2!important;}
body.bf-theme .avaliacao-item {background:#24242d!important;color:#f3f3f6!important;}
body.bf-theme :is(.avaliacao-author,.avaliacao-comment-text,.avaliacao-item p) {color:#f0f0f5!important;}
body.bf-theme .avaliacao-date {color:#bdbec9!important;}
body.bf-theme .avaliacao-avatar {background:#3b2d25!important;color:#ffd3a2!important;}
body.bf-theme .institutional-document {background:linear-gradient(160deg,#202027,#15151b)!important;color:#ececf3!important;border:1px solid #3b3b46!important;}
body.bf-theme .institutional-document :is(p,li,span) {color:#caccd6!important;}
body.bf-theme .institutional-document :is(h1,h2,h3,strong) {color:#fafafd!important;}
body.bf-theme :is(.wishlist-page-kicker,.wishlist-page-empty-icon) {color:#ff9e50!important;background:#29252a!important;}

/* Atendimento: chat sem qualquer painel branco e com contraste alto */
body.bf-theme .front-chat-panel {background:#17171d!important;border:1px solid #41414c!important;box-shadow:0 22px 46px #0008!important;}
body.bf-theme .front-chat-header {background:linear-gradient(135deg,#2d1b17,#1b1b22)!important;color:#fff!important;border-bottom:1px solid #553125!important;}
body.bf-theme .front-chat-header :is(span,strong,p) {color:#f5f5f8!important;}
body.bf-theme .front-chat-body {background:#15151b!important;color:#f7f7f9!important;}
body.bf-theme .front-chat-card {background:#222229!important;border-color:#41414c!important;color:#f2f2f6!important;}
body.bf-theme .front-chat-agent-name {color:#f6f6f9!important;}
body.bf-theme .front-chat-agent-time {color:#c0c1cb!important;}
body.bf-theme .front-chat-welcome {color:#e2e3e9!important;}
body.bf-theme .front-chat-bubble {background:#292932!important;color:#f1f1f6!important;border-color:#484853!important;}
body.bf-theme .front-chat-row.is-user .front-chat-bubble {background:#52301e!important;color:#fff!important;border-color:#87502b!important;}
body.bf-theme .front-chat-row.is-failed .front-chat-bubble {background:#75252d!important;color:#fff!important;border-color:#ad3540!important;}
body.bf-theme .front-chat-product {background:#25252d!important;color:#f5f5f8!important;border-color:#484853!important;}
body.bf-theme .front-chat-product-store {color:#b8bbc5!important;}
body.bf-theme .front-chat-product-title {color:#fafafd!important;}
body.bf-theme .front-chat-product-price {color:#ff983e!important;}
body.bf-theme .front-chat-product img {background:#fff!important;object-fit:contain!important;}
body.bf-theme .front-chat-product-link {background:linear-gradient(180deg,#ff8b35,#ec4719)!important;color:#fff!important;}
body.bf-theme .front-chat-avatar {background:#362a2c!important;color:#ffa66a!important;}
body.bf-theme .front-chat-close {background:#30262a!important;color:#fff!important;}
body.bf-theme .front-chat-notice.is-danger {background:#56212b!important;color:#ffdade!important;border-color:#81303d!important;}
body.bf-theme .front-chat-notice.is-success {background:#173e2c!important;color:#d8ffdd!important;border-color:#29613e!important;}

/* Correções finais de contraste de texto encontradas na revisão visual */
body.bf-theme .js-wishlist-summary-count { color:#f4f4f8!important; }
body.bf-theme .produto-page :is(.form-label,.form-label.fw-semibold,.avaliacao-form-card label) {
  color:#f3f3f8!important;
}
body.bf-theme :is(.store-profile-stat strong,.store-profile-kicker,.institutional-kicker) {
  color:#ffae60!important;
}
body.bf-theme .front-chat-launch {background:linear-gradient(135deg,#231c1a,#d9491d)!important;color:#fff!important;border:1px solid #a84629!important;}
body.bf-theme .front-chat-launch-icon {background:rgba(255,119,42,.15)!important;color:#fff!important;}
/* Caso a imagem não carregue, o texto alternativo também fica legível sobre o branco reservado à foto. */
body.bf-theme :is(.front-deal-image-link,.products-page-image,.produto-card .produto-img-wrap,.busca-card-image,.store-product-image,.produto-recommend-img-wrap) {color:#35353e!important;}


/* Black Friday | logos maiores e fundos brancos: correção definitiva.
   Aplicada por último após CSS de cada página; somente logos recebem branco. */
body.bf-theme .front-deal-card .front-store-logo,
body.bf-theme .products-page-card .products-page-store,
body.bf-theme .products-store-logo,
body.bf-theme .filter-store-logo,
body.bf-theme .bf-official-card .front-store-pill-logo,
body.bf-theme .stores-logo-card-logo,
body.bf-theme .promo-logo-card-logo,
body.bf-theme .store-profile-logo {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-shrink:0 !important;
  padding:5px !important;
  background:#fff !important;
  background-image:none !important;
  border:1px solid #e9e9ed !important;
  border-radius:0 !important;
  box-shadow:0 4px 12px rgba(0,0,0,.15) !important;
  overflow:hidden !important;
  color:#1b2430 !important;
}
body.bf-theme .front-deal-card .front-store-logo,
body.bf-theme .products-page-card .products-page-store {
  width:46px !important;
  height:46px !important;
}
body.bf-theme .front-deal-card .front-store-logo img,
body.bf-theme .products-page-card .products-page-store img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  filter:none !important;
}
body.bf-theme .front-deal-card .front-store-logo i,
body.bf-theme .products-page-card .products-page-store i {color:#19212c !important;font-size:23px !important;}

/* Badge com logo e nome: usar branco no badge inteiro, texto escuro legível. */
body.bf-theme .marketplace-logo-badge,
body.bf-theme .produto-card .marketplace-logo-badge,
body.bf-theme .busca-card .marketplace-logo-badge,
body.bf-theme .produto-recommend-section .marketplace-logo-badge,
body.bf-theme .produto-web-card .marketplace-logo-badge,
body.bf-theme .search-suggest .marketplace-logo-badge {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:9px !important;
  width:fit-content !important;
  max-width:100% !important;
  min-height:49px !important;
  padding:5px 11px 5px 5px !important;
  background:#fff !important;
  background-image:none !important;
  border:1px solid #e7e9ed !important;
  border-radius:0 !important;
  color:#182230 !important;
  box-shadow:0 4px 12px rgba(0,0,0,.12) !important;
  font-size:12px !important;
  font-weight:750 !important;
  line-height:1.2 !important;
}
body.bf-theme .marketplace-logo-badge::before {display:none !important;}
body.bf-theme .marketplace-logo-badge > span,
body.bf-theme .marketplace-logo-badge > strong {
  color:#182230 !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:750 !important;
}
body.bf-theme .marketplace-logo-badge img,
body.bf-theme .produto-card .marketplace-logo-badge img,
body.bf-theme .search-suggest-meta .marketplace-logo-badge img {
  display:block !important;
  flex:0 0 39px !important;
  width:39px !important;
  height:39px !important;
  min-width:39px !important;
  max-width:39px !important;
  max-height:39px !important;
  padding:2px !important;
  margin:0 !important;
  background:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  object-fit:contain !important;
  filter:none !important;
}
body.bf-theme .marketplace-logo-badge.is-generic i {
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 39px !important;
  width:39px !important;
  height:39px !important;
  color:#172230 !important;
  font-size:22px !important;
  background:#fff !important;
}

/* Filtro de lojas nas páginas categoria e produtos. */
body.bf-theme .filter-store-option {grid-template-columns:52px minmax(0,1fr) !important;}
body.bf-theme .products-store-option {grid-template-columns:52px minmax(0,1fr) !important;}
body.bf-theme .filter-store-logo,
body.bf-theme .products-store-logo {
  width:52px !important;
  height:52px !important;
  padding:4px !important;
  background:#fff !important;
  border-radius:0 !important;
}
body.bf-theme .filter-store-logo img,
body.bf-theme .products-store-logo img {
  display:block !important;
  flex:0 0 auto !important;
  width:43px !important;
  height:43px !important;
  max-width:100% !important;
  max-height:100% !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  object-fit:contain !important;
  filter:none !important;
}
body.bf-theme .filter-store-logo i,
body.bf-theme .products-store-logo i {
  color:#172230 !important;
  font-size:22px !important;
  filter:none !important;
}
body.bf-theme .filter-store-logo.has-no-img::after {filter:none !important;}

/* Lojas / cupons: ampliar a arte da marca sem clarear o card. */
body.bf-theme .stores-logo-card-logo,
body.bf-theme .promo-logo-card-logo {
  width:100px !important;
  height:100px !important;
  max-width:100% !important;
  padding:9px !important;
  background:#fff !important;
}
body.bf-theme .stores-logo-card-logo img,
body.bf-theme .promo-logo-card-logo img {
  width:100% !important;
  height:100% !important;
  max-height:100% !important;
  padding:0 !important;
  object-fit:contain !important;
  border-radius:0 !important;
  background:transparent !important;
}
body.bf-theme .stores-logo-card-logo i,
body.bf-theme .promo-logo-card-logo i {color:#202532 !important;}
body.bf-theme .bf-official-card {
  grid-template-columns:62px minmax(0,1fr) !important;
}
body.bf-theme .bf-official-card .front-store-pill-logo {
  width:58px !important;
  height:55px !important;
  padding:5px !important;
  background:#fff !important;
  border:1px solid #e7e9ed !important;
  border-radius:0 !important;
}
body.bf-theme .bf-official-card .front-store-pill-logo img {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  background:transparent !important;
  border-radius:0 !important;
}
body.bf-theme .bf-official-card .front-store-pill-logo i {color:#172230 !important;}
@media(max-width:575.98px) {
  body.bf-theme .front-deal-card .front-store-logo,
  body.bf-theme .products-page-card .products-page-store {width:42px !important;height:42px !important;}
  body.bf-theme .bf-official-card {grid-template-columns:51px minmax(0,1fr) !important;}
  body.bf-theme .bf-official-card .front-store-pill-logo {width:49px !important;height:49px !important;}
  body.bf-theme .marketplace-logo-badge {font-size:11px !important;}
}

/* Dimensões previsíveis (sem crescer por padding/borda em temas herdados). */
body.bf-theme :is(.front-store-logo,.products-page-store,.products-store-logo,.filter-store-logo,
  .front-store-pill-logo,.stores-logo-card-logo,.promo-logo-card-logo,.store-profile-logo,
  .marketplace-logo-badge),
body.bf-theme :is(.front-store-logo,.products-page-store,.products-store-logo,.filter-store-logo,
  .front-store-pill-logo,.stores-logo-card-logo,.promo-logo-card-logo,.marketplace-logo-badge) img {
  box-sizing:border-box !important;
}

/* Black Friday | Lojas oficiais no formato compacto da referência (exceção clara). */
body.bf-theme .bf-official .bf-official-grid {
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:11px !important;
  align-items:stretch !important;
}
body.bf-theme .bf-official .bf-official-card,
body.bf-theme .bf-official .bf-official-card:hover {
  display:grid !important;
  grid-template-columns:46px minmax(0,1fr) !important;
  grid-template-rows:1fr auto !important;
  align-items:center !important;
  gap:7px 9px !important;
  min-height:112px !important;
  padding:11px !important;
  background:#fff !important;
  color:#17202b !important;
  border:1px solid #e8e8ed !important;
  border-radius:11px !important;
  box-shadow:0 6px 16px rgba(0,0,0,.16) !important;
}
body.bf-theme .bf-official .bf-official-card:hover {
  transform:translateY(-2px) !important;
  border-color:#ff7435 !important;
  box-shadow:0 10px 25px rgba(255,100,31,.17) !important;
}
body.bf-theme .bf-official .bf-official-card .front-store-pill-logo {
  grid-column:1 !important;
  grid-row:1 !important;
  width:44px !important;
  height:44px !important;
  padding:3px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
}
body.bf-theme .bf-official .bf-official-card .front-store-pill-logo img {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
}
body.bf-theme .bf-official .bf-official-card .front-store-pill-content {
  grid-column:2 !important;
  grid-row:1 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
  min-width:0 !important;
  color:#17202b !important;
}
body.bf-theme .bf-official .bf-official-card .front-store-pill-content strong {
  font-size:11.5px !important;
  line-height:1.25 !important;
  color:#17202b !important;
  font-weight:850 !important;
}
body.bf-theme .bf-official .bf-official-card .front-store-pill-content small {
  font-size:9px !important;
  line-height:1.3 !important;
  color:#576376 !important;
}
body.bf-theme .bf-official .bf-official-card .bf-official-cta,
body.bf-theme .bf-official .bf-official-card:hover .bf-official-cta {
  grid-column:1 / -1 !important;
  grid-row:2 !important;
  justify-self:stretch !important;
  width:100% !important;
  min-height:28px !important;
  margin:0 !important;
  padding:5px 9px !important;
  border:1px solid #ff713c !important;
  border-radius:99px !important;
  background:#fff !important;
  box-shadow:none !important;
  color:#ee4b1c !important;
  font-size:10px !important;
  font-weight:850 !important;
  text-decoration:none !important;
}
body.bf-theme .bf-official .bf-official-card:hover .bf-official-cta {
  background:#fff1ea !important;
}
body.bf-theme .bf-official .bf-official-card .bf-official-cta i,
body.bf-theme .bf-official .bf-official-card .front-store-pill-logo i {
  color:#f05b20 !important;
}
@media (max-width:1199.98px){
  body.bf-theme .bf-official .bf-official-grid {grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:767.98px){
  body.bf-theme .bf-official .bf-official-grid {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body.bf-theme .bf-official .bf-official-card {grid-template-columns:38px minmax(0,1fr) !important;gap:7px !important;min-height:104px !important;padding:9px !important;}
  body.bf-theme .bf-official .bf-official-card .front-store-pill-logo {width:38px !important;height:38px !important;}
}

/* Um único contador sincronizado em todos os cards, respeitando a configuração. */
body.bf-theme :is(.front-deal-card,.products-page-card,.produto-card,.busca-card,.produto-recommend-card) .bf-card-countdown,
body.bf-theme .produto-page .produto-web-card > .bf-card-countdown {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  flex-wrap:wrap !important;
  gap:4px 7px !important;
  min-width:0 !important;
  max-width:100% !important;
  margin-top:9px !important;
  padding:8px 9px !important;
  background:linear-gradient(110deg,#332318,#242026) !important;
  border:1px solid #6e472e !important;
  border-radius:9px !important;
  color:#ffcb90 !important;
  box-sizing:border-box !important;
}
body.bf-theme .produto-card .bf-card-countdown,
body.bf-theme .busca-card .bf-card-countdown,
body.bf-theme .produto-recommend-card .bf-card-countdown {
  margin-top:auto !important;
}
body.bf-theme .bf-card-countdown .bf-countdown-label,
body.bf-theme .bf-card-countdown .bf-countdown-label span {color:#ffd3a3 !important;font-size:10px !important;}
body.bf-theme .bf-card-countdown .bf-countdown-label i {color:#ff9341 !important;}
body.bf-theme .bf-card-countdown .bf-countdown-digits {color:#ffd66b !important;font-weight:900 !important;letter-spacing:.03em !important;}
body.bf-theme .bf-card-countdown.is-expired {background:#23232a !important;border-color:#4a4a55 !important;}
body.bf-theme .bf-card-countdown.is-expired :is(.bf-countdown-label,.bf-countdown-label span,.bf-countdown-digits) {color:#b7b7c2 !important;}
@media (max-width:575.98px){
  body.bf-theme :is(.produto-card,.busca-card,.produto-recommend-card,.products-page-card) .bf-card-countdown {padding:6px !important;}
  body.bf-theme :is(.produto-card,.busca-card,.produto-recommend-card,.products-page-card) .bf-countdown-digits {font-size:10px !important;}
}
/* Contorno do botão sempre dentro do card branco. */
body.bf-theme .bf-official .bf-official-card .bf-official-cta {
  box-sizing:border-box !important;
  max-width:100% !important;
  min-width:0 !important;
}


/* Banner Black Friday editável pelo painel (cores por propriedades CSS seguras). */
body.bf-theme .bf-hero {
    background: radial-gradient(circle at 76% 47%,#73200f 0%,transparent 34%),
                radial-gradient(circle at 29% 87%,#ba290c 0%,transparent 33%),
                linear-gradient(110deg,#09090a 4%,var(--bf-banner-bg,#230a0c) 50%,#08070a 100%) !important;
}
body.bf-theme .bf-hero h1 strong {color:var(--bf-banner-gold,#ffbb19) !important;}
body.bf-theme .bf-hero-highlight {background:var(--bf-banner-gold,#ffbb19) !important;}
body.bf-theme .bf-hero-button {background:linear-gradient(90deg,var(--bf-banner-button,#ff6420),#ec2514) !important;}
/* Imagem enviada pelo painel vira o banner inteiro, não uma miniatura lateral.
   A altura segue a proporção real da arte: sem faixas, sem cortes e responsivo. */
body.bf-theme .bf-hero.bf-hero--full-image {
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  background:#13090a !important;
  overflow:hidden !important;
  line-height:0 !important;
}
body.bf-theme .bf-hero.bf-hero--full-image::before,
body.bf-theme .bf-hero.bf-hero--full-image::after { content:none !important; display:none !important; }
body.bf-theme .bf-hero.bf-hero--full-image .bf-hero-copy,
body.bf-theme .bf-hero.bf-hero--full-image .bf-hero-illustration,
body.bf-theme .bf-hero.bf-hero--full-image .bf-hero-particles { display:none !important; }
body.bf-theme .bf-hero .bf-hero-image-link {
  display:block !important;
  width:100% !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:inherit !important;
  overflow:hidden !important;
  line-height:0 !important;
  text-decoration:none !important;
}
body.bf-theme .bf-hero .bf-hero-cover-image {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  margin:0 !important;
  box-shadow:none !important;
  filter:none !important;
  transform:none !important;
}
body.bf-theme .bf-hero .bf-hero-image-link:focus-visible {
  outline:3px solid #ffc341 !important;
  outline-offset:-4px;
}

/* Ajuste da vitrine: menu de categorias compacto e cards de largura equivalente.
   Home: 5 cards junto ao menu x 6 cards abaixo (desktop); 4 x 5 (notebook).
   Somente a home é afetada. A lista mantém rolagem para todas as categorias. */
@media (min-width: 1400px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) {
    grid-template-columns: 220px minmax(0, 1fr) !important;
    gap: 18px !important;
  }
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) {
    grid-template-columns: minmax(180px, calc(16.66667% - 12.33px)) minmax(0, 1fr) !important;
    gap: 14px !important;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) {
    grid-template-columns: minmax(180px, calc(20% - 10px)) minmax(0, 1fr) !important;
    gap: 12px !important;
  }
  body.bf-theme .bf-home .bf-best-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 992px) {
  body.bf-theme .bf-home .front-category-panel.bf-sidebar {
    width: 100% !important;
    align-self: start !important;
    padding: 11px 9px !important;
  }
  body.bf-theme .bf-home .bf-sidebar h3 {
    font-size: 14px !important;
    margin: 3px 5px 9px !important;
  }
  body.bf-theme .bf-home .bf-sidebar .front-category-list {
    max-height: 246px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    gap: 3px !important;
    scrollbar-width: thin;
    scrollbar-color: #815342 #24242b;
  }
  body.bf-theme .bf-home .bf-sidebar .front-category-link {
    min-height: 29px !important;
    padding: 5px 7px !important;
    gap: 7px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
  }
  body.bf-theme .bf-home .bf-sidebar-all {
    min-height: 34px !important;
    margin-top: 8px !important;
    padding: 0 10px !important;
    font-size: 10px !important;
  }
}
/* Em tablet e celular, categorias continuam na faixa horizontal original. */
@media (max-width: 991.98px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.bf-theme .bf-home .bf-sidebar .front-category-list {
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }
}


/* Black Friday | altura do menu sincronizada com os cards de ofertas.
   A coluna não tem altura fixa: acompanha toda a primeira vitrine, inclusive o banner. */
@media (min-width: 992px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) {
    align-items: stretch !important;
  }
  body.bf-theme .bf-home .front-category-panel.bf-sidebar {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    align-self: stretch !important;
    height: 100% !important;
    box-sizing: border-box !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  body.bf-theme .bf-home .bf-sidebar .front-category-list {
    min-height: 0 !important;
    max-height: none !important;
    height: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }
  body.bf-theme .bf-home .bf-sidebar .front-category-link {
    min-height: 34px !important;
    padding: 7px 9px !important;
    gap: 9px !important;
    font-size: 11.5px !important;
  }
  body.bf-theme .bf-home .bf-sidebar h3 {
    font-size: 15px !important;
    margin-bottom: 12px !important;
  }
  body.bf-theme .bf-home .bf-sidebar-all {
    min-height: 39px !important;
    margin-top: 12px !important;
  }
}

/* 2026-11-01 | Menu lateral: terminar precisamente no fim da faixa Frete grátis / Cupons.
   A vitrine de ofertas passa a ser uma linha de largura total abaixo do conjunto. */
body.bf-theme .bf-home .bf-primary-content > .bf-trust-ribbon {
  margin-bottom: 0 !important;
}
body.bf-theme .bf-home > .bf-flash {
  margin-top: 19px !important;
  margin-bottom: 0 !important;
  width: 100%;
  min-width: 0;
}
@media (min-width: 992px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) {
    align-items: stretch !important;
  }
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) > .bf-sidebar {
    align-self: stretch !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
  body.bf-theme .bf-home .bf-sidebar .front-category-list {
    min-height: 0 !important;
    height: 100% !important;
    max-height: none !important;
    overflow-y: auto !important;
  }
}
/* Mesma largura de cards em Ofertas Relâmpago e Mais Achadinhos. */
@media (min-width: 1400px) {
  body.bf-theme .bf-home .bf-flash-grid { grid-template-columns: repeat(6, minmax(0,1fr)) !important; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  body.bf-theme .bf-home .bf-flash-grid { grid-template-columns: repeat(5, minmax(0,1fr)) !important; }
}
@media (max-width: 991.98px) {
  body.bf-theme .bf-home > .bf-flash { margin-top: 16px !important; }
}

/* O menu é retirado do cálculo da altura da linha do grid, deixando
   o banner e a faixa de benefícios determinarem seu limite vertical. */
@media (min-width: 992px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) {
    position: relative !important;
    grid-template-rows: auto !important;
  }
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) > .bf-primary-content {
    grid-column: 2;
    grid-row: 1;
  }
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) > .bf-sidebar {
    position: absolute !important;
    grid-column: 1;
    grid-row: 1;
    inset: 0 !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
  }
}
@media (min-width: 1400px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) > .bf-sidebar {
    width: 220px !important;
  }
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) > .bf-sidebar {
    width: max(180px, calc(16.66667% - 12.33px)) !important;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  body.bf-theme .bf-home .bf-above-fold:not(.bf-no-sidebar) > .bf-sidebar {
    width: max(180px, calc(20% - 10px)) !important;
  }
}

/* 2026-11-01 | Menu de categorias: rolagem funcional, sem barra visível.
   A regra fica no CSS FINAL (carregado depois do tema base), para sobrescrever
   o scrollbar-width:thin e o scrollbar-color definidos nos breakpoints. */
body.bf-theme .bf-home .bf-sidebar .front-category-list {
  scrollbar-width: none !important; /* Firefox */
  -ms-overflow-style: none; /* Edge legado */
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}
body.bf-theme .bf-home .bf-sidebar .front-category-list::-webkit-scrollbar {
  display: none !important; /* Chrome, Edge Chromium, Safari */
  width: 0 !important;
  height: 0 !important;
}
body.bf-theme .bf-home .bf-sidebar .front-category-list::-webkit-scrollbar-track,
body.bf-theme .bf-home .bf-sidebar .front-category-list::-webkit-scrollbar-thumb,
body.bf-theme .bf-home .bf-sidebar .front-category-list::-webkit-scrollbar-button {
  display: none !important;
}


/* 01/11/2026 | Faixas de títulos acima das seções: referência Ofertas Relâmpago.
   O mesmo padrão acompanha Categorias, Mais Achadinhos, Campanhas e Lojas. */
body.bf-theme .bf-home .bf-promo-heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap;
  gap: 12px 18px !important;
  min-height: 70px !important;
  width: 100%;
  margin: 0 0 16px !important;
  padding: 14px clamp(12px, 1.5vw, 22px) !important;
  border: 1px solid #26232a;
  border-radius: 13px;
  background: linear-gradient(100deg, #0d0d10 0%, #09090b 53%, #101014 100%);
  box-shadow: inset 0 1px 0 #ffffff07, 0 4px 15px #0004;
}
body.bf-theme .bf-home .bf-promo-heading .bf-heading-intro {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 15px;
  min-width: 0;
}
body.bf-theme .bf-home .bf-promo-heading h2 {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 !important;
  color: #fcfcfc !important;
  font-size: clamp(23px, 2.5vw, 28px) !important;
  font-weight: 900 !important;
  line-height: 1.15;
  letter-spacing: -.045em;
  text-wrap: balance;
}
body.bf-theme .bf-home .bf-promo-heading h2 > i {
  color: #ff9a0d !important;
  font-size: 1.18em;
  filter: drop-shadow(0 0 6px #e773152e);
}
body.bf-theme .bf-home .bf-promo-heading h2 em { color: #ff8320 !important; }
body.bf-theme .bf-home .bf-promo-heading .bf-heading-hint {
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  font-weight: 650;
  color: #bbbbc4;
  line-height: 1.35;
}
body.bf-theme .bf-home .bf-promo-heading .bf-limited-label {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 12px;
  border: 1px solid #c41f32;
  border-radius: 100px;
  background: linear-gradient(180deg, #cf0923, #a6001c) !important;
  color: #fff !important;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: 0 0 15px #e9001f30;
}
body.bf-theme .bf-home .bf-promo-heading .bf-flash-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 12px 16px;
  min-width: 0;
  margin-left: auto;
}
body.bf-theme .bf-home .bf-promo-heading .front-section-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 100px;
  min-height: 34px;
  margin-left: auto;
  padding: 7px 15px;
  border: 1px solid #bf5d0f;
  border-radius: 100px;
  background: linear-gradient(110deg, #2c180e, #190d07);
  color: #fff1dc !important;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none !important;
  box-shadow: inset 0 0 0 1px #fa8e1920, 0 0 10px #eb5f0b1b;
  transition: background .15s, border-color .15s, transform .15s;
}
body.bf-theme .bf-home .bf-promo-heading .front-section-link:hover {
  background: #573010;
  border-color: #ff9c39;
  transform: translateY(-1px);
  color: #fff !important;
}
body.bf-theme .bf-home .bf-flash-countdown {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  color: #f7f7fa;
  font-variant-numeric: tabular-nums;
}
body.bf-theme .bf-home .bf-flash-countdown .bf-countdown-label {
  display: inline-flex;
  align-items: center;
  gap: 0;
  color: #e8e8ee !important;
  font-size: 11px;
  font-weight: 650;
  white-space: nowrap;
}
body.bf-theme .bf-home .bf-flash-timer {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #fff !important;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}
body.bf-theme .bf-home .bf-flash-time-unit {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  gap: 2px;
  min-width: 33px;
  padding: 8px 5px;
  border: 1px solid #c30922;
  border-radius: 7px;
  background: linear-gradient(170deg, #dd1028, #960014);
  box-shadow: 0 1px 4px #8b071b55;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
}
body.bf-theme .bf-home .bf-flash-time-unit small { font-size: 9px; }
body.bf-theme .bf-home .bf-flash-time-unit[hidden] { display: none !important; }
body.bf-theme .bf-home .bf-flash-time-separator {
  color: #e4d9dd;
  font-size: 15px;
  font-weight: 900;
}
body.bf-theme .bf-home .bf-flash-countdown.is-expired .bf-countdown-label,
body.bf-theme .bf-home .bf-flash-countdown.is-expired .bf-flash-timer {
  color: #bbb6bc !important;
}
@media (max-width: 860px) {
  body.bf-theme .bf-home .bf-promo-heading { min-height: 64px !important; }
  body.bf-theme .bf-home .bf-flash-heading .bf-heading-intro { flex: 1 1 100%; }
  body.bf-theme .bf-home .bf-flash-heading .bf-flash-actions { margin-left: 0; width: 100%; justify-content: space-between; }
}
@media (max-width: 600px) {
  body.bf-theme .bf-home .bf-promo-heading {
    padding: 12px !important;
    gap: 10px 12px !important;
    border-radius: 11px;
    margin-bottom: 12px !important;
  }
  body.bf-theme .bf-home .bf-promo-heading h2 { font-size: clamp(17px, 5.5vw, 22px) !important; gap: 7px; }
  body.bf-theme .bf-home .bf-promo-heading .bf-heading-intro { gap: 8px 10px; }
  body.bf-theme .bf-home .bf-promo-heading .bf-heading-hint { font-size: 10px; }
  body.bf-theme .bf-home .bf-promo-heading .bf-limited-label { font-size: 10px; padding: 5px 9px; }
  body.bf-theme .bf-home .bf-promo-heading .front-section-link { min-width: 0; padding: 7px 11px; font-size: 10px; }
  body.bf-theme .bf-home .bf-flash-heading .bf-flash-actions { gap: 8px; }
  body.bf-theme .bf-home .bf-flash-countdown { gap: 5px; }
  body.bf-theme .bf-home .bf-flash-countdown .bf-countdown-label { font-size: 10px; }
  body.bf-theme .bf-home .bf-flash-timer { gap: 3px; }
  body.bf-theme .bf-home .bf-flash-time-unit { min-width: 27px; padding: 6px 4px; font-size: 11px; }
  body.bf-theme .bf-home .bf-flash-time-separator { font-size: 12px; }
}
@media (max-width: 360px) {
  body.bf-theme .bf-home .bf-flash-heading .bf-flash-actions { justify-content: flex-start; }
  body.bf-theme .bf-home .bf-flash-heading .front-section-link { margin-left: auto; }
}
@media (prefers-reduced-motion: reduce) {
  body.bf-theme .bf-home .bf-promo-heading .front-section-link { transition: none; }
}
