:root {
  --ink: #111111;
  --yellow: #ffd000;
  --yellow-rgb: 255, 208, 0;
  --yellow-soft: rgba(255, 208, 0, .16);
  --yellow-line: rgba(175, 129, 0, .35);
  --yellow-deep: #f0b900;
  --yellow-ink: #111111;
  --yellow-glow: rgba(255, 210, 0, .28);
  --canvas: #fff9e6;
  --line: #e4d8b5;
  --muted: #5f5a52;
  --white: #fff;
  --brand-green: #111111;
  --brand-green-soft: rgba(17, 17, 17, .08);
  --brand-red: #cf0805;
  --brand-red-deep: #a60603;
  --brand-red-soft: rgba(207, 8, 5, .10);
  --boteco-blue: var(--brand-red);
  --boteco-blue-deep: var(--brand-red-deep);
  --boteco-cream: #fff9e6;
  --boteco-green: var(--brand-red);
  --boteco-orange: var(--brand-red);
  --boteco-red: var(--brand-red);
  --payment-bg: #fff9e6;
  --payment-blue: var(--ink);
  --payment-blue-deep: #000;
  --payment-border: var(--line);
  --payment-muted: var(--muted);
  --payment-navy: var(--ink);
  --payment-soft: var(--yellow-soft);
  --payment-success: var(--brand-red);
  --payment-success-soft: var(--brand-red-soft);
  --payment-surface: #fff;
  --payment-text: var(--ink);
}

html,
body,
.store-page,
.store-shell,
.content,
.site-footer {
  background: var(--canvas) !important;
  color: var(--ink) !important;
}

body {
  color-scheme: light;
}

.legacy-store-header,
.local-profile-hero,
.category-nav,
.product-section,
.offers-section,
.combos-section,
.copao-section {
  background: transparent !important;
}

.local-profile-card,
.product-card,
.age-card,
.delivery-address-modal-card,
.checkout-card,
.checkout-summary,
.pix-box-local,
.local-delivery-banner {
  background: #fff !important;
  border-color: var(--line) !important;
  color: var(--ink) !important;
}

.local-profile-card {
  box-shadow: 0 14px 32px rgba(17, 18, 20, .1) !important;
}

.local-profile-card h1,
.section-heading h2,
.product-card h3,
.product-card strong,
.footer-brand strong,
.age-card h1 {
  color: var(--ink) !important;
}

.local-profile-card button,
.local-profile-actions button,
.section-heading > button,
.add-button,
.primary-action,
.payment-button,
.age-approve,
.pix-copy,
.summary-toggle,
.delivery-address-modal-card button[type="submit"] {
  background: var(--yellow) !important;
  border-color: var(--yellow) !important;
  color: var(--ink) !important;
  box-shadow: 0 8px 18px rgba(var(--yellow-rgb), .25) !important;
}

.local-profile-card button:hover,
.local-profile-actions button:hover,
.section-heading > button:hover,
.add-button:hover,
.primary-action:hover,
.payment-button:hover,
.age-approve:hover,
.pix-copy:hover,
.summary-toggle:hover,
.delivery-address-modal-card button[type="submit"]:hover {
  background: var(--yellow-deep) !important;
  border-color: var(--yellow-deep) !important;
  color: var(--ink) !important;
}

.cart-float,
.cart-button,
.checkout-summary .summary-toggle {
  background: var(--ink) !important;
  border-color: var(--ink) !important;
  color: var(--yellow) !important;
}

.cart-float *,
.cart-button *,
.checkout-summary .summary-toggle * {
  color: var(--yellow) !important;
}

.hero-kicker,
.best-seller-badge,
.offer-discount-badge,
.urgency-24h-badge,
.category-new-badge {
  background: var(--ink) !important;
  border-color: var(--ink) !important;
  color: var(--yellow) !important;
}

.delivery-free-pulse,
.minimum-order-highlight,
.zip-status.found,
.payment-status.success,
.minimum-order-mark.is-success {
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
  color: var(--ink) !important;
}

.category-nav button,
.category-nav button span,
.footer-links a,
.footer-contact,
.local-profile-details small,
.local-profile-details strong,
.section-heading p,
.product-card p,
.card-bottom > span {
  color: var(--ink) !important;
}

.category-nav button.is-active {
  background: var(--yellow) !important;
  border-color: var(--yellow) !important;
  color: var(--ink) !important;
}

.category-nav button:hover {
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

.category-visual [fill]:not([fill="none"]),
.section-category-image [fill]:not([fill="none"]) {
  fill: var(--yellow) !important;
}

.category-visual [stroke],
.section-category-image [stroke] {
  stroke: var(--ink) !important;
}

.offers-section {
  background: var(--yellow) !important;
  border-color: var(--yellow-line) !important;
}

.offers-section * {
  color: var(--ink) !important;
}

.site-footer {
  border-top-color: var(--line) !important;
}

.legal-warning-bar {
  background: var(--ink) !important;
  border-color: var(--ink) !important;
  color: var(--yellow) !important;
}

.age-gate {
  background: rgba(17, 18, 20, .7) !important;
}

.age-deny,
.age-exit {
  color: var(--ink) !important;
  border-color: var(--line) !important;
  background: #fff !important;
}

input:focus,
select:focus,
textarea:focus,
button:focus-visible,
a:focus-visible {
  outline: 3px solid var(--yellow) !important;
  outline-offset: 2px;
}

/* Auditoria visual completa: a camada abaixo cobre todos os estados e fluxos
   presentes no bundle atual sem alterar markup, rotas ou comportamento. */
:root {
  --boteco-red: var(--brand-red);
  --boteco-red-deep: var(--brand-red-deep);
  --boteco-orange: var(--yellow);
  --boteco-green: var(--ink);
  --boteco-blue: var(--ink);
  --boteco-blue-deep: #000;
  --brand-green: var(--ink);
  --brand-green-soft: var(--yellow-soft);
  --brand-red: #cf0805;
  --brand-red-deep: #a60603;
  --brand-red-soft: rgba(207, 8, 5, .10);
  --category-icon-color: var(--ink);
  --payment-bg: var(--canvas);
  --payment-blue: var(--ink);
  --payment-blue-deep: #000;
  --payment-border: var(--line);
  --payment-muted: var(--muted);
  --payment-navy: var(--ink);
  --payment-soft: var(--yellow-soft);
  --payment-success: var(--ink);
  --payment-success-soft: var(--yellow-soft);
  --payment-text: var(--ink);
}

/* Superfícies de todas as páginas */
:is(.store-page, .store-shell, .content, .route-page, .cart-page,
  .checkout-page, .cart-checkout-page, .pix-screen-local, .legal-page,
  .legal-article, .state-city-section, .city-directory) {
  color: var(--ink) !important;
  background: var(--canvas) !important;
}

:is(.topbar, .topbar-card, .legacy-store-header, .category-showcase,
  .category-nav, .product-section, .site-footer) {
  color: var(--ink) !important;
  background: var(--canvas) !important;
}

.local-profile-hero {
  background: linear-gradient(135deg, var(--ink) 0%, var(--ink) 55%, var(--yellow) 150%) !important;
}

:is(.local-profile-card, .topbar-card, .product-card, .cart-drawer,
  .cart-checkout-line, .cart-checkout-summary, .checkout-card,
  .checkout-summary, .checkout-modal-card, .checkout-order-summary,
  .checkout-modal-progress, .checkout-suggestions, .delivery-choice-card,
  .location-prompt-card, .location-coverage-card, .minimum-order-card,
  .order-modal-card, .pix-box-local, .pix-ready-box, .age-card,
  .legal-article, .admin-card, .admin-login, .admin-health-card,
  .admin-highlight-card, .admin-traffic-card) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.topbar-actions, .topbar-trust-strip, .cart-drawer-head,
  .checkout-order-summary-head, .checkout-address-fields > div,
  .courier-destination, .pix-ready-amount, .checkout-review-receipt,
  .checkout-review-table, .payment-document, .generated-qr) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

/* Cabeçalho, marca, status e navegação */
:is(.topbar-logo, .topbar-logo-image-crop, .topbar-logo img,
  .local-profile-logo, .location-prompt-brand, .courier-avatar img,
  .courier-avatar i) {
  background: var(--yellow) !important;
}

:is(.topbar-open-ring, .topbar-eyebrow, .topbar-copy h1,
  .topbar-copy p, .topbar-metrics dt, .topbar-metrics dd,
  .topbar-trust-strip, .topbar-trust-strip p, .topbar-trust-strip p strong,
  .topbar-benefits span, .local-profile-card h1,
  .local-profile-details small, .local-profile-details strong,
  .section-heading h2, .section-heading p) {
  color: var(--ink) !important;
}

:is(.topbar-status, .topbar-status.is-open, .hero-kicker, .store-status,
  .topbar-online) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

.topbar-status::before,
.topbar-online i,
.courier-nearby-notice > i {
  background: var(--ink) !important;
}

.topbar-address,
.topbar-address:hover,
.topbar-address[aria-expanded="true"] {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.topbar-address .icon, .topbar-cart .icon,
  .topbar-trust-strip p .icon) {
  color: var(--ink) !important;
}

.topbar-cart {
  color: var(--yellow) !important;
  background: var(--ink) !important;
  border-color: var(--ink) !important;
}

.topbar-cart b {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.category-nav button, .category-nav button span) {
  color: var(--ink) !important;
}

.category-nav button.is-active,
.category-nav button:hover {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.category-nav-icon .category-visual *, .section-category-image .category-visual *,
  .route-heading-visual .category-visual *) {
  stroke: var(--ink) !important;
}

:is(.category-nav-icon .category-visual [fill]:not([fill="none"]),
  .section-category-image .category-visual [fill]:not([fill="none"]),
  .route-heading-visual .category-visual [fill]:not([fill="none"])) {
  fill: var(--yellow) !important;
}

/* Cards, ofertas, produto e carrinho */
:is(.product-card, .product-image, .detail-image,
  .cart-line > img, .cart-checkout-line > img,
  .checkout-suggestions img) {
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.product-card h3, .product-card p, .product-card strong,
  .card-bottom > span, .cart-line strong, .cart-line span, .cart-line em,
  .cart-total span, .cart-total strong, .cart-total small,
  .cart-checkout-line strong, .cart-checkout-line span,
  .cart-checkout-line small, .cart-checkout-summary > div,
  .cart-checkout-summary > div strong, .checkout-suggestion-name,
  .checkout-suggestion-price) {
  color: var(--ink) !important;
}

:is(.add-button, .primary-action, .checkout-primary,
  .cart-checkout-primary, .checkout-continue, .checkout-modal-primary,
  .checkout-review-submit, .payment-button, .pix-copy,
  .pix-ready-box .pix-copy, .delivery-choice-continue,
  .location-prompt-primary, .location-prompt-confirm,
  .location-coverage-continue, .minimum-order-card .primary-action,
  .place-button, .lead-submit) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  box-shadow: 0 6px 16px rgba(17, 18, 20, .16) !important;
}

:is(.add-button:hover, .primary-action:hover, .checkout-primary:hover,
  .cart-checkout-primary:hover, .checkout-continue:hover,
  .checkout-modal-primary:hover, .checkout-review-submit:hover,
  .payment-button:hover, .pix-copy:hover, .pix-ready-box .pix-copy:hover,
  .delivery-choice-continue:hover, .location-prompt-primary:hover,
  .location-prompt-confirm:hover, .location-coverage-continue:hover,
  .place-button:hover, .lead-submit:hover) {
  color: var(--ink) !important;
  background: var(--yellow-deep) !important;
  border-color: var(--ink) !important;
}

:is(.cart-float, .cart-checkout-header, .payment-loader-brand,
  .checkout-flow-heading, .checkout-review-heading > span) {
  color: var(--yellow) !important;
  background: var(--ink) !important;
}

.cart-float * {
  color: var(--yellow) !important;
}

:is(.best-seller-badge, .discount-badge, .discount-ribbon,
  .category-new-badge, .offer-discount-badge, .urgency-24h-badge) {
  color: var(--yellow) !important;
  background: var(--ink) !important;
  border-color: var(--ink) !important;
}

.offers-section {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

.offers-section * {
  color: var(--ink) !important;
}

:is(.cart-drawer-backdrop, .address-scrim, .location-prompt-backdrop,
  .delivery-choice-backdrop, .order-modal, .minimum-order-modal,
  .checkout-modal-page) {
  background: rgba(17, 18, 20, .78) !important;
}

:is(.cart-drawer-close, .delivery-choice-close, .minimum-order-close,
  .checkout-modal-heading button, .age-exit, .age-deny,
  .cart-drawer-continue, .cart-checkout-secondary,
  .checkout-modal-secondary, .secondary-action, .back-link) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.cart-drawer .cart-line, .cart-checkout-line, .cart-checkout-summary,
  .cart-total, .checkout-total) {
  border-color: var(--line) !important;
}

:is(.line-remove, .quantity-control button, .cart-drawer-close):hover {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
}

/* Endereço, cobertura, busca e entrega */
:is(.local-delivery-banner, .location-precision, .zip-status,
  .location-coverage-mark, .coverage-callout, .courier-search,
  .courier-search-status, .courier-note, .delivery-free-pulse,
  .checkout-free-delivery, .payment-address-summary,
  .payment-trust-note, .pix-delivery-notice, .minimum-order-amount,
  .minimum-order-reward) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

:is(.local-delivery-banner strong, .local-delivery-banner small,
  .location-precision, .zip-status, .location-coverage-eyebrow,
  .location-coverage-availability, .coverage-callout strong,
  .coverage-callout p, .courier-search-address, .courier-search-status,
  .courier-note, .checkout-free-delivery *, .payment-address-summary *,
  .payment-trust-note *, .pix-delivery-notice *, .minimum-order-reward *) {
  color: var(--ink) !important;
}

:is(.local-delivery-banner button, .coverage-callout a,
  .location-prompt-primary, .location-prompt-confirm) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

.address-popover,
.address-popover-head {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.address-popover label, .address-popover input,
  .location-prompt-cep > span, .location-prompt-helper,
  .location-prompt-skip, .location-prompt-subtitle,
  .location-prompt-card h2, .address-popover-head > strong) {
  color: var(--ink) !important;
}

:is(.address-popover input, .location-prompt-cep input,
  .checkout-card input, .checkout-card select,
  .checkout-modal-form input, .checkout-modal-form select,
  .payment-document input, .pix-box-local textarea) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.address-popover input:focus, .location-prompt-cep input:focus,
  .checkout-card input:focus, .checkout-card select:focus,
  .checkout-modal-form input:focus, .checkout-modal-form select:focus,
  .payment-document input:focus, .pix-box-local textarea:focus) {
  border-color: var(--ink) !important;
  box-shadow: 0 0 0 3px var(--yellow-soft) !important;
}

/* Checkout, pagamento, Pix e estados de validação */
:is(.checkout-card, .checkout-summary, .checkout-order-summary,
  .checkout-modal-card, .checkout-modal-progress, .checkout-suggestions,
  .checkout-payment-option, .pix-option, .payment-option,
  .checkout-review-receipt, .checkout-review-table) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.checkout-card h2, .checkout-card > p, .checkout-summary h2,
  .checkout-summary > div:first-child span, .checkout-order-summary-head,
  .checkout-order-summary-items > div, .checkout-order-summary-row,
  .checkout-order-summary-items strong, .checkout-order-summary-row strong,
  .checkout-modal-heading h1, .checkout-modal-form h2,
  .checkout-modal-form > p, .checkout-modal-form label,
  .checkout-modal-form label small, .checkout-address-fields span,
  .checkout-address-fields strong, .checkout-review-heading h2,
  .checkout-review-heading p, .checkout-review-receipt,
  .checkout-review-table, .checkout-review-table-row,
  .checkout-review-legal, .payment-security-copy,
  .payment-note-local, .pix-total-local, .pix-eyebrow,
  .pix-box-local > p, .pix-ready-intro, .pix-ready-copy-hint,
  .pix-ready-steps-title, .pix-ready-steps, .pix-ready-steps b,
  .pix-ready-back, .order-reference, .order-followup) {
  color: var(--ink) !important;
}

:is(.checkout-total, .cart-checkout-total, .checkout-order-total,
  .pix-ready-amount, .pix-ready-timer, .pix-timer) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

:is(.checkout-total strong, .cart-checkout-total strong,
  .checkout-order-total strong, .pix-ready-amount strong,
  .pix-timer b, .pix-ready-timer b, .checkout-payment-info b,
  .checkout-review-line.total, .checkout-review-line.total strong,
  .checkout-suggestion-price) {
  color: var(--ink) !important;
}

:is(.checkout-modal-progress-step span, .checkout-progress button,
  .confirm-steps li span, .confirm-steps li.active span) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.checkout-modal-progress-step.active span, .checkout-progress button.active,
  .confirm-steps li.active span) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.checkout-modal-progress-step.complete span, .confirm-steps li.done span,
  .pix-mark.confirmed, .pix-ready-check, .order-check,
  .brand-verified-check, .location-coverage-check) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.pix-mark, .pix-mark.expired, .pix-ready-check,
  .pix-option > span, .checkout-payment-option > span:first-child,
  .checkout-review-pix-icon) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.pix-option.is-selected, .payment-option.is-selected,
  .checkout-payment-option.selected, .checkout-payment-option:hover,
  .delivery-choice-option.selected, .delivery-choice-option:hover) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--ink) !important;
}

:is(.pix-approval-badge, .pix-approval-badge i,
  .payment-tag, .pix-delivery-icon) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.checkout-validation-alert, .field-error, .payment-error,
  .payment-error-brand, .location-prompt-message.error,
  .checkout-card input[aria-invalid="true"],
  .checkout-card select[aria-invalid="true"]) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

:is(.checkout-validation-alert > span, .payment-error-brand strong) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
}

/* Pedido concluído, carregamento, toast e mensagens */
:is(.toast, .toast-brand, .post-payment-box, .post-payment-offer,
  .empty-state, .demo-note, .payment-loader-card, .brand-loading-card) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.toast, .toast-brand) {
  box-shadow: 0 10px 24px rgba(17, 18, 20, .16) !important;
}

:is(.toast strong, .toast-brand strong, .toast-brand-mark,
  .payment-loader-cube, .brand-loading-face-front, .brand-loading-face-back) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.post-payment-discount, .post-payment-offer-heading,
  .post-payment-offer-note, .pix-sandbox-note) {
  color: var(--ink) !important;
}

/* Idade, rodapé, páginas legais e painel interno */
.age-gate {
  background: rgba(17, 18, 20, .82) !important;
}

:is(.age-card, .age-card h1, .age-card p, .age-kicker,
  .legal-header, .legal-brand, .legal-kicker, .legal-lead,
  .legal-updated, .legal-nav, .legal-page, .legal-article,
  .footer-brand, .footer-links, .footer-contact, .footer-heading) {
  color: var(--ink) !important;
}

:is(.site-footer, .legal-header, .legal-article) {
  border-color: var(--line) !important;
  background: #fff !important;
}

.legal-warning-bar {
  color: var(--yellow) !important;
  background: var(--ink) !important;
  border-color: var(--ink) !important;
}

:is(.admin-page, .admin-app-shell) {
  color: var(--yellow) !important;
  background: var(--ink) !important;
}

:is(.admin-login, .admin-card, .admin-health-card,
  .admin-highlight-card, .admin-traffic-card, .admin-table,
  .admin-deployment, .admin-result) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.admin-kicker, .admin-message, .admin-live-state,
  .admin-header h1, .admin-login h1, .admin-section-head h2) {
  color: var(--yellow) !important;
}

:is(.admin-login button, .admin-form > button, .admin-live-toggle) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

/* Remove as últimas cores de estado que vinham dos estilos antigos. */
:is(.topbar-metrics > div:nth-child(2) dd, .checkout-benefit,
  .cart-checkout-summary .is-free, .checkout-order-summary-row .is-free,
  .checkout-review-line .is-free, .courier-avatar b,
  .minimum-order-reward strong, .pix-ready-box .pix-copy.copied,
  .pix-copy.copied, .checkout-progress i.active, .confirm-steps li.done,
  .delivery-availability, .verified, .paid-state) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

/* Modo clean: nenhuma superfície principal usa preto/dark. */
:root {
  --canvas: #fffdf7;
  --boteco-red: var(--brand-red);
  --boteco-red-deep: var(--brand-red-deep);
  --boteco-orange: var(--yellow);
  --boteco-green: var(--ink);
  --boteco-blue: var(--ink);
  --brand-red: #cf0805;
  --brand-red-deep: #a60603;
  --payment-navy: var(--ink);
}

:is(.local-profile-hero, .topbar, .topbar-card, .legacy-store-header,
  .store-page, .store-shell, .content, .route-page, .cart-page,
  .checkout-page, .cart-checkout-page, .pix-screen-local, .legal-page,
  .legal-article, .admin-page, .admin-app-shell) {
  background: var(--canvas) !important;
}

.local-profile-hero {
  background: linear-gradient(135deg, #fffdf7 0%, #fff6bf 62%, var(--yellow) 100%) !important;
}

:is(.topbar-card, .local-profile-card, .product-card, .cart-drawer,
  .checkout-card, .checkout-summary, .checkout-modal-card,
  .checkout-order-summary, .checkout-modal-progress, .checkout-suggestions,
  .delivery-choice-card, .location-prompt-card, .location-coverage-card,
  .minimum-order-card, .order-modal-card, .pix-box-local, .pix-ready-box,
  .age-card, .legal-article, .admin-login, .admin-card, .admin-health-card,
  .admin-highlight-card, .admin-traffic-card, .admin-table) {
  background: #fff !important;
}

:is(.topbar-cart, .cart-float, .cart-checkout-header,
  .checkout-flow-heading, .checkout-review-heading > span,
  .payment-loader-brand, .legal-warning-bar) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

.cart-float * {
  color: var(--ink) !important;
}

:is(.best-seller-badge, .discount-badge, .discount-ribbon,
  .category-new-badge, .offer-discount-badge, .urgency-24h-badge,
  .toast-brand-mark, .payment-tag) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

:is(.cart-drawer-backdrop, .address-scrim, .location-prompt-backdrop,
  .delivery-choice-backdrop, .order-modal, .minimum-order-modal,
  .age-gate) {
  background: rgba(var(--yellow-rgb), .18) !important;
  -webkit-backdrop-filter: blur(3px) !important;
  backdrop-filter: blur(3px) !important;
}

.checkout-modal-page {
  background: var(--canvas) !important;
}

:is(.topbar-status, .topbar-status.is-open, .hero-kicker, .store-status,
  .topbar-online, .local-profile-actions .hero-kicker) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

:is(.checkout-card, .checkout-summary, .checkout-order-summary,
  .checkout-modal-card, .checkout-modal-progress, .checkout-suggestions,
  .checkout-payment-option, .pix-option, .payment-option,
  .checkout-review-receipt, .checkout-review-table,
  .cart-checkout-line, .cart-checkout-summary, .cart-line) {
  box-shadow: 0 8px 24px rgba(17, 18, 20, .06) !important;
}

:is(.admin-page, .admin-app-shell) {
  color: var(--ink) !important;
  background: var(--canvas) !important;
}

:is(.admin-login, .admin-card, .admin-health-card,
  .admin-highlight-card, .admin-traffic-card, .admin-table) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

:is(.admin-kicker, .admin-message, .admin-live-state,
  .admin-header h1, .admin-login h1, .admin-section-head h2) {
  color: var(--ink) !important;
}

:is(.admin-login button, .admin-form > button, .admin-live-toggle) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

.local-profile-actions > button {
  color: var(--ink) !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* Responsividade do hero e da barra de categorias em telas estreitas. */
.privacy-choice-banner {
  position: fixed;
  z-index: 1200;
  left: 16px;
  right: 16px;
  bottom: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  max-width: 980px;
  margin: 0 auto;
  padding: 15px 18px;
  color: #fff;
  background: #111214;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(17,18,20,.28);
  font-size: 13px;
}
.privacy-choice-banner strong { display: block; color: var(--yellow); font-size: 14px; }
.privacy-choice-banner p { margin: 4px 0 2px; color: rgba(255,255,255,.86); }
.privacy-choice-banner a { color: #fff; font-weight: 800; }
.privacy-choice-actions { display: flex; flex-shrink: 0; flex-wrap: wrap; gap: 8px; }
.privacy-choice-actions button { border: 1px solid rgba(255,255,255,.4); border-radius: 10px; padding: 9px 12px; color: #fff; background: transparent; cursor: pointer; font: inherit; font-weight: 800; }
.privacy-choice-actions button[data-choice="accepted"] { border-color: var(--yellow); color: #111214; background: var(--yellow); }
@media (max-width: 700px) {
  .privacy-choice-banner { align-items: stretch; flex-direction: column; bottom: 10px; left: 10px; right: 10px; }
  .privacy-choice-actions { justify-content: flex-end; }
}

/* Responsividade do hero e da barra de categorias em telas estreitas. */
:is(html, body, #root, .store-page, .store-shell, .legacy-store-header,
  .content, .site-footer) {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

.local-profile-hero {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding: clamp(58px, 12vw, 78px) 16px 18px !important;
}

.local-profile-card {
  width: 100% !important;
  max-width: 690px !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 auto !important;
  overflow: visible !important;
}

.local-profile-actions {
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 8px !important;
}

.local-profile-actions > button {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.local-profile-details {
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.55fr) minmax(0, .9fr) !important;
}

.local-profile-details > div,
.local-profile-details small,
.local-profile-details strong {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

.category-nav {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 7px 16px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

.category-nav button {
  flex: 0 0 auto !important;
}

.content {
  width: 100% !important;
  min-width: 0 !important;
  overflow-x: hidden !important;
}

.product-rail {
  min-width: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

/* O bundle antigo usava seletores mais específicos para pintar ofertas de azul
   e algumas seções com cores diferentes. Estes seletores cobrem essas regras. */
body .product-section,
body .product-section:nth-of-type(4n+2),
body .product-section:nth-of-type(4n+3),
body .product-section:nth-of-type(4n+4),
body .product-section.offers-section {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--yellow-line) !important;
  --category-icon-color: var(--ink) !important;
}

body .product-section.offers-section {
  background: #fffdf7 !important;
  border-top-color: var(--yellow-line) !important;
  border-bottom-color: var(--yellow-line) !important;
}

body .product-section.offers-section .section-heading h2,
body .product-section.offers-section .section-heading p,
body .product-section.offers-section .section-heading button {
  color: var(--ink) !important;
}

body .product-section.offers-section .section-heading p {
  color: var(--yellow-deep) !important;
}

body .product-section.offers-section .section-heading button {
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  border-radius: 999px !important;
}

body .product-section .section-category-image,
body .product-section.offers-section .section-category-image {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

body .product-section .section-category-image .category-visual * {
  stroke: var(--ink) !important;
}

body .product-section .section-category-image .category-visual [fill]:not([fill="none"]) {
  fill: var(--yellow) !important;
}

body .product-section .product-card,
body .product-section .product-card:nth-child(4n+2),
body .product-section .product-card:nth-child(4n+3),
body .product-section .product-card:nth-child(4n+4) {
  background: #fff !important;
  border-color: var(--line) !important;
}

html body .product-section .product-card:nth-child(n) .card-bottom > strong,
html body .product-section .product-card:nth-child(n) .add-button {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  box-shadow: 0 4px 10px rgba(17, 18, 20, .12) !important;
}

/* Rodapé: remove o link azul legado e mantém o bloco legal claro. */
body .site-footer {
  color: var(--ink) !important;
  background: #fff !important;
  border-top: 1px solid var(--line) !important;
}

body .footer-grid {
  border-bottom-color: var(--line) !important;
}

body .footer-brand::before {
  background: var(--yellow) !important;
}

body .footer-brand strong,
body .footer-brand span,
body .footer-heading,
body .footer-category-links a,
body .footer-links a,
body .footer-contact,
body .footer-contact a {
  color: var(--ink) !important;
}

body .footer-contact::before {
  background: var(--yellow) !important;
}

body .legal-warning-bar {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-top-color: var(--ink) !important;
}

body .legal-warning-bar span {
  color: var(--ink) !important;
  background: #fff !important;
  box-shadow: 0 0 0 1px var(--ink) !important;
}

/* O CSS legado escurecia o botão no hover/seleção com brightness(.92). */
html body .product-card:nth-child(n) .add-button,
html body .product-card:nth-child(n) .add-button:hover,
html body .product-card:nth-child(n) .add-button:active,
html body .product-card:nth-child(n) .add-button:focus,
html body .product-card:nth-child(n) .add-button:focus-visible,
html body .product-card:nth-child(n) .add-button[aria-pressed="true"],
html body .product-card:nth-child(n) .add-button.selected {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  filter: none !important;
  opacity: 1 !important;
  box-shadow: 0 4px 10px rgba(17, 18, 20, .12) !important;
}

/* O preço fica limpo no card; a etiqueta “A partir de” não é necessária. */
body .product-card .card-bottom > span {
  display: none !important;
}

html body .product-section .product-card:nth-child(n) .card-bottom > strong {
  color: var(--ink) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* O espaço de rolagem também precisa permanecer claro, inclusive no padding
   lateral do trilho em telas estreitas. */
body .product-section,
body .product-rail,
body .product-grid,
body .content {
  background: #fffdf7 !important;
}

/* Auditoria final: nenhum ambiente pode cair em estado dark ou amarelo-escuro. */
:root {
  --yellow-deep: #a67d00;
  --yellow-ink: var(--ink);
  --payment-blue: var(--yellow);
  --payment-blue-deep: var(--yellow);
  --brand-red: var(--yellow);
  --brand-red-deep: var(--yellow);
  --boteco-red: var(--yellow);
  --boteco-red-deep: var(--yellow);
}

html body :is(.admin-page, .admin-app-shell, .legal-page,
  .checkout-modal-page, .cart-checkout-page, .checkout-page,
  .pix-screen-local, .store-page, .store-shell, .content,
  .site-footer, .legal-header, .category-nav, .product-section,
  .offers-section, .product-rail, .product-grid) {
  color: var(--ink) !important;
  background: #fffdf7 !important;
}

html body :is(.admin-login, .admin-card, .admin-hero,
  .admin-highlight-card, .admin-health-card, .admin-traffic-card,
  .admin-table, .admin-deployment, .admin-metric-list,
  .admin-stats div, .admin-logs, .admin-secondary,
  .admin-period select, .admin-login input, .admin-form input,
  .lead-card, .lead-skip) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

html body :is(.cart-drawer-backdrop, .address-scrim,
  .location-prompt-backdrop, .delivery-choice-backdrop,
  .order-modal, .minimum-order-modal, .lead-modal, .age-gate) {
  background: rgba(var(--yellow-rgb), .18) !important;
  -webkit-backdrop-filter: blur(3px) !important;
  backdrop-filter: blur(3px) !important;
}

html body :is(.topbar-cart, .cart-float, .cart-checkout-header,
  .checkout-flow-heading, .checkout-review-heading > span,
  .payment-loader-brand, .address-popover .address-confirm,
  .category-nav button.is-active, .store-status) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

html body :is(.topbar-cart *, .cart-float *, .cart-checkout-header *,
  .checkout-flow-heading *, .checkout-review-heading > span *) {
  color: var(--ink) !important;
}

html body :is(.primary-action, .checkout-primary, .checkout-continue,
  .cart-checkout-primary, .checkout-modal-primary,
  .checkout-review-submit, .payment-button, .pix-copy,
  .pix-ready-box .pix-copy, .delivery-choice-continue,
  .location-prompt-primary, .location-prompt-confirm,
  .location-coverage-continue, .place-button, .lead-submit,
  .summary-toggle, .section-heading button) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  filter: none !important;
  opacity: 1 !important;
}

html body :is(.primary-action:hover, .primary-action:active,
  .primary-action:focus, .checkout-primary:hover,
  .checkout-primary:active, .checkout-continue:hover,
  .checkout-continue:active, .cart-checkout-primary:hover,
  .cart-checkout-primary:active, .checkout-modal-primary:hover,
  .checkout-modal-primary:active, .checkout-review-submit:hover,
  .checkout-review-submit:active, .payment-button:hover,
  .payment-button:active, .pix-copy:hover, .pix-copy:active,
  .pix-ready-box .pix-copy:hover, .delivery-choice-continue:hover,
  .delivery-choice-continue:active, .location-prompt-primary:hover,
  .location-prompt-confirm:hover, .summary-toggle:hover,
  .summary-toggle:active, .section-heading button:hover) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  filter: none !important;
}

html body :is(.topbar-hero, .topbar-hero::after) {
  background: #fffdf7 !important;
}

html body .topbar-hero::after {
  opacity: 0 !important;
}

html body :is(.map-courier, .found-mark, .courier-avatar b,
  .review-check, .reward-check, .location-coverage-check,
  .confirm-steps li.done span, .checkout-modal-progress-step.complete span,
  .pix-mark.confirmed, .pix-ready-check, .order-check,
  .checkout-payment-option > span:first-child, .checkout-review-pix-icon,
  .pix-option > span, .payment-tag, .pix-delivery-icon) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

html body :is(.address-popover, .address-popover-head,
  .location-prompt-card, .delivery-choice-card, .order-modal-card,
  .minimum-order-card, .checkout-modal-card, .checkout-card,
  .checkout-summary, .pix-box-local, .pix-ready-box) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

html body .delivery-choice-card {
  border-color: var(--yellow-line) !important;
  box-shadow: 0 16px 34px rgba(17, 18, 20, .16) !important;
}

html body :is(.location-precision, .zip-status, .delivery-availability,
  .checkout-payment-info, .checkout-free-delivery, .payment-address-summary,
  .payment-trust-note, .pix-delivery-notice, .minimum-order-amount,
  .minimum-order-reward, .pix-timer, .pix-ready-timer, .paid-state,
  .review-check, .toast) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

html body .legal-header {
  color: var(--ink) !important;
  background: #fff !important;
  border-bottom: 1px solid var(--line) !important;
}

/* Detalhe do produto com a mesma superfície branca das categorias. */
html body .route-page.product-detail,
html body .route-page.product-detail .detail-image,
html body .route-page.product-detail .detail-info {
  color: var(--ink) !important;
  background: #fff !important;
}

html body .route-page.product-detail .detail-price {
  background: transparent !important;
  color: var(--ink) !important;
}

/* Auditoria final de contraste: textos sempre legíveis nas superfícies claras. */
html body :is(
  .section-heading p, .route-heading small, .route-heading p, .subtitle,
  .crumb, .crumb strong, .detail-info p, .detail-old-price,
  .product-card p, .card-bottom > span, .card-bottom > del,
  .cart-line span, .cart-total small, .cart-checkout-line small,
  .checkout-flow-heading > span, .checkout-review-back,
  .checkout-review-legal, .checkout-review-table-head,
  .checkout-suggestion-old-price, .progress-step small,
  .delivery-choice-heading p, .location-coverage-address,
  .post-payment-countdown, .post-payment-box > .text-action,
  .post-payment-offer-heading p, .post-payment-offer-note,
  .pix-sandbox-note, .empty-state p, .legal-updated, .legal-nav a,
  .admin-login > p, .admin-header p, .admin-card > p,
  .admin-card small, .admin-card td, .admin-card th,
  .lead-card > p, .lead-card label, .lead-card-inline > p,
  .lead-inline-label, .lead-card-inline small
) {
  color: #4f4b45 !important;
}

html body .product-section.offers-section .section-heading p,
html body .progress-step small.active {
  color: var(--ink) !important;
}

/* Estados amarelos: ícones e textos usam preto para não desaparecerem no fundo. */
html body :is(
  .primary-action, .checkout-primary, .checkout-continue,
  .cart-checkout-primary, .checkout-modal-primary,
  .checkout-review-submit, .payment-button, .pix-copy,
  .pix-ready-box .pix-copy, .delivery-choice-continue,
  .location-prompt-primary, .location-prompt-confirm,
  .location-coverage-continue, .minimum-order-card .primary-action,
  .place-button, .lead-submit, .summary-toggle, .section-heading button
) :is(.icon, strong, span, b) {
  color: var(--ink) !important;
}

html body :is(
  .post-payment-discount, .post-payment-suggestions b,
  .location-prompt-mark, .location-prompt-mark .icon,
  .location-prompt-primary .icon, .location-prompt-confirm .icon,
  .location-coverage-availability .icon,
  .payment-address-summary > button,
  .checkout-review-submit .pix-mark
) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

html body .post-payment-countdown {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

html body .post-payment-box > .text-action {
  color: var(--ink) !important;
}

/* Entradas e foco: o contorno preto fica visível sobre branco e amarelo-claro. */
html body :is(input, select, textarea, button, a):focus-visible {
  outline: 3px solid var(--ink) !important;
  outline-offset: 2px !important;
}

html body ::placeholder {
  color: #5b554d !important;
  opacity: 1 !important;
}

/* Lead, idade e painel interno também seguem a mesma leitura da identidade. */
html body .age-mark {
  color: var(--ink) !important;
}

html body .lead-card {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

html body :is(.lead-card h2, .lead-kicker, .lead-card label,
  .lead-card-inline h1, .lead-inline-label) {
  color: var(--ink) !important;
}

html body .lead-mark {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

html body :is(.lead-skip, .admin-secondary) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

html body :is(.admin-card, .admin-login, .admin-table) :is(h1, h2, h3, h4, p, label, dt, dd, td, th, span) {
  color: var(--ink) !important;
}

html body :is(.admin-card, .admin-login, .admin-table) :is(input, select, textarea) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

html body :is(button:disabled, input:disabled, select:disabled, textarea:disabled) {
  color: #5b554d !important;
  background: #f4f1e8 !important;
  border-color: #d4c27a !important;
  opacity: 1 !important;
}

html body .post-payment-suggestions button:disabled {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
  opacity: 1 !important;
}


/* Refino visual do cabeçalho da vitrine. */
html body .local-profile-hero {
  box-shadow: none !important;
}

html body .local-profile-card {
  border: 1px solid rgba(17, 18, 20, .10) !important;
  box-shadow: none !important;
}

html body .local-profile-logo {
  box-shadow: 0 2px 8px rgba(17, 18, 20, .12) !important;
}

/* Contraste de leitura no checkout: preto para texto, amarelo apenas como destaque. */
html body :is(
  .checkout-payment-option.selected strong,
  .checkout-payment-option.selected small,
  .checkout-payment-option.selected > .icon,
  .checkout-payment-option.selected .pix-approval-badge,
  .checkout-payment-option.selected .pix-approval-badge i
) {
  color: var(--ink) !important;
}

html body .checkout-payment-option.selected .pix-approval-badge i {
  background: var(--ink) !important;
}

html body :is(
  .checkout-age-consent,
  .checkout-age-consent span,
  .checkout-age-consent a,
  .checkout-review-legal,
  .checkout-review-legal b,
  .checkout-review-back
) {
  color: #3f4246 !important;
}

html body :is(.checkout-age-consent a, .checkout-review-legal b) {
  color: #5a4700 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}

html body :is(
  .checkout-modal-progress-step.active strong,
  .checkout-modal-progress-step.complete strong
) {
  color: var(--ink) !important;
}

html body .checkout-free-delivery {
  color: #3f4246 !important;
  background: #fff8cf !important;
  border-color: #e7d46b !important;
}

html body :is(.checkout-free-delivery b, .checkout-free-delivery strong) {
  color: var(--ink) !important;
}

html body .checkout-review-submit {
  color: var(--ink) !important;
}

html body .checkout-review-submit .pix-mark {
  color: var(--ink) !important;
  background: #fff !important;
}

/* PIX selecionado: sinal de confirmação verde, ativo e confiável. */
@keyframes checkout-pix-pulse {
  0%, 100% {
    box-shadow: 0 3px 12px rgba(215, 25, 32, .14), 0 0 0 0 rgba(215, 25, 32, 0);
  }
  50% {
    box-shadow: 0 5px 16px rgba(215, 25, 32, .24), 0 0 0 4px rgba(215, 25, 32, .10);
  }
}

html body .checkout-payment-option.selected {
  color: #fff !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
  animation: checkout-pix-pulse 2.4s ease-in-out infinite;
}

html body .checkout-payment-option.selected :is(strong, small, .pix-approval-badge, > .icon) {
  color: #fff !important;
}

html body .checkout-payment-option.selected .pix-approval-badge i {
  background: #fff1f2 !important;
}

html body .checkout-payment-option.selected .checkout-review-pix-icon {
  color: var(--brand-red) !important;
  background: #fff !important;
  border-color: #fff !important;
}

html body .checkout-payment-option.selected > .icon {
  color: #fff !important;
}

@media (prefers-reduced-motion: reduce) {
  html body .checkout-payment-option.selected {
    animation: none !important;
  }
}

/* Rodapé de confiança: informação verificável e caminhos claros de ajuda. */
html body .site-footer {
  padding: 0 !important;
  color: var(--ink) !important;
  background: var(--white) !important;
  border-top: 3px solid var(--yellow) !important;
}

html body .footer-inner {
  width: min(100%, 1100px);
  margin: 0 auto;
  padding: 28px clamp(18px, 4vw, 42px) 20px;
}

html body .footer-intro {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  max-width: 560px;
}

html body .footer-intro img {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 50%;
  object-fit: cover;
}

html body .footer-intro strong {
  display: block;
  color: var(--ink) !important;
  font-size: 16px;
  line-height: 1.25;
}

html body .footer-intro p,
html body .footer-help p {
  margin: 5px 0 0;
  color: var(--muted) !important;
  font-size: 12px;
  line-height: 1.45;
}

html body .footer-assurance {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  margin-top: 21px;
  padding: 13px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

html body .footer-assurance span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--ink) !important;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
}

html body .footer-assurance span::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: var(--brand-red);
}

html body .footer-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr minmax(220px, 1.15fr) !important;
  gap: 24px !important;
  padding: 22px 0 18px !important;
  border: 0 !important;
}

html body .footer-column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 9px;
}

html body :is(.footer-column, .footer-help) > strong {
  color: var(--ink) !important;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}

html body .footer-column a,
html body .footer-help a {
  color: var(--muted) !important;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  text-decoration: none;
}

html body .footer-column a:hover,
html body .footer-help a:hover {
  color: var(--brand-red-deep) !important;
  text-decoration: underline;
}

html body .footer-help {
  padding: 15px 17px;
  border: 1px solid var(--yellow-line);
  border-radius: 12px;
  background: var(--yellow-soft);
}

html body .footer-help p {
  margin-bottom: 11px;
}

html body .footer-help a {
  color: var(--brand-red-deep) !important;
  font-weight: 850;
}

html body .footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 6px 18px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
  color: var(--muted) !important;
  font-size: 10px;
  line-height: 1.35;
}

html body .site-footer .legal-warning-bar {
  display: flex;
  align-items: center !important;
  gap: 10px;
  max-width: none;
  margin: 0 !important;
  padding: 12px clamp(18px, 4vw, 42px) calc(14px + env(safe-area-inset-bottom)) !important;
  color: var(--ink) !important;
  background: var(--canvas) !important;
  border-top: 1px solid var(--line) !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
}

html body .store-page.has-cart-float .site-footer .legal-warning-bar {
  padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
}

@media (max-width: 680px) {
  html body .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 23px 16px !important;
  }
  html body .footer-help {
    grid-column: 1 / -1;
  }
  html body .footer-assurance {
    flex-direction: column;
    gap: 8px;
  }
}

/* Aviso de privacidade compacto: informa sem dominar a vitrine. */
html body .privacy-choice-banner {
  left: auto !important;
  right: 12px !important;
  bottom: calc(74px + env(safe-area-inset-bottom)) !important;
  width: min(340px, calc(100vw - 24px)) !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 9px 10px !important;
  border-radius: 10px !important;
  box-shadow: 0 6px 18px rgba(17, 18, 20, .16) !important;
  font-size: 11px !important;
}

html body .privacy-choice-banner strong {
  font-size: 11px !important;
}

html body .privacy-choice-banner p {
  margin: 2px 0 0 !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
}

html body .privacy-choice-banner a {
  white-space: nowrap;
  font-size: 10px !important;
}

html body .privacy-choice-actions {
  gap: 6px !important;
}

html body .privacy-choice-actions button {
  min-height: 30px !important;
  padding: 6px 9px !important;
  border-radius: 8px !important;
  font-size: 10px !important;
  white-space: nowrap;
}

@media (max-width: 520px) {
  html body .privacy-choice-banner {
    left: 12px !important;
    right: 12px !important;
    bottom: calc(74px + env(safe-area-inset-bottom)) !important;
    width: auto !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 6px !important;
  }

  html body .privacy-choice-actions {
    display: flex !important;
    justify-content: flex-end !important;
  }

  html body .privacy-choice-actions button {
    flex: 0 0 auto !important;
  }
}

/* Rodapé mobile: blocos claros, links organizados e aviso 18+ separado do carrinho. */
html body .site-footer {
  padding-top: 24px !important;
}

html body .footer-grid {
  gap: 20px !important;
  padding-bottom: 22px !important;
}

html body .footer-brand {
  gap: 4px !important;
}

html body .footer-links {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: 10px 18px !important;
}

html body .footer-links a {
  font-size: 12px !important;
  line-height: 1.3 !important;
}

html body .footer-contact {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px 10px !important;
  padding-left: 17px !important;
  line-height: 1.35 !important;
}

html body .footer-contact a {
  display: inline-flex !important;
  margin: 0 !important;
}

html body .legal-warning-bar {
  color: #4a4334 !important;
  background: #fff8cf !important;
  border-top: 1px solid #e7d46b !important;
  padding: 12px 16px calc(84px + env(safe-area-inset-bottom)) !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
}

html body .legal-warning-bar span {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  box-shadow: 0 0 0 1px var(--ink) !important;
}

@media (max-width: 390px) {
  html body .footer-links {
    gap: 9px 12px !important;
  }

  html body .footer-links a {
    font-size: 11px !important;
  }
}

/* Escolha de entrega: modal mais limpo, leve e fácil de escanear. */
html body .delivery-choice-backdrop {
  background: rgba(17, 18, 20, .48) !important;
  -webkit-backdrop-filter: blur(1.5px) !important;
  backdrop-filter: blur(1.5px) !important;
  padding: 18px !important;
}

html body .delivery-choice-card {
  width: min(100%, 378px) !important;
  gap: 16px !important;
  padding: 22px !important;
  color: #191b1f !important;
  background: #fff !important;
  border: 1px solid #e5e8ed !important;
  border-radius: 20px !important;
  box-shadow: 0 18px 48px rgba(17, 18, 20, .18) !important;
}

html body .delivery-choice-close {
  top: 14px !important;
  right: 14px !important;
  width: 32px !important;
  height: 32px !important;
  color: #4f5863 !important;
  border-radius: 9px !important;
}

html body .delivery-choice-close:hover,
html body .delivery-choice-close:focus-visible {
  color: #191b1f !important;
  background: #f4f6f8 !important;
}

html body .delivery-choice-heading {
  gap: 5px !important;
  padding: 0 38px 0 0 !important;
}

html body .delivery-choice-heading h2 {
  gap: 8px !important;
  color: var(--ink) !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
}

html body .delivery-choice-heading h2 .icon {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-radius: 50% !important;
  padding: 2px !important;
  width: 17px !important;
  height: 17px !important;
}

html body .delivery-choice-heading p {
  color: #5f6368 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

html body .delivery-choice-options {
  gap: 10px !important;
}

html body .delivery-choice-option {
  min-height: 66px !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  gap: 10px !important;
  padding: 10px 13px !important;
  color: var(--ink) !important;
  background: #fffdf7 !important;
  border: 1px solid var(--yellow-line) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  transition: background .16s ease, border-color .16s ease, transform .16s ease !important;
}

html body .delivery-choice-option:hover,
html body .delivery-choice-option:focus-visible {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--ink) !important;
}

html body .delivery-choice-option:active {
  transform: translateY(1px);
}

html body .delivery-choice-option.selected {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  box-shadow: inset 0 0 0 1px var(--ink) !important;
}

html body .delivery-choice-icon {
  width: 28px !important;
  height: 28px !important;
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-radius: 8px !important;
  padding: 4px !important;
}

html body .delivery-choice-icon .icon {
  width: 22px !important;
  height: 22px !important;
}

html body .delivery-choice-option strong {
  color: var(--ink) !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

html body .delivery-choice-option small {
  color: #5f6368 !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
}

html body .delivery-choice-continue {
  min-height: 46px !important;
  margin-top: 0 !important;
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border: 1px solid var(--ink) !important;
  border-radius: 12px !important;
  box-shadow: 0 3px 0 var(--ink) !important;
  font-size: 13px !important;
  transition: filter .16s ease, transform .16s ease !important;
}

html body .delivery-choice-continue:not(:disabled):hover,
html body .delivery-choice-continue:not(:disabled):focus-visible {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  filter: brightness(.97) !important;
}

html body .delivery-choice-continue:not(:disabled):active {
  transform: translateY(1px);
}

html body .delivery-choice-continue:disabled {
  color: #7a6500 !important;
  background: var(--yellow-soft) !important;
  border: 1px solid var(--yellow-line) !important;
  box-shadow: none !important;
}

@media (max-width: 420px) {
  html body .delivery-choice-backdrop {
    padding: 12px !important;
  }

  html body .delivery-choice-card {
    padding: 20px !important;
    border-radius: 18px !important;
  }
}

/* Informações do cabeçalho sem efeito de marca-texto. */
html body .local-profile-details .delivery-free-pulse,
html body .local-profile-details .minimum-order-highlight {
  color: var(--ink) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Rodapé discreto: presença leve, leitura fácil e destaque reservado ao carrinho. */
html body .site-footer {
  padding-top: 20px !important;
  background: #fffdf8 !important;
  border-top: 1px solid #eceef1 !important;
}

html body .footer-grid {
  gap: 14px !important;
  padding-bottom: 16px !important;
}

html body .footer-brand {
  gap: 5px !important;
}

html body .footer-brand::before {
  width: 36px !important;
  height: 3px !important;
  margin-bottom: 7px !important;
  background: var(--yellow) !important;
}

html body .footer-brand strong {
  color: #343a42 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}

html body .footer-brand span {
  color: #7a828c !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}

html body .footer-links {
  gap: 8px 16px !important;
}

html body .footer-links a,
html body .footer-contact,
html body .footer-contact a {
  color: #68717b !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  line-height: 1.3 !important;
}

html body .footer-contact {
  gap: 5px 8px !important;
  padding-left: 14px !important;
}

html body .footer-contact::before {
  width: 6px !important;
  height: 6px !important;
  background: var(--yellow-deep) !important;
}

html body .footer-contact a {
  color: #4f5863 !important;
  font-weight: 750 !important;
}

html body .footer-related {
  display: grid !important;
  gap: 5px !important;
}

html body .footer-related-title {
  color: #7a828c !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

html body .footer-related-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px 12px !important;
}

html body .footer-related-links a {
  color: #68717b !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.3 !important;
}

html body .legal-warning-bar {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  text-align: left !important;
  color: #616973 !important;
  background: #fffdf8 !important;
  border-top: 1px solid #ebe6d7 !important;
  padding: 10px 14px calc(82px + env(safe-area-inset-bottom)) !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
}

html body .legal-warning-bar span {
  color: #545c65 !important;
  background: #fff !important;
  box-shadow: 0 0 0 1px #aeb5bd !important;
}

/* Selo interno da loja: confirmação visual discreta, sem alegar certificação externa. */
html body .local-profile-verified-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  width: fit-content !important;
  margin: -5px auto 11px !important;
  padding: 4px 9px !important;
  color: #56616b !important;
  background: #f7f8f9 !important;
  border: 1px solid #dfe4e8 !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 750 !important;
  line-height: 1 !important;
}

html body .local-profile-verified-badge span {
  display: inline-grid !important;
  place-items: center !important;
  width: 15px !important;
  height: 15px !important;
  color: #fff !important;
  background: var(--brand-red) !important;
  border-radius: 50% !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

@media (max-width: 560px) {
  html body .local-profile-verified-badge {
    margin-bottom: 10px !important;
    padding: 4px 8px !important;
    font-size: 9px !important;
  }
}

/* Identifica de forma discreta que a entrega é grátis. */
html body .local-profile-details .delivery-free-label {
  color: var(--brand-red) !important;
  font-weight: 800 !important;
}
/* Reforça o pedido mínimo com um destaque verde discreto. */
html body .local-profile-details .minimum-order-label {
  color: var(--brand-red) !important;
  font-weight: 800 !important;
}
/* Destaca somente o nome da cidade no texto de cobertura. */
html body .local-profile-details .delivery-city-label {
  color: var(--brand-red) !important;
  font-weight: 800 !important;
}

html body .local-profile-details .delivery-city-group {
  display: block !important;
  white-space: nowrap !important;
}

html body .add-button i,
html body .add-button i svg {
  color: #ffffff !important;
  stroke: #ffffff !important;
}

/* Sacola clean: hierarquia leve, superfícies claras e amarelo só nas ações. */
html body .cart-checkout-page {
  background: #fffdf7 !important;
  color: #111214 !important;
}

html body .cart-checkout-header {
  min-height: 64px !important;
  padding: 12px 18px !important;
  color: #111214 !important;
  background: #ffffff !important;
  border-bottom: 1px solid #eee7d8 !important;
  box-shadow: none !important;
}

html body .cart-checkout-brand {
  gap: 10px !important;
}

html body .cart-checkout-brand > span {
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  background: var(--yellow) !important;
  border-radius: 50% !important;
  overflow: hidden !important;
}

html body .cart-checkout-brand > span img {
  width: 50px !important;
  height: 50px !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  transform: scale(1.16) !important;
}

html body .cart-checkout-brand strong {
  font-size: 16px !important;
  line-height: 1.05 !important;
}

html body .cart-checkout-brand small {
  color: #6f6a61 !important;
  font-size: 9px !important;
  letter-spacing: 0.04em !important;
}

html body .cart-checkout-body {
  max-width: 620px !important;
  padding: 22px 16px 32px !important;
}

html body .cart-checkout-steps {
  min-height: 34px !important;
  padding: 8px 12px !important;
  color: #5f5a52 !important;
  background: #ffffff !important;
  border: 1px solid #eee7d8 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  font-size: 11px !important;
}

html body .cart-checkout-title {
  margin: 20px 0 14px !important;
  color: #111214 !important;
  font-size: 24px !important;
  letter-spacing: -0.02em !important;
}

html body .cart-checkout-line,
html body .cart-checkout-summary {
  background: #ffffff !important;
  border: 1px solid #eee7d8 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

html body .cart-checkout-line {
  padding: 12px !important;
}

html body .cart-checkout-line > img {
  border: 1px solid #eee7d8 !important;
  border-radius: 10px !important;
}

html body .cart-checkout-line > div strong {
  color: #111214 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

html body .cart-checkout-line > div span,
html body .cart-checkout-line > div small {
  color: #6f6a61 !important;
}

html body .cart-checkout-line > button {
  color: #929087 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .cart-checkout-summary {
  padding: 14px 16px !important;
}

html body .cart-checkout-summary > div {
  color: #4f4b45 !important;
}

html body .cart-checkout-summary > div strong {
  color: #111214 !important;
}

html body .cart-checkout-total {
  margin-top: 10px !important;
  padding-top: 12px !important;
  background: #fff9dc !important;
  border-top: 1px solid #eee1a9 !important;
}

html body .cart-checkout-total strong {
  color: #111214 !important;
  font-size: 20px !important;
}

html body .cart-checkout-minimum-note.is-ready {
  color: var(--brand-red) !important;
  background: transparent !important;
}

html body .cart-checkout-primary,
html body .cart-checkout-secondary {
  min-height: 50px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  font-size: 14px !important;
}

html body .cart-checkout-primary {
  color: #111214 !important;
  background: var(--yellow) !important;
  border: 0 !important;
}

html body .cart-checkout-secondary {
  color: #111214 !important;
  background: #ffffff !important;
  border: 1px solid #eee0a9 !important;
}

/* Modal do pedido mínimo: mais leve, direto e com foco no próximo passo. */
html body .minimum-order-modal {
  background: rgba(17, 18, 20, 0.26) !important;
  -webkit-backdrop-filter: blur(7px) !important;
  backdrop-filter: blur(7px) !important;
}

html body .minimum-order-card {
  width: min(380px, calc(100% - 32px)) !important;
  padding: 24px 20px 18px !important;
  color: #111214 !important;
  background: #ffffff !important;
  border: 1px solid #eee7d8 !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 55px rgba(17, 18, 20, 0.18) !important;
}

html body .minimum-order-close {
  top: 12px !important;
  right: 12px !important;
  width: 32px !important;
  height: 32px !important;
  color: #6f6a61 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .minimum-order-mark {
  width: 52px !important;
  height: 52px !important;
  margin: 4px auto 14px !important;
  color: #6f6a61 !important;
  background: #f5f3ee !important;
  border: 1px solid #eee7d8 !important;
  box-shadow: none !important;
}

html body .minimum-order-label {
  display: block !important;
  color: #6f6a61 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
}

html body .minimum-order-card h2 {
  margin: 8px 0 8px !important;
  color: #111214 !important;
  font-size: 23px !important;
  letter-spacing: -0.025em !important;
}

html body .minimum-order-card > p {
  margin: 0 0 16px !important;
  color: #6f6a61 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

html body .minimum-order-card > p strong {
  color: #111214 !important;
}

html body .minimum-order-amount {
  min-height: 56px !important;
  padding: 12px 14px !important;
  color: #4f4b45 !important;
  background: #fff9dc !important;
  border: 1px solid #eee0a9 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

html body .minimum-order-amount span {
  color: #4f4b45 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

html body .minimum-order-amount strong {
  color: var(--yellow-deep) !important;
  font-size: 20px !important;
}

html body .minimum-order-card .primary-action {
  width: 100% !important;
  min-height: 50px !important;
  margin-top: 12px !important;
  padding: 0 18px !important;
  justify-content: space-between !important;
  color: #111214 !important;
  background: var(--yellow) !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

html body .minimum-order-card .primary-action .icon,
html body .minimum-order-card .primary-action svg {
  color: #111214 !important;
  stroke: #111214 !important;
}

html body .minimum-order-card .minimum-order-secondary {
  width: 100% !important;
  min-height: 34px !important;
  margin-top: 4px !important;
  color: #d29f00 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 13px !important;
}
/* Status aberto: verde de confirmação, com texto e indicador claros. */
html body .hero-kicker.is-open {
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
  color: #ffffff !important;
}

html body .hero-kicker.is-open::before {
  background: #ffffff !important;
}
/* Banner oficial da campanha: mantém a identidade visual sem distorcer a arte. */
html body .campaign-banner {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 12px 10px !important;
  background: var(--white) !important;
}

/* Contagem real até o encerramento do mês da campanha Black Friday. */
html body .campaign-countdown {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  min-height: 42px !important;
  padding: 7px 10px !important;
  color: #fff !important;
  background: #111214 !important;
  border: 1px solid #111214 !important;
  border-radius: 12px 12px 0 0 !important;
  text-align: center !important;
}

html body .campaign-countdown-title {
  color: var(--yellow) !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .045em !important;
  white-space: nowrap !important;
}

html body .campaign-countdown-copy {
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

html body .campaign-countdown-values {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}

html body .campaign-countdown-unit {
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 2px !important;
  color: #fff !important;
  white-space: nowrap !important;
}

html body .campaign-countdown-unit b {
  color: var(--yellow) !important;
  font-size: 15px !important;
  font-variant-numeric: tabular-nums !important;
  line-height: 1 !important;
}

html body .campaign-countdown-unit small {
  color: #d9d9d9 !important;
  font-size: 8px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

html body .campaign-banner img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 420px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 0 18px 18px !important;
}

@media (max-width: 560px) {
  html body .campaign-banner {
    padding: 0 6px 7px !important;
  }

  html body .campaign-banner img {
    border-radius: 0 0 12px 12px !important;
  }

  html body .campaign-countdown {
    gap: 5px !important;
    min-height: 38px !important;
    padding: 6px 5px !important;
    border-radius: 9px 9px 0 0 !important;
  }

  html body .campaign-countdown-title {
    font-size: 10px !important;
  }

  html body .campaign-countdown-copy {
    font-size: 8px !important;
  }

  html body .campaign-countdown-values {
    gap: 3px !important;
  }

  html body .campaign-countdown-unit b {
    font-size: 12px !important;
  }

  html body .campaign-countdown-unit small {
    font-size: 7px !important;
  }
}
/* Faixa institucional discreta no topo da vitrine. */
html body .brand-ticker {
  width: 100% !important;
  height: 24px !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  background: #111214 !important;
  color: #ffffff !important;
}

html body .brand-ticker-track {
  display: flex !important;
  width: max-content !important;
  min-width: 100% !important;
  white-space: nowrap !important;
  animation: brand-ticker-scroll 18s linear infinite !important;
}

html body .brand-ticker-track span {
  flex: 0 0 auto !important;
  padding: 0 18px !important;
  color: #ffffff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  line-height: 24px !important;
}

html body .brand-ticker-track .brand-ticker-highlight {
  display: inline-block !important;
  margin: 0 4px !important;
  padding: 0 8px !important;
  color: var(--yellow) !important;
  font-weight: 850 !important;
}

html body .brand-ticker-track .brand-ticker-detail {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 0 10px !important;
  color: #f4f1e8 !important;
  font-size: 9px !important;
  font-weight: 650 !important;
}

html body .brand-ticker-track .brand-ticker-icon {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 14px !important;
  fill: none !important;
  stroke: var(--yellow) !important;
  stroke-width: 1.55 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

html body .brand-ticker-track .brand-ticker-separator {
  padding: 0 3px !important;
  color: #77736a !important;
  font-size: 11px !important;
}

/* Entrada clean: o fundo do age gate não deve competir com a marca. */
html body .age-gate {
  background: var(--yellow) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html body .location-prompt-backdrop {
  background: #f7f7f5 !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* Confirmação de pedido: camada neutra, sem tingir a tela de amarelo. */
html body .order-modal {
  background: rgba(17, 18, 20, .18) !important;
  -webkit-backdrop-filter: blur(7px) !important;
  backdrop-filter: blur(7px) !important;
}

/* Revisão do pedido: confirmação visual em verde. */
html body .checkout-review-heading > span {
  color: #fff !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
}

/* Sacola final: branca e leve, com o amarelo somente nos pontos de ação. */
html body .cart-checkout-page {
  background: #fff !important;
}

html body .cart-checkout-header {
  background: #fff !important;
  border-bottom: 1px solid #ececec !important;
  box-shadow: none !important;
}

html body .cart-checkout-brand > span {
  width: 46px !important;
  height: 46px !important;
  background: #fff !important;
  border: 1px solid #ececec !important;
  box-shadow: none !important;
}

html body .cart-checkout-brand > span img {
  width: 46px !important;
  height: 46px !important;
  transform: scale(1.02) !important;
}

/* Cards compactos: preço e ação ficam logo após a descrição em qualquer categoria. */
html body .product-card,
html body .product-grid .product-card {
  min-height: 0 !important;
  height: auto !important;
}

html body .product-card .product-open {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

html body .product-card .card-bottom {
  margin-top: 6px !important;
  flex: 0 0 auto !important;
  min-height: 80px !important;
  align-content: end !important;
  box-sizing: border-box !important;
}

html body .product-card .card-bottom > strong {
  min-height: 22px !important;
  display: flex !important;
  align-items: flex-end !important;
}

html body .product-card .add-button {
  height: 34px !important;
  min-height: 34px !important;
  box-sizing: border-box !important;
  flex-shrink: 0 !important;
}

/* Auditoria mobile: mantém uma base uniforme, mas deixa o card crescer quando o conteúdo exigir. */
html body .product-card,
html body .product-grid .product-card {
  height: auto !important;
  min-height: 339px !important;
  box-sizing: border-box !important;
}

html body .product-grid .product-card {
  min-height: 320px !important;
}

html body .product-card h3 {
  height: 31px !important;
  min-height: 31px !important;
}

html body .product-card p {
  height: 28px !important;
  min-height: 28px !important;
}

/* Ofertas têm uma linha de preço antigo; os demais cards reservam o mesmo espaço. */
html body .product-card .card-bottom:not(:has(> del)) {
  padding-top: 13px !important;
}

/* A saída é uma ação secundária: compacta e sem competir com as escolhas de idade. */
html body .age-card .age-exit {
  display: block !important;
  width: auto !important;
  min-width: 84px !important;
  min-height: 38px !important;
  margin: 12px auto 0 !important;
  padding: 8px 22px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}

/* Aproxima o nome da marca da logo sem mexer no tamanho do selo. */
html body .local-profile-card {
  padding-top: 68px !important;
}

/* Cabeçalho equilibrado: três informações com a mesma largura e leitura centralizada. */
html body .local-profile-details {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 0 !important;
}

html body .local-profile-details > div,
html body .local-profile-details > div:nth-child(2) {
  min-width: 0 !important;
  text-align: center !important;
  justify-items: center !important;
  padding: 0 8px !important;
}

html body .local-profile-details small,
html body .local-profile-details strong {
  width: 100% !important;
  text-align: center !important;
  overflow-wrap: anywhere !important;
}

@keyframes brand-ticker-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
  html body .brand-ticker-track {
    animation: none !important;
  }
}

/* Topo estável: o ticker permanece em uma linha e nunca fica atrás da logo. */
html body .legacy-store-header {
  position: relative !important;
  overflow: visible !important;
}

html body .brand-ticker {
  position: relative !important;
  z-index: 3 !important;
  height: 24px !important;
  min-height: 24px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

html body .brand-ticker-track {
  align-items: center !important;
  height: 24px !important;
  min-height: 24px !important;
  white-space: nowrap !important;
}

html body .local-profile-hero {
  position: relative !important;
  z-index: 1 !important;
  padding-top: clamp(64px, 13vw, 78px) !important;
}

html body .local-profile-logo {
  z-index: 2 !important;
}

@media (max-width: 700px) {
  html body .local-profile-hero {
    padding-top: 64px !important;
  }

  html body .local-profile-card {
    border-radius: 24px !important;
  }
}

/* A logo não pode ficar sob a faixa institucional; reserva uma área limpa acima do cartão. */
html body .local-profile-hero {
  padding-top: clamp(78px, 16vw, 92px) !important;
}

html body .local-profile-logo {
  top: -46px !important;
}

/* O nome já está representado pela logo; evita repetição no cabeçalho da vitrine. */
html body .local-profile-card > h1 {
  display: none !important;
}

html body .local-profile-hero > h1 {
  display: none !important;
}

@media (max-width: 700px) {
  html body .local-profile-hero {
    padding-top: 82px !important;
  }

  html body .local-profile-logo {
    top: -42px !important;
  }
}

/* Cabeçalho da marca: logo mais baixa e nome completo visível. */
html body .local-profile-logo {
  top: -26px !important;
}

html body .local-profile-card > h1,
html body .local-profile-hero > h1 {
  display: block !important;
  margin: 0 0 12px !important;
  text-align: center !important;
  line-height: 1.08 !important;
}

@media (max-width: 700px) {
  html body .local-profile-logo {
    top: -24px !important;
  }
}

/* Status de operação na paleta da marca. */
html body .local-profile-actions .hero-kicker.is-open {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--yellow-line) !important;
}

html body .local-profile-actions .hero-kicker.is-open::before {
  background: var(--ink) !important;
}

/* Lote flutuante: evita que o botão apareça como texto nativo no topo. */
html body .cart-trigger {
  position: fixed !important;
  z-index: 60 !important;
  right: max(14px, calc(50% - 346px)) !important;
  bottom: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  width: min(320px, calc(100% - 28px)) !important;
  min-height: 48px !important;
  padding: 13px 17px !important;
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border: 1px solid var(--ink) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 20px rgba(17, 18, 20, .18) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}

@media (max-width: 560px) {
  html body .cart-trigger {
    right: 14px !important;
    left: 14px !important;
    width: auto !important;
  }
}

/* Guia curto para reduzir dúvidas de quem compra em volume. */
.wholesale-guide {
  display: grid;
  grid-template-columns: minmax(190px, 1.15fr) minmax(0, 2fr);
  gap: 14px;
  align-items: center;
  margin: 12px 16px 4px;
  padding: 13px 15px;
  color: var(--ink);
  background: #fffdf2;
  border: 1px solid var(--yellow-line);
  border-radius: 14px;
}

.wholesale-guide-lead,
.wholesale-guide-steps {
  min-width: 0;
}

.wholesale-guide-lead {
  display: grid;
  gap: 3px;
}

.wholesale-guide-lead strong {
  font-size: 14px;
  line-height: 1.15;
}

.wholesale-guide-lead span {
  color: #5f636b;
  font-size: 12px;
  line-height: 1.3;
}

.wholesale-guide-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.wholesale-guide-steps span {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  color: #5f636b;
  font-size: 11px;
  line-height: 1.2;
}

.wholesale-guide-steps b {
  display: inline-grid;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  place-items: center;
  color: var(--ink);
  background: var(--yellow);
  border: 1px solid var(--ink);
  border-radius: 50%;
  font-size: 11px;
}

@media (max-width: 560px) {
  .wholesale-guide {
    grid-template-columns: 1fr;
    gap: 10px;
    margin: 10px 10px 3px;
    padding: 12px;
  }

  .wholesale-guide-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  .wholesale-guide-steps span {
    align-items: flex-start;
    font-size: 10px;
  }
}

/* Identidade Atacadão das Bebidas: amarelo, preto, vermelho e branco. */
html,
body,
#root,
.store-page,
.store-shell,
.content,
.site-footer,
.route-page,
.cart-checkout-page,
.checkout-page {
  color: var(--ink) !important;
  background: var(--canvas) !important;
}

body :is(.local-profile-card, .product-card, .age-card, .delivery-address-modal-card,
  .checkout-card, .checkout-summary, .checkout-modal-card, .pix-box-local,
  .local-delivery-banner, .minimum-order-card, .order-modal-card) {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}

body :is(.local-profile-card button, .local-profile-actions button, .section-heading > button,
  .add-button, .primary-action, .payment-button, .age-approve, .pix-copy,
  .summary-toggle, .delivery-address-modal-card button[type="submit"],
  .minimum-order-card .primary-action, .checkout-review-submit) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  box-shadow: 0 7px 16px rgba(17, 17, 17, .14) !important;
}

body :is(.local-profile-card button:hover, .local-profile-actions button:hover,
  .section-heading > button:hover, .add-button:hover, .primary-action:hover,
  .payment-button:hover, .age-approve:hover, .pix-copy:hover,
  .summary-toggle:hover, .checkout-review-submit:hover) {
  color: #fff !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
}

body :is(.cart-float, .cart-button, .checkout-summary .summary-toggle,
  .checkout-flow-heading, .legacy-store-header .brand-ticker) {
  color: #fff !important;
  background: var(--ink) !important;
  border-color: var(--ink) !important;
}

body :is(.cart-float *, .cart-button *, .checkout-summary .summary-toggle *) {
  color: var(--yellow) !important;
}

body :is(.hero-kicker, .best-seller-badge, .offer-discount-badge,
  .discount-badge, .urgency-24h-badge, .category-new-badge,
  .payment-tag, .pix-approval-badge) {
  color: #fff !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
}

body :is(.delivery-free-pulse, .minimum-order-highlight, .zip-status.found,
  .payment-status.success, .minimum-order-mark.is-success, .wholesale-guide) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

body :is(.payment-error, .checkout-validation-alert, .age-denied,
  .payment-status.error) {
  color: var(--brand-red-deep) !important;
  background: var(--brand-red-soft) !important;
  border-color: var(--brand-red) !important;
}

body :is(a, .back-link, .footer-links a, .footer-contact a,
  .checkout-review-back, .minimum-order-secondary) {
  color: var(--brand-red-deep) !important;
}

body :is(.section-heading h2, .section-heading p, .product-card h3,
  .product-card p, .product-card strong, .local-profile-card h1,
  .local-profile-details small, .local-profile-details strong,
  .footer-brand strong, .footer-brand span, .footer-heading,
  .footer-contact, .age-card h1, .checkout-card h2, .checkout-modal-heading h1) {
  color: var(--ink) !important;
}

body :is(.category-nav button.is-active, .category-nav button:hover,
  .product-section.offers-section, .product-section.packs-section) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--yellow-line) !important;
}

body :is(.category-nav button, .category-nav button span) {
  color: var(--ink) !important;
  border-color: var(--line) !important;
}

body :is(.category-visual, .section-category-image .category-visual) [fill]:not([fill="none"]),
body :is(.category-visual, .section-category-image .category-visual) [fill="currentColor"] {
  fill: var(--yellow) !important;
}

body :is(.category-visual, .section-category-image .category-visual) [stroke] {
  stroke: var(--ink) !important;
}

body :is(.wholesale-guide-lead span, .wholesale-guide-steps span,
  .section-heading p, .product-card p, .card-bottom > span) {
  color: var(--muted) !important;
}

body :is(.wholesale-guide-steps b, .legal-warning-bar span) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
}

body :is(.legal-warning-bar, .checkout-free-delivery, .payment-note-local) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

/* Fechamento da identidade: todos os estados visuais usam apenas amarelo,
   preto, vermelho e branco, inclusive estados que antes herdavam verde/azul. */
:root {
  --ink: #111111;
  --yellow: #ffd000;
  --yellow-rgb: 255, 208, 0;
  --yellow-soft: rgba(255, 208, 0, .16);
  --yellow-line: rgba(175, 129, 0, .35);
  --yellow-deep: #f0b900;
  --yellow-ink: #111111;
  --yellow-glow: rgba(255, 208, 0, .28);
  --canvas: #fffdf7;
  --line: #e4d8b5;
  --muted: #5f5a52;
  --white: #fff;
  --brand-green: #111111;
  --brand-green-soft: rgba(17, 17, 17, .08);
  --brand-red: #cf0805;
  --brand-red-deep: #a60603;
  --brand-red-soft: rgba(207, 8, 5, .10);
  --boteco-blue: var(--brand-red);
  --boteco-blue-deep: var(--brand-red-deep);
  --boteco-cream: var(--canvas);
  --boteco-green: var(--brand-red);
  --boteco-orange: var(--brand-red);
  --boteco-red: var(--brand-red);
  --boteco-red-deep: var(--brand-red-deep);
  --payment-bg: var(--canvas);
  --payment-blue: #111111;
  --payment-blue-deep: #111111;
  --payment-border: #e4d8b5;
  --payment-muted: #5f5a52;
  --payment-navy: #111111;
  --payment-soft: var(--yellow-soft);
  --payment-success: var(--brand-red);
  --payment-success-soft: var(--brand-red-soft);
  --payment-surface: #fff;
  --payment-text: #111111;
}

/* Estados de confirmação e disponibilidade: vermelho é o destaque da marca;
   o amarelo continua reservado às ações e ofertas. */
html body .checkout-payment-option.selected {
  color: #111 !important;
  background: var(--yellow) !important;
  border-color: var(--ink) !important;
  animation: checkout-pix-pulse-brand 2.4s ease-in-out infinite;
}

@keyframes checkout-pix-pulse-brand {
  0%, 100% { box-shadow: 0 3px 12px rgba(215, 25, 32, .14), 0 0 0 0 rgba(215, 25, 32, 0); }
  50% { box-shadow: 0 5px 16px rgba(215, 25, 32, .24), 0 0 0 4px rgba(215, 25, 32, .10); }
}

html body .checkout-payment-option.selected :is(strong, small, .pix-approval-badge, > .icon) {
  color: var(--ink) !important;
}

html body .checkout-payment-option.selected .pix-approval-badge i {
  color: #fff !important;
  background: var(--brand-red) !important;
}

html body .checkout-payment-option.selected .checkout-review-pix-icon,
html body .checkout-review-heading > span {
  color: #fff !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
}

html body :is(.local-profile-verified-badge span,
  .local-profile-details .delivery-free-label,
  .local-profile-details .minimum-order-label,
  .local-profile-details .delivery-city-label,
  .cart-checkout-minimum-note.is-ready,
  .hero-kicker.is-open) {
  color: var(--brand-red-deep) !important;
  background: transparent !important;
  border-color: transparent !important;
}

html body .local-profile-verified-badge span,
html body .hero-kicker.is-open {
  color: #fff !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
}

html body .hero-kicker.is-open::before {
  background: #fff !important;
}

html body :is(.local-profile-details .delivery-free-label,
  .local-profile-details .minimum-order-label,
  .local-profile-details .delivery-city-label,
  .cart-checkout-minimum-note.is-ready) {
  color: var(--brand-red-deep) !important;
}

html body :is(.payment-status.success, .delivery-availability, .verified,
  .paid-state, .zip-status.found, .minimum-order-mark.is-success) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

/* Campanha de estoque: comunicação direta, sem imagem antiga ou urgência artificial. */
html body .campaign-banner.campaign-banner-stock {
  display: grid !important;
  grid-template-columns: auto auto 1fr auto !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 86px !important;
  box-sizing: border-box !important;
  padding: 16px 18px !important;
  color: #fff !important;
  background: linear-gradient(115deg, #111214 0%, #1d2024 64%, #b51220 100%) !important;
  border: 0 !important;
  border-radius: 0 0 16px 16px !important;
  text-align: left !important;
}

html body .campaign-banner-stock .campaign-banner-kicker {
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

html body .campaign-banner-stock .campaign-banner-value {
  color: var(--yellow) !important;
  font-size: clamp(26px, 7vw, 44px) !important;
  font-weight: 950 !important;
  letter-spacing: -.05em !important;
  line-height: .9 !important;
  white-space: nowrap !important;
}

html body .campaign-banner-stock .campaign-banner-copy {
  color: #fff !important;
  font-size: clamp(14px, 3vw, 19px) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}

html body .campaign-banner-stock .campaign-banner-note {
  justify-self: end !important;
  padding: 7px 10px !important;
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

@media (max-width: 560px) {
  html body .campaign-banner.campaign-banner-stock {
    grid-template-columns: auto auto !important;
    gap: 5px 9px !important;
    min-height: 84px !important;
    padding: 13px 12px !important;
    border-radius: 0 0 12px 12px !important;
  }

  html body .campaign-banner-stock .campaign-banner-kicker {
    grid-column: 1 / -1 !important;
    font-size: 9px !important;
  }

  html body .campaign-banner-stock .campaign-banner-value {
    font-size: 30px !important;
  }

  html body .campaign-banner-stock .campaign-banner-copy {
    font-size: 14px !important;
  }

  html body .campaign-banner-stock .campaign-banner-note {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
    padding: 5px 8px !important;
    font-size: 9px !important;
  }
}

/* Cabeçalho clean: marca, confiança, ação e informações em uma única leitura. */
html body .legacy-store-header {
  background: #fff !important;
  border-bottom: 1px solid var(--line) !important;
  overflow: visible !important;
}

html body .local-profile-hero {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 0 12px 14px !important;
  background: #fffdf7 !important;
  border-bottom: 1px solid var(--yellow-line) !important;
}

html body .local-profile-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: min(100%, 720px) !important;
  max-width: 720px !important;
  box-sizing: border-box !important;
  margin: 0 auto !important;
  padding: 0 14px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body :is(.local-profile-hero > .local-profile-logo,
  .local-profile-card > .local-profile-logo) {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 76px !important;
  height: 76px !important;
  flex: 0 0 76px !important;
  margin: 10px auto 9px !important;
  object-fit: cover !important;
  border: 4px solid #fff !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 5px 14px rgba(17, 18, 20, .14) !important;
}

html body :is(.local-profile-hero > h1, .local-profile-card > h1) {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8px !important;
  color: var(--ink) !important;
  text-align: center !important;
  font-size: clamp(20px, 4.4vw, 27px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
}

html body .local-profile-verified-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  width: fit-content !important;
  margin: 0 auto 15px !important;
  padding: 5px 10px !important;
  color: #55606a !important;
  background: #f5f7f8 !important;
  border: 1px solid #dce2e6 !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

html body .local-profile-verified-badge span {
  display: inline-grid !important;
  width: 17px !important;
  height: 17px !important;
  place-items: center !important;
  color: #fff !important;
  background: var(--brand-red) !important;
  border-radius: 50% !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

html body .local-profile-actions {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  width: min(100%, 560px) !important;
  margin: 0 auto 14px !important;
  gap: 10px !important;
}

html body .local-profile-actions .hero-kicker.is-open {
  justify-self: start !important;
  white-space: nowrap !important;
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

html body .local-profile-actions .hero-kicker.is-open::before {
  background: var(--ink) !important;
}

html body .local-profile-actions > button {
  justify-self: end !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 10px 14px !important;
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border: 1px solid var(--yellow-deep) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

html body .local-profile-details {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: 100% !important;
  margin: 0 !important;
  padding-top: 12px !important;
  border-top: 1px solid var(--line) !important;
}

html body .local-profile-details > div {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 54px !important;
  padding: 0 10px !important;
  text-align: center !important;
}

html body .local-profile-details > div + div {
  border-left: 1px solid var(--line) !important;
}

html body .local-profile-details small,
html body .local-profile-details strong {
  display: block !important;
  width: 100% !important;
  overflow-wrap: anywhere !important;
  text-align: center !important;
}

html body .local-profile-details small {
  margin-bottom: 4px !important;
  color: #4e5962 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

html body .local-profile-details strong {
  color: var(--ink) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
}

html body .local-profile-details .delivery-free-label {
  color: var(--brand-red-deep) !important;
}

html body .local-profile-details .minimum-order-label {
  color: var(--ink) !important;
}

@media (max-width: 560px) {
  html body .local-profile-hero {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }

  html body .local-profile-card {
    padding-right: 6px !important;
    padding-left: 6px !important;
  }

  html body :is(.local-profile-hero > .local-profile-logo,
    .local-profile-card > .local-profile-logo) {
    width: 70px !important;
    height: 70px !important;
    flex-basis: 70px !important;
    margin-top: 9px !important;
  }

  html body .local-profile-actions {
    gap: 7px !important;
  }

  html body .local-profile-actions .hero-kicker.is-open,
  html body .local-profile-actions > button {
    padding-right: 10px !important;
    padding-left: 10px !important;
    font-size: 11px !important;
  }

  html body .local-profile-details > div {
    min-height: 62px !important;
    padding-right: 5px !important;
    padding-left: 5px !important;
  }

  html body .local-profile-details small {
    font-size: 10px !important;
  }

  html body .local-profile-details strong {
    font-size: 13px !important;
  }
}

/* Paleta final da marca: amarelo da logo para ação, preto para estrutura,
   vermelho para destaque e erro, branco para leitura do pedido. */
html body :is(.store-page, .store-shell, .content, .cart-checkout-page,
  .checkout-page, .checkout-modal-page, .pix-screen-local) {
  color: var(--ink) !important;
  background: var(--canvas) !important;
}

html body :is(.cart-checkout-line, .cart-checkout-summary,
  .checkout-card, .checkout-summary, .checkout-modal-card,
  .checkout-review-receipt, .checkout-review-table,
  .pix-box-local, .pix-ready-box, .minimum-order-card,
  .delivery-choice-card, .location-prompt-card) {
  color: var(--ink) !important;
  background: var(--white) !important;
  border-color: var(--line) !important;
}

html body :is(.cart-checkout-header, .checkout-flow-heading) {
  color: var(--yellow) !important;
  background: var(--ink) !important;
  border-color: var(--ink) !important;
}

html body :is(.cart-checkout-header *, .checkout-flow-heading *) {
  color: var(--yellow) !important;
}

html body :is(.cart-checkout-primary, .checkout-modal-primary,
  .checkout-review-submit, .delivery-choice-continue,
  .minimum-order-card .primary-action, .pix-copy) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--yellow) !important;
}

html body :is(.cart-checkout-primary, .checkout-modal-primary,
  .checkout-review-submit, .delivery-choice-continue,
  .minimum-order-card .primary-action, .pix-copy):hover:not(:disabled) {
  color: var(--white) !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
}

html body :is(.checkout-modal-progress-step.active span,
  .checkout-payment-option.selected, .delivery-choice-option.selected,
  .checkout-review-heading > span) {
  color: var(--ink) !important;
  background: var(--yellow) !important;
  border-color: var(--yellow-line) !important;
}

html body :is(.checkout-modal-progress-step.complete span,
  .checkout-review-pix-icon, .pix-ready-check) {
  color: var(--white) !important;
  background: var(--brand-red) !important;
  border-color: var(--brand-red-deep) !important;
}

html body :is(.cart-checkout-total, .checkout-order-total,
  .checkout-review-line.total, .pix-ready-amount,
  .minimum-order-amount) {
  color: var(--ink) !important;
  background: var(--yellow-soft) !important;
  border-color: var(--yellow-line) !important;
}

html body :is(.checkout-validation-alert, .payment-error,
  .payment-status.error, .field-error) {
  color: var(--brand-red-deep) !important;
  background: var(--brand-red-soft) !important;
  border-color: var(--brand-red) !important;
}

html body .local-profile-verified-badge {
  color: var(--ink) !important;
  background: var(--white) !important;
  border-color: var(--yellow-line) !important;
}

html body .campaign-banner.campaign-banner-stock {
  background: linear-gradient(115deg, var(--ink) 0%, #1d2024 64%, var(--brand-red-deep) 100%) !important;
}

@media (prefers-reduced-motion: reduce) {
  html body .checkout-payment-option.selected {
    animation: none !important;
  }
}

/* Black: foto de atacado sob degradê, com oferta e prazo legíveis no celular. */
html body .campaign-banner.campaign-banner-stock {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 12px !important;
  min-height: 132px !important;
  padding: 18px 22px !important;
  background: linear-gradient(90deg, rgba(8, 9, 10, .98) 0%, rgba(8, 9, 10, .88) 42%, rgba(8, 9, 10, .42) 100%), url('/atacadao-black-warehouse-v1.webp') right center / cover no-repeat !important;
}

html body .campaign-banner-stock .campaign-copy-group {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  min-width: 0 !important;
}

html body .campaign-banner-stock .campaign-offer-line {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  gap: 4px 9px !important;
}

html body .campaign-banner-stock .campaign-banner-note {
  grid-column: auto !important;
  justify-self: auto !important;
  padding: 0 !important;
  color: #f8e69a !important;
  background: transparent !important;
  border-radius: 0 !important;
  font-size: 10px !important;
  line-height: 1.3 !important;
  white-space: normal !important;
}

html body .campaign-banner-stock .campaign-countdown {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 4px !important;
  width: auto !important;
  min-height: 0 !important;
  padding: 9px 11px !important;
  color: #fff !important;
  background: rgba(0, 0, 0, .72) !important;
  border: 1px solid rgba(255, 209, 0, .55) !important;
  border-radius: 10px !important;
  text-align: left !important;
}

html body .campaign-banner-stock .campaign-countdown-title {
  font-size: 9px !important;
  line-height: 1.1 !important;
}

html body .campaign-banner-stock .campaign-countdown-value {
  color: #fff !important;
  font-size: 14px !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: .02em !important;
  white-space: nowrap !important;
}

html body .campaign-banner-stock.campaign-ended .campaign-copy-group {
  display: none !important;
}

@media (max-width: 560px) {
  html body .campaign-banner.campaign-banner-stock {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 10px !important;
    min-height: 160px !important;
    padding: 16px !important;
    background-position: right center !important;
  }

  html body .campaign-banner-stock .campaign-banner-kicker {
    grid-column: auto !important;
  }

  html body .campaign-banner-stock .campaign-countdown {
    align-self: start !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 7px 9px !important;
  }
}

