/* Shared miniature only. Grid, section order and carousel sizing remain owned by their containers. */
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card.card-producto {
 --mqv-card-accent:#0045b4; background:#fff; border:0; border-radius:12px; padding:10px; position:relative; overflow:visible; text-align:left!important; box-shadow:none!important;
}
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-miniature { height:100%; display:flex; flex-direction:column; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-miniature > a { display:block; position:relative; width:100%; aspect-ratio:1; background:#fff; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-img-top { width:100%; height:100%; object-fit:contain; aspect-ratio:1; padding:0; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-body { padding:10px 2px 0; height:auto!important; min-height:0!important; text-align:left; flex:none; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .manufacturer-title { background:transparent!important; border:0!important; padding:0!important; margin:0 0 4px; font-size:11px; line-height:16px; color:#70675f; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .manufacturer-title a { color:inherit; background:transparent!important; padding:0!important; border:0!important; transition:color .25s; text-underline-offset:3px; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .manufacturer-title a:is(:hover,:focus-visible) { color:var(--mqv-card-accent); text-decoration:underline; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-title { font-size:13px; line-height:19px; min-height:38px!important; margin:0 0 5px; display:-webkit-box!important; height:auto!important; max-height:38px; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-transform:none; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-title a { color:#1a1a1a; text-transform:none!important; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .rowFlags { position:absolute; top:10px; left:10px; z-index:2; margin:0; display:flex; flex-direction:column; align-items:flex-start; gap:5px; pointer-events:none; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .miniature-flag { position:static; min-height:0; border-radius:5px; padding:4px 7px!important; font-size:11px; line-height:14px; font-weight:700; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-new { background:#202020!important; color:#fff; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-discount { background:#df1250!important; color:#fff; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-category-price-row { display:flex; align-items:baseline; flex-wrap:wrap; justify-content:space-between; gap:3px; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .prices { display:flex; align-items:baseline; gap:7px; margin:4px 0; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-price { color:#1a1a1a; font-size:18px; font-weight:800; line-height:21px; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .old-price { color:#70675f; font-size:12px; text-decoration:line-through; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-card-saving { font-size:12px; line-height:18px; color:#1a1a1a; margin:0 0 4px; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-category-rating { font-size:12px; color:#db7500; white-space:nowrap; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-category-rating strong,:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-category-rating small { color:#444; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-category-rating--empty { font-size:11px; color:#70675f; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .estimatedDeliveryBlock:empty { display:none; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-miniature > form { margin-top:auto; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-footer { padding:0 2px; background:transparent; border:0; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .form-group { margin:0 0 6px; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .form-group:not(:has(select)) { display:none; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .select-cantidad { width:100%; min-height:38px; border:1px solid #cfc8c0; border-radius:10px; background:transparent; color:#1a1a1a; font-size:13px; cursor:pointer; transition:border-color .5s,background-color .25s; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-supplement-quantity { display:flex; align-items:center; border:1px solid #cfc8c0; border-radius:10px; height:40px; margin:0 0 6px; padding:0; gap:0; font-size:12px; color:#70675f; transition:border-color .25s; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-supplement-quantity > span { flex:1; padding:0 10px; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-supplement-qty { width:30px; min-width:0; margin:0; padding:0; border:0; background:transparent; text-align:center; color:#1a1a1a; appearance:textfield; -moz-appearance:textfield; }
.mqv-catalog-card .mqv-supplement-qty::-webkit-inner-spin-button,.mqv-catalog-card .mqv-supplement-qty::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-quantity-step { width:28px; min-width:28px; height:36px; padding:0; background:transparent; color:#1a1a1a; border:0; font-size:18px; cursor:pointer; transition:background-color .25s,color .25s; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-quantity-step:disabled { color:#cfc7bf; cursor:default; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .select-cantidad:disabled { opacity:.55; cursor:wait; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-card-favorite { position:absolute; top:10px; right:10px; z-index:3; display:flex; align-items:center; justify-content:center; width:34px; height:34px; padding:0; border:1px solid #e4ded8; border-radius:50%; color:#6e635c; background:#fff; cursor:pointer; transition:background-color .25s,color .25s,border-color .25s; }
.mqv-card-favorite svg { fill:none; stroke:currentColor; stroke-width:1.7; }
.mqv-card-favorite[aria-pressed=true] svg { fill:currentColor; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-card-favorite[aria-pressed=true] { color:var(--mqv-card-accent); }
.mqv-card-favorite[aria-busy=true] { cursor:wait!important; }
.mqv-card-favorite[aria-busy=true] svg { opacity:.3; }
.mqv-card-favorite[aria-busy=true]::after { content:''; position:absolute; width:18px; height:18px; border:2px solid #bbb; border-top-color:var(--mqv-card-accent); border-radius:50%; animation:mqv-card-spin .65s linear infinite; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) :is(.mqv-catalog-card .add-to-cart,.mqv-pack-card-action .mqv-pack-configure) { display:flex; align-items:center; justify-content:center; gap:7px; width:100%; min-height:44px; padding:10px; background:var(--mqv-card-accent); color:#fff; border:0; border-radius:24px; box-shadow:none!important; font-size:13px; font-weight:700; text-transform:none; transition:background-color .18s; }
.mqv-catalog-card .mqv-card-status { font-size:12px; line-height:18px; margin:4px 0; color:#6e3421; }
.mqv-catalog-card .mqv-card-status:empty { display:none; }
.mqv-catalog-card .mqv-card-status button { background:transparent; border:0; color:#0045b4; text-decoration:underline; cursor:pointer; }
.mqv-catalog-card[aria-busy=true] .card-img-top { opacity:.6; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card :is(a,button,input,select):focus-visible { outline:2px solid #1b1614; outline-offset:3px; transition:none; }
@media(hover:hover) {
 :is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-card-favorite:hover { color:#1a1a1a; background:#e0e0e0; border-color:#1a1a1a; }
 :is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-quantity-step:not(:disabled):hover { background:transparent; }
 :is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .select-cantidad:hover { border-color:#cfc8c0; }
 :is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) :is(.mqv-catalog-card .add-to-cart,.mqv-pack-card-action .mqv-pack-configure):hover { background:#003887; }
}
@media(max-width:767px) {
 :is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-title { font-size:12px; line-height:17px; min-height:34px!important; max-height:34px; }
 :is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-price { font-size:16px; }
 .mqv-catalog-card [data-mqv-cart-label] { font-size:0; }
 .mqv-catalog-card [data-mqv-cart-label]::after { content:attr(data-short-label); font-size:13px; }
}
@keyframes mqv-card-spin { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .mqv-catalog-card * { transition:none!important; animation:none!important; } }

:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-quantity-step:focus-visible { background:#f5f2ef; color:#3e3e3e; }

/* Row-local zone sizes are measured after native content/selection changes. */
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-title { display:block!important; height:auto!important; min-height:0!important; max-height:none!important; overflow:visible; -webkit-line-clamp:unset; }
.mqv-catalog-card .mqv-card-quantity-empty { margin:0 0 6px; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .prices { flex-wrap:wrap; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .estimatedDeliveryBlock { font-size:11px; line-height:16px; color:#315278; margin:4px 0 8px; display:block!important; letter-spacing:normal; }
.mqv-catalog-card .estimatedDeliveryBlock .estimateddelivery { margin:0!important; padding:0!important; border:0!important; width:100%; background:transparent!important; }
.mqv-catalog-card .estimatedDeliveryBlock .ed_item { background:transparent!important; border:0!important; padding:0!important; display:flex; align-items:center; gap:5px; }
.mqv-catalog-card .estimatedDeliveryBlock .ed_orderbefore { margin:0!important; font-size:11px!important; line-height:16px!important; }
.mqv-catalog-card .estimatedDeliveryBlock svg { flex:none; width:var(--mqv-card-delivery-icon-size,15px); height:var(--mqv-card-delivery-icon-size,15px); fill:none; stroke:var(--mqv-card-accent,#0045b4); stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.mqv-catalog-card .estimatedDeliveryBlock button { border:0; background:none; padding:0; text-decoration:underline; color:#0045b4; cursor:pointer; }
.mqv-catalog-card .estimatedDeliveryBlock[aria-busy=true] { opacity:.65; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-footer > .form-group { margin:0 0 6px!important; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-card-actions > :is(button,a) { margin:0; }

:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-card-brand-empty { display:block!important; }
.mqv-catalog-card .estimatedDeliveryBlock :is(.date_blue,.date_green) { color:var(--mqv-card-accent)!important; font-weight:600; }
.mqv-catalog-card .estimatedDeliveryBlock .svg-camion-estimated-delivery { fill:currentColor!important; }
/* The legacy theme also clamps the link itself; retain complete names in every row. */
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-title a { display:block!important; height:auto!important; min-height:0!important; max-height:none!important; overflow:visible!important; white-space:normal!important; text-overflow:clip!important; -webkit-line-clamp:unset!important; }
/* Stock uses native quantity/allow_oosp; no delivery node or delivery reservation on sold-out cards. */
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-stock-flag { background:#fff;color:#1a1a1a;border:1px solid #007bff30; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-body { display:flex;flex-direction:column;flex:1 1 auto!important; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .card-body>form { margin-top:0; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .mqv-card-functional { margin-top:auto; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-catalog-card .product-miniature { flex:1; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-stock-notify { display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #cfc8c0!important;border-radius:999px!important;background:#fff!important;color:#0045b4!important;min-height:32px;width:auto;padding:5px 12px;font-family:inherit;font-size:13px;line-height:20px;font-weight:600;cursor:pointer;transition:background .25s,border-color .25s; }
:is(body:is(#index,#category,#manufacturer,#new-products,#product),body.mqv-search-listing,#mqv-search-panel) .mqv-stock-notify:hover { border-color:#0045b4!important;background:#edf3ff!important; }
.mqv-stock-sheet[hidden],.mqv-stock-shade[hidden] { display:none!important; }
.mqv-stock-shade { position:fixed;inset:0;z-index:1090;background:rgba(20,16,14,.46);transition:opacity .32s cubic-bezier(.2,.8,.2,1);animation:mqv-stock-dim .32s cubic-bezier(.2,.8,.2,1); }
.mqv-stock-sheet { position:fixed;right:24px;bottom:24px;width:420px;max-width:calc(100% - 48px);max-height:calc(100vh - 48px);overflow:auto;overscroll-behavior:contain;z-index:1091;background:#fff;color:#1a1a1a;border-radius:18px;box-shadow:0 -12px 40px -16px rgba(27,22,20,.4);font:14px/1.6 Poppins,sans-serif;animation:mqv-stock-appear .32s cubic-bezier(.2,.8,.2,1);transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .32s; }
.mqv-stock-grip { width:36px;height:4px;background:#007bff30;border-radius:4px;margin:8px auto 10px; }
.mqv-stock-sheet header { display:flex;justify-content:space-between;align-items:center;padding:0 12px 8px 20px;gap:16px; }
.mqv-stock-sheet h2 { font:700 18px/1.4 Poppins,sans-serif;margin:0; }
.mqv-stock-sheet [data-stock-close] { width:44px;height:44px;background:#f5f2ef;border:0;border-radius:50%!important;display:grid;place-items:center;cursor:pointer;flex:none; }
.mqv-stock-body { padding:0 20px 20px; }
.mqv-stock-sheet p { margin:0 0 12px;font-size:14px; }
.mqv-stock-sheet [data-stock-product] { font-weight:600; }
.mqv-stock-hint,.mqv-stock-sheet small { color:#70675f; }
.mqv-stock-sheet label { display:block;font-size:13px;font-weight:600;margin:0 0 8px; }
.mqv-stock-sheet input[type=email] { box-sizing:border-box;width:100%;height:42px;border:1px solid #cfc8c0;border-radius:5px;padding:8px 12px;margin:0 0 10px;font:inherit;font-size:14px;background:#fff; }
.mqv-stock-sheet input:disabled { background:#f5f4f2; }
.mqv-stock-sheet .mqv-stock-consent { display:flex;align-items:flex-start;gap:8px;font-size:12px;font-weight:400;line-height:18px;margin:4px 0 12px; }
.mqv-stock-consent input { flex:none;margin-top:3px;accent-color:#0045b4; }
.mqv-stock-send { width:100%;min-height:46px;border:1px solid transparent;border-radius:999px;background:#0045b4;color:#fff;font:700 14px/22px Poppins,sans-serif;cursor:pointer; }
.mqv-stock-send:disabled { opacity:.65;cursor:default; }
.mqv-stock-sheet small { display:block;font-size:12px;line-height:17.4px;margin-top:10px; }
.mqv-stock-sheet [data-stock-message] { margin:10px 0 0;color:#0045b4; }
.mqv-stock-sheet .is-error { color:#a32032; }
.mqv-stock-sheet button:focus-visible,.mqv-stock-sheet input:focus-visible,.mqv-stock-notify:focus-visible { outline:2px solid #0045b4!important;outline-offset:3px;box-shadow:none!important;border-color:#0045b4!important; }
@keyframes mqv-stock-appear { from { transform:translateY(calc(100% + 24px)); } to { transform:translateY(0); } }
@media(max-width:767px) { .mqv-stock-sheet { right:0;bottom:0;width:100%;max-width:100%;max-height:90vh;border-radius:18px 18px 0 0;padding-bottom:env(safe-area-inset-bottom); } }
@media(prefers-reduced-motion:reduce) { .mqv-stock-sheet { animation:none; } .mqv-stock-notify { transition:none; } }

.mqv-stock-sheet.is-closing { transform:translateY(calc(100% + 24px));animation:none;pointer-events:none; }
.mqv-stock-shade.is-closing { opacity:0;animation:none;pointer-events:none; }
@media(prefers-reduced-motion:reduce) { .mqv-stock-sheet,.mqv-stock-shade { animation:none;transition:none; } }

@keyframes mqv-stock-dim { from { opacity:0; } to { opacity:1; } }

.mqv-stock-notify svg path,.mqv-stock-sheet svg path { fill:none!important; }

/* Compact cards use the same drawing at their text scale. */
.mqv-compact-rail .mqv-catalog-card{--mqv-card-delivery-icon-size:14px}

.mqv-catalog-card .mqv-pack-card-action{margin-top:auto}

.mqv-pack-card-action .mqv-pack-configure:focus-visible{outline:2px solid var(--mqv-card-accent);outline-offset:3px}
