:root {
  --store-accent: #fe2c55;
  --store-ink: #222;
  --store-surface: #fff;
  --store-error: #a71938;
  --store-error-surface: #fff5f7;
  --store-focus: #007c6e;
  --store-muted: #6b7280;
  --store-border: #e5e7eb;
  --store-page: #f9fafb;
}
:where(button, a, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid var(--store-focus) !important;
  outline-offset: 3px;
}
.store-notice { margin: 12px 16px; padding: 12px; border: 1px solid var(--store-accent); border-radius: 6px; background: var(--store-error-surface); color: var(--store-error); font-size: 14px; line-height: 1.5; }
.store-notice:empty { display: none; }
.store-notice button, .store-notice a { display: inline-flex; align-items: center; justify-content: center; margin: 8px 8px 0 0; min-height: 44px; padding: 6px 12px; border: 1px solid currentColor; border-radius: 6px; background: var(--store-surface); color: inherit; font: inherit; cursor: pointer; }
[aria-invalid="true"] { border-color: var(--store-error) !important; }
.store-coupon { padding: 16px; margin: 12px 0; background: var(--store-surface); color: var(--store-ink); border-block: 1px solid var(--store-border); font-size: 14px; }
.store-coupon label { display: block; font-weight: 600; margin-bottom: 8px; }
.store-coupon-controls { display: flex; gap: 8px; align-items: center; }
.store-coupon input { flex: 1; min-width: 0; width: 100%; border: 1px solid var(--store-border); border-radius: 6px; padding: 10px; text-transform: uppercase; font: inherit; }
.store-coupon button, .store-order-actions a, .store-order-actions button { background: var(--store-accent); color: var(--store-surface); border: 0; border-radius: 6px; padding: 10px 14px; min-height: 44px; font: inherit; cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
.store-coupon p { margin: 8px 0 0; line-height: 1.5; }
.store-coupon [aria-invalid="true"] ~ button { flex-shrink: 0; }
.store-confirmation { margin: 0; background: var(--store-page); color: var(--store-ink); font: 14px/1.6 -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
.store-confirmation header { background: var(--store-surface); border-bottom: 1px solid var(--store-border); padding: 16px; }
.store-confirmation header a { color: var(--store-ink); text-decoration: none; }
.store-confirmation main { max-width: 720px; margin: 0 auto; padding: 24px 16px; }
.store-confirmation h1 { font-size: 24px; }
.store-confirmation h2 { font-size: 18px; margin-top: 24px; }
.store-confirmation section { border-block: 1px solid var(--store-border); padding-block: 12px; }
.store-order-item { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--store-border); }
.store-order-item img { width: 64px; height: 64px; object-fit: contain; flex-shrink: 0; }
.store-order-item p { margin: 0; overflow-wrap: anywhere; }
.store-confirmation dl > div { display: flex; justify-content: space-between; gap: 16px; margin: 8px 0; }
.store-confirmation dd { margin: 0; }
.store-order-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.store-order-actions a:not(:last-child), .store-order-actions button { background: var(--store-surface); color: var(--store-ink); border: 1px solid var(--store-border); }
#order-reference { overflow-wrap: anywhere; color: var(--store-muted); }
[hidden] { display: none !important; }
body { touch-action: pan-x pan-y pinch-zoom !important; }
#faixa-preco-wrap, #faixa-relampago-wrap, #cupons-strip { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
@media (max-width: 600px) {
  body { padding-bottom: calc(140px + env(safe-area-inset-bottom)) !important; }
  :where(button, a[role="button"], [data-store-control]) { min-height: 44px; }
  :where(button:empty, [data-store-icon], .cart-qty button, .cart-item-remove, #img-prev-btn, #img-next-btn) { min-width: 44px !important; min-height: 44px !important; }
  .header-right { margin-left: 0 !important; gap: 2px !important; }
  .header a, .header button { min-width: 44px; min-height: 44px; justify-content: center; }
  .container { width: 100% !important; max-width: 100%; min-width: 0; }
  #faixa-preco-wrap, #faixa-relampago-wrap, #cupons-strip { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
  #price-current, #price-current-r { font-size: 16px !important; }
  #discount-percent, #discount-percent-r { font-size: 12px !important; }
  #price-compare, #price-compare-r { font-size: 11px !important; }
  #faixa-preco-wrap > div { left: 3% !important; }
  #faixa-preco-wrap > div > div { gap: 5px !important; }
  #faixa-preco-wrap > div img, #faixa-relampago-wrap > div img { width: 18px !important; height: 18px !important; margin: 0 !important; }
  #faixa-relampago { height: 74px !important; }
  #cupons-strip span { font-size: 11px !important; }
  #cupons-strip img { width: 14px !important; height: 14px !important; }
  #img-banner-loja { height: auto !important; min-width: 0 !important; object-fit: contain; }
  .image-container { max-width: 100%; touch-action: pan-y pinch-zoom; }
  .product-main-image { object-fit: contain !important; }
  .bottom-nav { gap: 4px !important; padding: 8px !important; padding-bottom: calc(8px + env(safe-area-inset-bottom)) !important; }
  .bottom-nav .nav-item { min-width: 40px; flex-shrink: 0; }
  .bottom-nav .add-cart-btn, .bottom-nav .buy-btn { height: auto !important; min-height: 48px; min-width: 0; font-size: 12px !important; padding: 4px 6px !important; overflow-wrap: break-word; }
  .cart-item-row { padding: 10px !important; gap: 8px; }
  .cart-item-img { width: 64px !important; height: 64px !important; min-width: 64px !important; }
  .cart-qty { flex-shrink: 0; }
  .cart-qty span { min-width: 24px; text-align: center; }
  #cart-total { white-space: nowrap; font-size: 18px !important; }
  #rodape-carrinho > div > div:nth-child(2) > div:first-child { flex-wrap: nowrap; }
  .cart-top-banner-text, .cart-shipping-box-text { min-width: 0; overflow-wrap: anywhere; }
  input:not([type="radio"]):not([type="checkbox"]), select, textarea { font-size: 16px !important; max-width: 100%; min-width: 0; }
  #telefone-error { flex-basis: 100%; }
  #telefone { flex: 1; }
  #telefone-error:not(:empty) { display: block !important; }
  #tela-endereco { height: 100dvh; }
  #tela-endereco > div:has(#telefone) { min-width: 0; }
  #tela-endereco div:has(> #telefone) { flex-wrap: wrap; }
  #frete-cards-container label p { white-space: normal !important; overflow: visible !important; }
  #modalCarrinhoContent, #modalOficialContent, #modalProtecaoPainel { max-height: 90dvh !important; }
  #modalCartinha { height: 100dvh !important; overflow-y: auto; padding: 16px; }
  #modalCartinha > div { max-width: calc(100vw - 32px); }
  #modalCartinha [onclick="fecharModalCartinha()"] { min-width: 44px; min-height: 44px; }
  footer { padding-bottom: env(safe-area-inset-bottom); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}