/*
 * Etapa 9 — Bakti Bazar Premium V3 / MiniMax-inspired
 * Carrega após frontend.css e design-system.css.
 * Não escurece carrinho, checkout, pagamento e formulários críticos.
 */
:root{
  --mmx-bg:#08060d;
  --mmx-bg-2:#100b18;
  --mmx-surface:#17101f;
  --mmx-surface-2:#21162c;
  --mmx-rose:#f25ca2;
  --mmx-rose-2:#ff8abc;
  --mmx-magenta:#c83b8f;
  --mmx-gold:#f7c873;
  --mmx-sandal:#fff7ec;
  --mmx-paper:#ffffff;
  --mmx-text:#201622;
  --mmx-text-soft:#6b596f;
  --mmx-on-dark:#fff7fb;
  --mmx-on-dark-soft:rgba(255,247,251,.72);
  --mmx-border:rgba(242,92,162,.22);
  --mmx-border-light:rgba(32,22,34,.10);
  --mmx-radius-sm:10px;
  --mmx-radius-md:16px;
  --mmx-radius-lg:24px;
  --mmx-radius-xl:32px;
  --mmx-shadow:0 24px 80px rgba(8,6,13,.18);
  --mmx-shadow-soft:0 18px 55px rgba(32,22,34,.10);
  --mmx-glow:0 0 0 1px rgba(242,92,162,.20),0 24px 80px rgba(242,92,162,.16);
  --ds-night:var(--mmx-bg);
  --ds-pink:var(--mmx-rose);
  --ds-lime:var(--mmx-gold);
}
body{background:linear-gradient(180deg,var(--mmx-sandal),#fff 32%,var(--mmx-sandal));color:var(--mmx-text);}
::selection{background:var(--mmx-rose);color:#fff;}
.topbar{background:linear-gradient(90deg,var(--mmx-bg),var(--mmx-magenta),var(--mmx-bg));color:var(--mmx-on-dark);font-weight:800;}
.site-header{background:rgba(255,249,242,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(242,92,162,.18);box-shadow:0 14px 50px rgba(32,22,34,.08);}
.brand{gap:.7rem}.brand-logo-bakti,.brand-logo{max-height:64px;max-width:185px;width:auto;object-fit:contain;filter:drop-shadow(0 10px 28px rgba(242,92,162,.16));}
.desktop-nav a,.header-actions a{color:var(--mmx-text);font-weight:900}.desktop-nav a:hover,.header-actions a:hover{color:var(--mmx-rose)}
.header-search,.mobile-search{border:1px solid rgba(242,92,162,.18);border-radius:999px;background:#fff;box-shadow:var(--mmx-shadow-soft);overflow:hidden}.header-search button,.mobile-search button{background:linear-gradient(135deg,var(--mmx-rose),var(--mmx-magenta));border:0;color:#fff;border-radius:999px;margin:4px}.header-search input,.mobile-search input{border:0;box-shadow:none}.cart-pill{background:#fff;border:1px solid rgba(242,92,162,.22);border-radius:999px;box-shadow:var(--mmx-shadow-soft)}.cart-pill span{background:var(--mmx-rose);color:#fff;box-shadow:0 0 0 4px rgba(242,92,162,.12)}
.hero-premium,.newsletter-section,.page-hero{background:radial-gradient(circle at 18% 14%,rgba(242,92,162,.35),transparent 26%),radial-gradient(circle at 78% 16%,rgba(247,200,115,.20),transparent 25%),linear-gradient(135deg,#08060d 0%,#140d1d 46%,#2b1130 100%);color:var(--mmx-on-dark);}
.hero-premium:before,.newsletter-section:before,.page-hero:before{background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:44px 44px;opacity:.45;}
.hero-grid{min-height:680px}.eyebrow{color:var(--mmx-rose);letter-spacing:.18em}.hero-premium .eyebrow,.newsletter-section .eyebrow{color:var(--mmx-gold)}.hero-copy h1{max-width:780px}.hero-copy p{font-size:1.15rem}.hero-premium .hero-copy p,.newsletter-section p{color:var(--mmx-on-dark-soft)}
h1,h2,h3{color:var(--mmx-text);letter-spacing:-.055em}.hero-premium h1,.hero-premium h2,.newsletter-section h2,.page-hero h1{color:var(--mmx-on-dark)}
.btn,.ds-button-primary,.ds-button-inverted,.ds-button-ghost{border-radius:999px;font-weight:950;letter-spacing:.04em}.btn-primary,.ds-button-primary{background:linear-gradient(135deg,var(--mmx-rose),var(--mmx-magenta))!important;border-color:transparent!important;color:#fff!important;box-shadow:var(--mmx-glow)}.btn-primary:hover,.ds-button-primary:hover{filter:saturate(1.08);transform:translateY(-2px)}.btn-outline,.btn-ghost,.ds-button-ghost{border-color:rgba(242,92,162,.28);color:var(--mmx-text);background:#fff}.hero-premium .btn-outline,.hero-premium .btn-ghost,.newsletter-section .btn-outline,.newsletter-section .btn-ghost{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.22)}
.mandala-orb{background:radial-gradient(circle at 34% 30%,var(--mmx-rose-2),var(--mmx-magenta) 40%,#160b20 72%);box-shadow:0 40px 130px rgba(242,92,162,.30), inset 0 0 70px rgba(255,255,255,.08)}.mandala-orb:before{border-color:rgba(247,200,115,.58)}.floating-card{background:rgba(255,255,255,.90);border:1px solid rgba(242,92,162,.24);box-shadow:var(--mmx-shadow);color:var(--mmx-text)}
.category-card,.product-card,.panel,.benefit-grid article,.feature-columns article,.testimonial-grid blockquote,.faq-grid details,.contact-card,.ds-card,.ds-panel{border:1px solid rgba(242,92,162,.14);border-radius:var(--mmx-radius-lg);box-shadow:var(--mmx-shadow-soft);background:rgba(255,255,255,.94)}.category-card:hover,.product-card:hover,.help-card:hover,.ds-card:hover{border-color:rgba(242,92,162,.36);box-shadow:0 30px 90px rgba(242,92,162,.16);transform:translateY(-5px)}.category-icon{background:linear-gradient(135deg,var(--mmx-rose),var(--mmx-gold));color:#fff;border-radius:18px}.product-media{background:radial-gradient(circle at 50% 8%,rgba(242,92,162,.12),transparent 34%),linear-gradient(135deg,#fff,var(--mmx-sandal));}.badge-sale{background:var(--mmx-rose);color:#fff}.badge-new{background:var(--mmx-gold);color:var(--mmx-text)}.price-box strong{color:var(--mmx-magenta)}.price-box small{color:#166534}.accent-panel{background:radial-gradient(circle at 14% 12%,rgba(242,92,162,.30),transparent 28%),linear-gradient(135deg,var(--mmx-bg),var(--mmx-surface-2));border-color:rgba(242,92,162,.22);color:var(--mmx-on-dark)}.accent-panel h2,.accent-panel h3{color:var(--mmx-on-dark)}.accent-panel p,.accent-panel li{color:var(--mmx-on-dark-soft)}
.newsletter-box{border:1px solid rgba(255,255,255,.16);border-radius:var(--mmx-radius-xl);background:rgba(255,255,255,.06);backdrop-filter:blur(18px);box-shadow:0 40px 110px rgba(0,0,0,.24)}.newsletter-form input,.form-field input,.form-field textarea,.form-field select,.auth-card input,.checkout-form input,.checkout-form select,.checkout-form textarea,.cart-coupon input,.ds-input{border:1px solid rgba(32,22,34,.14);border-radius:14px;background:#fff;color:var(--mmx-text)}
.site-footer{background:radial-gradient(circle at 12% 14%,rgba(242,92,162,.16),transparent 26%),linear-gradient(135deg,#08060d,#140d1d);color:var(--mmx-on-dark);}.site-footer a,.site-footer p{color:rgba(255,247,251,.72)}.site-footer strong{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.10);color:rgba(255,247,251,.58)}
/* Superfícies transacionais sempre claras */
.cart-page,.checkout-page,.customer-page,.payment-page,.order-received,.auth-section{background:linear-gradient(180deg,#fff,var(--mmx-sandal));color:var(--mmx-text)}.cart-page .panel,.checkout-page .panel,.customer-page .panel,.payment-page .panel,.order-received .panel,.auth-card{background:#fff;color:var(--mmx-text);border-color:rgba(32,22,34,.12);box-shadow:var(--mmx-shadow-soft)}.checkout-page h1,.checkout-page h2,.checkout-page h3,.cart-page h1,.cart-page h2,.cart-page h3,.customer-page h1,.customer-page h2,.customer-page h3,.payment-page h1,.payment-page h2,.payment-page h3{color:var(--mmx-text)}
@media(max-width:760px){.brand-logo-bakti,.brand-logo{max-height:52px;max-width:150px}.hero-grid{min-height:auto;padding:4rem 0}.header-grid{gap:.75rem}.header-search{order:5;grid-column:1/-1;width:100%}.desktop-nav{display:none}}

/* Etapa 10 — Carrinho Premium V3 e variações funcionais */
.variant-box{margin:1rem 0;padding:1rem;border:1px solid rgba(242,92,162,.18);border-radius:18px;background:linear-gradient(180deg,#fff,#fff7fb)}
.variant-box .muted,.form-hint{margin:.25rem 0 .8rem;color:#7c6476;font-size:.92rem}.variant-options{display:flex;flex-wrap:wrap;gap:.65rem}.variant-options button{display:grid;gap:.15rem;text-align:left;border:1px solid rgba(32,22,34,.14);border-radius:16px;background:#fff;color:var(--mmx-text);padding:.72rem .9rem;min-width:150px;cursor:pointer;box-shadow:0 12px 28px rgba(32,22,34,.06);transition:.18s ease}.variant-options button span{font-weight:900}.variant-options button small{font-size:.78rem;color:#7c6476}.variant-options button:hover,.variant-options button.is-selected{border-color:var(--mmx-rose);box-shadow:0 0 0 4px rgba(242,92,162,.12),0 20px 44px rgba(242,92,162,.14);transform:translateY(-1px)}.variant-options button:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}.buy-box button:disabled,.cart-summary-premium .btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.35)}
.cart-free-shipping{display:grid;gap:.8rem;margin-bottom:1rem;background:linear-gradient(135deg,#fff,#fff1f8)}.cart-free-shipping strong{display:block;color:var(--mmx-text)}.cart-free-shipping small{color:#7c6476}.cart-progress{height:10px;border-radius:999px;background:rgba(32,22,34,.08);overflow:hidden}.cart-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--mmx-rose),var(--mmx-magenta));box-shadow:0 0 22px rgba(242,92,162,.42)}.cart-line{grid-template-columns:82px minmax(0,1fr) auto auto auto;gap:1rem;border-bottom:1px solid rgba(32,22,34,.09)}.cart-line-media{width:72px;height:72px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#fff7ec,#f8dbe9);overflow:hidden;border:1px solid rgba(242,92,162,.14)}.cart-line-media img{width:100%;height:100%;object-fit:cover}.cart-line-media span{font-size:1.7rem;color:var(--mmx-rose)}.cart-line-info{display:grid;gap:.2rem}.cart-line-info em{font-style:normal;color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:10px;padding:.35rem .5rem;width:max-content;max-width:100%}.cart-line.is-unavailable{background:#fff7f7;border-radius:18px;padding-left:.75rem;padding-right:.75rem}.cart-qty-form{flex-wrap:wrap}.qty-step{width:34px;height:34px;border:1px solid rgba(32,22,34,.14);background:#fff;border-radius:12px;font-weight:900;cursor:pointer}.qty-step:hover{border-color:var(--mmx-rose);color:var(--mmx-rose)}.cart-line-price{display:grid;text-align:right;gap:.1rem}.cart-line-price small{color:#7c6476}.cart-clear-form{padding-top:1rem}.cart-summary-premium{border:1px solid rgba(242,92,162,.18);box-shadow:0 30px 84px rgba(32,22,34,.12)}.summary-lines{display:grid;gap:.45rem}.summary-lines p{display:flex;align-items:center;justify-content:space-between;margin:0;padding:.55rem 0;border-bottom:1px solid rgba(32,22,34,.08)}.summary-lines .summary-total{border-bottom:0;margin-top:.25rem;padding-top:.85rem}.summary-lines .summary-total strong{font-size:1.35rem;color:var(--mmx-rose)}
@media(max-width:900px){.cart-line{grid-template-columns:72px minmax(0,1fr);align-items:start}.cart-line .cart-qty-form,.cart-line .cart-line-price,.cart-line form[action*="remover"]{grid-column:1/-1}.cart-line-price{text-align:left}.variant-options{display:grid}.variant-options button{width:100%}}


/* Etapa 11 — Checkout Premium V3 */
.checkout-premium-v3 .checkout-hero-mini,
.payment-page-v3 .checkout-hero-mini {
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(135deg, rgba(28,18,42,.96), rgba(255,88,151,.12));
  border-radius: 28px;
  padding: clamp(22px, 4vw, 42px);
  margin-bottom: 24px;
  color: #fffaf7;
  box-shadow: 0 24px 70px rgba(17,8,30,.18);
}
.checkout-form-v3 { align-items: start; }
.checkout-steps-v3 { display: grid; gap: 18px; }
.checkout-step-card { position: relative; overflow: hidden; }
.checkout-step-card:before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: linear-gradient(180deg, #ff5b99, #bb7cff); opacity: .92; }
.checkout-step-index { display: inline-grid; place-items: center; width: 32px; height: 32px; border-radius: 999px; background: #1c122a; color: #fff; font-weight: 800; margin-bottom: 10px; box-shadow: 0 0 0 4px rgba(255,91,153,.12); }
.shipping-selected-v3 { display: flex; justify-content: space-between; gap: 12px; padding: 14px 16px; border-radius: 18px; background: rgba(255,91,153,.08); border: 1px solid rgba(255,91,153,.18); }
.payment-methods-v3 { display: grid; gap: 12px; }
.payment-option-v3 { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; border: 1px solid rgba(28,18,42,.12); border-radius: 18px; padding: 14px; background: #fff; cursor: pointer; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.payment-option-v3:hover { transform: translateY(-1px); border-color: rgba(255,91,153,.42); box-shadow: 0 18px 40px rgba(28,18,42,.08); }
.payment-option-v3 input:checked + span strong { color: #d92f73; }
.payment-option-v3 em { font-style: normal; font-size: .76rem; border-radius: 999px; padding: 6px 10px; background: rgba(28,18,42,.08); color: #1c122a; white-space: nowrap; }
.order-summary-v3 { position: sticky; top: 92px; }
.order-summary-v3 p, .payment-status-card-v3 p { display: flex; justify-content: space-between; gap: 12px; }
.summary-item-v3 { display: flex; justify-content: space-between; align-items: start; gap: 12px; padding: 10px 0; border-bottom: 1px solid rgba(28,18,42,.08); }
.summary-warning { display: block; color: #b42318; margin: -4px 0 8px; }
.payment-status-card-v3, .payment-panel-v3 { min-height: 280px; }
.payment-countdown-v3 { display: block !important; padding: 12px 14px; border-radius: 14px; background: rgba(255,91,153,.09); color: #1c122a; font-weight: 700; }
.payment-qr-v3 { display: block; max-width: 260px; width: 100%; height: auto; margin: 16px auto; padding: 12px; border-radius: 22px; background: #fff; border: 1px solid rgba(28,18,42,.12); }
.payment-panel-v3 textarea, .payment-panel-v3 input[readonly] { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
@media (max-width: 900px) { .order-summary-v3 { position: static; } .payment-option-v3 { grid-template-columns: auto 1fr; } .payment-option-v3 em { grid-column: 2; width: fit-content; } }


/* Etapa 13 — Catálogo, Produto, Variações e Vitrine Premium V3 */
.catalog-hero-v3,.category-hero-v3{background:radial-gradient(circle at 12% 18%,rgba(242,92,162,.24),transparent 32%),linear-gradient(135deg,#08060d,#1a1028 72%,#2a1235);color:#fff7fb;overflow:hidden}.catalog-hero-v3 h1,.category-hero-v3 h1{color:#fff}.catalog-hero-v3 p,.category-hero-v3 p{color:rgba(255,247,251,.76);max-width:820px}.hero-chips-v3{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.25rem}.hero-chips-v3 a{padding:.7rem 1rem;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;font-weight:900;backdrop-filter:blur(12px)}.hero-chips-v3 a:hover{background:rgba(242,92,162,.22);border-color:rgba(242,92,162,.48)}
.catalog-section-v3 .catalog-layout{align-items:start}.filter-panel-v3{border:1px solid rgba(242,92,162,.16);background:rgba(255,255,255,.94);box-shadow:0 24px 70px rgba(32,22,34,.10);border-radius:24px;overflow:hidden}.filter-panel-v3 .filter-head{padding:1rem 1rem .5rem;border-bottom:1px solid rgba(32,22,34,.08);margin-bottom:.75rem}.filter-panel-v3 .filter-head small{display:block;color:#7c6476;margin-top:.15rem}.filter-checks-v3 label{border:1px solid rgba(32,22,34,.10);background:#fff;border-radius:999px;padding:.55rem .75rem}.sort-bar-v3{background:#fff;border:1px solid rgba(242,92,162,.15);border-radius:22px;padding:1rem;box-shadow:0 16px 44px rgba(32,22,34,.08)}.sort-bar-v3 small{color:#7c6476}.sort-bar-v3 label{min-width:150px}.sort-bar-v3 select{border-color:rgba(242,92,162,.18);border-radius:14px}
.product-card-v3{position:relative;overflow:hidden}.product-card-v3 .product-media-v3{min-height:250px;border-radius:24px 24px 0 0;position:relative}.product-badges-v3{position:absolute;left:.8rem;top:.8rem;display:flex;flex-wrap:wrap;gap:.35rem;z-index:2}.badge-variant{background:#1c122a;color:#fff}.product-info-v3{display:grid;gap:.75rem}.product-meta-v3{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.product-rating-v3{font-size:.82rem;color:#a15c00;font-weight:900}.product-stock-v3{width:max-content;max-width:100%;padding:.38rem .65rem;border-radius:999px;font-size:.78rem;font-weight:900}.product-stock-v3.available{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}.product-stock-v3.unavailable{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.product-actions-v3{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.product-actions-v3 form{display:block}.product-actions-v3 .btn{width:100%;padding-inline:.75rem}.product-card-v3.is-out{opacity:.78}.product-card-v3.is-out .product-media-v3:after{content:'Produto indisponível';position:absolute;inset:auto .8rem .8rem .8rem;background:rgba(153,27,27,.90);color:#fff;border-radius:16px;padding:.6rem;text-align:center;font-weight:900}
.product-detail-v3{background:linear-gradient(180deg,#fff7ec,#fff)}.product-gallery-v3{position:sticky;top:98px}.gallery-main-wrap{position:relative;border:1px solid rgba(242,92,162,.16);border-radius:30px;background:radial-gradient(circle at 45% 14%,rgba(242,92,162,.12),transparent 36%),#fff;overflow:hidden;box-shadow:0 24px 70px rgba(32,22,34,.12)}.gallery-main-wrap .gallery-main{width:100%;aspect-ratio:1/1;object-fit:contain;padding:1.25rem;transition:transform .25s ease}.gallery-main-wrap:hover .gallery-main{transform:scale(1.06)}.gallery-zoom-hint{position:absolute;right:1rem;bottom:1rem;background:rgba(8,6,13,.76);color:#fff;border-radius:999px;padding:.45rem .75rem;font-size:.78rem;font-weight:900}.gallery-thumbs-v3{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:.6rem;margin-top:.85rem}.gallery-thumbs-v3 button{border:1px solid rgba(32,22,34,.12);background:#fff;border-radius:18px;padding:.25rem;cursor:pointer}.gallery-thumbs-v3 button.is-active,.gallery-thumbs-v3 button:hover{border-color:var(--mmx-rose);box-shadow:0 0 0 4px rgba(242,92,162,.12)}.gallery-thumbs-v3 img{aspect-ratio:1/1;object-fit:cover;border-radius:14px}.product-summary-v3{background:#fff;border:1px solid rgba(242,92,162,.14);border-radius:30px;padding:clamp(1.2rem,3vw,2rem);box-shadow:0 26px 80px rgba(32,22,34,.11)}.product-title-meta-v3{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.rating-pill-v3{border:1px solid rgba(247,200,115,.38);background:#fff9e8;color:#8a5300;border-radius:999px;padding:.45rem .75rem;font-weight:900}.product-tags-v3{display:flex;gap:.45rem;flex-wrap:wrap}.product-tags-v3 a{border-radius:999px;background:#fff1f8;border:1px solid rgba(242,92,162,.18);padding:.4rem .65rem;color:var(--mmx-magenta);font-weight:900;font-size:.84rem}.variant-box-v3{background:linear-gradient(135deg,#fff,#fff3f8)}.buy-box-v3{border-top:1px solid rgba(32,22,34,.08);padding-top:1rem}.buy-actions-v3{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.product-shipping-v3{display:grid;grid-template-columns:1fr auto;gap:.7rem;align-items:end;margin-top:1rem;padding:1rem;border:1px solid rgba(242,92,162,.16);border-radius:22px;background:#fff9fc}.product-shipping-v3 label{display:grid;gap:.35rem;font-weight:900}.product-shipping-v3 input{border:1px solid rgba(32,22,34,.14);border-radius:14px;padding:.78rem;background:#fff}.product-shipping-v3 p{grid-column:1/-1;margin:0;color:#7c6476}.product-shipping-v3 p.success{color:#166534}.product-shipping-v3 p.error{color:#991b1b}.product-tabs-v3 .panel{min-height:100%}.benefit-list-v3{display:grid;gap:.5rem;padding-left:1.2rem}.review-grid-v3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.review-grid-v3 blockquote{margin:0}.review-grid-v3 strong{color:#a15c00;letter-spacing:.08em}.review-grid-v3 footer{font-weight:900;color:var(--mmx-magenta)}.recent-products-v3{background:linear-gradient(180deg,#fff,#fff7ec)}
.subcategories-strip-v3{background:#fff;border-block:1px solid rgba(242,92,162,.12)}.subcategories-strip-v3 .subcategory-list a{background:#fff1f8;border-color:rgba(242,92,162,.18);font-weight:900}.subcategories-strip-v3 .subcategory-list a:hover{background:var(--mmx-rose);color:#fff}
@media(max-width:900px){.product-gallery-v3{position:static}.product-actions-v3,.buy-actions-v3,.product-shipping-v3{grid-template-columns:1fr}.product-card-v3 .product-media-v3{min-height:210px}.sort-bar-v3{display:grid;gap:.8rem}.sort-bar-v3 label{width:100%}}


/* Etapa 15 — Footer Premium V3 Bakti Bazar
   Ajusta respiro da faixa superior, espelha a logo configurada no header
   e adiciona bandeiras locais de cartão, PIX e boleto. */
.site-footer.site-footer-v3{
  position:relative;
  overflow:hidden;
  padding:0 0 0;
  background:
    radial-gradient(circle at 8% 4%, rgba(242,92,162,.20), transparent 28%),
    radial-gradient(circle at 88% 0%, rgba(247,200,115,.12), transparent 26%),
    linear-gradient(135deg,#08060d,#140d1d 58%,#08060d);
  color:var(--mmx-on-dark,#fff7fb);
}
.site-footer.site-footer-v3::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:5px;
  background:linear-gradient(90deg,#f7c873,#f25ca2,#c83b8f,#f7c873);
  box-shadow:0 0 26px rgba(242,92,162,.50);
}
.site-footer.site-footer-v3 .footer-grid-v3{
  position:relative;
  padding-top:3.9rem;
  padding-bottom:2.35rem;
  gap:clamp(2rem,4vw,4.5rem);
  align-items:start;
}
.footer-brand-panel{
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.footer-brand{
  display:inline-flex !important;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin:0 0 .35rem;
  text-decoration:none;
}
.footer-logo{
  display:block;
  width:auto;
  max-width:min(190px, 80vw);
  max-height:82px;
  object-fit:contain;
  filter:drop-shadow(0 16px 34px rgba(242,92,162,.24));
}
.site-footer-v3 .footer-brand-panel p{
  max-width:320px;
  margin:.15rem 0 0;
  line-height:1.78;
  color:rgba(255,247,251,.78);
}
.site-footer-v3 .footer-nav-panel strong,
.site-footer-v3 .footer-payment-title{
  display:block;
  margin:0 0 1rem;
  color:#fff;
  font-weight:950;
  letter-spacing:-.01em;
}
.site-footer-v3 .footer-nav-panel a{
  display:block;
  width:max-content;
  max-width:100%;
  margin:.64rem 0;
  color:rgba(255,247,251,.74);
  text-decoration:none;
  transition:color .18s ease, transform .18s ease;
}
.site-footer-v3 .footer-nav-panel a:hover{
  color:#fff;
  transform:translateX(3px);
}
.site-footer-v3 .footer-contact-panel p{
  margin:.66rem 0;
  line-height:1.65;
  color:rgba(255,247,251,.76);
}
.footer-payment-box{
  margin-top:1.35rem;
  padding-top:1.15rem;
  border-top:1px solid rgba(255,255,255,.10);
}
.footer-payment-icons{
  display:flex;
  flex-wrap:wrap;
  gap:.58rem;
  max-width:300px;
}
.footer-payment-icons img{
  display:block;
  width:56px;
  height:34px;
  object-fit:contain;
  border-radius:10px;
  background:#fff;
  box-shadow:0 14px 30px rgba(0,0,0,.22), 0 0 0 1px rgba(255,255,255,.08);
}
.site-footer-v3 .footer-bottom{
  position:relative;
  margin-top:0;
  padding:1.25rem 1rem;
  border-top:1px solid rgba(255,255,255,.10);
  color:rgba(255,247,251,.62);
  background:rgba(0,0,0,.16);
}
@media(max-width:980px){
  .site-footer.site-footer-v3 .footer-grid-v3{
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding-top:3.25rem;
  }
}
@media(max-width:640px){
  .site-footer.site-footer-v3 .footer-grid-v3{
    grid-template-columns:1fr;
    padding-top:3rem;
    padding-bottom:2rem;
    gap:2rem;
  }
  .footer-logo{
    max-width:170px;
    max-height:72px;
  }
  .footer-payment-icons img{
    width:54px;
    height:33px;
  }
}


/* Etapa 16 — Safe spacing/padding global Frontend Premium V3
   Corrige cards sem respiro interno em newsletter, vitrines, produto, carrinho,
   checkout, páginas institucionais e blocos reutilizáveis. */
:root{
  --bb-card-padding-sm:clamp(1rem,2.2vw,1.35rem);
  --bb-card-padding-md:clamp(1.35rem,3vw,2rem);
  --bb-card-padding-lg:clamp(1.75rem,4.2vw,3rem);
  --bb-section-padding-y:clamp(3.75rem,7vw,6.25rem);
}

/* Cards e painéis reutilizáveis */
.ds-card,
.ds-panel,
.panel,
.card,
.product-card,
.category-card,
.feature-card,
.benefit-card,
.testimonial-card,
.faq-card,
.blog-card,
.post-card,
.auth-card,
.cart-card,
.cart-summary,
.checkout-card,
.checkout-step,
.checkout-summary,
.payment-card,
.order-card,
.customer-card,
.account-card,
.address-card,
.review-card,
.product-summary,
.product-gallery,
.filter-panel,
.newsletter-box,
.accent-panel,
.empty-state,
.form-panel,
.table-card{
  padding:var(--bb-card-padding-md);
}

/* Evita dupla compressão quando já existe estrutura interna */
.product-card,
.category-card,
.blog-card,
.post-card,
.review-card{
  box-sizing:border-box;
}
.product-card .product-card-body,
.category-card .category-card-body,
.blog-card .blog-card-body,
.post-card .post-card-body{
  padding:var(--bb-card-padding-sm);
}

/* Newsletter: correção direta do problema do print */
.newsletter-section{
  padding:var(--bb-section-padding-y) 0 !important;
}
.newsletter-section .container{
  padding-inline:clamp(1rem,3vw,2rem);
}
.newsletter-box{
  padding:clamp(1.75rem,4.6vw,3.6rem) !important;
  gap:clamp(1.5rem,4vw,3.25rem) !important;
  align-items:center;
  overflow:hidden;
}
.newsletter-box h1,
.newsletter-box h2,
.newsletter-box h3{
  margin-top:.35rem;
}
.newsletter-box p{
  max-width:620px;
}
.newsletter-form{
  padding:clamp(.25rem,1vw,.75rem);
}
.newsletter-form input,
.newsletter-form button{
  min-height:48px;
}

/* Respiro para seções que encostavam em cards */
.section,
.catalog-section,
.product-section,
.page-section,
.cart-page,
.checkout-page,
.payment-page,
.customer-page,
.auth-section,
.order-received,
.content-section{
  padding-block:var(--bb-section-padding-y);
}
.section > .container,
.catalog-section > .container,
.product-section > .container,
.page-section > .container,
.cart-page > .container,
.checkout-page > .container,
.payment-page > .container,
.customer-page > .container,
.auth-section > .container,
.order-received > .container,
.content-section > .container{
  padding-inline:clamp(.85rem,2vw,1.25rem);
}

/* Grids com gaps seguros */
.product-grid,
.category-grid,
.catalog-grid,
.benefit-grid,
.feature-grid,
.testimonial-grid,
.blog-grid,
.faq-grid,
.checkout-grid,
.cart-grid,
.footer-grid,
.related-grid,
.recently-viewed-grid{
  gap:clamp(1rem,2.5vw,1.75rem);
}

/* Formulários críticos claros e confortáveis */
.form-field,
.form-group,
.checkout-form .form-row,
.customer-form .form-row{
  margin-bottom:1rem;
}
.form-field input,
.form-field textarea,
.form-field select,
.checkout-form input,
.checkout-form textarea,
.checkout-form select,
.customer-form input,
.customer-form textarea,
.customer-form select,
.auth-card input,
.cart-coupon input{
  padding:.95rem 1rem;
}

/* Tabelas e listas */
.table-wrap,
.responsive-table,
.admin-table-wrap,
.order-items,
.cart-items,
.summary-list{
  padding:var(--bb-card-padding-sm);
}
.cart-item,
.order-item,
.summary-row,
.payment-instruction,
.alert,
.notice,
.flash-message{
  padding:clamp(.9rem,2vw,1.25rem);
}

/* Header fixo não deve cortar primeira seção */
.site-header + main > .section:first-child,
.site-header + main > .page-hero:first-child,
.site-header + main > .hero-premium:first-child{
  margin-top:0;
}

/* Mobile: mais respiro lateral, sem estourar cards */
@media(max-width:760px){
  .ds-card,
  .ds-panel,
  .panel,
  .card,
  .product-card,
  .category-card,
  .feature-card,
  .benefit-card,
  .testimonial-card,
  .faq-card,
  .blog-card,
  .post-card,
  .auth-card,
  .cart-card,
  .cart-summary,
  .checkout-card,
  .checkout-step,
  .checkout-summary,
  .payment-card,
  .order-card,
  .customer-card,
  .account-card,
  .address-card,
  .review-card,
  .product-summary,
  .product-gallery,
  .filter-panel,
  .newsletter-box,
  .accent-panel,
  .empty-state,
  .form-panel,
  .table-card{
    padding:clamp(1rem,5vw,1.45rem) !important;
  }
  .newsletter-box{
    grid-template-columns:1fr !important;
    padding:clamp(1.25rem,6vw,1.85rem) !important;
  }
  .newsletter-section .container{
    width:min(100% - 28px,1152px);
    padding-inline:0;
  }
  .section,
  .catalog-section,
  .product-section,
  .page-section,
  .cart-page,
  .checkout-page,
  .payment-page,
  .customer-page,
  .auth-section,
  .order-received,
  .content-section{
    padding-block:clamp(2.75rem,9vw,4rem);
  }
}


/* Etapa 17 — Product Cards Premium V3: alinhamento sem padding excessivo
   Corrige a regressão visual causada pelo safe spacing global da etapa anterior.
   Product cards precisam ter padding controlado por área interna, não no container inteiro. */
.product-grid,
.catalog-grid,
.related-grid,
.recently-viewed-grid,
.wishlist-grid,
.promotions-grid{
  align-items:stretch;
}

.product-grid > .product-card,
.catalog-grid > .product-card,
.related-grid > .product-card,
.recently-viewed-grid > .product-card,
.wishlist-grid > .product-card,
.promotions-grid > .product-card,
.product-card.product-card-v3{
  padding:0 !important;
  display:flex;
  flex-direction:column;
  height:100%;
  min-width:0;
  overflow:hidden;
  border-radius:26px;
}

.product-card-v3 .product-media-v3,
.product-card .product-media{
  width:100%;
  min-height:0 !important;
  aspect-ratio:1 / 1;
  border-radius:0;
  flex:0 0 auto;
}

.product-card-v3 .product-media-v3 img,
.product-card .product-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.product-card-v3 .product-info-v3,
.product-card .product-info{
  padding:clamp(1rem,1.7vw,1.25rem) !important;
  display:flex !important;
  flex-direction:column;
  gap:.65rem;
  flex:1 1 auto;
  min-height:0;
}

.product-card-v3 .product-meta-v3{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.55rem;
  min-height:1.15rem;
}

.product-card-v3 .product-category,
.product-card .product-category{
  line-height:1.2;
  min-height:1.05rem;
}

.product-card-v3 h3,
.product-card .product-info h3{
  margin:0;
  line-height:1.24;
  min-height:2.48em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.product-card-v3 h3 a,
.product-card .product-info h3 a{
  color:inherit;
  text-decoration:none;
}

.product-card-v3 .product-info-v3 > p,
.product-card .product-info > p{
  margin:0;
  line-height:1.48;
  min-height:2.95em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.product-card-v3 .price-box,
.product-card .price-box{
  margin-top:.1rem;
  min-height:4.25rem;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:.18rem;
}

.product-card-v3 .price-box del,
.product-card .price-box del{
  line-height:1.1;
}

.product-card-v3 .price-box strong,
.product-card .price-box strong{
  line-height:1.12;
}

.product-card-v3 .price-box small,
.product-card .price-box small{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.28;
}

.product-card-v3 .product-stock-v3{
  margin-top:auto;
  width:max-content;
  max-width:100%;
}

.product-card-v3 .product-actions-v3,
.product-card .product-actions{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:.55rem;
  align-items:stretch;
  margin-top:.5rem;
  width:100%;
}

.product-actions-v3 .card-cart-form,
.product-card .card-cart-form,
.product-actions-v3 form,
.product-card .product-actions form{
  display:block;
  min-width:0;
  width:100%;
  margin:0;
}

.product-actions-v3 .btn,
.product-card .product-actions .btn,
.product-actions-v3 button,
.product-card .product-actions button{
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:46px;
  padding:.72rem .78rem !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  white-space:normal;
  overflow:hidden;
  line-height:1.15;
  border-radius:999px;
}

.product-actions-v3 .btn-primary,
.product-card .product-actions .btn-primary,
.product-actions-v3 button.btn-primary{
  white-space:nowrap;
  font-size:clamp(.76rem,.92vw,.88rem);
}

.product-actions-v3 .btn-outline,
.product-card .product-actions .btn-outline{
  font-size:clamp(.76rem,.92vw,.88rem);
}

.product-badges-v3 .badge,
.product-card .badge{
  max-width:calc(100% - 1.2rem);
}

/* A home/catálogo não devem ficar estreitos demais em desktop. */
@media(min-width:1180px){
  .product-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .catalog-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* Tablet: evita cards esmagados e botões cortados. */
@media(max-width:980px){
  .product-grid,
  .catalog-grid,
  .related-grid,
  .recently-viewed-grid,
  .wishlist-grid,
  .promotions-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Mobile: botão empilha só quando necessário. */
@media(max-width:520px){
  .product-grid,
  .catalog-grid,
  .related-grid,
  .recently-viewed-grid,
  .wishlist-grid,
  .promotions-grid{
    grid-template-columns:1fr;
  }
  .product-card-v3 .product-actions-v3,
  .product-card .product-actions{
    grid-template-columns:1fr;
  }
  .product-card-v3 .product-media-v3,
  .product-card .product-media{
    aspect-ratio:1.08 / 1;
  }
}


/* Etapa 19 — Product Card Kickers/Badges Premium V3
   Corrige kickers cortados/desconfigurados dentro da imagem do produto.
   A regra global .badge era absoluta; aqui os badges do card v3 voltam a ser fluxo normal
   dentro do container .product-badges-v3. */
.product-card-v3 .product-media-v3{
  overflow:hidden;
  isolation:isolate;
}

.product-card-v3 .product-badges-v3{
  position:absolute !important;
  inset:clamp(.7rem,1.4vw,.95rem) auto auto clamp(.7rem,1.4vw,.95rem) !important;
  z-index:5;
  display:flex !important;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:flex-start;
  gap:.38rem;
  width:calc(100% - clamp(1.4rem,2.8vw,1.9rem));
  max-width:calc(100% - clamp(1.4rem,2.8vw,1.9rem));
  pointer-events:none;
}

.product-card-v3 .product-badges-v3 .badge,
.product-card-v3 .product-badges-v3 .badge-sale,
.product-card-v3 .product-badges-v3 .badge-new,
.product-card-v3 .product-badges-v3 .badge-wholesale,
.product-card-v3 .product-badges-v3 .badge-variant{
  position:static !important;
  inset:auto !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:0;
  max-width:100%;
  min-height:26px;
  padding:.34rem .56rem !important;
  border-radius:999px;
  font-size:.72rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.01em;
  white-space:nowrap;
  box-shadow:0 10px 22px rgba(32,22,34,.12);
  overflow:visible;
  text-overflow:clip;
}

.product-card-v3 .product-badges-v3 .badge-sale{
  order:1;
  background:linear-gradient(135deg,var(--mmx-rose,#f25ca2),var(--mmx-magenta,#c83b8f)) !important;
  color:#fff !important;
}

.product-card-v3 .product-badges-v3 .badge-new{
  order:2;
  background:rgba(255,255,255,.92) !important;
  color:var(--mmx-text,#201622) !important;
  border:1px solid rgba(242,92,162,.22);
}

.product-card-v3 .product-badges-v3 .badge-wholesale{
  order:3;
  background:linear-gradient(135deg,#f7c873,#f2b95c) !important;
  color:#201622 !important;
}

.product-card-v3 .product-badges-v3 .badge-variant{
  order:4;
  background:#1c122a !important;
  color:#fff !important;
}

.product-card-v3 .product-media-v3:focus-visible .product-badges-v3 .badge,
.product-card-v3:hover .product-badges-v3 .badge{
  box-shadow:0 12px 28px rgba(32,22,34,.18);
}

/* Quando houver muitos badges, mantém o card limpo sem cortar textos. */
@media(max-width:760px){
  .product-card-v3 .product-badges-v3{
    gap:.3rem;
  }
  .product-card-v3 .product-badges-v3 .badge{
    min-height:24px;
    padding:.31rem .5rem !important;
    font-size:.68rem;
  }
}

@media(max-width:380px){
  .product-card-v3 .product-badges-v3{
    width:calc(100% - 1.2rem);
    inset:.6rem auto auto .6rem !important;
  }
  .product-card-v3 .product-badges-v3 .badge{
    font-size:.64rem;
  }
}

