/* Estilos de producto (botones, sello, banner de descripción) — comunes a los 5 mercados */

.single-product .qlwcdc_quick_purchase,
.single-product .jetzkaufen {
    background-color: #2F3A80 !important;
    color: white !important;
    border: none !important;
    border-radius: 999px !important;
    font-weight: bold;
    transition: all 0.2s ease-in-out;
}
.single-product .qlwcdc_quick_purchase:hover,
.single-product .jetzkaufen:hover {
    box-shadow: 0 4px 12px rgba(47, 100, 255, 0.3);
}

.single-product .single_add_to_cart_button:not(.qlwcdc_quick_purchase):not(.jetzkaufen) {
    background-color: white !important;
    color: #2F3A80 !important;
    border: 2px solid #2F3A80 !important;
    border-radius: 999px !important;
    font-weight: normal;
    transition: all 0.2s ease-in-out;
}
.single-product .single_add_to_cart_button:not(.qlwcdc_quick_purchase):not(.jetzkaufen):hover {
    box-shadow: 0 4px 12px rgba(47, 100, 255, 0.2);
}

.single-product form.cart .button {
    padding: 12px 20px;
    font-size: 16px;
    width: 100% !important;
}

.single-product .title-price-badge-wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.single-product .title-price-wrapper {
    flex: 1;
}

.single-product .product_title {
    margin: 0 0 10px 0;
    font-size: 24px;
    line-height: 1.3;
}

.single-product .price {
    font-size: 20px;
    font-weight: 600;
    color: #2f64ff;
}

.single-product .lisecure-badge {
    width: 80px;
    height: auto;
    flex-shrink: 0;
}

@media (max-width: 768px) {
    .single-product .lisecure-badge {
        width: 60px;
    }
}

.woocommerce-product-details__short-description {
    border: none;
    padding: 0;
    background: none;
}

.woocommerce-product-details__short-description .lisecure-description-content {
    background-color: #fafafa;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 12px;
    margin-top: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.lisecure-shortdesc-banner {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 4px;
    padding-top: 10px;
}

.lisecure-shortdesc-banner img {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-top: 4px;
}

.lisecure-shortdesc-text {
    display: flex;
    flex-direction: column;
    line-height: 1.4;
}

.lisecure-shortdesc-text .title {
    font-weight: bold;
    color: #333;
}

.lisecure-shortdesc-text .subtitle {
    margin-top: 2px;
    color: #555;
}

/* === Alineación de los botones de compra — corregido 2026-08-01 ===
   Dos causas sumadas:
   1) Astra 4.13.8 añadió un margin-left negativo (-1em) al botón de añadir al
      carrito cuando el selector de cantidad está oculto, para compensar el hueco
      que dejaría en una fila. Aquí form.cart es una COLUMNA, así que no hay hueco
      que compensar: el margen solo desplazaba los botones 16px a la izquierda.
      Afecta a los 5 mercados, porque la regla es del tema padre.
   2) El functions.php del tema hijo alemán ponía padding-right: 15px en form.cart,
      que acortaba los botones por la derecha (solo en lisecure.de).
   Resultado: los botones quedaban en 4..339 mientras los de pago iban de 20..370. */
.single-product form.cart {
    padding-right: 0;
}
.single-product form.cart .button,
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .qlwcdc_quick_purchase {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
