/* CLUBE BORA V7 — catálogo, carrinho e pedidos */
:root {
    --v7-green: #24d26b;
    --v7-green-dark: #0c8d43;
    --v7-bg: #07150b;
    --v7-surface: rgba(15, 35, 22, .94);
    --v7-surface-2: rgba(23, 48, 31, .92);
    --v7-border: rgba(255, 255, 255, .11);
    --v7-text: #f5fff8;
    --v7-muted: #a9bbae;
    --v7-danger: #ff6767;
    --v7-warning: #ffc857;
    --v7-shadow: 0 24px 80px rgba(0, 0, 0, .48);
}

body.v7-catalogo-ativo #barraFechamento,
body.v7-catalogo-ativo #estadoCarregamento,
body.v7-catalogo-ativo #estadoErro,
body.v7-catalogo-ativo #estadoVazio,
body.v7-catalogo-ativo #areaPromocoes {
    display: none !important;
}

body:not(.v7-catalogo-ativo) #catalogoV7 { display: none !important; }

.client-nav-v7 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 18px auto 22px;
    padding: 6px;
    border: 1px solid var(--v7-border);
    background: rgba(3, 14, 7, .72);
    border-radius: 18px;
    position: sticky;
    top: 10px;
    z-index: 35;
    backdrop-filter: blur(18px);
}

.client-nav-button-v7 {
    border: 0;
    border-radius: 13px;
    min-height: 46px;
    padding: 9px 12px;
    color: var(--v7-muted);
    background: transparent;
    font: 700 13px/1.2 Poppins, sans-serif;
    cursor: pointer;
    transition: .18s ease;
}

.client-nav-button-v7:hover,
.client-nav-button-v7.active {
    color: #fff;
    background: linear-gradient(135deg, rgba(36, 210, 107, .26), rgba(36, 210, 107, .1));
    box-shadow: inset 0 0 0 1px rgba(36, 210, 107, .33);
}

.store-status-v7 {
    margin: 12px 0;
    padding: 13px 16px;
    border-radius: 14px;
    border: 1px solid var(--v7-border);
    font-size: 13px;
    text-align: center;
    background: rgba(255, 255, 255, .06);
}
.store-status-v7.open { color: #baffd2; border-color: rgba(36, 210, 107, .35); }
.store-status-v7.closed { color: #ffe0a3; border-color: rgba(255, 200, 87, .35); }

.catalog-section-v7 { padding-bottom: 110px; }
.catalog-header-v7 {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}
.catalog-header-v7 h2 { margin: 4px 0; font-size: clamp(25px, 5vw, 38px); }
.catalog-header-v7 p { color: var(--v7-muted); max-width: 620px; margin: 0; }
.cart-button-v7 {
    min-width: 150px;
    border: 1px solid rgba(36, 210, 107, .35);
    background: rgba(36, 210, 107, .14);
    color: #fff;
    border-radius: 15px;
    padding: 13px 16px;
    font-weight: 700;
    cursor: pointer;
}
.cart-button-v7 b {
    display: inline-grid;
    place-items: center;
    min-width: 24px;
    height: 24px;
    margin-left: 5px;
    border-radius: 999px;
    background: var(--v7-green);
    color: #04210e;
}

.catalog-tools-v7 {
    display: grid;
    gap: 12px;
    padding: 14px;
    margin-bottom: 18px;
    border: 1px solid var(--v7-border);
    border-radius: 20px;
    background: rgba(10, 28, 16, .72);
}
.catalog-search-v7 {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--v7-border);
    background: rgba(0, 0, 0, .2);
    border-radius: 14px;
    padding: 0 14px;
}
.catalog-search-v7 span { font-size: 24px; color: var(--v7-green); }
.catalog-search-v7 input {
    flex: 1;
    min-width: 0;
    border: 0;
    outline: 0;
    padding: 14px 0;
    background: transparent;
    color: #fff;
    font: 500 14px Poppins, sans-serif;
}
.catalog-categories-v7 { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 3px; scrollbar-width: thin; }
.catalog-category-v7 {
    flex: 0 0 auto;
    border: 1px solid var(--v7-border);
    background: rgba(255, 255, 255, .04);
    color: var(--v7-muted);
    padding: 9px 13px;
    border-radius: 999px;
    font: 600 12px Poppins, sans-serif;
    cursor: pointer;
}
.catalog-category-v7.active { background: var(--v7-green); color: #041b0c; border-color: var(--v7-green); }
.catalog-state-v7 { min-height: 220px; display: grid; place-content: center; text-align: center; color: var(--v7-muted); }
.catalog-grid-v7 { display: grid; grid-template-columns: repeat(auto-fill, minmax(235px, 1fr)); gap: 16px; }
.product-card-v7 {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 420px;
    border: 1px solid var(--v7-border);
    border-radius: 22px;
    background: linear-gradient(155deg, rgba(26, 54, 35, .92), rgba(7, 22, 12, .96));
    box-shadow: 0 14px 36px rgba(0, 0, 0, .28);
}
.product-card-v7.is-unavailable { opacity: .62; filter: grayscale(.28); }
.product-image-v7 {
    position: relative;
    height: 190px;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: radial-gradient(circle at 50% 35%, rgba(36, 210, 107, .22), rgba(0, 0, 0, .14));
}
.product-image-v7 img { width: 100%; height: 100%; object-fit: contain; padding: 16px; }
.product-image-v7 .no-image-v7 { font-size: 64px; opacity: .45; }
.product-badges-v7 { position: absolute; left: 12px; top: 12px; display: flex; flex-wrap: wrap; gap: 6px; }
.product-badge-v7 { border-radius: 999px; padding: 6px 9px; font-size: 10px; font-weight: 800; background: rgba(5, 20, 10, .86); color: #fff; border: 1px solid rgba(255,255,255,.15); }
.product-favorite-v7 {
    position: absolute; right: 12px; top: 12px; width: 38px; height: 38px;
    border: 1px solid rgba(255,255,255,.15); border-radius: 50%; background: rgba(5,20,10,.82); color: #fff; cursor: pointer;
}
.product-favorite-v7.active { color: #ff7f9e; }
.product-content-v7 { display: flex; flex-direction: column; flex: 1; padding: 16px; }
.product-brand-v7 { color: var(--v7-green); text-transform: uppercase; font-size: 10px; letter-spacing: .12em; font-weight: 800; }
.product-content-v7 h3 { margin: 5px 0 7px; font-size: 19px; line-height: 1.22; }
.product-description-v7 { color: var(--v7-muted); font-size: 12px; line-height: 1.55; margin: 0 0 13px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.product-presentation-v7 { margin-top: auto; }
.product-presentation-v7 select {
    width: 100%; border: 1px solid var(--v7-border); border-radius: 12px; padding: 11px 12px;
    color: #fff; background: rgba(0,0,0,.22); font: 600 12px Poppins, sans-serif;
}
.product-price-v7 { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin: 13px 0; }
.product-price-v7 strong { font-size: 23px; color: #fff; }
.product-price-v7 small { color: var(--v7-muted); }
.product-add-v7 {
    width: 100%; border: 0; border-radius: 13px; padding: 13px; background: var(--v7-green); color: #03210d;
    font: 800 12px Poppins, sans-serif; cursor: pointer;
}
.product-add-v7:disabled { cursor: not-allowed; background: #4c5e51; color: #b8c3bb; }

.floating-cart-v7 {
    position: fixed; z-index: 80; left: 50%; bottom: 18px; transform: translateX(-50%);
    display: flex; align-items: center; gap: 9px; min-width: min(430px, calc(100vw - 24px));
    justify-content: center; border: 1px solid rgba(36, 210, 107, .45); border-radius: 17px;
    padding: 13px 18px; background: rgba(8, 35, 18, .96); color: #fff; box-shadow: var(--v7-shadow);
    font: 700 13px Poppins, sans-serif; backdrop-filter: blur(16px); cursor: pointer;
}
.floating-cart-v7 span { display: grid; place-items: center; min-width: 24px; height: 24px; border-radius: 999px; background: var(--v7-green); color: #04210e; }
.floating-cart-v7 strong { margin-left: auto; }

.drawer-overlay-v7,
.checkout-overlay-v7,
.age-gate-v7 {
    position: fixed; inset: 0; z-index: 5000; background: rgba(0, 0, 0, .72); backdrop-filter: blur(8px);
}
.drawer-overlay-v7 { display: flex; justify-content: flex-end; }
.cart-drawer-v7 {
    width: min(440px, 100%); height: 100%; display: flex; flex-direction: column; background: #0a1b10;
    border-left: 1px solid var(--v7-border); box-shadow: var(--v7-shadow); animation: drawerInV7 .22s ease-out;
}
@keyframes drawerInV7 { from { transform: translateX(30px); opacity: 0; } }
.cart-drawer-v7 header, .checkout-card-v7 > header, .my-orders-card-v7 > header {
    display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 20px;
    border-bottom: 1px solid var(--v7-border);
}
.cart-drawer-v7 header span, .checkout-card-v7 header span, .my-orders-card-v7 header span { color: var(--v7-green); font-size: 10px; letter-spacing: .12em; font-weight: 800; }
.cart-drawer-v7 h2, .checkout-card-v7 h2, .my-orders-card-v7 h2 { margin: 3px 0 0; }
.cart-drawer-v7 header button, .checkout-card-v7 header button, .my-orders-card-v7 header button {
    width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--v7-border); background: rgba(255,255,255,.05); color: #fff; font-size: 24px; cursor: pointer;
}
.cart-items-v7 { flex: 1; overflow-y: auto; padding: 14px 18px; }
.cart-item-v7 { display: grid; grid-template-columns: 62px 1fr auto; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--v7-border); }
.cart-item-v7 img { width: 62px; height: 62px; border-radius: 12px; object-fit: contain; background: rgba(255,255,255,.06); }
.cart-item-v7 h4 { margin: 0 0 4px; font-size: 13px; }
.cart-item-v7 p { margin: 0; color: var(--v7-muted); font-size: 11px; }
.cart-quantity-v7 { display: flex; align-items: center; gap: 7px; margin-top: 8px; }
.cart-quantity-v7 button { width: 28px; height: 28px; border: 1px solid var(--v7-border); border-radius: 8px; background: rgba(255,255,255,.06); color: #fff; cursor: pointer; }
.cart-item-price-v7 { text-align: right; font-size: 13px; font-weight: 700; }
.cart-remove-v7 { border: 0; background: transparent; color: var(--v7-danger); font-size: 11px; cursor: pointer; padding: 6px 0; }
.cart-drawer-v7 footer { padding: 18px; border-top: 1px solid var(--v7-border); background: rgba(0,0,0,.18); }
.cart-total-line-v7 { display: flex; justify-content: space-between; font-size: 18px; margin-bottom: 13px; }
.cart-drawer-v7 footer > button:first-of-type, .checkout-step-v7 > button, .checkout-nav-v7 button, .order-success-v7 a, .order-success-v7 button {
    display: block; width: 100%; border: 0; border-radius: 13px; padding: 13px 16px; background: var(--v7-green); color: #03210d; font: 800 12px Poppins, sans-serif; cursor: pointer; text-align: center; text-decoration: none;
}
.link-button-v7 { width: 100%; margin-top: 9px; border: 0; background: transparent; color: var(--v7-muted); cursor: pointer; }
.shipping-tip-v7 { margin: 0 18px 12px; padding: 12px; border-radius: 12px; background: rgba(255,200,87,.1); color: #ffe3a6; font-size: 12px; border: 1px solid rgba(255,200,87,.22); }

.checkout-overlay-v7 { display: grid; place-items: center; padding: 14px; overflow-y: auto; }
.checkout-card-v7, .my-orders-card-v7 {
    width: min(760px, 100%); max-height: calc(100vh - 28px); overflow-y: auto;
    border: 1px solid var(--v7-border); border-radius: 22px; background: #0a1b10; box-shadow: var(--v7-shadow);
}
.checkout-steps-v7 { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; padding: 12px 18px; border-bottom: 1px solid var(--v7-border); }
.checkout-steps-v7 button { border: 0; background: transparent; color: #6d7f72; padding: 9px; font: 700 11px Poppins,sans-serif; }
.checkout-steps-v7 button.active { color: var(--v7-green); }
.checkout-step-v7 { display: none; padding: 20px; }
.checkout-step-v7.active { display: block; }
.form-grid-v7 { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.checkout-step-v7 label { display: grid; gap: 7px; color: #d8e6dc; font-size: 12px; font-weight: 600; margin-bottom: 13px; }
.checkout-step-v7 input, .checkout-step-v7 textarea, .checkout-step-v7 select {
    width: 100%; border: 1px solid var(--v7-border); border-radius: 12px; background: rgba(0,0,0,.2); color: #fff; padding: 12px; font: 500 13px Poppins,sans-serif; outline: 0;
}
.checkout-step-v7 textarea { min-height: 86px; resize: vertical; }
.choice-group-v7 { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 15px; padding: 13px; border: 1px solid var(--v7-border); border-radius: 14px; }
.choice-group-v7 legend { padding: 0 7px; color: var(--v7-muted); font-size: 11px; }
.choice-group-v7 label { display: flex; align-items: center; gap: 8px; margin: 0; padding: 9px 11px; border-radius: 10px; background: rgba(255,255,255,.04); cursor: pointer; }
.choice-group-v7 input, .age-confirm-v7 input { width: auto; }
.checkout-nav-v7 { display: grid; grid-template-columns: 1fr 1.6fr; gap: 10px; margin-top: 16px; }
.secondary-v7 { background: rgba(255,255,255,.07) !important; color: #fff !important; border: 1px solid var(--v7-border) !important; }
.location-actions-v7 { display: grid; gap: 8px; text-align: center; margin-bottom: 12px; }
.location-actions-v7 button { border: 1px solid rgba(36,210,107,.35); background: rgba(36,210,107,.12); color: #d7ffe5; border-radius: 12px; padding: 12px; font-weight: 700; cursor: pointer; }
.location-actions-v7 span { color: var(--v7-muted); font-size: 11px; }
.autocomplete-host-v7 { margin-bottom: 12px; }
.autocomplete-host-v7 gmp-place-autocomplete { width: 100%; color-scheme: dark; }
.checkout-map-v7 { height: 300px; margin: 10px 0; border: 1px solid var(--v7-border); border-radius: 16px; overflow: hidden; background: #102619; }
.map-placeholder-v7 { height: 100%; display: grid; place-items: center; text-align: center; padding: 25px; color: var(--v7-muted); font-size: 12px; }
.location-help-v7 { color: var(--v7-muted); font-size: 11px; }
.checkout-summary-v7 { display: grid; gap: 9px; border: 1px solid var(--v7-border); border-radius: 16px; padding: 15px; background: rgba(0,0,0,.16); }
.summary-row-v7 { display: flex; justify-content: space-between; gap: 12px; font-size: 13px; }
.summary-row-v7.total { padding-top: 11px; border-top: 1px solid var(--v7-border); font-size: 18px; }
.summary-items-v7 { display: grid; gap: 7px; padding-bottom: 10px; border-bottom: 1px solid var(--v7-border); }
.age-confirm-v7 { display: flex !important; grid-template-columns: auto 1fr; align-items: flex-start; margin-top: 14px; color: var(--v7-muted) !important; }
.checkout-message-v7 { padding: 12px; border-radius: 12px; margin-top: 12px; background: rgba(255,103,103,.12); color: #ffd1d1; border: 1px solid rgba(255,103,103,.25); }

.age-gate-v7 { display: grid; place-items: center; padding: 18px; }
.age-card-v7 { width: min(430px,100%); padding: 28px; text-align: center; border: 1px solid var(--v7-border); border-radius: 24px; background: #0a1b10; box-shadow: var(--v7-shadow); }
.age-card-v7 img { width: 88px; height: 88px; border-radius: 22px; margin-bottom: 12px; }
.age-card-v7 > span, .order-success-v7 > span { color: var(--v7-green); font-size: 11px; letter-spacing: .15em; font-weight: 800; }
.age-card-v7 h2 { font-size: 25px; }
.age-card-v7 p { color: var(--v7-muted); }
.age-card-v7 button { width: 100%; border: 0; border-radius: 13px; padding: 13px; margin-top: 10px; background: var(--v7-green); color: #03210d; font-weight: 800; cursor: pointer; }
.order-success-v7 { width: min(480px,100%); padding: 28px; text-align: center; border: 1px solid var(--v7-border); border-radius: 24px; background: #0a1b10; box-shadow: var(--v7-shadow); }
.success-icon-v7 { width: 74px; height: 74px; margin: 0 auto 14px; display: grid; place-items: center; border-radius: 50%; background: var(--v7-green); color: #03210d; font-size: 36px; font-weight: 900; }
.order-success-v7 p { color: var(--v7-muted); }
.order-success-v7 a, .order-success-v7 button { margin-top: 10px; }
.order-success-v7 a:nth-of-type(2) { background: rgba(255,255,255,.08); color: #fff; border: 1px solid var(--v7-border); }
.my-orders-card-v7 > p { padding: 0 20px; color: var(--v7-muted); font-size: 12px; }
.my-orders-list-v7 { padding: 10px 20px 20px; display: grid; gap: 10px; }
.my-order-v7 { border: 1px solid var(--v7-border); border-radius: 15px; padding: 13px; background: rgba(255,255,255,.04); }
.my-order-v7 header { display: flex; justify-content: space-between; padding: 0; border: 0; }
.my-order-v7 p { color: var(--v7-muted); font-size: 11px; }
.my-order-actions-v7 { display: flex; flex-wrap: wrap; gap: 7px; }
.my-order-actions-v7 a, .my-order-actions-v7 button { border: 1px solid var(--v7-border); border-radius: 9px; padding: 8px 10px; background: rgba(255,255,255,.05); color: #fff; text-decoration: none; font-size: 11px; cursor: pointer; }

@media (max-width: 700px) {
    .client-nav-v7 { top: 4px; margin-inline: -4px; }
    .client-nav-button-v7 { font-size: 11px; padding-inline: 5px; }
    .catalog-header-v7 { align-items: stretch; flex-direction: column; }
    .cart-button-v7 { width: 100%; }
    .catalog-grid-v7 { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
    .product-card-v7 { min-height: 380px; border-radius: 17px; }
    .product-image-v7 { height: 145px; }
    .product-content-v7 { padding: 12px; }
    .product-content-v7 h3 { font-size: 15px; }
    .product-description-v7 { display: none; }
    .product-price-v7 strong { font-size: 18px; }
    .product-presentation-v7 select { font-size: 10px; padding: 9px 7px; }
    .form-grid-v7 { grid-template-columns: 1fr; }
    .checkout-card-v7 { max-height: 100vh; height: 100%; border-radius: 0; }
    .checkout-overlay-v7 { padding: 0; }
    .checkout-step-v7 { padding: 16px; }
    .checkout-map-v7 { height: 260px; }
}

@media (max-width: 390px) {
    .catalog-grid-v7 { grid-template-columns: 1fr; }
    .product-card-v7 { min-height: auto; }
    .product-image-v7 { height: 190px; }
    .product-description-v7 { display: -webkit-box; }
}


/* V7.1 — item único, imagem inteira e contingência sem Google Maps */
.product-image-v7{aspect-ratio:1/1;height:auto;min-height:210px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(255,255,255,.10),rgba(255,255,255,.025))}
.product-image-v7 img{display:block;width:100%!important;height:100%!important;max-width:100%;max-height:100%;object-fit:contain!important;object-position:center center!important;padding:12px!important;transform:none!important;clip-path:none!important}
.product-item-subtitle-v71{margin:0 0 8px;color:#d9f7e2;font-weight:750;font-size:13px;line-height:1.35}
.product-item-v71{margin-top:auto}
.map-fallback-v71{padding:15px;border:1px solid rgba(255,200,87,.38);border-radius:15px;background:rgba(255,200,87,.09);color:#fff4ce}
.map-fallback-v71 strong{display:block;margin-bottom:5px;color:#ffd978}
.map-fallback-v71 p{margin:5px 0;font-size:12px;line-height:1.5}
.map-fallback-reason-v71{color:#e9c98a!important;font-size:10px!important}
.summary-row-v7.pending-v71 strong{color:#ffd978}
.summary-warning-v71{padding:11px;border-radius:12px;background:rgba(255,200,87,.09);border:1px solid rgba(255,200,87,.22);color:#ffe5a3;font-size:11px;line-height:1.5}
@media(max-width:760px){.product-image-v7{min-height:160px}.product-item-subtitle-v71{font-size:11px}}


/* ========================================================================== 
   V7.2 — enquadramento individual + grade, lista e vitrine
   ========================================================================== */
.catalog-toolbar-row-v72{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.catalog-view-switch-v72{display:inline-flex;gap:5px;padding:5px;border:1px solid var(--v7-border);border-radius:14px;background:rgba(0,0,0,.18)}
.catalog-view-switch-v72 button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;border:0;border-radius:10px;padding:8px 11px;background:transparent;color:var(--v7-muted);font:700 11px Poppins,sans-serif;cursor:pointer;transition:.16s ease}
.catalog-view-switch-v72 button span{font-size:17px;line-height:1}.catalog-view-switch-v72 button.active{background:rgba(36,210,107,.2);color:#fff;box-shadow:inset 0 0 0 1px rgba(36,210,107,.38)}
.product-image-v7{aspect-ratio:1/1!important;height:auto!important;min-height:0!important;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(255,255,255,.10),rgba(255,255,255,.025))}
.product-image-open-v72{position:absolute;inset:0;width:100%;height:100%;display:grid;place-items:center;border:0;padding:0;background:transparent;cursor:zoom-in;overflow:hidden}
.product-image-open-v72 img{display:block!important;width:var(--product-image-scale,72%)!important;height:var(--product-image-scale,72%)!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;padding:0!important;transform:translate(var(--product-image-translate-x,0),var(--product-image-translate-y,0))!important;clip-path:none!important;transition:transform .18s ease,width .18s ease,height .18s ease}
.product-image-open-v72:hover img{filter:brightness(1.04)}
.product-quick-quantity-v72{width:100%;display:grid;grid-template-columns:46px 1fr 46px;align-items:center;min-height:44px;border:1px solid rgba(36,210,107,.4);border-radius:13px;overflow:hidden;background:rgba(36,210,107,.09)}
.product-quick-quantity-v72 button{height:100%;border:0;background:rgba(36,210,107,.16);color:#caffd9;font:800 21px Poppins,sans-serif;cursor:pointer}.product-quick-quantity-v72 strong{text-align:center;color:#fff;font-size:15px}
.catalog-grid-v7.view-grade-v72{grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:16px}
.catalog-grid-v7.view-vitrine-v72{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:20px}.view-vitrine-v72 .product-card-v7{min-height:500px}.view-vitrine-v72 .product-image-v7{aspect-ratio:4/3!important}.view-vitrine-v72 .product-content-v7{padding:20px}.view-vitrine-v72 .product-content-v7 h3{font-size:22px}.view-vitrine-v72 .product-description-v7{-webkit-line-clamp:4;font-size:13px}.view-vitrine-v72 .product-price-v7 strong{font-size:27px}
.catalog-grid-v7.view-lista-v72{grid-template-columns:1fr;gap:11px}.view-lista-v72 .product-card-v7{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:150px;border-radius:18px}.view-lista-v72 .product-image-v7{height:100%!important;aspect-ratio:auto!important;min-height:150px!important}.view-lista-v72 .product-content-v7{padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,280px);column-gap:18px;align-items:center}.view-lista-v72 .product-brand-v7,.view-lista-v72 .product-content-v7 h3,.view-lista-v72 .product-item-subtitle-v71,.view-lista-v72 .product-description-v7{grid-column:1}.view-lista-v72 .product-content-v7 h3{font-size:18px;margin:3px 0}.view-lista-v72 .product-description-v7{display:-webkit-box!important;-webkit-line-clamp:1;margin-bottom:0}.view-lista-v72 .product-item-v71{grid-column:2;grid-row:1/6;margin:0;align-self:center}.view-lista-v72 .product-price-v7{margin:0 0 10px}.view-lista-v72 .product-price-v7 strong{font-size:22px}
.product-lightbox-overlay-v72{position:fixed;inset:0;z-index:5200;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.82);backdrop-filter:blur(12px)}.product-lightbox-v72{position:relative;width:min(620px,100%);max-height:92vh;overflow:auto;border:1px solid var(--v7-border);border-radius:25px;background:#0a1b10;box-shadow:var(--v7-shadow)}.product-lightbox-close-v72{position:absolute;right:13px;top:13px;z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.17);background:rgba(4,15,8,.82);color:#fff;font-size:27px;cursor:pointer}.product-lightbox-image-v72{height:min(58vh,520px);display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at center,rgba(255,255,255,.12),rgba(255,255,255,.025))}.product-lightbox-image-v72 img{width:var(--product-image-scale,92%)!important;height:var(--product-image-scale,92%)!important;object-fit:contain!important;padding:0!important}.product-lightbox-copy-v72{padding:18px 22px 23px}.product-lightbox-copy-v72 span{color:var(--v7-green);font-size:10px;letter-spacing:.12em;font-weight:800;text-transform:uppercase}.product-lightbox-copy-v72 h2{margin:4px 0;font-size:24px}.product-lightbox-copy-v72 p{margin:0;color:var(--v7-muted)}.product-lightbox-copy-v72 strong{display:block;margin-top:12px;font-size:27px;color:#fff}
@media(max-width:700px){.catalog-toolbar-row-v72{grid-template-columns:1fr}.catalog-view-switch-v72{width:100%}.catalog-view-switch-v72 button{flex:1}.catalog-grid-v7.view-grade-v72{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.view-grade-v72 .product-card-v7{min-height:350px}.view-grade-v72 .product-content-v7{padding:11px}.view-grade-v72 .product-content-v7 h3{font-size:14px}.view-grade-v72 .product-item-subtitle-v71{font-size:10px}.view-grade-v72 .product-price-v7{display:grid;gap:1px}.view-grade-v72 .product-price-v7 strong{font-size:17px}.view-grade-v72 .product-add-v7{padding:11px 6px;font-size:10px}.view-grade-v72 .product-quick-quantity-v72{grid-template-columns:38px 1fr 38px}.catalog-grid-v7.view-vitrine-v72{grid-template-columns:1fr}.view-vitrine-v72 .product-card-v7{min-height:auto}.view-lista-v72 .product-card-v7{grid-template-columns:105px minmax(0,1fr);min-height:132px}.view-lista-v72 .product-image-v7{min-height:132px!important}.view-lista-v72 .product-content-v7{display:flex;padding:11px 12px}.view-lista-v72 .product-brand-v7{font-size:8px}.view-lista-v72 .product-content-v7 h3{font-size:14px;margin:2px 0}.view-lista-v72 .product-item-subtitle-v71{font-size:10px;margin-bottom:3px}.view-lista-v72 .product-description-v7{display:none!important}.view-lista-v72 .product-item-v71{width:100%;margin-top:auto}.view-lista-v72 .product-price-v7{margin:4px 0 7px}.view-lista-v72 .product-price-v7 strong{font-size:17px}.view-lista-v72 .product-price-v7 small{font-size:9px}.view-lista-v72 .product-add-v7{padding:9px;font-size:9px}.view-lista-v72 .product-quick-quantity-v72{min-height:36px;grid-template-columns:34px 1fr 34px}.product-badges-v7{left:7px;top:7px}.product-badge-v7{padding:4px 6px;font-size:8px}.product-favorite-v7{right:7px;top:7px;width:34px;height:34px}.product-lightbox-copy-v72 h2{font-size:20px}}
@media(max-width:370px){.catalog-grid-v7.view-grade-v72{grid-template-columns:1fr}.view-grade-v72 .product-card-v7{min-height:auto}}

/* ======================================================================
   V7.3 — PROMOÇÕES INTEGRADAS AO CATÁLOGO E AO PEDIDO
====================================================================== */
.product-promo-v73 {
    margin: 10px 0 12px;
    padding: 10px;
    display: grid;
    gap: 4px;
    border: 1px solid rgba(255, 193, 7, .28);
    border-radius: 13px;
    background: rgba(255, 193, 7, .08);
}
.product-promo-v73.is-applied {
    border-color: rgba(0, 230, 118, .32);
    background: rgba(0, 230, 118, .08);
}
.product-promo-v73 > span {
    color: #ffd666;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .6px;
}
.product-promo-v73.is-applied > span { color: #58ef9a; }
.product-promo-v73 > strong { color: #fff; font-size: 14px; line-height: 1.25; }
.product-promo-v73 > small { color: #cdd8d1; font-size: 11px; }
.product-promo-v73 button,
.btn-ver-catalogo-v73 {
    margin-top: 5px;
    min-height: 34px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 10px;
    background: rgba(255,255,255,.08);
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    cursor: pointer;
}
.btn-ver-catalogo-v73 {
    width: 100%;
    margin-top: 9px;
    padding: 10px 12px;
}
.product-price-v7.has-promo-v73 del {
    display: block;
    color: #9eaaa2;
    font-size: 11px;
    text-decoration-thickness: 1.5px;
}
.product-price-v7.has-promo-v73 strong { color: #58ef9a; }
.cart-coupons-v73 {
    margin: 0 18px 12px;
    display: grid;
    gap: 8px;
}
.cart-coupon-v73 {
    padding: 11px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border: 1px solid rgba(0,230,118,.25);
    border-radius: 13px;
    background: rgba(0,230,118,.07);
}
.cart-coupon-v73 strong,
.cart-coupon-v73 small { display: block; }
.cart-coupon-v73 strong { color: #58ef9a; font-size: 11px; }
.cart-coupon-v73 small { margin-top: 3px; color: #cdd8d1; font-size: 10px; }
.cart-coupon-v73 button {
    border: 0;
    background: transparent;
    color: #ff8585;
    font-size: 9px;
    font-weight: 900;
    cursor: pointer;
}
.cart-total-line-v7.discount-v73 strong,
.summary-row-v7.discount-v73 strong { color: #58ef9a; }
.cart-total-line-v7.total-v73 { padding-top: 10px; border-top: 1px solid rgba(255,255,255,.09); }
.cart-item-promo-v73 {
    display: block;
    margin-top: 4px;
    color: #58ef9a;
    font-size: 10px;
    font-weight: 800;
}
.cart-item-price-v7 del,
.summary-product-v73 del {
    display: block;
    color: #8f9a93;
    font-size: 10px;
    font-weight: 500;
}
.cart-item-price-v7 strong { display: block; color: #58ef9a; }
.summary-product-v73 {
    padding: 10px 0;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    border-bottom: 1px solid rgba(255,255,255,.06);
}
.summary-product-v73 > div { min-width: 0; }
.summary-product-v73 span { color: #e8eee9; font-size: 12px; line-height: 1.35; }
.summary-product-v73 small { display: block; margin-top: 3px; color: #58ef9a; font-size: 10px; }
.summary-product-v73 > strong { flex: 0 0 auto; color: #fff; font-size: 12px; text-align: right; }
.checkout-discounts-v73 {
    margin: 12px 0;
    padding: 12px;
    border: 1px solid rgba(0,230,118,.22);
    border-radius: 14px;
    background: rgba(0,230,118,.06);
}
.checkout-discounts-v73 h4 { margin: 0 0 8px; color: #58ef9a; font-size: 11px; text-transform: uppercase; }
.checkout-discounts-v73 > div { display: flex; justify-content: space-between; gap: 12px; color: #dce5df; font-size: 11px; }
.checkout-discounts-v73 > div + div { margin-top: 6px; }
.checkout-discounts-v73 strong { color: #58ef9a; }
.checkout-savings-v73,
.shipping-next-v73 {
    margin-top: 12px;
    padding: 12px 13px;
    border-radius: 13px;
    font-size: 11px;
    line-height: 1.5;
}
.checkout-savings-v73 {
    border: 1px solid rgba(0,230,118,.24);
    background: rgba(0,230,118,.07);
    color: #dff9e9;
    text-align: center;
}
.shipping-next-v73 {
    border: 1px solid rgba(255,193,7,.22);
    background: rgba(255,193,7,.07);
    color: #f3ead1;
}
.promo-focus-v73 { animation: promoFocusV73 2.2s ease; }
@keyframes promoFocusV73 {
    0%,100% { box-shadow: var(--sombra, 0 12px 35px rgba(0,0,0,.25)); }
    25%,70% { box-shadow: 0 0 0 3px rgba(0,230,118,.65), 0 18px 45px rgba(0,230,118,.18); }
}
@media (max-width: 520px) {
    .product-promo-v73 { padding: 8px; }
    .product-promo-v73 > strong { font-size: 12px; }
    .cart-coupon-v73 { align-items: flex-start; }
}
.promo-automatic-note-v73 { margin:8px 0 3px; color:#58ef9a; font-size:10px; font-weight:800; text-align:center; }


/* V7.3.1 — condições de promoções */
.promo-conditions-v731,
.promo-conditions-page-v731{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:8px;
}
.promo-conditions-v731 span,
.promo-conditions-page-v731 span{
    display:inline-flex;
    align-items:center;
    padding:5px 8px;
    border:1px solid rgba(255,193,7,.28);
    border-radius:999px;
    background:rgba(255,193,7,.09);
    color:#ffe39a;
    font-size:10px;
    font-weight:800;
    line-height:1.2;
}
.cart-item-condition-v731{
    display:block;
    margin-top:6px;
    color:#ffd77a;
    font-size:11px;
    font-weight:700;
    line-height:1.4;
}

.summary-info-v731{margin:10px 0;padding:12px 14px;border:1px solid rgba(70,160,255,.22);border-radius:13px;background:rgba(70,160,255,.08);color:#dcecff;font-size:12px;line-height:1.55}.summary-info-v731 strong{color:#fff}


/* V7.3.5 — preferência de item indisponível e ações de promoção */
.unavailable-choice-v735 label{align-items:flex-start}.unavailable-choice-v735 label span{display:flex;flex-direction:column;gap:2px}.unavailable-choice-v735 label small{color:#aeb9b2;font-size:10px;line-height:1.35}.restriction-actions-v735{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.restriction-actions-v735 button{flex:1;min-width:165px;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.10);color:#fff;font-size:10px;font-weight:800}.restriction-actions-v735 button:first-child{background:#00a846}


/* V7.3.6 */
.continue-no-discount-v736{background:transparent!important;border:1px solid rgba(255,255,255,.3)!important;color:#fff!important}

/* V7.3.7 — endereço do mapa e dados informados em blocos separados */
.checkout-step-v7 label > small{
    display:block;
    margin-top:6px;
    color:var(--v7-muted, #aab4ad);
    font-size:10px;
    line-height:1.45;
}
.checkout-address-summary-v737{
    display:grid;
    gap:10px;
    margin:12px 0;
}
.checkout-address-summary-v737>div{
    padding:12px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:14px;
    background:rgba(255,255,255,.035);
}
.checkout-address-summary-v737 span{
    display:block;
    margin-bottom:5px;
    color:var(--v7-green, #24d26b);
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.checkout-address-summary-v737 strong,
.checkout-address-summary-v737 small{
    display:block;
    color:#fff;
    line-height:1.55;
}
.checkout-address-summary-v737 small{font-size:11px}
.checkout-address-summary-v737 small b{color:#cbd4cd}

/* ======================================================================
   V7.3.8 — catálogo como página principal, largura para PC e grade ajustável
====================================================================== */
body.v7-catalogo-ativo .container {
    max-width: 1840px;
    padding-left: clamp(14px, 2.2vw, 38px);
    padding-right: clamp(14px, 2.2vw, 38px);
}

body.v7-catalogo-ativo .client-nav-v7 {
    width: min(760px, 100%);
}

.catalog-display-controls-v738 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    min-width: 0;
}

.catalog-columns-control-v738 {
    display: inline-grid;
    grid-template-columns: 40px minmax(82px, auto) 40px;
    align-items: center;
    min-height: 52px;
    padding: 5px;
    border: 1px solid var(--v7-border);
    border-radius: 14px;
    background: rgba(0, 0, 0, .18);
}

.catalog-columns-control-v738 button {
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 10px;
    background: rgba(36, 210, 107, .14);
    color: #fff;
    font: 800 22px/1 Poppins, sans-serif;
    cursor: pointer;
}

.catalog-columns-control-v738 button:disabled {
    opacity: .35;
    cursor: not-allowed;
}

.catalog-columns-control-v738 strong {
    padding: 0 8px;
    color: var(--v7-muted);
    text-align: center;
    white-space: nowrap;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.catalog-grid-v7.view-grade-v72 {
    grid-template-columns: repeat(var(--catalog-grid-columns, 8), minmax(0, 1fr));
    gap: clamp(8px, 1vw, 16px);
}

.catalog-grid-v7,
.product-card-v7,
.product-content-v7,
.product-item-v71,
.product-promo-v73,
.product-price-v7 {
    min-width: 0;
}

.product-content-v7 h3,
.product-description-v7,
.product-presentation-v7,
.product-promo-v73 strong,
.product-promo-v73 small {
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Grade compacta para 6 ou mais colunas no computador. */
.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-card-v7,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-card-v7,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-card-v7,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-card-v7 {
    min-height: 0;
    border-radius: 17px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-content-v7,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-content-v7,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-content-v7,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-content-v7 {
    padding: 11px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-content-v7 h3,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-content-v7 h3,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-content-v7 h3,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-content-v7 h3 {
    margin: 4px 0 5px;
    font-size: 14px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-description-v7,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-description-v7,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-description-v7,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-description-v7 {
    font-size: 9px;
    line-height: 1.4;
    -webkit-line-clamp: 2;
    margin-bottom: 7px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-presentation-v7,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-presentation-v7,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-presentation-v7,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-presentation-v7 {
    font-size: 9px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-promo-v73,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-promo-v73,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-promo-v73,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-promo-v73 {
    margin: 7px 0 8px;
    padding: 7px;
    border-radius: 10px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-promo-v73 > span,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-promo-v73 > span,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-promo-v73 > span,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-promo-v73 > span {
    font-size: 7px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-promo-v73 > strong,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-promo-v73 > strong,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-promo-v73 > strong,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-promo-v73 > strong {
    font-size: 10px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-promo-v73 > small,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-promo-v73 > small,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-promo-v73 > small,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-promo-v73 > small {
    font-size: 8px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-promo-v73 button,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-promo-v73 button,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-promo-v73 button,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-promo-v73 button {
    min-height: 29px;
    padding: 6px 4px;
    font-size: 7px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-price-v7,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-price-v7,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-price-v7,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-price-v7 {
    display: grid;
    gap: 1px;
    margin: 7px 0;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-price-v7 strong,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-price-v7 strong,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-price-v7 strong,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-price-v7 strong {
    font-size: 17px;
}

.catalog-grid-v7.view-grade-v72[data-columns="6"] .product-quick-quantity-v72,
.catalog-grid-v7.view-grade-v72[data-columns="8"] .product-quick-quantity-v72,
.catalog-grid-v7.view-grade-v72[data-columns="10"] .product-quick-quantity-v72,
.catalog-grid-v7.view-grade-v72[data-columns="12"] .product-quick-quantity-v72 {
    grid-template-columns: 34px minmax(0, 1fr) 34px;
    min-height: 38px;
}

/* A lista usa toda a largura e nunca deixa textos/ações escaparem do card. */
.catalog-grid-v7.view-lista-v72 {
    width: 100%;
    min-width: 0;
}

.view-lista-v72 .product-card-v7 {
    width: 100%;
    min-width: 0;
    grid-template-columns: clamp(135px, 15vw, 190px) minmax(0, 1fr);
}

.view-lista-v72 .product-content-v7 {
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) minmax(190px, 270px);
    grid-template-rows: auto auto auto auto auto;
}

.view-lista-v72 .product-brand-v7,
.view-lista-v72 .product-content-v7 h3,
.view-lista-v72 .product-presentation-v7,
.view-lista-v72 .product-description-v7,
.view-lista-v72 .product-promo-v73 {
    grid-column: 1;
    min-width: 0;
}

.view-lista-v72 .product-item-v71 {
    grid-column: 2;
    grid-row: 1 / span 6;
    width: 100%;
    max-width: 270px;
    min-width: 0;
    justify-self: end;
}

.view-lista-v72 .product-promo-v73 {
    margin: 7px 0 0;
}

.view-lista-v72 .product-price-v7 {
    flex-wrap: wrap;
}

@media (max-width: 1100px) {
    body.v7-catalogo-ativo .container {
        max-width: 100%;
    }

    .catalog-toolbar-row-v72 {
        grid-template-columns: 1fr;
    }

    .catalog-display-controls-v738 {
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .view-lista-v72 .product-content-v7 {
        grid-template-columns: minmax(0, 1fr) minmax(175px, 225px);
    }
}

@media (max-width: 850px) {
    .view-lista-v72 .product-content-v7 {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .view-lista-v72 .product-item-v71 {
        width: 100%;
        max-width: none;
        margin-top: auto;
    }
}

@media (max-width: 700px) {
    body.v7-catalogo-ativo .container {
        padding-left: 10px;
        padding-right: 10px;
    }

    .catalog-display-controls-v738,
    .catalog-view-switch-v72,
    .catalog-columns-control-v738 {
        width: 100%;
    }

    .catalog-display-controls-v738 {
        display: grid;
        grid-template-columns: 1fr;
    }

    .catalog-columns-control-v738 {
        grid-template-columns: 42px 1fr 42px;
    }

    .catalog-grid-v7.view-grade-v72 {
        grid-template-columns: repeat(var(--catalog-grid-columns, 2), minmax(0, 1fr));
        gap: 9px;
    }

    .view-lista-v72 .product-presentation-v7 {
        font-size: 10px;
        margin-bottom: 3px;
    }
}

/* Quatro colunas no celular viram cartões compactos, mas continuam utilizáveis. */
.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] {
    gap: 6px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-card-v7 {
    min-height: 0;
    border-radius: 12px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-content-v7 {
    padding: 6px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-brand-v7 {
    font-size: 6px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-content-v7 h3 {
    margin: 2px 0 4px;
    font-size: 9px;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-presentation-v7,
.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-description-v7,
.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-promo-v73 > small,
.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-promo-conditions-v731 {
    display: none !important;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-promo-v73 {
    margin: 4px 0;
    padding: 4px;
    gap: 2px;
    border-radius: 7px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-promo-v73 > span {
    font-size: 5px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-promo-v73 > strong {
    font-size: 7px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-promo-v73 button {
    min-height: 23px;
    margin-top: 2px;
    padding: 3px 2px;
    font-size: 5px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-price-v7 {
    display: grid;
    gap: 0;
    margin: 4px 0;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-price-v7 strong {
    font-size: 11px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-price-v7 small,
.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-price-v7 del {
    font-size: 6px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-quick-quantity-v72 {
    grid-template-columns: 23px minmax(0, 1fr) 23px;
    min-height: 29px;
    border-radius: 8px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-quick-quantity-v72 button {
    font-size: 14px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-quick-quantity-v72 strong {
    font-size: 10px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .favorite-product-v7 {
    width: 25px;
    height: 25px;
    right: 4px;
    top: 4px;
    font-size: 12px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-badges-v7 {
    left: 4px;
    top: 4px;
}

.catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-badges-v7 span {
    padding: 2px 3px;
    font-size: 5px;
}

@media (max-width: 700px) {
    .view-lista-v72 .product-card-v7 {
        grid-template-columns: 105px minmax(0, 1fr);
    }
}


/* ============================================================================
   V7.3.9 — ordem original das abas + miniaturas transparentes no celular
   ========================================================================== */
.product-image-open-v72 {
    -webkit-appearance: none !important;
    appearance: none !important;
    -webkit-tap-highlight-color: transparent;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    outline: 0;
}

.product-image-open-v72:focus,
.product-image-open-v72:focus-visible,
.product-image-open-v72:active {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    outline: 0;
}

.catalog-product-image-v739 {
    display: block !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    opacity: 0;
    transition: opacity .16s ease, transform .18s ease, width .18s ease, height .18s ease !important;
}

.catalog-product-image-v739.is-loaded {
    opacity: 1;
}

@media (max-width: 700px) {
    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"] .product-image-v7,
    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"] .product-image-open-v72,
    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"] .catalog-product-image-v739 {
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
    }

    /* Mantém o fundo escuro do card, sem criar uma placa clara por trás da miniatura. */
    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"] .product-image-v7 {
        background: radial-gradient(circle at center, rgba(36,210,107,.13), rgba(0,0,0,.12)) !important;
    }
}


/* ============================================================================
   V7.3.10 — favorito corretamente sobreposto nas grades compactas
   O HTML usa .favorite-product-v7. Sem esta regra, o navegador renderiza um
   botão branco nativo no centro da imagem, especialmente em 4 colunas.
   ========================================================================== */
.favorite-product-v7,
.product-favorite-v7 {
    position: absolute !important;
    z-index: 6;
    top: 12px;
    right: 12px;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    -webkit-appearance: none !important;
    appearance: none !important;
    background: rgba(5, 20, 10, .82) !important;
    background-image: none !important;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .24) !important;
    color: #fff;
    font: 700 20px/1 Arial, sans-serif;
    text-align: center;
    cursor: pointer;
    overflow: hidden;
    -webkit-tap-highlight-color: transparent;
}

.favorite-product-v7:hover,
.favorite-product-v7:focus,
.favorite-product-v7:focus-visible,
.favorite-product-v7:active,
.product-favorite-v7:hover,
.product-favorite-v7:focus,
.product-favorite-v7:focus-visible,
.product-favorite-v7:active {
    background: rgba(5, 20, 10, .94) !important;
    background-image: none !important;
    outline: 0;
}

.favorite-product-v7.active,
.product-favorite-v7.active {
    color: #ff7f9e;
}

.product-image-v7 .product-image-open-v72 {
    z-index: 1;
}

.product-image-v7 .product-badges-v7 {
    z-index: 5;
}

@media (max-width: 700px) {
    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"] .favorite-product-v7,
    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"] .product-favorite-v7 {
        top: 7px;
        right: 7px;
        width: 31px;
        height: 31px;
        font-size: 16px;
    }

    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .favorite-product-v7,
    .catalog-grid-v7.view-grade-v72[data-grid-profile="mobile"][data-columns="4"] .product-favorite-v7 {
        top: 4px;
        right: 4px;
        width: 23px;
        height: 23px;
        border-width: 1px;
        font-size: 12px;
        box-shadow: 0 3px 8px rgba(0, 0, 0, .22) !important;
    }
}


/* ======================================================================
   V7.3.11 — marcador da distribuidora e prévia da rota
====================================================================== */
.checkout-map-v7 {
    scroll-margin-top: 92px;
}
.map-shortcuts-v7311 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 8px 0 10px;
}
.map-shortcuts-v7311 button {
    flex: 1 1 145px;
    min-height: 40px;
    padding: 9px 11px;
    font-size: 10px;
    font-weight: 800;
}
.route-summary-v7311 {
    display: grid;
    gap: 5px;
    margin: 10px 0 12px;
    padding: 13px 14px;
    border: 1px solid rgba(25, 200, 100, .34);
    border-radius: 14px;
    background: rgba(25, 200, 100, .08);
    color: #e9fff1;
}
.route-summary-v7311 strong {
    color: #58ef9a;
    font-size: 11px;
    letter-spacing: .08em;
}
.route-summary-v7311 span {
    font-size: 12px;
    line-height: 1.45;
}
.route-summary-v7311 span b {
    color: #fff;
}
.route-summary-v7311 small,
.route-time-note-v7311 {
    color: #b9c8be;
    font-size: 10px;
    line-height: 1.45;
}
.route-time-note-v7311 {
    margin: -3px 0 10px;
    padding: 0 2px;
}
.store-map-info-v7311 {
    min-width: 190px;
    color: #172019;
    font-family: Poppins, Arial, sans-serif;
    font-size: 12px;
    line-height: 1.45;
}
.store-map-info-v7311 strong {
    color: #0a5a2a;
}
.store-map-info-v7311 small,
.store-map-info-v7311 span {
    color: #4c5a50;
}
@media (max-width: 520px) {
    .map-shortcuts-v7311 {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .map-shortcuts-v7311 button {
        min-width: 0;
    }
    .map-shortcuts-v7311 #btnVerRotaV7311 {
        grid-column: 1 / -1;
    }
}

/* ============================================================================
   V7.3.12 — favoritos úteis, maioridade somente no pedido e imagem ajustada
   ========================================================================== */
.favorite-filter-v7312 {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
}
.favorite-filter-v7312 b {
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    display: inline-grid;
    place-items: center;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    font-size: 10px;
}
.favorite-filter-v7312.active b {
    background: rgba(0,0,0,.22);
}
.favorite-toast-v7312 {
    position: fixed;
    z-index: 9000;
    left: 50%;
    bottom: 92px;
    transform: translate(-50%, 20px);
    max-width: min(420px, calc(100vw - 28px));
    padding: 11px 16px;
    border: 1px solid rgba(36,210,107,.42);
    border-radius: 999px;
    background: rgba(5,25,12,.96);
    color: #eafff0;
    box-shadow: 0 16px 38px rgba(0,0,0,.38);
    font-size: 12px;
    font-weight: 800;
    text-align: center;
    opacity: 0;
    pointer-events: none;
    transition: .18s ease;
}
.favorite-toast-v7312.show {
    opacity: 1;
    transform: translate(-50%, 0);
}
.age-order-only-v7312 {
    margin-top: 14px;
    padding: 14px;
    border: 1px solid rgba(255,196,87,.32);
    border-radius: 14px;
    background: rgba(255,196,87,.08);
}
.age-order-only-v7312 > strong {
    display: block;
    margin-bottom: 8px;
    color: #ffe19c;
    font-size: 12px;
    line-height: 1.45;
}
.age-order-only-v7312 .age-confirm-v7 {
    margin-top: 0;
}
.product-image-v7[style*="--product-image-scale:100%"] .catalog-product-image-v739 {
    padding: 0 !important;
}
@media (max-width: 700px) {
    .favorite-toast-v7312 { bottom: 78px; }
}


/* V8.0.5 — mensagens de regras de entrega e validação de troco */
.field-error-v805{display:block;margin-top:7px;padding:9px 11px;border-radius:10px;background:#fff2f2;color:#8e1717;font-size:.78rem;font-weight:700;line-height:1.4}
.field-error-v805.success-v805{background:#ecfff1;color:#17642e}
.field-error-v805.hidden{display:none}
.delivery-rule-message-v805{margin:14px 0;padding:16px;border:1px solid #e7a53d;border-radius:15px;background:#fff7e8;color:#402500;line-height:1.5}
.delivery-rule-message-v805>strong{display:block;font-size:.88rem;letter-spacing:.03em}
.delivery-rule-message-v805 p{margin:8px 0 12px}
.delivery-rule-message-v805>div{display:flex;gap:8px;flex-wrap:wrap}
.delivery-rule-message-v805 button{flex:1;min-width:160px}
.delivery-rule-message-v805.hidden{display:none}
#campoTrocoV7[aria-invalid="true"],#checkoutTrocoV7[aria-invalid="true"]{border-color:#b51f1f;box-shadow:0 0 0 3px rgba(181,31,31,.12)}
