﻿/* Shared purchase panel: rendered by _DetalleProducto in detail, quickview and AJAX updates. */
.detalle-producto,
.detalle-producto__contact {
    --detalle-accent: var(--main-bg-color, #262626);
    --detalle-on-accent: var(--main-letra, #fff);
    --detalle-muted: #626873;
    min-width: 0;
}
.detalle-producto {
    width: 100%;
    padding: 20px;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    background: #fff;
    color: #262b33;
    box-sizing: border-box;
}
@media (max-width: 575px) {
    .detalle-producto { padding: 16px; }
}
.detalle-producto > #divPrecio { width: 100%; max-width: none; }
.detalle-producto :is(button, a, input, select):focus-visible,
.detalle-producto__contact a:focus-visible { outline: 3px solid var(--detalle-accent); outline-offset: 3px; }
.detalle-producto > #divPrecio > .product-card__badge--blue { display: block; width: 100%; padding: 20px !important; border-radius: 14px !important; overflow: hidden; background: var(--detalle-accent); color: var(--detalle-on-accent); white-space: normal; }
.detalle-producto #divPrecio .product__prices { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: baseline; gap: 6px 12px; text-align: start !important; line-height: 1.25; margin: 0 0 10px; overflow-wrap: anywhere; }
.detalle-producto .product__prices .product-card__new-price { font-size: 31px; font-weight: 700; letter-spacing: -.025em; }
.detalle-producto .product__prices .product-card__old-price { font-size: 16px; }
.detalle-producto .product-card__badge--blue > b { display: block; font-size: 12px; line-height: 1.6; font-weight: 400; }
.detalle-producto .product__meta,
.detalle-producto .precioCuotas { color: var(--detalle-muted); line-height: 1.5; }
/* List price and its configured installment note share one quiet secondary block. */
.detalle-producto .detalle-producto__list-price { margin: 0 0 12px; padding: 14px 16px; border: 1px solid #e5e8ed; border-radius: 12px; background: #f6f7f9; }
.detalle-producto .detalle-producto__list-price-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 4px 12px; }
.detalle-producto .detalle-producto__list-price-label { color: var(--detalle-muted); font-size: 12px; font-weight: 500; line-height: 1.5; }
.detalle-producto .detalle-producto__list-price-amount { min-width: 0; color: #3d4652; font-size: 20px; font-weight: 650; line-height: 1.35; letter-spacing: -.025em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.detalle-producto .detalle-producto__list-price-note { margin: 8px 0 0; color: var(--detalle-muted); font-size: 12px; font-weight: 400; line-height: 1.6; overflow-wrap: anywhere; }
.detalle-producto .product__options { margin-top: 20px !important; }
.detalle-producto .product__option-label { margin-bottom: 8px; font-size: 13px; font-weight: 600; }
.detalle-producto .form-control { min-width: 0; max-width: 100%; border-radius: 8px; font-size: 16px; }
.detalle-producto .select2-container { width: 100% !important; max-width: 100%; }
.detalle-producto .select2-selection { min-height: 44px; border-radius: 8px; border-color: #d7dbe0; }
.detalle-producto .input-radio-label__list { display: flex; flex-wrap: wrap; gap: 8px; }
.detalle-producto .input-radio-label__list label { margin: 0; }
.detalle-producto .input-radio-label__list span { border-radius: 8px; white-space: normal; }
.detalle-producto .product__actions { display: flex; flex-wrap: nowrap; align-items: stretch; gap: 10px; margin: 0; }
.detalle-producto .product__actions-item { margin: 0; padding: 0; min-width: 0; }
.detalle-producto .product__actions-item:not(.product__actions-item--addtocart) { flex: 0 0 104px; }
.detalle-producto .product__actions-item--addtocart { flex: 1 1 0; width: auto; }
.detalle-producto .product__quantity { width: 100%; }
.detalle-producto .input-number__input { height: 48px; padding: 0 30px; appearance: textfield; -moz-appearance: textfield; }
.detalle-producto .input-number__input::-webkit-inner-spin-button,
.detalle-producto .input-number__input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.detalle-producto .input-number__add,
.detalle-producto .input-number__sub { width: 28px; }
.detalle-producto .btn,
.detalle-producto__contact .btn { min-height: 46px; border-radius: 10px; line-height: 1.5; white-space: normal; }
.detalle-producto #btnContinuar { padding: 0; }
.detalle-producto .detalle-producto__checkout-label { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 16px; }
.detalle-producto .product__actions-item--addtocart .btn { height: 48px; font-size: 14px !important; font-weight: 600; }
.detalle-producto .btn-primary,
.detalle-producto__contact .btn-primary { background: var(--detalle-accent); color: var(--detalle-on-accent); border-color: var(--detalle-accent); }
.detalle-producto .glow-on-hover::before,
.detalle-producto .glow-on-hover::after { display: none; }
.detalle-producto__contact { padding-top: 12px; }
.detalle-producto__contact hr { display: none; }
.detalle-producto__contact .btn { display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 13px; }

/* Free shipping conditions below the product purchase panel. */
.detalle-shipping-notice { display: flex; align-items: flex-start; gap: 12px; margin-top: 12px; padding: 16px; border: 1px solid #dce9e1; border-radius: 14px; background: #f6faf7; color: #303741; text-align: left; text-transform: none; letter-spacing: normal; }
.detalle-shipping-notice__icon { display: flex; align-items: center; justify-content: center; flex: 0 0 38px; height: 38px; border-radius: 11px; background: #e5f2e9; color: #27804b; }
.detalle-shipping-notice__icon svg { display: block; flex-shrink: 0; }
.detalle-shipping-notice__content { flex: 1 1 0; min-width: 0; overflow-wrap: anywhere; }
.detalle-shipping-notice .detalle-shipping-notice__title { margin: 0 0 4px; color: #246d42; font-size: 15px; font-weight: 700; line-height: 1.4; }
.detalle-shipping-notice .detalle-shipping-notice__conditions { margin: 0; color: #535e59; font-size: 13px; line-height: 1.6; }
.detalle-shipping-notice__conditions strong { color: #303f36; font-weight: 600; }
.detalle-shipping-notice .detalle-shipping-notice__note { margin: 10px 0 0; padding-top: 10px; border-top: 1px solid #dce9e1; color: #626d66; font-size: 12px; line-height: 1.6; white-space: pre-line; }

@media (max-width: 767px) {
    .detalle-producto .product__prices .product-card__new-price { font-size: 28px; }
}

/* Give the enquiry action context when online purchase is unavailable. */
.detalle-producto__contact-info { margin-bottom: 20px; }
.detalle-producto__contact-icon { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 16px; border-radius: 12px; background: #eaf9ef; color: #128c46; font-size: 24px; }
.detalle-producto__contact-info h2 { margin: 0 0 10px; color: #303741; font-size: 21px; font-weight: 700; line-height: 1.3; }
.detalle-producto__contact-info p { margin: 0 0 16px; color: #68717e; font-size: 14px; line-height: 1.7; }
.detalle-producto__contact-note { display: flex; align-items: baseline; gap: 8px; padding-top: 14px; border-top: 1px solid #e8ebef; color: #68717e; font-size: 12px; line-height: 1.6; }
.detalle-producto__contact-note i { flex-shrink: 0; color: #128c46; }
.detalle-producto__contact--after-purchase { margin-top: 20px; padding-top: 20px; border-top: 1px solid #e8ebef; }
.detalle-producto__contact--after-purchase .detalle-producto__contact-info { margin-bottom: 14px; }
.detalle-producto__contact--after-purchase .detalle-producto__contact-info h2 { margin-bottom: 6px; font-size: 15px; font-weight: 600; line-height: 1.4; }
.detalle-producto__contact--after-purchase .detalle-producto__contact-info p { margin-bottom: 0; font-size: 12px; line-height: 1.6; }

/* One metadata card style for the detail heading and the quickview heading. */
:is(.detalle-heading, .quickview__heading) .product-facts { width: 320px; max-width: 100%; min-width: 0; margin: 0 !important; padding: 0; border: 0; border-radius: 0; background: transparent; }
:is(.detalle-heading, .quickview__heading) .product-facts:empty { display: none; }
.product-facts table { display: block; width: 100%; max-width: 100%; margin: 0; border: 0; border-spacing: 0; font-size: 12px; line-height: 1.5; }
.product-facts tbody { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 100px), 1fr)); align-items: stretch; gap: 8px; }
.product-facts tr { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0; min-height: 64px; margin: 0; padding: 8px 10px; border: 0; border-radius: 10px; background: #f6f7f9; box-sizing: border-box; }
.product-facts :is(th, td) { display: block; width: auto; max-width: 100%; margin: 0; padding: 0; border: 0; text-align: start; font-style: normal; line-height: 1.5; letter-spacing: 0; text-transform: none; overflow-wrap: anywhere; }
.product-facts th { color: #8a939f; font-size: 10px; font-weight: 500; }
.product-facts td { color: #505967; font-size: 12px; font-weight: 600; }
.product-facts a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

/* Shared ranking notices in the detail and quickview carousel. */
:is(.detalle-page, #quickview-modal) .product-notices .block-features__content.product-notices__top { flex-wrap: nowrap; gap: 10px; }
.product-notices__trophy { flex: 0 0 auto; font-size: 22px; line-height: 1; }
.product-notices__ranking { flex: 1 1 auto; min-width: 0; color: #675221; font-size: 12px; font-weight: 600; line-height: 1.6; overflow-wrap: anywhere; }
.product-notices__top-button { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; margin-left: auto; padding: 6px 9px; border: 1px solid #e8d79d; border-radius: 8px; background: #fff8df; color: #675221; font-size: 12px; font-weight: 600; line-height: 1.5; cursor: pointer; white-space: nowrap; }
.product-notices__top-button:hover { background: #fff0bc; border-color: #c6aa57; }
.product-notices__top-button:focus-visible { outline: 3px solid #b18a23; outline-offset: 2px; }

/* Icon-only circular share action. Reserve space in both title variants to avoid overlap. */
.product-heading--share { position: relative; }
.product-heading--share .product__name,
.product-heading--share #divNombreMobile { padding-inline-end: 64px; }
.product-heading__share {
    position: absolute;
    top: 16px;
    right: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
    min-height: 40px;
    padding: 0;
    border: 1px solid #e3e6eb;
    border-radius: 50%;
    background: #f6f7f9;
    color: #505967;
    line-height: 1;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
}
.product-heading__share:hover { border-color: #cdd2d9; background: #e9ecf0; color: #303741; }
.product-heading__share:focus-visible { outline: 3px solid var(--main-bg-color, #303741); outline-offset: 3px; }
.product-heading__share:disabled { opacity: .6; cursor: wait; }
.product-heading__share svg { flex-shrink: 0; }
